1 #ifndef COIN_SBPROFILINGDATA_H 2 #define COIN_SBPROFILINGDATA_H 36 #include <Inventor/SbBasic.h> 37 #include <Inventor/SbTime.h> 39 #include <Inventor/SbName.h> 40 #include <Inventor/lists/SbList.h> 41 #include <Inventor/tools/SbPimplPtr.h> 46 class SbProfilingDataP;
48 typedef void * SbProfilingNodeKey;
49 typedef int16_t SbProfilingNodeTypeKey;
50 typedef const char * SbProfilingNodeNameKey;
58 void setActionType(
SoType actiontype);
59 SoType getActionType(
void)
const;
61 void setActionStartTime(
SbTime starttime);
62 SbTime getActionStartTime(
void)
const;
63 void setActionStopTime(
SbTime stoptime);
64 SbTime getActionStopTime(
void)
const;
65 SbTime getActionDuration(
void)
const;
78 enum NodeDataQueryFlags {
79 INCLUDE_CHILDREN = 0x01
83 void setNodeTiming(
int idx,
SbTime timing);
84 void preOffsetNodeTiming(
int idx,
SbTime timing);
85 SbTime getNodeTiming(
const SoPath * path,
unsigned int queryflags = 0)
const;
86 SbTime getNodeTiming(
int idx,
unsigned int queryflags = 0)
const;
88 void setNodeFootprint(
const SoPath * path, FootprintType type,
90 void setNodeFootprint(
int idx, FootprintType type,
size_t footprint);
91 size_t getNodeFootprint(
const SoPath * path, FootprintType type,
92 unsigned int queryflags = 0)
const;
93 size_t getNodeFootprint(
int idx, FootprintType type,
94 unsigned int queryflags = 0)
const;
96 void setNodeFlag(
const SoPath * path, NodeFlag flag, SbBool on);
97 void setNodeFlag(
int idx, NodeFlag flag, SbBool on);
98 SbBool getNodeFlag(
const SoPath * path, NodeFlag flag)
const;
99 SbBool getNodeFlag(
int idx, NodeFlag flag)
const;
101 int getIndex(
const SoPath * path, SbBool create = FALSE);
102 int getParentIndex(
int idx)
const;
104 SoType getNodeType(
int idx)
const;
105 SbName getNodeName(
int idx)
const;
107 int getLongestNameLength(
void)
const;
108 int getLongestTypeNameLength(
void)
const;
110 int getNumNodeEntries(
void)
const;
113 void reportAll(SbProfilingDataCB * callback,
void * userdata)
const;
117 void getStatsForType(SbProfilingNodeTypeKey type,
121 void getStatsForName(SbProfilingNodeNameKey name,
135 size_t getProfilingDataSize(
void)
const;
143 SbPimplPtr<SbProfilingDataP> pimpl;
145 void constructorInit(
void);
147 SbBool isPathMatch(
const SoFullPath * path,
int pathlen,
int idx);
149 int getIndexCreate(
const SoFullPath * path,
int pathlen);
150 int getIndexNoCreate(
const SoPath * path,
int pathlen)
const;
151 int getIndexForwardCreate(
const SoFullPath * path,
int pathlen,
153 int getIndexForwardNoCreate(
const SoFullPath * path,
int pathlen,
154 int parentindex)
const;
158 #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:56
Data structure for gathering scene graph traversal profiling information.
Definition: SbProfilingData.h:52
The SoFullPath class allows examination of hidden children in paths.SoPath allows only access from th...
Definition: SoFullPath.h:38
The SoPath class is a container class for traversal path descriptions.SoPath objects contain a list o...
Definition: SoPath.h:52
The SbTime class instances represents time values.SbTime is a convenient way of doing system independ...
Definition: SbTime.h:50
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:59
The SbName class stores strings by reference.The class is used by Coin for storing keywords...
Definition: SbName.h:40