OpenSceneGraph  3.0.1
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
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, LINES_ADJACENCY = GL_LINES_ADJACENCY_EXT, LINE_STRIP_ADJACENCY = GL_LINE_STRIP_ADJACENCY_EXT,
  TRIANGLES_ADJACENCY = GL_TRIANGLES_ADJACENCY_EXT, TRIANGLE_STRIP_ADJACENCY = GL_TRIANGLE_STRIP_ADJACENCY_EXT, PATCHES = GL_PATCHES
}

Public Member Functions

 PrimitiveSet (Type primType=PrimitiveType, GLenum mode=0, int numInstances=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
virtual DrawElementsgetDrawElements ()
virtual const DrawElementsgetDrawElements () const
void setNumInstances (int n)
int getNumInstances () 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
virtual void computeRange () const

Protected Member Functions

virtual ~PrimitiveSet ()

Protected Attributes

Type _primitiveType
int _numInstances
GLenum _mode

Member Enumeration Documentation

Enumerator:
POINTS 
LINES 
LINE_STRIP 
LINE_LOOP 
TRIANGLES 
TRIANGLE_STRIP 
TRIANGLE_FAN 
QUADS 
QUAD_STRIP 
POLYGON 
LINES_ADJACENCY 
LINE_STRIP_ADJACENCY 
TRIANGLES_ADJACENCY 
TRIANGLE_STRIP_ADJACENCY 
PATCHES 
Enumerator:
PrimitiveType 
DrawArraysPrimitiveType 
DrawArrayLengthsPrimitiveType 
DrawElementsUBytePrimitiveType 
DrawElementsUShortPrimitiveType 
DrawElementsUIntPrimitiveType 

Constructor & Destructor Documentation

osg::PrimitiveSet::PrimitiveSet ( Type  primType = PrimitiveType,
GLenum  mode = 0,
int  numInstances = 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 ( PrimitiveFunctor functor) const [pure virtual]
virtual void osg::PrimitiveSet::accept ( PrimitiveIndexFunctor functor) const [pure virtual]
virtual const char* osg::PrimitiveSet::className ( ) const [inline, virtual]

return the name of the object's class type.

Must be defined by derived classes.

Reimplemented from osg::BufferData.

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

virtual void osg::PrimitiveSet::computeRange ( ) const [inline, virtual]
virtual void osg::PrimitiveSet::draw ( State state,
bool  useVertexBufferObjects 
) const [pure virtual]
virtual const GLvoid* osg::PrimitiveSet::getDataPointer ( ) const [inline, virtual]
virtual DrawElements* osg::PrimitiveSet::getDrawElements ( ) [inline, virtual]

Reimplemented in osg::DrawElements.

virtual const DrawElements* osg::PrimitiveSet::getDrawElements ( ) const [inline, virtual]

Reimplemented in osg::DrawElements.

GLenum osg::PrimitiveSet::getMode ( ) const [inline]
virtual unsigned int osg::PrimitiveSet::getNumIndices ( ) const [pure virtual]
int osg::PrimitiveSet::getNumInstances ( ) const [inline]
virtual unsigned int osg::PrimitiveSet::getNumPrimitives ( ) const [virtual]

Reimplemented in osg::DrawArrayLengths.

virtual unsigned int osg::PrimitiveSet::getTotalDataSize ( ) const [inline, virtual]
Type osg::PrimitiveSet::getType ( ) const [inline]
virtual unsigned int osg::PrimitiveSet::index ( unsigned int  pos) const [pure virtual]
virtual bool osg::PrimitiveSet::isSameKindAs ( const Object obj) const [inline, virtual]
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.

Reimplemented from osg::BufferData.

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

virtual void osg::PrimitiveSet::offsetIndices ( int  offset) [pure virtual]
void osg::PrimitiveSet::setMode ( GLenum  mode) [inline]
void osg::PrimitiveSet::setNumInstances ( int  n) [inline]
virtual bool osg::PrimitiveSet::supportsBufferObject ( ) const [inline, virtual]

Member Data Documentation

GLenum osg::PrimitiveSet::_mode [protected]

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

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