diff options
Diffstat (limited to 'src/3rdparty/angle/src/libGLESv2/Buffer.cpp')
-rw-r--r-- | src/3rdparty/angle/src/libGLESv2/Buffer.cpp | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/src/3rdparty/angle/src/libGLESv2/Buffer.cpp b/src/3rdparty/angle/src/libGLESv2/Buffer.cpp deleted file mode 100644 index 3b2a1a912a..0000000000 --- a/src/3rdparty/angle/src/libGLESv2/Buffer.cpp +++ /dev/null @@ -1,128 +0,0 @@ -// -// Copyright (c) 2002-2014 The ANGLE Project Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. -// - -// Buffer.cpp: Implements the gl::Buffer class, representing storage of vertex and/or -// index data. Implements GL buffer objects and related functionality. -// [OpenGL ES 2.0.24] section 2.9 page 21. - -#include "libGLESv2/Buffer.h" -#include "libGLESv2/renderer/BufferImpl.h" -#include "libGLESv2/renderer/Renderer.h" - -namespace gl -{ - -Buffer::Buffer(rx::BufferImpl *impl, GLuint id) - : RefCountObject(id), - mBuffer(impl), - mUsage(GL_DYNAMIC_DRAW), - mSize(0), - mAccessFlags(0), - mMapped(GL_FALSE), - mMapPointer(NULL), - mMapOffset(0), - mMapLength(0) -{ -} - -Buffer::~Buffer() -{ - SafeDelete(mBuffer); -} - -Error Buffer::bufferData(const void *data, GLsizeiptr size, GLenum usage) -{ - gl::Error error = mBuffer->setData(data, size, usage); - if (error.isError()) - { - return error; - } - - mIndexRangeCache.clear(); - mUsage = usage; - mSize = size; - - return error; -} - -Error Buffer::bufferSubData(const void *data, GLsizeiptr size, GLintptr offset) -{ - gl::Error error = mBuffer->setSubData(data, size, offset); - if (error.isError()) - { - return error; - } - - mIndexRangeCache.invalidateRange(offset, size); - - return error; -} - -Error Buffer::copyBufferSubData(Buffer* source, GLintptr sourceOffset, GLintptr destOffset, GLsizeiptr size) -{ - gl::Error error = mBuffer->copySubData(source->getImplementation(), sourceOffset, destOffset, size); - if (error.isError()) - { - return error; - } - - mIndexRangeCache.invalidateRange(destOffset, size); - - return error; -} - -Error Buffer::mapRange(GLintptr offset, GLsizeiptr length, GLbitfield access) -{ - ASSERT(!mMapped); - ASSERT(offset + length <= mSize); - - Error error = mBuffer->map(offset, length, access, &mMapPointer); - if (error.isError()) - { - mMapPointer = NULL; - return error; - } - - mMapped = GL_TRUE; - mMapOffset = static_cast<GLint64>(offset); - mMapLength = static_cast<GLint64>(length); - mAccessFlags = static_cast<GLint>(access); - - if ((access & GL_MAP_WRITE_BIT) > 0) - { - mIndexRangeCache.invalidateRange(offset, length); - } - - return error; -} - -Error Buffer::unmap() -{ - ASSERT(mMapped); - - Error error = mBuffer->unmap(); - if (error.isError()) - { - return error; - } - - mMapped = GL_FALSE; - mMapPointer = NULL; - mMapOffset = 0; - mMapLength = 0; - mAccessFlags = 0; - - return error; -} - -void Buffer::markTransformFeedbackUsage() -{ - // TODO: Only used by the DX11 backend. Refactor to a more appropriate place. - mBuffer->markTransformFeedbackUsage(); - mIndexRangeCache.clear(); -} - -} |