Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

osg::PrimitiveSet Class Reference

Inheritance diagram for osg::PrimitiveSet:

Inheritance graph
[legend]
List of all members.

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 &copyop=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

Member Enumeration Documentation

enum osg::PrimitiveSet::Mode
 

Enumeration values:
POINTS 
LINES 
LINE_STRIP 
LINE_LOOP 
TRIANGLES 
TRIANGLE_STRIP 
TRIANGLE_FAN 
QUADS 
QUAD_STRIP 
POLYGON 

enum osg::PrimitiveSet::Type
 

Enumeration values:
PrimitiveType 
DrawArraysPrimitiveType 
DrawArrayLengthsPrimitiveType 
DrawElementsUBytePrimitiveType 
DrawElementsUShortPrimitiveType 
DrawElementsUIntPrimitiveType 


Constructor & Destructor Documentation

osg::PrimitiveSet::PrimitiveSet Type  primType = PrimitiveType,
GLenum  mode = 0
[inline]
 

osg::PrimitiveSet::PrimitiveSet const PrimitiveSet prim,
const CopyOp copyop = CopyOp::SHALLOW_COPY
[inline]
 

virtual osg::PrimitiveSet::~PrimitiveSet  )  [inline, protected, virtual]
 


Member Function Documentation

virtual void osg::PrimitiveSet::accept PrimitiveIndexFunctor functor  )  const [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual void osg::PrimitiveSet::accept PrimitiveFunctor functor  )  const [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual const char* osg::PrimitiveSet::className  )  const [inline, virtual]
 

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.

void osg::PrimitiveSet::dirty  )  [inline]
 

Dirty the primitive, which increments the modified count, to force buffer objects to update.

virtual void osg::PrimitiveSet::draw State state,
bool  useVertexBufferObjects
const [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual const GLvoid* osg::PrimitiveSet::getDataPointer  )  const [inline, virtual]
 

Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

GLenum osg::PrimitiveSet::getMode  )  const [inline]
 

unsigned int osg::PrimitiveSet::getModifiedCount  )  const [inline]
 

Get modified count value.

virtual unsigned int osg::PrimitiveSet::getNumIndices  )  const [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual unsigned int osg::PrimitiveSet::getNumPrimitives  )  const [inline, virtual]
 

Reimplemented in osg::DrawArrayLengths.

virtual unsigned int osg::PrimitiveSet::getTotalDataSize  )  const [inline, virtual]
 

Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

Type osg::PrimitiveSet::getType  )  const [inline]
 

virtual unsigned int osg::PrimitiveSet::index unsigned int  pos  )  const [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual bool osg::PrimitiveSet::isSameKindAs const Object obj  )  const [inline, virtual]
 

Reimplemented from osg::Object.

Reimplemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

virtual const char* osg::PrimitiveSet::libraryName  )  const [inline, virtual]
 

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.

virtual void osg::PrimitiveSet::offsetIndices int  offset  )  [pure virtual]
 

Implemented in osg::DrawArrays, osg::DrawArrayLengths, osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.

void osg::PrimitiveSet::setMode GLenum  mode  )  [inline]
 

void osg::PrimitiveSet::setModifiedCount unsigned int  value  )  [inline]
 

Set the modified count value.

virtual bool osg::PrimitiveSet::supportsBufferObject  )  const [inline, virtual]
 

Reimplemented in osg::DrawElementsUByte, osg::DrawElementsUShort, and osg::DrawElementsUInt.


Member Data Documentation

GLenum osg::PrimitiveSet::_mode [protected]
 

unsigned int osg::PrimitiveSet::_modifiedCount [protected]
 

Type osg::PrimitiveSet::_primitiveType [protected]
 


The documentation for this class was generated from the following file:
Generated at Thu Nov 24 16:23:30 2005 for the OpenSceneGraph by doxygen 1.3.6.