13 #ifndef __UT_PerfMonProfile__
14 #define __UT_PerfMonProfile__
62 const char *title()
const;
64 void uiFriendlyTitle(
UT_String &title)
const;
67 void setTitle(
const char *title);
74 void startRecording();
90 bool isActive()
const;
93 void enableRecording(
bool enable);
96 bool isRecording()
const;
102 void setRecordOptions(
106 int getMinFrame()
const;
109 int getMaxFrame()
const;
113 bool getIsDiff()
const;
127 const char *stat_name)
const;
136 const char *stat_name)
const;
139 const char *stat_name,
142 int thread_id = UT_PERFMON_STAT_WALL_TIME)
const;
145 const char *stat_name)
const;
148 const char *stat_name,
151 int thread_id = UT_PERFMON_STAT_WALL_TIME)
const;
153 fpreal getMaxStatValue(
const char * stat_name)
const;
163 int min_frame,
int max_frame);
170 const char *getDiffProfileTitle(
int index)
const;
174 bool exportStatsAsCSV(
const char *file_path)
const;
182 bool time_in_seconds,
183 bool time_as_percentage,
184 bool tree_view)
const;
195 bool time_in_seconds,
196 bool time_as_percentage,
197 bool tree_view)
const;
213 void updateStatsFromTimedFrameEvent_(
218 void updateStatsFromTimedEvent_(
223 void updateStatsFromMemoryEvent_(
235 const char *object_icon);
245 void createDiffStatsForCategories_(
248 const char *profile_title1,
249 const char *profile_title2);
254 void createCategoryDiffStats_(
257 const char *profile_title1,
258 const char *profile_title2);
264 void getStatsThatNeedDiffing_(
273 void createDiffStats_(
276 const char *profile_title1,
277 const char *profile_title2);
281 void registerDiffStatDefs_(
287 void updateStatsFromTimedEvent_(
289 const char *event_name,
297 void updateMaxStats_(
fpreal val,
const char * stat_name);
300 void getDiffIndices_(
int &index1,
int &index2,
302 const char *stat_name)
const;
314 void updateMinAndMaxFrames_(
int frame);
317 void setMinFrame_(
int frame);
320 void setMaxFrame_(
int frame);
332 bool populate_children)
const;
337 bool time_in_seconds,
338 bool time_as_percentage,
340 bool populate_children)
const;
351 mutable UT_Lock myStatsUpdateLock;
GLsizei const GLchar *const * path
Definition of a collected statistic.
UT_ValArray< std::pair< int, const UT_PerfMonStats * > > UT_PerfMonStatsDepthStack
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
LeafData & operator=(const LeafData &)=delete
UT_ValArray< const UT_PerfMonStats * > UT_PerfMonStatsStack
**Note that the tasks the thread_id