sandbox
Loading...
Searching...
No Matches
profiler.hpp
1#ifndef LIBSBX_UTILITY_PROFILER_HPP_
2#define LIBSBX_UTILITY_PROFILER_HPP_
3
4#if defined(SBX_PROFILING_ENABLED)
5
6#include <tracy/Tracy.hpp>
7#include <tracy/TracyC.h>
8
9#define SBX_PROFILE_SCOPE(name) ZoneScopedN(name)
10#define SBX_PROFILE_SCOPE_NAMED(token, name) ZoneNamedN(token, name, true)
11#define SBX_PROFILE_FUNCTION() ZoneScoped
12#define SBX_PROFILE_SCOPE_COLORED(name, color) ZoneScopedNC(name, color)
13#define SBX_PROFILE_SET_ZONE_TEXT(text, size) ZoneText(text, size)
14
15#define SBX_PROFILE_SCOPE_START(token, name) TracyCZoneN(token, name, true)
16#define SBX_PROFILE_SCOPE_END(token) TracyCZoneEnd(token)
17
18#define SBX_PROFILE_FRAME_MARK() FrameMark
19#define SBX_PROFILE_FRAME_MARK_NAMED(name) FrameMarkNamed(name)
20#define SBX_PROFILE_FRAME_MARK_START(name) FrameMarkStart(name)
21#define SBX_PROFILE_FRAME_MARK_END(name) FrameMarkEnd(name)
22
23#define SBX_PROFILE_THREAD_NAME(name) tracy::SetThreadName(name)
24
25#define SBX_PROFILE_PLOT(name, value) TracyPlot(name, value)
26#define SBX_PROFILE_MESSAGE(text, size) TracyMessage(text, size)
27#define SBX_PROFILE_MESSAGE_LITERAL(text) TracyMessageL(text)
28
29#else
30
31#define SBX_PROFILE_SCOPE(name) static_cast<void>(0)
32#define SBX_PROFILE_SCOPE_NAMED(token, name) static_cast<void>(0)
33#define SBX_PROFILE_FUNCTION() static_cast<void>(0)
34#define SBX_PROFILE_SCOPE_COLORED(name, color) static_cast<void>(0)
35#define SBX_PROFILE_SET_ZONE_TEXT(text, size) static_cast<void>(0)
36
37#define SBX_PROFILE_SCOPE_START(token, name) static_cast<void>(0)
38#define SBX_PROFILE_SCOPE_END(token) static_cast<void>(0)
39
40#define SBX_PROFILE_FRAME_MARK() static_cast<void>(0)
41#define SBX_PROFILE_FRAME_MARK_NAMED(name) static_cast<void>(0)
42#define SBX_PROFILE_FRAME_MARK_START(name) static_cast<void>(0)
43#define SBX_PROFILE_FRAME_MARK_END(name) static_cast<void>(0)
44
45#define SBX_PROFILE_THREAD_NAME(name) static_cast<void>(0)
46
47#define SBX_PROFILE_PLOT(name, value) static_cast<void>(0)
48#define SBX_PROFILE_MESSAGE(text, size) static_cast<void>(0)
49#define SBX_PROFILE_MESSAGE_LITERAL(text) static_cast<void>(0)
50
51#endif // SBX_PROFILING_ENABLED
52
53#endif // LIBSBX_UTILITY_PROFILER_HPP_