1 #ifndef COIN_SBPROFILINGDATA_H 
    2 #define COIN_SBPROFILINGDATA_H 
   27 #include <Inventor/SbBasic.h> 
   28 #include <Inventor/SbTime.h> 
   29 #include <Inventor/SoType.h> 
   30 #include <Inventor/SbName.h> 
   31 #include <Inventor/lists/SbList.h> 
   32 #include <Inventor/tools/SbPimplPtr.h> 
   37 class SbProfilingDataP;
 
   39 typedef void * SbProfilingNodeKey; 
 
   40 typedef int16_t SbProfilingNodeTypeKey;
 
   41 typedef const char * SbProfilingNodeNameKey;
 
   49   void setActionType(
SoType actiontype);
 
   50   SoType getActionType(
void) 
const;
 
   52   void setActionStartTime(
SbTime starttime);
 
   53   SbTime getActionStartTime(
void) 
const;
 
   54   void setActionStopTime(
SbTime stoptime);
 
   55   SbTime getActionStopTime(
void) 
const;
 
   56   SbTime getActionDuration(
void) 
const;
 
   69   enum NodeDataQueryFlags {
 
   70     INCLUDE_CHILDREN = 0x01
 
   74   void setNodeTiming(
int idx, 
SbTime timing);
 
   75   void preOffsetNodeTiming(
int idx, 
SbTime timing);
 
   76   SbTime getNodeTiming(
const SoPath * path, 
unsigned int queryflags = 0) 
const;
 
   77   SbTime getNodeTiming(
int idx, 
unsigned int queryflags = 0) 
const;
 
   79   void setNodeFootprint(
const SoPath * path, FootprintType type,
 
   81   void setNodeFootprint(
int idx, FootprintType type, 
size_t footprint);
 
   82   size_t getNodeFootprint(
const SoPath * path, FootprintType type,
 
   83                           unsigned int queryflags = 0) 
const;
 
   84   size_t getNodeFootprint(
int idx, FootprintType type,
 
   85                           unsigned int queryflags = 0) 
const;
 
   87   void setNodeFlag(
const SoPath * path, NodeFlag flag, SbBool on);
 
   88   void setNodeFlag(
int idx, NodeFlag flag, SbBool on);
 
   89   SbBool getNodeFlag(
const SoPath * path, NodeFlag flag) 
const;
 
   90   SbBool getNodeFlag(
int idx, NodeFlag flag) 
const;
 
   92   int getIndex(
const SoPath * path, SbBool create = FALSE);
 
   93   int getParentIndex(
int idx) 
const;
 
   95   SoType getNodeType(
int idx) 
const;
 
   96   SbName getNodeName(
int idx) 
const;
 
   98   int getLongestNameLength(
void) 
const;
 
   99   int getLongestTypeNameLength(
void) 
const;
 
  101   int getNumNodeEntries(
void) 
const;
 
  104   void reportAll(SbProfilingDataCB * callback, 
void * userdata) 
const;
 
  108   void getStatsForType(SbProfilingNodeTypeKey type,
 
  112   void getStatsForName(SbProfilingNodeNameKey name,
 
  126   size_t getProfilingDataSize(
void) 
const;
 
  134   SbPimplPtr<SbProfilingDataP> pimpl;
 
  136   void constructorInit(
void);
 
  138   SbBool isPathMatch(
const SoFullPath * path, 
int pathlen, 
int idx);
 
  140   int getIndexCreate(
const SoFullPath * path, 
int pathlen);
 
  141   int getIndexNoCreate(
const SoPath * path, 
int pathlen) 
const;
 
  142   int getIndexForwardCreate(
const SoFullPath * path, 
int pathlen,
 
  144   int getIndexForwardNoCreate(
const SoFullPath * path, 
int pathlen,
 
  145                               int parentindex) 
const;
 
  149 #endif // !COIN_SBPROFILINGDATA_H 
The SoNode class is the base class for nodes used in scene graphs.Coin is a retained mode 3D visualiz...
Definition: SoNode.h:47
Data structure for gathering scene graph traversal profiling information. 
Definition: SbProfilingData.h:43
The SoFullPath class allows examination of hidden children in paths.SoPath allows only access from th...
Definition: SoFullPath.h:29
The SoPath class is a container class for traversal path descriptions.SoPath objects contain a list o...
Definition: SoPath.h:43
The SbTime class instances represents time values.SbTime is a convenient way of doing system independ...
Definition: SbTime.h:41
The SoType class is the basis for the run-time type system in Coin.Many of the classes in the Coin li...
Definition: SoType.h:50
The SbName class stores strings by reference.The class is used by Coin for storing keywords...
Definition: SbName.h:31