profiler#
Fully qualified name: carb::profiler
- 
namespace profiler#
 Namespace for carb.profiler and related utilities.
Classes#
- Channel
 Profiler channel which can be configured via carb::settings::ISettings .
- ProfileZoneDynamic
 Helper class that allows to automatically stop profiling upon leaving block.
- ProfileZoneStatic
 Helper class that allows to automatically stop profiling upon leaving block.
- ProfiledMutex
 Wrapper to add automatic profiling to a mutex.
- ProfiledSharedMutex
 Wrapper to add automatic profiling to a shared mutex.
Enumerations#
- uint8_t FlowType
 The type of flow event passed to IProfiler::emitFlowStatic() / IProfiler::emitFlowDynamic() . Typically used only by profiler macros.
- uint8_t InstantType
 The type of instant event passed to IProfiler::emitInstantStatic() / IProfiler::emitInstantDynamic() .
- uint8_t LockableOperationType
 The type of lockable operation event.
Functions#
- void deregisterProfilerForClient() noexcept
 Clears the g_carbProfiler global variable and unregisters load and release hooks with the Framework .
- IProfiler * getProfiler(std::memory_order order=std::memory_order_seq_cst)
 Allows access to the g_carbProfiler global variable previously registered with registerProfilerForClient() .
- void registerProfilerForClient() noexcept
 Acquires the default IProfiler interface and assigns it to the g_carbProfiler global variable.
Structs#
- IProfileMonitor
 Defines an interface to monitor profiling events.
- IProfiler
 Defines the profiler system that is associated with the Framework .
- ProfileEvent
 A struct describing a specific profiling event.
Typedefs#
- GpuContextId
 ID for a GPU context created with IProfiler::createGpuContext .
- LockableId
 ID for a Lockable context created with IProfiler::createLockable .
- MaskCallbackFn
 A callback used for IProfiler::setMaskCallback() . Typically handled automatically by carb::profiler::registerProfilerForClient() .
- ProfileEvents
 An opaque pointer used by IProfileMonitor .
- StaticStringType
 A type representing a static string returned by IProfiler::registerStaticString() .
- ZoneId
 An opaque ID returned by IProfiler::beginStatic() / IProfiler::beginDynamic() that should be returned in IProfiler::endEx() to validate that the zone was closed properly.
Variables#
- constexpr uint64_t kCaptureMaskAll
 Captures all events.
- constexpr uint64_t kCaptureMaskDefault
 If zero is provided to an event function, it becomes this.
- constexpr uint64_t kCaptureMaskNone
 Captures no events, effectively disabling the profiler.
- constexpr uint64_t kCaptureMaskProfiler
 The mask used by the profiler for profiling itself.
- constexpr uint8_t kInvalidGpuContextId
 Special value to indicate that a GPU context ID is invalid.
- constexpr uint32_t kInvalidLockableId
 Special value to indicate that a LockableId is invalid.
- constexpr StaticStringType kInvalidStaticString
 Returned as an error by IProfiler::registerStaticString() if the string could not be registered.
- constexpr ZoneId kNoZoneId
 A marker returned by IProfiler::beginStatic() / IProfiler::beginDynamic() to indicate that the zone should be discarded, typically because it doesn't match the current capture mask.
- constexpr ZoneId kUnknownZoneId
 A marker that is returned IProfiler::beginStatic() / IProfiler::beginDynamic() on error and can be passed to IProfiler::endEx() to prevent zone validation checking.