#include "libANGLE/Buffer.h"
#include "libANGLE/Context.h"
#include "libANGLE/renderer/BufferImpl.h"
#include "libANGLE/renderer/GLImplFactory.h"
namespace gl
{
namespace
{
constexpr angle::SubjectIndex kImplementationSubjectIndex = …;
constexpr size_t kInvalidContentsObserverIndex = …;
}
BufferState::BufferState()
: … { … }
BufferState::~BufferState() { … }
Buffer::Buffer(rx::GLImplFactory *factory, BufferID id)
: … { … }
Buffer::~Buffer()
{ … }
void Buffer::onDestroy(const Context *context)
{ … }
void Buffer::onBind(const Context *context, BufferBinding target)
{ … }
angle::Result Buffer::setLabel(const Context *context, const std::string &label)
{ … }
const std::string &Buffer::getLabel() const
{ … }
angle::Result Buffer::bufferStorageExternal(Context *context,
BufferBinding target,
GLsizeiptr size,
GLeglClientBufferEXT clientBuffer,
GLbitfield flags)
{ … }
angle::Result Buffer::bufferStorage(Context *context,
BufferBinding target,
GLsizeiptr size,
const void *data,
GLbitfield flags)
{ … }
angle::Result Buffer::bufferData(Context *context,
BufferBinding target,
const void *data,
GLsizeiptr size,
BufferUsage usage)
{ … }
angle::Result Buffer::bufferDataImpl(Context *context,
BufferBinding target,
const void *data,
GLsizeiptr size,
BufferUsage usage,
GLbitfield flags)
{ … }
angle::Result Buffer::bufferExternalDataImpl(Context *context,
BufferBinding target,
GLeglClientBufferEXT clientBuffer,
GLsizeiptr size,
GLbitfield flags)
{ … }
angle::Result Buffer::bufferSubData(const Context *context,
BufferBinding target,
const void *data,
GLsizeiptr size,
GLintptr offset)
{ … }
angle::Result Buffer::copyBufferSubData(const Context *context,
Buffer *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size)
{ … }
angle::Result Buffer::map(const Context *context, GLenum access)
{ … }
angle::Result Buffer::mapRange(const Context *context,
GLintptr offset,
GLsizeiptr length,
GLbitfield access)
{ … }
angle::Result Buffer::unmap(const Context *context, GLboolean *result)
{ … }
void Buffer::onDataChanged()
{ … }
angle::Result Buffer::getIndexRange(const gl::Context *context,
DrawElementsType type,
size_t offset,
size_t count,
bool primitiveRestartEnabled,
IndexRange *outRange) const
{ … }
GLint64 Buffer::getMemorySize() const
{ … }
bool Buffer::isDoubleBoundForTransformFeedback() const
{ … }
void Buffer::onTFBindingChanged(const Context *context, bool bound, bool indexed)
{ … }
angle::Result Buffer::getSubData(const gl::Context *context,
GLintptr offset,
GLsizeiptr size,
void *outData)
{ … }
void Buffer::onSubjectStateChange(angle::SubjectIndex index, angle::SubjectMessage message)
{ … }
size_t Buffer::getContentsObserverIndex(void *observer, uint32_t bufferIndex) const
{ … }
void Buffer::addContentsObserver(VertexArray *vertexArray, uint32_t bufferIndex)
{ … }
void Buffer::removeContentsObserverImpl(void *observer, uint32_t bufferIndex)
{ … }
void Buffer::removeContentsObserver(VertexArray *vertexArray, uint32_t bufferIndex)
{ … }
void Buffer::addContentsObserver(Texture *texture)
{ … }
void Buffer::removeContentsObserver(Texture *texture)
{ … }
bool Buffer::hasContentsObserver(Texture *texture) const
{ … }
void Buffer::onContentsChange()
{ … }
}