PrimitiveFunctor
is used (in conjunction with osg::Drawable::accept (PrimitiveFunctor&)
) to get access to the primitives that compose the things drawn by OSG.
More...
Public Member Functions | |
virtual | ~PrimitiveFunctor () |
virtual void | setVertexArray (unsigned int count, const Vec2 *vertices)=0 |
Sets the array of vertices used to describe the primitives. | |
virtual void | setVertexArray (unsigned int count, const Vec3 *vertices)=0 |
Sets the array of vertices used to describe the primitives. | |
virtual void | setVertexArray (unsigned int count, const Vec4 *vertices)=0 |
Sets the array of vertices used to describe the primitives. | |
virtual void | drawArrays (GLenum mode, GLint first, GLsizei count)=0 |
Mimics the OpenGL glDrawArrays() function. | |
virtual void | drawElements (GLenum mode, GLsizei count, const GLubyte *indices)=0 |
Mimics the OpenGL glDrawElements() function. | |
virtual void | drawElements (GLenum mode, GLsizei count, const GLushort *indices)=0 |
Mimics the OpenGL glDrawElements() function. | |
virtual void | drawElements (GLenum mode, GLsizei count, const GLuint *indices)=0 |
Mimics the OpenGL glDrawElements() function. | |
virtual void | begin (GLenum mode)=0 |
Mimics the OpenGL glBegin() function. | |
virtual void | vertex (const Vec2 &vert)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | vertex (const Vec3 &vert)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | vertex (const Vec4 &vert)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | vertex (float x, float y)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | vertex (float x, float y, float z)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | vertex (float x, float y, float z, float w)=0 |
Mimics the OpenGL glVertex() "family of functions". | |
virtual void | end ()=0 |
Mimics the OpenGL glEnd() function. |
PrimitiveFunctor
is used (in conjunction with osg::Drawable::accept (PrimitiveFunctor&)
) to get access to the primitives that compose the things drawn by OSG.
If osg::Drawable::accept()
is called with a PrimitiveFunctor
parameter, the Drawable
will "pretend" it is drawing itself, but instead of calling real OpenGL functions, it will call PrimitiveFunctor
's member functions that "mimic" the OpenGL calls.
Concrete subclasses of PrimitiveFunctor
must implement these methods so that they performs whatever they want.
virtual osg::PrimitiveFunctor::~PrimitiveFunctor | ( | ) | [inline, virtual] |
virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count, | |
const Vec2 * | vertices | |||
) | [pure virtual] |
Sets the array of vertices used to describe the primitives.
Somehow mimics the OpenGL glVertexPointer()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count, | |
const Vec3 * | vertices | |||
) | [pure virtual] |
Sets the array of vertices used to describe the primitives.
Somehow mimics the OpenGL glVertexPointer()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count, | |
const Vec4 * | vertices | |||
) | [pure virtual] |
Sets the array of vertices used to describe the primitives.
Somehow mimics the OpenGL glVertexPointer()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::drawArrays | ( | GLenum | mode, | |
GLint | first, | |||
GLsizei | count | |||
) | [pure virtual] |
Mimics the OpenGL glDrawArrays()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::drawElements | ( | GLenum | mode, | |
GLsizei | count, | |||
const GLubyte * | indices | |||
) | [pure virtual] |
Mimics the OpenGL glDrawElements()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::drawElements | ( | GLenum | mode, | |
GLsizei | count, | |||
const GLushort * | indices | |||
) | [pure virtual] |
Mimics the OpenGL glDrawElements()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::drawElements | ( | GLenum | mode, | |
GLsizei | count, | |||
const GLuint * | indices | |||
) | [pure virtual] |
Mimics the OpenGL glDrawElements()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::begin | ( | GLenum | mode | ) | [pure virtual] |
Mimics the OpenGL glBegin()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | const Vec2 & | vert | ) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | const Vec3 & | vert | ) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | const Vec4 & | vert | ) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | float | x, | |
float | y | |||
) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | float | x, | |
float | y, | |||
float | z | |||
) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::vertex | ( | float | x, | |
float | y, | |||
float | z, | |||
float | w | |||
) | [pure virtual] |
Mimics the OpenGL glVertex()
"family of functions".
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.
virtual void osg::PrimitiveFunctor::end | ( | ) | [pure virtual] |
Mimics the OpenGL glEnd()
function.
Implemented in osg::TemplatePrimitiveFunctor< T >, osg::TriangleFunctor< T >, and osgUtil::Statistics.