clan::ElementArrayVector< Type > Class Template Reference

Element Array Vector. More...

#include <element_array_vector.h>

+ Inheritance diagram for clan::ElementArrayVector< Type >:

Public Member Functions

 ElementArrayVector ()
 Constructs a null instance. More...
 
 ElementArrayVector (GraphicContext &gc, int size, BufferUsage usage=usage_static_draw)
 Constructs a ElementArrayBuffer. More...
 
 ElementArrayVector (GraphicContext &gc, Type *data, int size, BufferUsage usage=usage_static_draw)
 Constructs a ElementArrayBuffer. More...
 
 ElementArrayVector (GraphicContext &gc, const std::vector< Type > &data, BufferUsage usage=usage_static_draw)
 
void copy_from (GraphicContext &gc, TransferVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data from transfer buffer. More...
 
void copy_to (GraphicContext &gc, TransferVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data to transfer buffer. More...
 
void upload_data (GraphicContext &gc, const Type *data, int size)
 Uploads data to element array buffer. More...
 
void upload_data (GraphicContext &gc, const std::vector< Type > &data)
 Uploads data to element array buffer. More...
 
- Public Member Functions inherited from clan::ElementArrayBuffer
 ElementArrayBuffer ()
 Constructs a null instance. More...
 
 ElementArrayBuffer (GraphicContext &gc, int size, BufferUsage usage=usage_static_draw)
 Constructs a ElementArrayBuffer. More...
 
 ElementArrayBuffer (GraphicContext &gc, const void *data, int size, BufferUsage usage=usage_static_draw)
 Constructs a ElementArrayBuffer. More...
 
virtual ~ElementArrayBuffer ()
 
void copy_from (GraphicContext &gc, TransferBuffer &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data from transfer buffer. More...
 
void copy_to (GraphicContext &gc, TransferBuffer &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data to transfer buffer. More...
 
ElementArrayBufferProviderget_provider () const
 Get Provider. More...
 
bool is_null () const
 Returns true if this object is invalid. More...
 
 operator bool () const
 
bool operator== (const ElementArrayBuffer &other) const
 Handle comparison operator. More...
 
void throw_if_null () const
 Throw an exception if this object is invalid. More...
 
void upload_data (GraphicContext &gc, const void *data, int size)
 Uploads data to element array buffer. More...
 

Detailed Description

template<typename Type>
class clan::ElementArrayVector< Type >

Element Array Vector.

Constructor & Destructor Documentation

template<typename Type>
clan::ElementArrayVector< Type >::ElementArrayVector ( )
inline

Constructs a null instance.

template<typename Type>
clan::ElementArrayVector< Type >::ElementArrayVector ( GraphicContext gc,
int  size,
BufferUsage  usage = usage_static_draw 
)
inline

Constructs a ElementArrayBuffer.

Parameters
gc= Graphic Context
size= value
usage= Buffer Usage
template<typename Type>
clan::ElementArrayVector< Type >::ElementArrayVector ( GraphicContext gc,
Type *  data,
int  size,
BufferUsage  usage = usage_static_draw 
)
inline

Constructs a ElementArrayBuffer.

Parameters
gc= Graphic Context
data= void
size= value
usage= Buffer Usage
template<typename Type>
clan::ElementArrayVector< Type >::ElementArrayVector ( GraphicContext gc,
const std::vector< Type > &  data,
BufferUsage  usage = usage_static_draw 
)
inline

Member Function Documentation

template<typename Type>
void clan::ElementArrayVector< Type >::copy_from ( GraphicContext gc,
TransferVector< Type > &  buffer,
int  dest_pos = 0,
int  src_pos = 0,
int  size = -1 
)
inline

Copies data from transfer buffer.

References clan::ElementArrayBuffer::copy_from().

template<typename Type>
void clan::ElementArrayVector< Type >::copy_to ( GraphicContext gc,
TransferVector< Type > &  buffer,
int  dest_pos = 0,
int  src_pos = 0,
int  size = -1 
)
inline

Copies data to transfer buffer.

References clan::ElementArrayBuffer::copy_to().

template<typename Type>
void clan::ElementArrayVector< Type >::upload_data ( GraphicContext gc,
const Type *  data,
int  size 
)
inline

Uploads data to element array buffer.

The size specified must match the size of the buffer and is only included to help guard against buffer overruns.

References clan::ElementArrayBuffer::upload_data().

template<typename Type>
void clan::ElementArrayVector< Type >::upload_data ( GraphicContext gc,
const std::vector< Type > &  data 
)
inline

Uploads data to element array buffer.

References clan::ElementArrayBuffer::upload_data().


The documentation for this class was generated from the following file: