Typed mapping of the buffer to the client address space. More...
#include </home/chochlik/devel/oglplus/include/oglplus/buffer_map.hpp>
Public Member Functions | |
BufferTypedMap (BufferTarget target, BufferTypedSize< Type > offset, BufferTypedSize< Type > size, Bitfield< BufferMapAccess > access) | |
Maps a range of the buffer. More... | |
BufferTypedMap (BufferTarget target, Bitfield< BufferMapAccess > access) | |
Maps the whole buffer. More... | |
BufferTypedMap (BufferTypedMap &&temp) | |
Move construction is enabled. | |
GLsizeiptr | Count (void) const |
Returns the count of elements of Type in the mapped buffer. | |
const Type * | Data (void) const |
Returns a const pointer to the mapped data. | |
Type * | Data (void) |
Returns a pointer to the mapped data. | |
const Type & | At (GLuint index) const |
Returns a const reference to the element at the specified index. | |
Type & | At (GLuint index) |
Returns a reference to the element at the specified index. | |
void | FlushElements (BufferTypedSize< Type > start, BufferTypedSize< Type > count) |
Indicate modifications to a mapped range of elements of Type. More... | |
void | Unmap (void) |
Unmaps the buffer from client address space. More... | |
bool | Mapped (void) const |
Returns true if the buffer is mapped. | |
GLsizeiptr | Size (void) const |
Returns the size (in bytes) of the mapped buffer. | |
const GLvoid * | RawData (void) const |
Returns a const pointer to the mapped data. More... | |
GLvoid * | RawData (void) |
Returns a pointer to the mapped data. More... | |
void | FlushRange (BufferSize offset, BufferSize length) |
Indicate modifications to a mapped range. More... | |
Typed mapping of the buffer to the client address space.
oglplus::BufferTypedMap< Type >::BufferTypedMap | ( | BufferTarget | target, |
BufferTypedSize< Type > | offset, | ||
BufferTypedSize< Type > | size, | ||
Bitfield< BufferMapAccess > | access | ||
) |
Maps a range of the buffer.
target | use the buffer bound to the target specified |
offset | map offset in units of Type |
size | map size in units of Type |
access | the access specifier for the buffer mapping |
Error |
oglplus::BufferTypedMap< Type >::BufferTypedMap | ( | BufferTarget | target, |
Bitfield< BufferMapAccess > | access | ||
) |
Maps the whole buffer.
target | use the buffer bound to the target specified |
access | the access specifier for the buffer mapping |
This class is non-copyable.
Error |
void oglplus::BufferTypedMap< Type >::FlushElements | ( | BufferTypedSize< Type > | start, |
BufferTypedSize< Type > | count | ||
) |
Indicate modifications to a mapped range of elements of Type.
start | Index of the first element. |
count | The number of elements to be flushed. |
Error |
References oglplus::BufferRawMap::FlushRange().
|
inherited |
Indicate modifications to a mapped range.
Error |
References oglplus::BufferSize::Get().
Referenced by oglplus::BufferTypedMap< Type >::FlushElements().
|
inherited |
Returns a const pointer to the mapped data.
References oglplus::BufferRawMap::Mapped().
Referenced by oglplus::BufferTypedMap< Type >::Data().
|
inherited |
Returns a pointer to the mapped data.
References oglplus::BufferRawMap::Mapped().
|
inherited |
Unmaps the buffer from client address space.
Error |
Referenced by oglplus::BufferRawMap::~BufferRawMap().