carb::profiler::IProfileMonitor
Defined in carb/profiler/IProfileMonitor.h
- 
struct IProfileMonitor
- Defines an interface to monitor profiling events. - Public Members - 
ProfileEvents (*getLastProfileEvents)()
- Returns the profiled events for the previous frame (up to the previous markFrameEnd() call). - Return
- an opaque pointer that refers to the previous frame’s profiling information. This pointer must be released with releaseLastProfileEvents() when the caller is finished with it. 
 
 - 
size_t (*getLastProfileEventCount)(ProfileEvents events)
- Returns the number of profiling events for a ProfileEvents instance. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
- Return
- The number of profiling events in the array returned by getLastProfileEventsData(). 
 
 - 
ProfileEvent *(*getLastProfileEventsData)(ProfileEvents events)
- Returns an array of profiling events for a ProfileEvents instance. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
- Return
- An array of ProfileEvent objects. The size of the array is returned by getLastProfileEventCount(). 
 
 - 
uint32_t (*getProfileThreadCount)(ProfileEvents events)
- Returns the number of thread IDs known to the ProfileEvents instance. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
- Return
- The number of thread IDs in the array returned by getProfileThreadIds(). 
 
 - 
uint64_t const *(*getProfileThreadIds)(ProfileEvents events)
- Returns an array of thread IDs known to a ProfileEvents instance. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
- Return
- An array of thread IDs. The size of the array is returned by getProfileThreadCount(). The thread IDs are comparable with - GetCurrentThreadID()on Windows and- gettid()on Linux.
 
 - 
void (*releaseLastProfileEvents)(ProfileEvents events)
- Destroys a ProfileEvents instance. - The data returned getLastProfileEventsData() and getProfileThreadIds() must not be referenced after this function is called. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
 
 - 
uint64_t (*getMainThreadId)(ProfileEvents events)
- Returns the thread ID that called markFrameEnd() event. - Param events
- The ProfileEvents instance returned from getLastProfileEvents(). 
- Return
- The thread ID that last called markFrameEnd(). This thread ID is comparable with - GetCurrentThreadID()on Windows and- gettid()on Linux.
 
 - 
void (*markFrameEnd)()
- Marks the end of a frame’s profile events. - After this call, the previous frame’s profile events are available via getLastProfileEvents(). 
 - Public Static Functions - 
static inline constexpr carb::InterfaceDesc getInterfaceDesc() noexcept
- Returns information about this interface. - Auto-generated by CARB_PLUGIN_INTERFACE() or CARB_PLUGIN_INTERFACE_EX. - Returns
- The carb::InterfaceDesc struct with information about this interface. 
 
 - 
static inline constexpr carb::InterfaceDesc getLatestInterfaceDesc() noexcept
- Returns information about the latest version of this interface. - Auto-generated by CARB_PLUGIN_INTERFACE() or CARB_PLUGIN_INTERFACE_EX. - Returns
- The carb::InterfaceDesc struct with information about the latest version of this interface. 
 
 
- 
ProfileEvents (*getLastProfileEvents)()