OpenSceneGraph  3.0.1
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
osg::ArrayDispatchers Class Reference

Helper class for managing the dispatch to OpenGL of various attribute arrays such as stored in osg::Geometry. More...

Inheritance diagram for osg::ArrayDispatchers:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 ArrayDispatchers ()
 ~ArrayDispatchers ()
void setState (osg::State *state)
AttributeDispatchvertexDispatcher (Array *array, IndexArray *indices)
AttributeDispatchnormalDispatcher (Array *array, IndexArray *indices)
AttributeDispatchcolorDispatcher (Array *array, IndexArray *indices)
AttributeDispatchsecondaryColorDispatcher (Array *array, IndexArray *indices)
AttributeDispatchfogCoordDispatcher (Array *array, IndexArray *indices)
AttributeDispatchtexCoordDispatcher (unsigned int unit, Array *array, IndexArray *indices)
AttributeDispatchvertexAttribDispatcher (unsigned int unit, Array *array, IndexArray *indices)
void reset ()
void setUseGLBeginEndAdapter (bool flag)
bool getUseGLBeginEndAdapter () const
void setUseVertexAttribAlias (bool flag)
bool getUseVertexAttribAlias () const
void activate (unsigned int binding, AttributeDispatch *at)
void activateVertexArray (unsigned int binding, osg::Array *array, osg::IndexArray *indices)
void activateColorArray (unsigned int binding, osg::Array *array, osg::IndexArray *indices)
void activateNormalArray (unsigned int binding, osg::Array *array, osg::IndexArray *indices)
void activateSecondaryColorArray (unsigned int binding, osg::Array *array, osg::IndexArray *indices)
void activateFogCoordArray (unsigned int binding, osg::Array *array, osg::IndexArray *indices)
void activateTexCoordArray (unsigned int binding, unsigned int unit, osg::Array *array, osg::IndexArray *indices)
void activateVertexAttribArray (unsigned int binding, unsigned int unit, osg::Array *array, osg::IndexArray *indices)
void dispatch (unsigned int binding, unsigned int index)
bool active (unsigned int binding) const
void Begin (GLenum mode)
void End ()

Protected Types

typedef std::vector
< AttributeDispatchMap * > 
AttributeDispatchMapList
typedef std::vector
< AttributeDispatch * > 
AttributeDispatchList
typedef std::vector
< AttributeDispatchList
ActiveDispatchList

Protected Member Functions

void init ()
void assignTexCoordDispatchers (unsigned int unit)
void assignVertexAttribDispatchers (unsigned int unit)

Protected Attributes

bool _initialized
State_state
GLBeginEndAdapter_glBeginEndAdapter
AttributeDispatchMap * _vertexDispatchers
AttributeDispatchMap * _normalDispatchers
AttributeDispatchMap * _colorDispatchers
AttributeDispatchMap * _secondaryColorDispatchers
AttributeDispatchMap * _fogCoordDispatchers
AttributeDispatchMapList _texCoordDispatchers
AttributeDispatchMapList _vertexAttribDispatchers
ActiveDispatchList _activeDispatchList
bool _useVertexAttribAlias
bool _useGLBeginEndAdapter

Detailed Description

Helper class for managing the dispatch to OpenGL of various attribute arrays such as stored in osg::Geometry.


Member Typedef Documentation

typedef std::vector<AttributeDispatchMap*> osg::ArrayDispatchers::AttributeDispatchMapList [protected]

Constructor & Destructor Documentation

osg::ArrayDispatchers::ArrayDispatchers ( )
osg::ArrayDispatchers::~ArrayDispatchers ( )

Member Function Documentation

void osg::ArrayDispatchers::activate ( unsigned int  binding,
AttributeDispatch at 
) [inline]
void osg::ArrayDispatchers::activateColorArray ( unsigned int  binding,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateFogCoordArray ( unsigned int  binding,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateNormalArray ( unsigned int  binding,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateSecondaryColorArray ( unsigned int  binding,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateTexCoordArray ( unsigned int  binding,
unsigned int  unit,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateVertexArray ( unsigned int  binding,
osg::Array array,
osg::IndexArray indices 
) [inline]
void osg::ArrayDispatchers::activateVertexAttribArray ( unsigned int  binding,
unsigned int  unit,
osg::Array array,
osg::IndexArray indices 
) [inline]
bool osg::ArrayDispatchers::active ( unsigned int  binding) const [inline]
void osg::ArrayDispatchers::assignTexCoordDispatchers ( unsigned int  unit) [protected]
void osg::ArrayDispatchers::assignVertexAttribDispatchers ( unsigned int  unit) [protected]
void osg::ArrayDispatchers::Begin ( GLenum  mode) [inline]
AttributeDispatch* osg::ArrayDispatchers::colorDispatcher ( Array array,
IndexArray indices 
)
void osg::ArrayDispatchers::dispatch ( unsigned int  binding,
unsigned int  index 
) [inline]
void osg::ArrayDispatchers::End ( ) [inline]
AttributeDispatch* osg::ArrayDispatchers::fogCoordDispatcher ( Array array,
IndexArray indices 
)
bool osg::ArrayDispatchers::getUseGLBeginEndAdapter ( ) const [inline]
bool osg::ArrayDispatchers::getUseVertexAttribAlias ( ) const [inline]
void osg::ArrayDispatchers::init ( ) [protected]
AttributeDispatch* osg::ArrayDispatchers::normalDispatcher ( Array array,
IndexArray indices 
)
void osg::ArrayDispatchers::reset ( )
AttributeDispatch* osg::ArrayDispatchers::secondaryColorDispatcher ( Array array,
IndexArray indices 
)
void osg::ArrayDispatchers::setState ( osg::State state)
void osg::ArrayDispatchers::setUseGLBeginEndAdapter ( bool  flag) [inline]
void osg::ArrayDispatchers::setUseVertexAttribAlias ( bool  flag) [inline]
AttributeDispatch* osg::ArrayDispatchers::texCoordDispatcher ( unsigned int  unit,
Array array,
IndexArray indices 
)
AttributeDispatch* osg::ArrayDispatchers::vertexAttribDispatcher ( unsigned int  unit,
Array array,
IndexArray indices 
)
AttributeDispatch* osg::ArrayDispatchers::vertexDispatcher ( Array array,
IndexArray indices 
)

Member Data Documentation

AttributeDispatchMap* osg::ArrayDispatchers::_colorDispatchers [protected]
AttributeDispatchMap* osg::ArrayDispatchers::_fogCoordDispatchers [protected]
AttributeDispatchMap* osg::ArrayDispatchers::_normalDispatchers [protected]
AttributeDispatchMap* osg::ArrayDispatchers::_secondaryColorDispatchers [protected]
AttributeDispatchMap* osg::ArrayDispatchers::_vertexDispatchers [protected]

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

osg logo
Generated at Mon Oct 3 2011 12:39:41 for the OpenSceneGraph by doxygen 1.7.5.