OpenSceneGraph/doc/doc++/osg/Statistics.html
2002-04-24 20:13:50 +00:00

375 lines
14 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class osg::Statistics</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class <A HREF="#DOC.DOCU">osg::Statistics</A></H2></H2><BLOCKQUOTE> Statistics base class.</BLOCKQUOTE>
<HR>
<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=95>
<param name=classes value="CAttributeFunctor,MAttributeFunctor.html,CReferenced,MReferenced.html,CStatistics,MStatistics.html">
<param name=before value="M,M,M">
<param name=after value="Ml_,MD_,M">
<param name=indent value="0,0,1">
<param name=arrowdir value="down">
</APPLET>
<HR>
<DL>
<P><DL>
<DT><H3>Public Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.18">numOpaque</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.19">nummat</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.20">nbins</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.21">nprims</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.22">nlights</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.23">depth</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.24">_binNo</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Statistics.html#DOC.2.94.4">statsType</A> <B><A HREF="#DOC.2.94.25">stattype</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.26">nimpostor</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.27">numprimtypes</A></B>[16]
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.28">primtypes</A></B>[16]
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.29">primlens</A></B>[16]
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.94.30">primverts</A></B>[16]
</DL></P>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.94.1">Statistics</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.94.3">~Statistics</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.5">reset</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.6">setType</A></B>(<!1><A HREF="Statistics.html#DOC.2.94.4">statsType</A> <!1><A HREF="ImpostorSprite.html#DOC.2.47.24">t</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual bool <B><A HREF="#DOC.2.94.7">apply</A></B>(osg::Drawable::AttributeBitMask abm, <!1><A HREF="Vec3.html">osg::Vec3</A>* begin, <!1><A HREF="Vec3.html">osg::Vec3</A>* <!1><A HREF="LineSegment.html#DOC.2.52.8">end</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.8">addNumPrims</A></B>(const int typ, const int nprimlen, const int numprimtype, const int primvert)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.9">addOpaque</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.10">addMatrix</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.11">addLight</A></B>(const int np)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.12">addNumPrims</A></B>(const int np)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.13">addImpostor</A></B>(const int np)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const int <B><A HREF="#DOC.2.94.14">getBins</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.15">setDepth</A></B>(const int d)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.16">addBins</A></B>(const int np)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.94.17">setBinNo</A></B>(const int n)
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>enum <B><A HREF="#DOC.2.94.2">PrimitiveType</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>enum <B><A HREF="#DOC.2.94.4">statsType</A></B>
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Referenced.html">Referenced</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Referenced.html">Referenced</A>&amp; <B>operator = </B>(<!1><A HREF="Referenced.html">Referenced</A>&amp;)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>ref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref_nodelete</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>referenceCount</B>() const
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>mutable int <B>_refCount</B>
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="AttributeFunctor.html">AttributeFunctor</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>void <B>setAttributeBitMask</B>(AttributeBitMask abm)
<DT>
<IMG ALT="o" SRC=icon2.gif>AttributeBitMask <B>getAttributeBitMask</B>() const
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>AttributeBitMask <B>_abm</B>
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>
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 GeoSet.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.</BLOCKQUOTE>
<DL>
<A NAME="Statistics"></A>
<A NAME="DOC.2.94.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Statistics()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="PrimitiveType"></A>
<A NAME="DOC.2.94.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum PrimitiveType</B></TT>
<DL><DT><DD></DL><P><DL>
<A NAME="NO_TYPE"></A>
<A NAME="DOC.2.94.2.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> NO_TYPE</B></TT>
<DL><DT><DD></DL><P>
<A NAME="POINTS"></A>
<A NAME="DOC.2.94.2.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> POINTS</B></TT>
<DL><DT><DD></DL><P>
<A NAME="LINES"></A>
<A NAME="DOC.2.94.2.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LINES</B></TT>
<DL><DT><DD></DL><P>
<A NAME="LINE_STRIP"></A>
<A NAME="DOC.2.94.2.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LINE_STRIP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="FLAT_LINE_STRIP"></A>
<A NAME="DOC.2.94.2.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> FLAT_LINE_STRIP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="LINE_LOOP"></A>
<A NAME="DOC.2.94.2.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LINE_LOOP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="TRIANGLES"></A>
<A NAME="DOC.2.94.2.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> TRIANGLES</B></TT>
<DL><DT><DD></DL><P>
<A NAME="TRIANGLE_STRIP"></A>
<A NAME="DOC.2.94.2.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> TRIANGLE_STRIP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="FLAT_TRIANGLE_STRIP"></A>
<A NAME="DOC.2.94.2.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> FLAT_TRIANGLE_STRIP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="TRIANGLE_FAN"></A>
<A NAME="DOC.2.94.2.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> TRIANGLE_FAN</B></TT>
<DL><DT><DD></DL><P>
<A NAME="FLAT_TRIANGLE_FAN"></A>
<A NAME="DOC.2.94.2.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> FLAT_TRIANGLE_FAN</B></TT>
<DL><DT><DD></DL><P>
<A NAME="QUADS"></A>
<A NAME="DOC.2.94.2.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> QUADS</B></TT>
<DL><DT><DD></DL><P>
<A NAME="QUAD_STRIP"></A>
<A NAME="DOC.2.94.2.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> QUAD_STRIP</B></TT>
<DL><DT><DD></DL><P>
<A NAME="POLYGON"></A>
<A NAME="DOC.2.94.2.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> POLYGON</B></TT>
<DL><DT><DD></DL><P>
<A NAME="IMPOSTOR"></A>
<A NAME="DOC.2.94.2.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> IMPOSTOR</B></TT>
<DL><DT><DD></DL><P></DL>
<A NAME="~Statistics"></A>
<A NAME="DOC.2.94.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ~Statistics()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="statsType"></A>
<A NAME="DOC.2.94.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum statsType</B></TT>
<DL><DT><DD></DL><P><DL>
<A NAME="STAT_NONE"></A>
<A NAME="DOC.2.94.4.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_NONE</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_FRAMERATE"></A>
<A NAME="DOC.2.94.4.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_FRAMERATE</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_GRAPHS"></A>
<A NAME="DOC.2.94.4.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_GRAPHS</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_VIEWPARMS"></A>
<A NAME="DOC.2.94.4.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_VIEWPARMS</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_PRIMS"></A>
<A NAME="DOC.2.94.4.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_PRIMS</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_PRIMSPERVIEW"></A>
<A NAME="DOC.2.94.4.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_PRIMSPERVIEW</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_PRIMSPERBIN"></A>
<A NAME="DOC.2.94.4.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_PRIMSPERBIN</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_DC"></A>
<A NAME="DOC.2.94.4.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_DC</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STAT_RESTART"></A>
<A NAME="DOC.2.94.4.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STAT_RESTART</B></TT>
<DL><DT><DD></DL><P></DL>
<A NAME="reset"></A>
<A NAME="DOC.2.94.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void reset()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setType"></A>
<A NAME="DOC.2.94.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setType(<!1><A HREF="Statistics.html#DOC.2.94.4">statsType</A> <!1><A HREF="ImpostorSprite.html#DOC.2.47.24">t</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="apply"></A>
<A NAME="DOC.2.94.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool apply(osg::Drawable::AttributeBitMask abm, <!1><A HREF="Vec3.html">osg::Vec3</A>* begin, <!1><A HREF="Vec3.html">osg::Vec3</A>* <!1><A HREF="LineSegment.html#DOC.2.52.8">end</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addNumPrims"></A>
<A NAME="DOC.2.94.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addNumPrims(const int typ, const int nprimlen, const int numprimtype, const int primvert)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addOpaque"></A>
<A NAME="DOC.2.94.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addOpaque()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addMatrix"></A>
<A NAME="DOC.2.94.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addMatrix()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addLight"></A>
<A NAME="DOC.2.94.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addLight(const int np)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addNumPrims"></A>
<A NAME="DOC.2.94.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addNumPrims(const int np)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addImpostor"></A>
<A NAME="DOC.2.94.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addImpostor(const int np)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getBins"></A>
<A NAME="DOC.2.94.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const int getBins()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setDepth"></A>
<A NAME="DOC.2.94.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setDepth(const int d)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="addBins"></A>
<A NAME="DOC.2.94.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addBins(const int np)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setBinNo"></A>
<A NAME="DOC.2.94.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setBinNo(const int n)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="numOpaque"></A>
<A NAME="DOC.2.94.18"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int numOpaque</B></TT>
<DL><DT><DD></DL><P>
<A NAME="nummat"></A>
<A NAME="DOC.2.94.19"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int nummat</B></TT>
<DL><DT><DD></DL><P>
<A NAME="nbins"></A>
<A NAME="DOC.2.94.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int nbins</B></TT>
<DL><DT><DD></DL><P>
<A NAME="nprims"></A>
<A NAME="DOC.2.94.21"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int nprims</B></TT>
<DL><DT><DD></DL><P>
<A NAME="nlights"></A>
<A NAME="DOC.2.94.22"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int nlights</B></TT>
<DL><DT><DD></DL><P>
<A NAME="depth"></A>
<A NAME="DOC.2.94.23"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int depth</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_binNo"></A>
<A NAME="DOC.2.94.24"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _binNo</B></TT>
<DL><DT><DD></DL><P>
<A NAME="stattype"></A>
<A NAME="DOC.2.94.25"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Statistics.html#DOC.2.94.4">statsType</A> stattype</B></TT>
<DL><DT><DD></DL><P>
<A NAME="nimpostor"></A>
<A NAME="DOC.2.94.26"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int nimpostor</B></TT>
<DL><DT><DD></DL><P>
<A NAME="numprimtypes"></A>
<A NAME="DOC.2.94.27"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int numprimtypes[16]</B></TT>
<DL><DT><DD></DL><P>
<A NAME="primtypes"></A>
<A NAME="DOC.2.94.28"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int primtypes[16]</B></TT>
<DL><DT><DD></DL><P>
<A NAME="primlens"></A>
<A NAME="DOC.2.94.29"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int primlens[16]</B></TT>
<DL><DT><DD></DL><P>
<A NAME="primverts"></A>
<A NAME="DOC.2.94.30"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int primverts[16]</B></TT>
<DL><DT><DD></DL><P></DL>
<HR><DL><DT><B>This class has no child classes.</B></DL>
<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>