.TH "SoProfilingReportGenerator" 3 "Tue Dec 26 2023 17:59:22" "Version 4.0.2" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoProfilingReportGenerator \- Convenience report generator functionality\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "enum \fBColumn\fP { \fBNAME\fP, \fBTYPE\fP, \fBCOUNT\fP, \fBTIME_SECS\fP, \fBTIME_SECS_MAX\fP, \fBTIME_SECS_AVG\fP, \fBTIME_MSECS\fP, \fBTIME_MSECS_MAX\fP, \fBTIME_MSECS_AVG\fP, \fBTIME_PERCENT\fP, \fBTIME_PERCENT_MAX\fP, \fBTIME_PERCENT_AVG\fP, \fBMEM_BYTES\fP, \fBMEM_KILOBYTES\fP, \fBGFX_MEM_BYTES\fP, \fBGFX_MEM_KILOBYTES\fP }" .br .ti -1c .RI "enum \fBSortOrder\fP { \fBTIME_ASC\fP, \fBTIME_DES\fP, \fBTIME_MAX_ASC\fP, \fBTIME_MAX_DES\fP, \fBTIME_AVG_ASC\fP, \fBTIME_AVG_DES\fP, \fBCOUNT_ASC\fP, \fBCOUNT_DES\fP, \fBALPHANUMERIC_ASC\fP, \fBALPHANUMERIC_DES\fP, \fBMEM_ASC\fP, \fBMEM_DES\fP, \fBGFX_MEM_ASC\fP, \fBGFX_MEM_DES\fP }" .br .ti -1c .RI "enum \fBDataCategorization\fP { \fBTYPES\fP, \fBNAMES\fP, \fBNODES\fP }" .br .ti -1c .RI "enum \fBCallbackResponse\fP { \fBCONTINUE\fP, \fBSTOP\fP }" .br .ti -1c .RI "\fBtypedef\fP CallbackResponse \fBReportCB\fP(\fBvoid\fP *userdata, int \fBentrynum\fP, \fBconst\fP char *text)" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBinit\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP SbProfilingReportSortCriteria * \fBgetReportSortCriteria\fP (\fBconst\fP \fBSbList\fP< SortOrder > &\fBorder\fP)" .br .ti -1c .RI "\fBstatic\fP SbProfilingReportSortCriteria * \fBgetDefaultReportSortCriteria\fP (DataCategorization \fBcategory\fP)" .br .ti -1c .RI "\fBstatic\fP SbProfilingReportPrintCriteria * \fBgetReportPrintCriteria\fP (\fBconst\fP \fBSbList\fP< Column > &\fBorder\fP)" .br .ti -1c .RI "\fBstatic\fP SbProfilingReportPrintCriteria * \fBgetDefaultReportPrintCriteria\fP (DataCategorization \fBcategory\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBfreeCriteria\fP (SbProfilingReportSortCriteria *\fBcriteria\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBfreeCriteria\fP (SbProfilingReportPrintCriteria *\fBcriteria\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBgenerate\fP (\fBconst\fP \fBSbProfilingData\fP &data, DataCategorization \fBcategorization\fP, SbProfilingReportSortCriteria *sort, SbProfilingReportPrintCriteria *print, int count, SbBool \fBaddheader\fP, ReportCB *\fBreportcallback\fP, \fBvoid\fP *userdata)" .br .ti -1c .RI "\fBstatic\fP CallbackResponse \fBstdoutCB\fP (\fBvoid\fP *userdata, int \fBentrynum\fP, \fBconst\fP char *text)" .br .ti -1c .RI "\fBstatic\fP CallbackResponse \fBstderrCB\fP (\fBvoid\fP *userdata, int \fBentrynum\fP, \fBconst\fP char *text)" .br .in -1c .SH "Detailed Description" .PP Convenience report generator functionality\&. With this static class, you can conveniently produce a profiling data report from an \fBSbProfilingData\fP object\&. .PP \fBSince\fP .RS 4 Coin \fB3\&.0\fP .RE .PP .SH "Member Function Documentation" .PP .SS "\fBvoid\fP SoProfilingReportGenerator::init (\fBvoid\fP)\fC [static]\fP" Allocate mutexes and other such infrastructure constructs needed by the report generator\&. .SS "SbProfilingReportSortCriteria * SoProfilingReportGenerator::getReportSortCriteria (\fBconst\fP \fBSbList\fP< SortOrder > & order)\fC [static]\fP" Returns a sorting criteria setting object that will make \fBgenerate()\fP sort the results based on the given argument list in that left-to-right priority order\&. .PP Always end the argument list with TERMINATE_ARGLIST\&. .PP \fBSee also\fP .RS 4 freeCriteria .RE .PP .SS "SbProfilingReportSortCriteria * SoProfilingReportGenerator::getDefaultReportSortCriteria (DataCategorization category)\fC [static]\fP" Returns a sensible default that can be used for a given profiling data categorization\&. .SS "SbProfilingReportPrintCriteria * SoProfilingReportGenerator::getReportPrintCriteria (\fBconst\fP \fBSbList\fP< Column > & order)\fC [static]\fP" Returns a printing criteria setting object that will make \fBgenerate()\fP send a formatted string as the text argument based on the given argument list\&. If you force TERMINATE_ARGLIST into the first argument, the text string will be empty\&. .PP Always end the argument list with TERMINATE_ARGLIST\&. .PP \fBSee also\fP .RS 4 freeCriteria .RE .PP .SS "SbProfilingReportPrintCriteria * SoProfilingReportGenerator::getDefaultReportPrintCriteria (DataCategorization category)\fC [static]\fP" Returns a default printing criteria object that can be used sensibly with the given profiling data categorization\&. .SS "\fBvoid\fP SoProfilingReportGenerator::generate (\fBconst\fP \fBSbProfilingData\fP & data, DataCategorization categorization, SbProfilingReportSortCriteria * sort, SbProfilingReportPrintCriteria * print, int count, SbBool addheader, ReportCB * reportcallback, \fBvoid\fP * userdata)\fC [static]\fP" Generate a sorted, formatted report, by calling a callback until the number of entries are exhausted or the callback returns STOP\&. .SS "SoProfilingReportGenerator::CallbackResponse SoProfilingReportGenerator::stdoutCB (\fBvoid\fP * userdata, int entryidx, \fBconst\fP char * text)\fC [static]\fP" Ready-made callback that can be used with \fBgenerate()\fP to print to stdout\&. .PP \fBSee also\fP .RS 4 \fBgenerate\fP .RE .PP .SS "SoProfilingReportGenerator::CallbackResponse SoProfilingReportGenerator::stderrCB (\fBvoid\fP * userdata, int entryidx, \fBconst\fP char * text)\fC [static]\fP" Ready-made callback that can be used with \fBgenerate()\fP to print to stderr\&. .PP \fBSee also\fP .RS 4 \fBgenerate\fP .RE .PP .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.