#include "libANGLE/renderer/vulkan/RenderbufferVk.h"
#include "libANGLE/Context.h"
#include "libANGLE/Image.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
#include "libANGLE/renderer/vulkan/ImageVk.h"
#include "libANGLE/renderer/vulkan/TextureVk.h"
#include "libANGLE/renderer/vulkan/vk_renderer.h"
namespace rx
{
namespace
{
angle::SubjectIndex kRenderbufferImageSubjectIndex = …;
}
RenderbufferVk::RenderbufferVk(const gl::RenderbufferState &state)
: … { … }
RenderbufferVk::~RenderbufferVk() { … }
void RenderbufferVk::onDestroy(const gl::Context *context)
{ … }
angle::Result RenderbufferVk::setStorageImpl(const gl::Context *context,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height,
gl::MultisamplingMode mode)
{ … }
angle::Result RenderbufferVk::setStorage(const gl::Context *context,
GLenum internalformat,
GLsizei width,
GLsizei height)
{ … }
angle::Result RenderbufferVk::setStorageMultisample(const gl::Context *context,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height,
gl::MultisamplingMode mode)
{ … }
angle::Result RenderbufferVk::setStorageEGLImageTarget(const gl::Context *context,
egl::Image *image)
{ … }
angle::Result RenderbufferVk::copyRenderbufferSubData(const gl::Context *context,
const gl::Renderbuffer *srcBuffer,
GLint srcLevel,
GLint srcX,
GLint srcY,
GLint srcZ,
GLint dstLevel,
GLint dstX,
GLint dstY,
GLint dstZ,
GLsizei srcWidth,
GLsizei srcHeight,
GLsizei srcDepth)
{ … }
angle::Result RenderbufferVk::copyTextureSubData(const gl::Context *context,
const gl::Texture *srcTexture,
GLint srcLevel,
GLint srcX,
GLint srcY,
GLint srcZ,
GLint dstLevel,
GLint dstX,
GLint dstY,
GLint dstZ,
GLsizei srcWidth,
GLsizei srcHeight,
GLsizei srcDepth)
{ … }
angle::Result RenderbufferVk::getAttachmentRenderTarget(const gl::Context *context,
GLenum binding,
const gl::ImageIndex &imageIndex,
GLsizei samples,
FramebufferAttachmentRenderTarget **rtOut)
{ … }
angle::Result RenderbufferVk::initializeContents(const gl::Context *context,
GLenum binding,
const gl::ImageIndex &imageIndex)
{ … }
void RenderbufferVk::releaseOwnershipOfImage(const gl::Context *context)
{ … }
void RenderbufferVk::releaseAndDeleteImage(ContextVk *contextVk)
{ … }
void RenderbufferVk::releaseImage(ContextVk *contextVk)
{ … }
const gl::InternalFormat &RenderbufferVk::getImplementationSizedFormat() const
{ … }
GLenum RenderbufferVk::getColorReadFormat(const gl::Context *context)
{ … }
GLenum RenderbufferVk::getColorReadType(const gl::Context *context)
{ … }
angle::Result RenderbufferVk::getRenderbufferImage(const gl::Context *context,
const gl::PixelPackState &packState,
gl::Buffer *packBuffer,
GLenum format,
GLenum type,
void *pixels)
{ … }
angle::Result RenderbufferVk::ensureImageInitialized(const gl::Context *context)
{ … }
void RenderbufferVk::onSubjectStateChange(angle::SubjectIndex index, angle::SubjectMessage message)
{ … }
}