uicore::UniformVector< Type > Class Template Reference

Typed access to an uniform buffer. More...

#include <uniform_vector.h>

Public Member Functions

 UniformVector ()
 Constructs a uniform vector. More...
 
 UniformVector (const GraphicContextPtr &gc, int size, BufferUsage usage=usage_static_draw)
 
 UniformVector (const GraphicContextPtr &gc, Type *data, int size, BufferUsage usage=usage_static_draw)
 
 UniformVector (const GraphicContextPtr &gc, const std::vector< Type > &data, BufferUsage usage=usage_static_draw)
 
const UniformBufferPtrbuffer () const
 Returns the buffer used by the vector. More...
 
void copy_from (const GraphicContextPtr &gc, StagingVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data from transfer buffer. More...
 
void copy_to (const GraphicContextPtr &gc, StagingVector< Type > &buffer, int dest_pos=0, int src_pos=0, int size=-1)
 Copies data to transfer buffer. More...
 
 operator const UniformBufferPtr & () const
 
void upload_data (const GraphicContextPtr &gc, const Type *data, int size)
 Uploads data to uniforms buffer. More...
 
void upload_data (const GraphicContextPtr &gc, const std::vector< Type > &data)
 Uploads data to uniforms buffer. More...
 

Detailed Description

template<typename Type>
class uicore::UniformVector< Type >

Typed access to an uniform buffer.

Constructor & Destructor Documentation

template<typename Type >
uicore::UniformVector< Type >::UniformVector ( )
inline

Constructs a uniform vector.

template<typename Type >
uicore::UniformVector< Type >::UniformVector ( const GraphicContextPtr gc,
int  size,
BufferUsage  usage = usage_static_draw 
)
inline
template<typename Type >
uicore::UniformVector< Type >::UniformVector ( const GraphicContextPtr gc,
Type *  data,
int  size,
BufferUsage  usage = usage_static_draw 
)
inline
template<typename Type >
uicore::UniformVector< Type >::UniformVector ( const GraphicContextPtr gc,
const std::vector< Type > &  data,
BufferUsage  usage = usage_static_draw 
)
inline

Member Function Documentation

template<typename Type >
const UniformBufferPtr& uicore::UniformVector< Type >::buffer ( ) const
inline

Returns the buffer used by the vector.

Referenced by uicore::UniformVector< Type >::operator const UniformBufferPtr &().

template<typename Type >
void uicore::UniformVector< Type >::copy_from ( const GraphicContextPtr gc,
StagingVector< Type > &  buffer,
int  dest_pos = 0,
int  src_pos = 0,
int  size = -1 
)
inline

Copies data from transfer buffer.

template<typename Type >
void uicore::UniformVector< Type >::copy_to ( const GraphicContextPtr gc,
StagingVector< Type > &  buffer,
int  dest_pos = 0,
int  src_pos = 0,
int  size = -1 
)
inline

Copies data to transfer buffer.

template<typename Type >
uicore::UniformVector< Type >::operator const UniformBufferPtr & ( ) const
inline
template<typename Type >
void uicore::UniformVector< Type >::upload_data ( const GraphicContextPtr gc,
const Type *  data,
int  size 
)
inline

Uploads data to uniforms buffer.

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

template<typename Type >
void uicore::UniformVector< Type >::upload_data ( const GraphicContextPtr gc,
const std::vector< Type > &  data 
)
inline

Uploads data to uniforms buffer.


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