Public Types | |
enum | Type { PrimitiveType, DrawArraysPrimitiveType, DrawArrayLengthsPrimitiveType, DrawElementsUBytePrimitiveType, DrawElementsUShortPrimitiveType, DrawElementsUIntPrimitiveType } |
enum | Mode { POINTS = GL_POINTS, LINES = GL_LINES, LINE_STRIP = GL_LINE_STRIP, LINE_LOOP = GL_LINE_LOOP, TRIANGLES = GL_TRIANGLES, TRIANGLE_STRIP = GL_TRIANGLE_STRIP, TRIANGLE_FAN = GL_TRIANGLE_FAN, QUADS = GL_QUADS, QUAD_STRIP = GL_QUAD_STRIP, POLYGON = GL_POLYGON } |
Public Member Functions | |
PrimitiveSet (Type primType=PrimitiveType, GLenum mode=0) | |
PrimitiveSet (const PrimitiveSet &prim, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
return the name of the object's library. | |
virtual const char * | className () const |
return the name of the object's class type. | |
Type | getType () const |
virtual const GLvoid * | getDataPointer () const |
virtual unsigned int | getTotalDataSize () const |
virtual bool | supportsBufferObject () const |
void | setMode (GLenum mode) |
GLenum | getMode () const |
virtual void | draw (State &state, bool useVertexBufferObjects) const=0 |
virtual void | accept (PrimitiveFunctor &functor) const=0 |
virtual void | accept (PrimitiveIndexFunctor &functor) const=0 |
virtual unsigned int | index (unsigned int pos) const=0 |
virtual unsigned int | getNumIndices () const=0 |
virtual void | offsetIndices (int offset)=0 |
virtual unsigned int | getNumPrimitives () const |
void | dirty () |
Dirty the primitive, which increments the modified count, to force buffer objects to update. | |
void | setModifiedCount (unsigned int value) |
Set the modified count value. | |
unsigned int | getModifiedCount () const |
Get modified count value. | |
Protected Member Functions | |
virtual | ~PrimitiveSet () |
Protected Attributes | |
Type | _primitiveType |
GLenum | _mode |
unsigned int | _modifiedCount |
|
|
|
|
|
|
|
|
|
|
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
return the name of the object's class type. Must be defined by derived classes. Implements osg::Object. Reimplemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Dirty the primitive, which increments the modified count, to force buffer objects to update.
|
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
|
|
Get modified count value.
|
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Reimplemented in osg::DrawArrayLengths. |
|
Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
|
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Reimplemented from osg::Object. Reimplemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
return the name of the object's library. Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. Implements osg::Object. Reimplemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
|
|
Set the modified count value.
|
|
Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt. |
|
|
|
|
|
|