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 SbList class is a template container class for lists.SbList is an extension of the Coin library v...
Definition: SoType.h:46
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