osg::PrimitiveFunctor Class Referenceabstract

`#include <PrimitiveSet>`

Inheritance diagram for osg::PrimitiveFunctor:

## Public Member Functions

virtual | ~PrimitiveFunctor ()
virtual void | setVertexArray (unsigned int count, const Vec2 *vertices)=0
virtual void | setVertexArray (unsigned int count, const Vec3 *vertices)=0
virtual void | setVertexArray (unsigned int count, const Vec4 *vertices)=0
virtual void | setVertexArray (unsigned int count, const Vec2d *vertices)=0
virtual void | setVertexArray (unsigned int count, const Vec3d *vertices)=0
virtual void | setVertexArray (unsigned int count, const Vec4d *vertices)=0
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.

## Detailed Description

A `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.

## Constructor & Destructor Documentation

## ~PrimitiveFunctor()

virtual osg::PrimitiveFunctor::~PrimitiveFunctor | ( |  | ) |

inline virtual

## Member Function Documentation

## drawArrays()

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.

## drawElements() [1/3]

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.

## drawElements() [2/3]

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.

## drawElements() [3/3]

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.

## setVertexArray() [1/6]

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.

## setVertexArray() [2/6]

virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count,
|  | const Vec2d * | 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.

## setVertexArray() [3/6]

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.

## setVertexArray() [4/6]

virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count,
|  | const Vec3d * | 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.

## setVertexArray() [5/6]

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.

## setVertexArray() [6/6]

virtual void osg::PrimitiveFunctor::setVertexArray | ( | unsigned int | count,
|  | const Vec4d * | 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.

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

- PrimitiveSet