OpenSceneGraph  3.5.1
Public Types | Public Member Functions | Public Attributes | List of all members
osgUtil::Statistics Class Reference

Statistics base class. More...

Inheritance diagram for osgUtil::Statistics:
Inheritance graph
[legend]

Public Types

enum  StatsType {
  STAT_NONE, STAT_FRAMERATE, STAT_GRAPHS, STAT_PRIMS,
  STAT_PRIMSPERVIEW, STAT_PRIMSPERBIN, STAT_DC, STAT_RESTART
}
 
typedef std::pair< unsigned int, unsigned int > PrimitivePair
 
typedef std::map< GLenum, PrimitivePairPrimitiveValueMap
 
typedef std::map< GLenum, unsigned int > PrimitiveCountMap
 

Public Member Functions

 Statistics ()
 
void reset ()
 
void setType (StatsType t)
 
virtual void setVertexArray (unsigned int count, const osg::Vec3 *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void setVertexArray (unsigned int count, const osg::Vec2 *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void setVertexArray (unsigned int count, const osg::Vec4 *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void setVertexArray (unsigned int count, const osg::Vec3d *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void setVertexArray (unsigned int count, const osg::Vec2d *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void setVertexArray (unsigned int count, const osg::Vec4d *)
 Sets the array of vertices used to describe the primitives. More...
 
virtual void drawArrays (GLenum mode, GLint, GLsizei count)
 Mimics the OpenGL glDrawArrays() function. More...
 
virtual void drawElements (GLenum mode, GLsizei count, const GLubyte *)
 Mimics the OpenGL glDrawElements() function. More...
 
virtual void drawElements (GLenum mode, GLsizei count, const GLushort *)
 Mimics the OpenGL glDrawElements() function. More...
 
virtual void drawElements (GLenum mode, GLsizei count, const GLuint *)
 Mimics the OpenGL glDrawElements() function. More...
 
virtual void begin (GLenum mode)
 Mimics the OpenGL glBegin() function. More...
 
void vertex ()
 
virtual void vertex (float, float, float)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void vertex (const osg::Vec3 &)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void vertex (const osg::Vec2 &)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void vertex (const osg::Vec4 &)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void vertex (float, float)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void vertex (float, float, float, float)
 Mimics the OpenGL glVertex() "family of functions". More...
 
virtual void end ()
 Mimics the OpenGL glEnd() function. More...
 
void addDrawable ()
 
void addFastDrawable ()
 
void addMatrix ()
 
void addLight (int np)
 
void addImpostor (int np)
 
int getBins ()
 
void setDepth (int d)
 
void addBins (int np)
 
void setBinNo (int n)
 
void addStateGraphs (int n)
 
void addOrderedLeaves (int n)
 
void add (const Statistics &stats)
 
PrimitiveCountMapgetPrimitiveCountMap ()
 
const PrimitiveCountMapgetPrimitiveCountMap () const
 
PrimitiveValueMapgetPrimitiveValueMap ()
 
const PrimitiveValueMapgetPrimitiveValueMap () const
 
PrimitiveCountMap::iterator GetPrimitivesBegin ()
 deprecated More...
 
PrimitiveCountMap::iterator GetPrimitivesEnd ()
 deprecated More...
 
- Public Member Functions inherited from osg::PrimitiveFunctor
virtual ~PrimitiveFunctor ()
 
void useVertexCacheAsVertexArray ()
 

Public Attributes

int numDrawables
 
int nummat
 
int nbins
 
int numStateGraphs
 
int numFastDrawables
 
int nlights
 
int depth
 
int _binNo
 
StatsType stattype
 
int nimpostor
 
int numOrderedLeaves
 
unsigned int _vertexCount
 
PrimitiveValueMap _primitiveCount
 
GLenum _currentPrimitiveFunctorMode
 
- Public Attributes inherited from osg::PrimitiveFunctor
std::vector< Vec3_vertexCache
 
bool _treatVertexDataAsTemporary
 

Detailed Description

Statistics base class.

Used to extract primitive information from the renderBin(s). Add a case of getStats(osgUtil::Statistics *stat) for any new drawable (or drawable derived class) that you generate (eg see Geometry.cpp). There are 20 types of drawable counted - actually only 14 cases can occur in reality. these represent sets of GL_POINTS, GL_LINES GL_LINESTRIPS, LOOPS, TRIANGLES, TRI-fans, tristrips, quads, quadstrips etc The number of triangles rendered is inferred: each triangle = 1 triangle (number of vertices/3) each quad = 2 triangles (nverts/2) each trifan or tristrip = (length-2) triangles and so on.

Member Typedef Documentation

typedef std::map<GLenum, unsigned int> osgUtil::Statistics::PrimitiveCountMap
typedef std::pair<unsigned int,unsigned int> osgUtil::Statistics::PrimitivePair

Member Enumeration Documentation

Enumerator
STAT_NONE 
STAT_FRAMERATE 
STAT_GRAPHS 
STAT_PRIMS 
STAT_PRIMSPERVIEW 
STAT_PRIMSPERBIN 
STAT_DC 
STAT_RESTART 

Constructor & Destructor Documentation

osgUtil::Statistics::Statistics ( )

Member Function Documentation

void osgUtil::Statistics::add ( const Statistics stats)
void osgUtil::Statistics::addBins ( int  np)
inline
void osgUtil::Statistics::addDrawable ( )
inline
void osgUtil::Statistics::addFastDrawable ( )
inline
void osgUtil::Statistics::addImpostor ( int  np)
inline
void osgUtil::Statistics::addLight ( int  np)
inline
void osgUtil::Statistics::addMatrix ( )
inline
void osgUtil::Statistics::addOrderedLeaves ( int  n)
inline
void osgUtil::Statistics::addStateGraphs ( int  n)
inline
virtual void osgUtil::Statistics::begin ( GLenum  mode)
virtual

Mimics the OpenGL glBegin() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::drawArrays ( GLenum  mode,
GLint  first,
GLsizei  count 
)
virtual

Mimics the OpenGL glDrawArrays() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::drawElements ( GLenum  mode,
GLsizei  count,
const GLubyte *  indices 
)
virtual

Mimics the OpenGL glDrawElements() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::drawElements ( GLenum  mode,
GLsizei  count,
const GLushort *  indices 
)
virtual

Mimics the OpenGL glDrawElements() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::drawElements ( GLenum  mode,
GLsizei  count,
const GLuint *  indices 
)
virtual

Mimics the OpenGL glDrawElements() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::end ( )
virtual

Mimics the OpenGL glEnd() function.

Implements osg::PrimitiveFunctor.

int osgUtil::Statistics::getBins ( )
inline
PrimitiveCountMap& osgUtil::Statistics::getPrimitiveCountMap ( )
inline
const PrimitiveCountMap& osgUtil::Statistics::getPrimitiveCountMap ( ) const
inline
PrimitiveCountMap::iterator osgUtil::Statistics::GetPrimitivesBegin ( )
inline

deprecated

PrimitiveCountMap::iterator osgUtil::Statistics::GetPrimitivesEnd ( )
inline

deprecated

PrimitiveValueMap& osgUtil::Statistics::getPrimitiveValueMap ( )
inline
const PrimitiveValueMap& osgUtil::Statistics::getPrimitiveValueMap ( ) const
inline
void osgUtil::Statistics::reset ( )
void osgUtil::Statistics::setBinNo ( int  n)
inline
void osgUtil::Statistics::setDepth ( int  d)
inline
void osgUtil::Statistics::setType ( StatsType  t)
inline
virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec3 vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec2 vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec4 vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec3d vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec2d vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::setVertexArray ( unsigned int  count,
const osg::Vec4d vertices 
)
inlinevirtual

Sets the array of vertices used to describe the primitives.

Somehow mimics the OpenGL glVertexPointer() function.

Implements osg::PrimitiveFunctor.

void osgUtil::Statistics::vertex ( )
inline
virtual void osgUtil::Statistics::vertex ( float  x,
float  y,
float  z 
)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::vertex ( const osg::Vec3 vert)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::vertex ( const osg::Vec2 vert)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::vertex ( const osg::Vec4 vert)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::vertex ( float  x,
float  y 
)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

virtual void osgUtil::Statistics::vertex ( float  x,
float  y,
float  z,
float  w 
)
inlinevirtual

Mimics the OpenGL glVertex() "family of functions".

Implements osg::PrimitiveFunctor.

Member Data Documentation

int osgUtil::Statistics::_binNo
GLenum osgUtil::Statistics::_currentPrimitiveFunctorMode
PrimitiveValueMap osgUtil::Statistics::_primitiveCount
unsigned int osgUtil::Statistics::_vertexCount
int osgUtil::Statistics::depth
int osgUtil::Statistics::nbins
int osgUtil::Statistics::nimpostor
int osgUtil::Statistics::nlights
int osgUtil::Statistics::numDrawables
int osgUtil::Statistics::numFastDrawables
int osgUtil::Statistics::nummat
int osgUtil::Statistics::numOrderedLeaves
int osgUtil::Statistics::numStateGraphs
StatsType osgUtil::Statistics::stattype

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

osg logo
Generated at Wed Nov 11 2015 22:15:19 for the OpenSceneGraph by doxygen 1.8.10.