42#define AiProfileBlock(...)
69#define AiProfileBlock(...) AiProfileBlockRAII Ai_profile_block(__VA_ARGS__)
96AI_API
void AiProfileUpdate(uint64_t start_counter, uint64_t end_counter,
97 const char* name,
const AtNode* node);
113ARNOLD_FORCEINLINE
void AiProfileEnd(uint64_t start_counter,
const char* name,
const AtNode* node=NULL)
116 if (Ai_unlikely(start_counter != end_counter))
121struct AiProfileBlockRAII
123 AiProfileBlockRAII(
const char* name,
const AtNode* node=NULL) :
126 AiProfileBlockRAII(
const AtNode* node) :
129 ~AiProfileBlockRAII()
131 AiProfileEnd(start_counter, name, node);
135 const uint64_t start_counter;
136 const char*
const name;
DLL export prefix for API functions (necessary for multi-platform development)
AtString class for fast comparisons.
Arnold String allows for fast string comparisons.
Definition: ai_string.h:46
AI_API AI_FORCEINLINE uint64_t AiProfileCounter()
Get profile counter.
Definition: ai_stats.cpp:56
AI_API void AiProfileUpdate(uint64_t start_counter, uint64_t end_counter, const char *name, const AtNode *node)
Finalize profile entry.
Definition: ai_stats.cpp:61
AI_API void AiStatsSetMode(AtStatsMode mode)
Set the file mode for outputting structured statistics.
Definition: ai_stats.cpp:18
AI_API void AiProfileSetFileName(const char *filename)
JSON file to which profiling traces should be written to.
Definition: ai_stats.cpp:67
AI_API const char * AiStatsGetFileName()
Get the filename of the structured stats output.
Definition: ai_stats.cpp:51
AtStatsMode
Output mode for structured statistics.
Definition: ai_stats.h:30
AI_API AtStatsMode AiStatsGetMode()
Get the mode for outputting structured statistics.
Definition: ai_stats.cpp:41
AI_API AtString AiProfileGetFileName()
Get the JSON filename to which profiling traces will be written to.
Definition: ai_stats.cpp:72
AI_API void AiStatsSetFileName(const char *filename)
Set the output file that will contain structured stats from this session's renders.
Definition: ai_stats.cpp:28
@ AI_STATS_MODE_OVERWRITE
Overwrite the file if it exists
Definition: ai_stats.h:31
@ AI_STATS_MODE_APPEND
Append data to existing statistics file.
Definition: ai_stats.h:32
This represents a node in Arnold.