clan::VertexArrayVector< Type > Class Template Reference

Vertex Array Vector. More...

#include <vertex_array_vector.h>

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

Public Member Functions

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

Detailed Description

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

Vertex Array Vector.

Constructor & Destructor Documentation

◆ VertexArrayVector() [1/5]

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

Constructs a null instance.

◆ VertexArrayVector() [2/5]

template<typename Type>
clan::VertexArrayVector< Type >::VertexArrayVector ( const VertexArrayBuffer & buffer)
inlineexplicit

◆ VertexArrayVector() [3/5]

template<typename Type>
clan::VertexArrayVector< Type >::VertexArrayVector ( GraphicContext & gc,
int size,
BufferUsage usage = BufferUsage::static_draw )
inline

Constructs a VertexArrayBuffer.

Parameters
gc= Graphic Context
size= value
usage= Buffer Usage

References clan::VertexArrayBuffer::VertexArrayBuffer(), and clan::static_draw.

◆ VertexArrayVector() [4/5]

template<typename Type>
clan::VertexArrayVector< Type >::VertexArrayVector ( GraphicContext & gc,
Type * data,
int size,
BufferUsage usage = BufferUsage::static_draw )
inline

Constructs a VertexArrayBuffer.

Parameters
gc= Graphic Context
data= void
size= value
usage= Buffer Usage

References clan::VertexArrayBuffer::VertexArrayBuffer(), and clan::static_draw.

◆ VertexArrayVector() [5/5]

template<typename Type>
clan::VertexArrayVector< Type >::VertexArrayVector ( GraphicContext & gc,
const std::vector< Type > & data,
BufferUsage usage = BufferUsage::static_draw )
inline

Member Function Documentation

◆ copy_from()

template<typename Type>
void clan::VertexArrayVector< 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::VertexArrayBuffer::copy_from().

◆ copy_to()

template<typename Type>
void clan::VertexArrayVector< 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::VertexArrayBuffer::copy_to().

◆ upload_data() [1/2]

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

Uploads data to vertex array buffer.

References clan::VertexArrayBuffer::upload_data().

◆ upload_data() [2/2]

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

Uploads data to vertex array buffer.

References clan::VertexArrayBuffer::upload_data().


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