Renamed VertexBuffer to VertexBufferInterface.

TRAC #22225 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Geoff Lang git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1585 736b8ea6-26fd-11df-bfd4-992fa37f6226
parent 593ebc41
...@@ -61,7 +61,7 @@ void Buffer::bufferData(const void *data, GLsizeiptr size, GLenum usage) ...@@ -61,7 +61,7 @@ void Buffer::bufferData(const void *data, GLsizeiptr size, GLenum usage)
if (usage == GL_STATIC_DRAW) if (usage == GL_STATIC_DRAW)
{ {
mStaticVertexBuffer = new rx::StaticVertexBuffer(mRenderer); mStaticVertexBuffer = new rx::StaticVertexBufferInterface(mRenderer);
mStaticIndexBuffer = new rx::StaticIndexBuffer(mRenderer); mStaticIndexBuffer = new rx::StaticIndexBuffer(mRenderer);
} }
} }
...@@ -78,7 +78,7 @@ void Buffer::bufferSubData(const void *data, GLsizeiptr size, GLintptr offset) ...@@ -78,7 +78,7 @@ void Buffer::bufferSubData(const void *data, GLsizeiptr size, GLintptr offset)
mUnmodifiedDataUse = 0; mUnmodifiedDataUse = 0;
} }
rx::StaticVertexBuffer *Buffer::getStaticVertexBuffer() rx::StaticVertexBufferInterface *Buffer::getStaticVertexBuffer()
{ {
return mStaticVertexBuffer; return mStaticVertexBuffer;
} }
...@@ -108,7 +108,7 @@ void Buffer::promoteStaticUsage(int dataSize) ...@@ -108,7 +108,7 @@ void Buffer::promoteStaticUsage(int dataSize)
if (mUnmodifiedDataUse > 3 * mSize) if (mUnmodifiedDataUse > 3 * mSize)
{ {
mStaticVertexBuffer = new rx::StaticVertexBuffer(mRenderer); mStaticVertexBuffer = new rx::StaticVertexBufferInterface(mRenderer);
mStaticIndexBuffer = new rx::StaticIndexBuffer(mRenderer); mStaticIndexBuffer = new rx::StaticIndexBuffer(mRenderer);
} }
} }
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
namespace rx namespace rx
{ {
class StaticVertexBuffer; class StaticVertexBufferInterface;
class StaticIndexBuffer; class StaticIndexBuffer;
} }
...@@ -44,7 +44,7 @@ class Buffer : public RefCountObject ...@@ -44,7 +44,7 @@ class Buffer : public RefCountObject
size_t size() const { return mSize; } size_t size() const { return mSize; }
GLenum usage() const { return mUsage; } GLenum usage() const { return mUsage; }
rx::StaticVertexBuffer *getStaticVertexBuffer(); rx::StaticVertexBufferInterface *getStaticVertexBuffer();
rx::StaticIndexBuffer *getStaticIndexBuffer(); rx::StaticIndexBuffer *getStaticIndexBuffer();
void invalidateStaticData(); void invalidateStaticData();
void promoteStaticUsage(int dataSize); void promoteStaticUsage(int dataSize);
...@@ -57,7 +57,7 @@ class Buffer : public RefCountObject ...@@ -57,7 +57,7 @@ class Buffer : public RefCountObject
GLsizeiptr mSize; GLsizeiptr mSize;
GLenum mUsage; GLenum mUsage;
rx::StaticVertexBuffer *mStaticVertexBuffer; rx::StaticVertexBufferInterface *mStaticVertexBuffer;
rx::StaticIndexBuffer *mStaticIndexBuffer; rx::StaticIndexBuffer *mStaticIndexBuffer;
GLsizeiptr mUnmodifiedDataUse; GLsizeiptr mUnmodifiedDataUse;
}; };
......
...@@ -14,9 +14,9 @@ ...@@ -14,9 +14,9 @@
namespace rx namespace rx
{ {
unsigned int VertexBuffer::mCurrentSerial = 1; unsigned int VertexBufferInterface::mCurrentSerial = 1;
VertexBuffer::VertexBuffer(rx::Renderer9 *renderer, std::size_t size, DWORD usageFlags) : mRenderer(renderer), mVertexBuffer(NULL) VertexBufferInterface::VertexBufferInterface(rx::Renderer9 *renderer, std::size_t size, DWORD usageFlags) : mRenderer(renderer), mVertexBuffer(NULL)
{ {
if (size > 0) if (size > 0)
{ {
...@@ -35,7 +35,7 @@ VertexBuffer::VertexBuffer(rx::Renderer9 *renderer, std::size_t size, DWORD usag ...@@ -35,7 +35,7 @@ VertexBuffer::VertexBuffer(rx::Renderer9 *renderer, std::size_t size, DWORD usag
mRequiredSpace = 0; mRequiredSpace = 0;
} }
VertexBuffer::~VertexBuffer() VertexBufferInterface::~VertexBufferInterface()
{ {
if (mVertexBuffer) if (mVertexBuffer)
{ {
...@@ -43,7 +43,7 @@ VertexBuffer::~VertexBuffer() ...@@ -43,7 +43,7 @@ VertexBuffer::~VertexBuffer()
} }
} }
void VertexBuffer::unmap() void VertexBufferInterface::unmap()
{ {
if (mVertexBuffer) if (mVertexBuffer)
{ {
...@@ -51,35 +51,35 @@ void VertexBuffer::unmap() ...@@ -51,35 +51,35 @@ void VertexBuffer::unmap()
} }
} }
IDirect3DVertexBuffer9 *VertexBuffer::getBuffer() const IDirect3DVertexBuffer9 *VertexBufferInterface::getBuffer() const
{ {
return mVertexBuffer; return mVertexBuffer;
} }
unsigned int VertexBuffer::getSerial() const unsigned int VertexBufferInterface::getSerial() const
{ {
return mSerial; return mSerial;
} }
unsigned int VertexBuffer::issueSerial() unsigned int VertexBufferInterface::issueSerial()
{ {
return mCurrentSerial++; return mCurrentSerial++;
} }
void VertexBuffer::addRequiredSpace(UINT requiredSpace) void VertexBufferInterface::addRequiredSpace(UINT requiredSpace)
{ {
mRequiredSpace += requiredSpace; mRequiredSpace += requiredSpace;
} }
StreamingVertexBuffer::StreamingVertexBuffer(rx::Renderer9 *renderer, std::size_t initialSize) : VertexBuffer(renderer, initialSize, D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY) StreamingVertexBufferInterface::StreamingVertexBufferInterface(rx::Renderer9 *renderer, std::size_t initialSize) : VertexBufferInterface(renderer, initialSize, D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY)
{ {
} }
StreamingVertexBuffer::~StreamingVertexBuffer() StreamingVertexBufferInterface::~StreamingVertexBufferInterface()
{ {
} }
void *StreamingVertexBuffer::map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *offset) void *StreamingVertexBufferInterface::map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *offset)
{ {
void *mapPtr = NULL; void *mapPtr = NULL;
...@@ -100,7 +100,7 @@ void *StreamingVertexBuffer::map(const gl::VertexAttribute &attribute, std::size ...@@ -100,7 +100,7 @@ void *StreamingVertexBuffer::map(const gl::VertexAttribute &attribute, std::size
return mapPtr; return mapPtr;
} }
void StreamingVertexBuffer::reserveRequiredSpace() void StreamingVertexBufferInterface::reserveRequiredSpace()
{ {
if (mRequiredSpace > mBufferSize) if (mRequiredSpace > mBufferSize)
{ {
...@@ -138,15 +138,15 @@ void StreamingVertexBuffer::reserveRequiredSpace() ...@@ -138,15 +138,15 @@ void StreamingVertexBuffer::reserveRequiredSpace()
mRequiredSpace = 0; mRequiredSpace = 0;
} }
StaticVertexBuffer::StaticVertexBuffer(rx::Renderer9 *renderer) : VertexBuffer(renderer, 0, D3DUSAGE_WRITEONLY) StaticVertexBufferInterface::StaticVertexBufferInterface(rx::Renderer9 *renderer) : VertexBufferInterface(renderer, 0, D3DUSAGE_WRITEONLY)
{ {
} }
StaticVertexBuffer::~StaticVertexBuffer() StaticVertexBufferInterface::~StaticVertexBufferInterface()
{ {
} }
void *StaticVertexBuffer::map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset) void *StaticVertexBufferInterface::map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset)
{ {
void *mapPtr = NULL; void *mapPtr = NULL;
...@@ -171,7 +171,7 @@ void *StaticVertexBuffer::map(const gl::VertexAttribute &attribute, std::size_t ...@@ -171,7 +171,7 @@ void *StaticVertexBuffer::map(const gl::VertexAttribute &attribute, std::size_t
return mapPtr; return mapPtr;
} }
void StaticVertexBuffer::reserveRequiredSpace() void StaticVertexBufferInterface::reserveRequiredSpace()
{ {
if (!mVertexBuffer && mBufferSize == 0) if (!mVertexBuffer && mBufferSize == 0)
{ {
...@@ -195,7 +195,7 @@ void StaticVertexBuffer::reserveRequiredSpace() ...@@ -195,7 +195,7 @@ void StaticVertexBuffer::reserveRequiredSpace()
mRequiredSpace = 0; mRequiredSpace = 0;
} }
std::size_t StaticVertexBuffer::lookupAttribute(const gl::VertexAttribute &attribute) std::size_t StaticVertexBufferInterface::lookupAttribute(const gl::VertexAttribute &attribute)
{ {
for (unsigned int element = 0; element < mCache.size(); element++) for (unsigned int element = 0; element < mCache.size(); element++)
{ {
......
...@@ -21,11 +21,11 @@ ...@@ -21,11 +21,11 @@
namespace rx namespace rx
{ {
class VertexBuffer class VertexBufferInterface
{ {
public: public:
VertexBuffer(rx::Renderer9 *renderer, std::size_t size, DWORD usageFlags); VertexBufferInterface(rx::Renderer9 *renderer, std::size_t size, DWORD usageFlags);
virtual ~VertexBuffer(); virtual ~VertexBufferInterface();
void unmap(); void unmap();
virtual void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset) = 0; virtual void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset) = 0;
...@@ -50,24 +50,24 @@ class VertexBuffer ...@@ -50,24 +50,24 @@ class VertexBuffer
std::size_t mRequiredSpace; std::size_t mRequiredSpace;
private: private:
DISALLOW_COPY_AND_ASSIGN(VertexBuffer); DISALLOW_COPY_AND_ASSIGN(VertexBufferInterface);
}; };
class StreamingVertexBuffer : public VertexBuffer class StreamingVertexBufferInterface : public VertexBufferInterface
{ {
public: public:
StreamingVertexBuffer(rx::Renderer9 *renderer, std::size_t initialSize); StreamingVertexBufferInterface(rx::Renderer9 *renderer, std::size_t initialSize);
~StreamingVertexBuffer(); ~StreamingVertexBufferInterface();
void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset); void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset);
void reserveRequiredSpace(); void reserveRequiredSpace();
}; };
class StaticVertexBuffer : public VertexBuffer class StaticVertexBufferInterface : public VertexBufferInterface
{ {
public: public:
explicit StaticVertexBuffer(rx::Renderer9 *renderer); explicit StaticVertexBufferInterface(rx::Renderer9 *renderer);
~StaticVertexBuffer(); ~StaticVertexBufferInterface();
void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset); void *map(const gl::VertexAttribute &attribute, std::size_t requiredSpace, std::size_t *streamOffset);
void reserveRequiredSpace(); void reserveRequiredSpace();
......
...@@ -52,7 +52,7 @@ VertexDataManager::VertexDataManager(Renderer9 *renderer) : mRenderer(renderer) ...@@ -52,7 +52,7 @@ VertexDataManager::VertexDataManager(Renderer9 *renderer) : mRenderer(renderer)
// D3D9_REPLACE // D3D9_REPLACE
checkVertexCaps(renderer->getCapsDeclTypes()); checkVertexCaps(renderer->getCapsDeclTypes());
mStreamingBuffer = new StreamingVertexBuffer(renderer, INITIAL_STREAM_BUFFER_SIZE); mStreamingBuffer = new StreamingVertexBufferInterface(renderer, INITIAL_STREAM_BUFFER_SIZE);
if (!mStreamingBuffer) if (!mStreamingBuffer)
{ {
...@@ -70,7 +70,7 @@ VertexDataManager::~VertexDataManager() ...@@ -70,7 +70,7 @@ VertexDataManager::~VertexDataManager()
} }
} }
std::size_t VertexDataManager::writeAttributeData(VertexBuffer *vertexBuffer, GLint start, GLsizei count, const gl::VertexAttribute &attribute, GLsizei instances) std::size_t VertexDataManager::writeAttributeData(VertexBufferInterface *vertexBuffer, GLint start, GLsizei count, const gl::VertexAttribute &attribute, GLsizei instances)
{ {
gl::Buffer *buffer = attribute.mBoundBuffer.get(); gl::Buffer *buffer = attribute.mBoundBuffer.get();
...@@ -142,7 +142,7 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[], ...@@ -142,7 +142,7 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[],
if (translated[i].active && attribs[i].mArrayEnabled) if (translated[i].active && attribs[i].mArrayEnabled)
{ {
gl::Buffer *buffer = attribs[i].mBoundBuffer.get(); gl::Buffer *buffer = attribs[i].mBoundBuffer.get();
StaticVertexBuffer *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL; StaticVertexBufferInterface *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL;
if (staticBuffer) if (staticBuffer)
{ {
...@@ -160,7 +160,7 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[], ...@@ -160,7 +160,7 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[],
if (translated[previous].active && attribs[previous].mArrayEnabled) if (translated[previous].active && attribs[previous].mArrayEnabled)
{ {
gl::Buffer *previousBuffer = attribs[previous].mBoundBuffer.get(); gl::Buffer *previousBuffer = attribs[previous].mBoundBuffer.get();
StaticVertexBuffer *previousStaticBuffer = previousBuffer ? previousBuffer->getStaticVertexBuffer() : NULL; StaticVertexBufferInterface *previousStaticBuffer = previousBuffer ? previousBuffer->getStaticVertexBuffer() : NULL;
if (staticBuffer == previousStaticBuffer) if (staticBuffer == previousStaticBuffer)
{ {
...@@ -187,8 +187,8 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[], ...@@ -187,8 +187,8 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[],
if (translated[i].active && attribs[i].mArrayEnabled) if (translated[i].active && attribs[i].mArrayEnabled)
{ {
gl::Buffer *buffer = attribs[i].mBoundBuffer.get(); gl::Buffer *buffer = attribs[i].mBoundBuffer.get();
VertexBuffer *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL; VertexBufferInterface *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL;
VertexBuffer *vertexBuffer = staticBuffer ? staticBuffer : mStreamingBuffer; VertexBufferInterface *vertexBuffer = staticBuffer ? staticBuffer : mStreamingBuffer;
if (vertexBuffer) if (vertexBuffer)
{ {
...@@ -215,8 +215,8 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[], ...@@ -215,8 +215,8 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[],
const FormatConverter &converter = formatConverter(attribs[i]); const FormatConverter &converter = formatConverter(attribs[i]);
StaticVertexBuffer *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL; StaticVertexBufferInterface *staticBuffer = buffer ? buffer->getStaticVertexBuffer() : NULL;
VertexBuffer *vertexBuffer = staticBuffer ? staticBuffer : static_cast<VertexBuffer*>(mStreamingBuffer); VertexBufferInterface *vertexBuffer = staticBuffer ? staticBuffer : static_cast<VertexBufferInterface*>(mStreamingBuffer);
std::size_t streamOffset = -1; std::size_t streamOffset = -1;
...@@ -265,10 +265,10 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[], ...@@ -265,10 +265,10 @@ GLenum VertexDataManager::prepareVertexData(const gl::VertexAttribute attribs[],
{ {
if (!mCurrentValueBuffer[i]) if (!mCurrentValueBuffer[i])
{ {
mCurrentValueBuffer[i] = new StreamingVertexBuffer(mRenderer, CONSTANT_VERTEX_BUFFER_SIZE); mCurrentValueBuffer[i] = new StreamingVertexBufferInterface(mRenderer, CONSTANT_VERTEX_BUFFER_SIZE);
} }
StreamingVertexBuffer *buffer = mCurrentValueBuffer[i]; StreamingVertexBufferInterface *buffer = mCurrentValueBuffer[i];
if (mCurrentValue[i][0] != attribs[i].mCurrentValue[0] || if (mCurrentValue[i][0] != attribs[i].mCurrentValue[0] ||
mCurrentValue[i][1] != attribs[i].mCurrentValue[1] || mCurrentValue[i][1] != attribs[i].mCurrentValue[1] ||
......
...@@ -47,14 +47,14 @@ class VertexDataManager ...@@ -47,14 +47,14 @@ class VertexDataManager
DISALLOW_COPY_AND_ASSIGN(VertexDataManager); DISALLOW_COPY_AND_ASSIGN(VertexDataManager);
std::size_t spaceRequired(const gl::VertexAttribute &attrib, std::size_t count, GLsizei instances) const; std::size_t spaceRequired(const gl::VertexAttribute &attrib, std::size_t count, GLsizei instances) const;
std::size_t writeAttributeData(VertexBuffer *vertexBuffer, GLint start, GLsizei count, const gl::VertexAttribute &attribute, GLsizei instances); std::size_t writeAttributeData(VertexBufferInterface *vertexBuffer, GLint start, GLsizei count, const gl::VertexAttribute &attribute, GLsizei instances);
rx::Renderer9 *const mRenderer; // D3D9_REPLACE rx::Renderer9 *const mRenderer; // D3D9_REPLACE
StreamingVertexBuffer *mStreamingBuffer; StreamingVertexBufferInterface *mStreamingBuffer;
float mCurrentValue[gl::MAX_VERTEX_ATTRIBS][4]; float mCurrentValue[gl::MAX_VERTEX_ATTRIBS][4];
StreamingVertexBuffer *mCurrentValueBuffer[gl::MAX_VERTEX_ATTRIBS]; StreamingVertexBufferInterface *mCurrentValueBuffer[gl::MAX_VERTEX_ATTRIBS];
std::size_t mCurrentValueOffsets[gl::MAX_VERTEX_ATTRIBS]; std::size_t mCurrentValueOffsets[gl::MAX_VERTEX_ATTRIBS];
// Attribute format conversion // Attribute format conversion
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment