#include "libANGLE/renderer/vulkan/RenderTargetVk.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
#include "libANGLE/renderer/vulkan/TextureVk.h"
#include "libANGLE/renderer/vulkan/vk_format_utils.h"
#include "libANGLE/renderer/vulkan/vk_helpers.h"
#include "libANGLE/renderer/vulkan/vk_resource.h"
namespace rx
{
RenderTargetVk::RenderTargetVk()
{ … }
RenderTargetVk::~RenderTargetVk()
{ … }
RenderTargetVk::RenderTargetVk(RenderTargetVk &&other)
: … { … }
void RenderTargetVk::init(vk::ImageHelper *image,
vk::ImageViewHelper *imageViews,
vk::ImageHelper *resolveImage,
vk::ImageViewHelper *resolveImageViews,
UniqueSerial imageSiblingSerial,
gl::LevelIndex levelIndexGL,
uint32_t layerIndex,
uint32_t layerCount,
RenderTargetTransience transience)
{ … }
void RenderTargetVk::reset()
{ … }
vk::ImageOrBufferViewSubresourceSerial RenderTargetVk::getSubresourceSerialImpl(
vk::ImageViewHelper *imageViews) const
{ … }
vk::ImageOrBufferViewSubresourceSerial RenderTargetVk::getDrawSubresourceSerial() const
{ … }
vk::ImageOrBufferViewSubresourceSerial RenderTargetVk::getResolveSubresourceSerial() const
{ … }
void RenderTargetVk::onColorDraw(ContextVk *contextVk,
uint32_t framebufferLayerCount,
vk::PackedAttachmentIndex packedAttachmentIndex)
{ … }
void RenderTargetVk::onColorResolve(ContextVk *contextVk,
uint32_t framebufferLayerCount,
size_t readColorIndexGL,
const vk::ImageView &view)
{ … }
void RenderTargetVk::onDepthStencilDraw(ContextVk *contextVk, uint32_t framebufferLayerCount)
{ … }
void RenderTargetVk::onDepthStencilResolve(ContextVk *contextVk,
uint32_t framebufferLayerCount,
VkImageAspectFlags aspects,
const vk::ImageView &view)
{ … }
vk::ImageHelper &RenderTargetVk::getImageForRenderPass()
{ … }
const vk::ImageHelper &RenderTargetVk::getImageForRenderPass() const
{ … }
vk::ImageHelper &RenderTargetVk::getResolveImageForRenderPass()
{ … }
const vk::ImageHelper &RenderTargetVk::getResolveImageForRenderPass() const
{ … }
angle::Result RenderTargetVk::getImageViewImpl(vk::Context *context,
const vk::ImageHelper &image,
gl::SrgbWriteControlMode mode,
vk::ImageViewHelper *imageViews,
const vk::ImageView **imageViewOut) const
{ … }
angle::Result RenderTargetVk::getImageView(vk::Context *context,
const vk::ImageView **imageViewOut) const
{ … }
angle::Result RenderTargetVk::getImageViewWithColorspace(vk::Context *context,
gl::SrgbWriteControlMode mode,
const vk::ImageView **imageViewOut) const
{ … }
angle::Result RenderTargetVk::getResolveImageView(vk::Context *context,
const vk::ImageView **imageViewOut) const
{ … }
bool RenderTargetVk::isResolveImageOwnerOfData() const
{ … }
vk::ImageHelper *RenderTargetVk::getOwnerOfData() const
{ … }
angle::Result RenderTargetVk::getCopyImageView(vk::Context *context,
const vk::ImageView **imageViewOut) const
{ … }
angle::FormatID RenderTargetVk::getImageActualFormatID() const
{ … }
angle::FormatID RenderTargetVk::getImageIntendedFormatID() const
{ … }
const angle::Format &RenderTargetVk::getImageActualFormat() const
{ … }
const angle::Format &RenderTargetVk::getImageIntendedFormat() const
{ … }
gl::Extents RenderTargetVk::getExtents() const
{ … }
gl::Extents RenderTargetVk::getRotatedExtents() const
{ … }
gl::LevelIndex RenderTargetVk::getLevelIndexForImage(const vk::ImageHelper &image) const
{ … }
void RenderTargetVk::updateSwapchainImage(vk::ImageHelper *image,
vk::ImageViewHelper *imageViews,
vk::ImageHelper *resolveImage,
vk::ImageViewHelper *resolveImageViews)
{ … }
vk::ImageHelper &RenderTargetVk::getImageForCopy() const
{ … }
vk::ImageHelper &RenderTargetVk::getImageForWrite() const
{ … }
angle::Result RenderTargetVk::flushStagedUpdates(ContextVk *contextVk,
vk::ClearValuesArray *deferredClears,
uint32_t deferredClearIndex,
uint32_t framebufferLayerCount)
{ … }
bool RenderTargetVk::hasDefinedContent() const
{ … }
bool RenderTargetVk::hasDefinedStencilContent() const
{ … }
void RenderTargetVk::invalidateEntireContent(ContextVk *contextVk,
bool *preferToKeepContentsDefinedOut)
{ … }
void RenderTargetVk::invalidateEntireStencilContent(ContextVk *contextVk,
bool *preferToKeepContentsDefinedOut)
{ … }
gl::ImageIndex RenderTargetVk::getImageIndexForClear(uint32_t layerCount) const
{ … }
}