13 #ifndef __UT_PerfMonProfile__
14 #define __UT_PerfMonProfile__
58 const char *title()
const;
60 void uiFriendlyTitle(
UT_String &title)
const;
63 void setTitle(
const char *title);
70 void startRecording();
86 bool isActive()
const;
89 void enableRecording(
bool enable);
92 bool isRecording()
const;
98 void setRecordOptions(
102 int getMinFrame()
const;
105 int getMaxFrame()
const;
109 bool getIsDiff()
const;
123 const char *stat_name)
const;
132 const char *stat_name)
const;
135 const char *stat_name,
138 int thread_id = UT_PERFMON_STAT_WALL_TIME)
const;
141 const char *stat_name)
const;
144 const char *stat_name,
147 int thread_id = UT_PERFMON_STAT_WALL_TIME)
const;
149 fpreal getMaxStatValue(
const char * stat_name)
const;
159 int min_frame,
int max_frame);
166 const char *getDiffProfileTitle(
int index)
const;
170 bool exportStatsAsCSV(
const char *file_path)
const;
186 void updateStatsFromTimedFrameEvent_(
191 void updateStatsFromTimedEvent_(
196 void updateStatsFromMemoryEvent_(
208 const char *object_icon);
218 void createDiffStatsForCategories_(
221 const char *profile_title1,
222 const char *profile_title2);
227 void createCategoryDiffStats_(
230 const char *profile_title1,
231 const char *profile_title2);
237 void getStatsThatNeedDiffing_(
246 void createDiffStats_(
249 const char *profile_title1,
250 const char *profile_title2);
254 void registerDiffStatDefs_(
260 void updateStatsFromTimedEvent_(
262 const char *event_name,
270 void updateMaxStats_(
fpreal val,
const char * stat_name);
273 void getDiffIndices_(
int &index1,
int &index2,
275 const char *stat_name)
const;
287 void updateMinAndMaxFrames_(
int frame);
290 void setMinFrame_(
int frame);
293 void setMaxFrame_(
int frame);
304 mutable UT_Lock myStatsUpdateLock;
GLsizei const GLchar *const * path
Definition of a collected statistic.
std::optional< T > UT_Optional
UT_PerfMonObjectType
Object types.
UT_PerfMonCategory
Categories.
GLuint const GLchar * name
A collection of statistics for a particular object (i.e. node, viewport).
UT_ValArray< UT_PerfMonProfile * > UT_PerfMonProfileList
**Note that the tasks the thread_id