SGCT master (487fac4)
Simple Graphics Cluster Toolkit
Loading...
Searching...
No Matches
profiling.h
Go to the documentation of this file.
1/*****************************************************************************************
2 * SGCT *
3 * Simple Graphics Cluster Toolkit *
4 * *
5 * Copyright (c) 2012-2026 *
6 * For conditions of distribution and use, see copyright notice in LICENSE.md *
7 ****************************************************************************************/
8
9#ifndef __SGCT__PROFILING__H__
10#define __SGCT__PROFILING__H__
11
12#include <sgct/opengl.h>
13
14#ifdef WIN32
15#include <CodeAnalysis/warnings.h>
16#pragma warning(push)
17#pragma warning(disable : ALL_CODE_ANALYSIS_WARNINGS)
18#elif defined(__GNUC__)
19#pragma GCC diagnostic push
20#pragma GCC diagnostic ignored "-Wold-style-cast"
21#endif // WIN32
22
23#ifdef TRACY_ENABLE
24
25#include <tracy/Tracy.hpp>
26#include <tracy/TracyOpenGL.hpp>
27
28#ifdef SGCT_OVERRIDE_NEW_AND_DELETE
29void* operator new(size_t count);
30void operator delete(void* ptr) noexcept;
31#endif // SGCT_OVERRIDE_NEW_AND_DELETE
32
33#else // ^^^^ TRACY_ENABLE // !TRACY_ENABLE vvvv
34
35#define ZoneScoped
36#define ZoneScopedN(x)
37#define TracyGpuZone(x)
38#define TracyGpuContext
39#define TracyGpuCollect
40#define FrameMark
41#define ZoneText(text, length)
42#define TracyLockable(type, var) type var
43#define TracyAlloc(ptr, bytes)
44#define TracyAllocN(ptr, bytes, name)
45
46#endif // TRACY_ENABLE
47
48#ifdef WIN32
49#pragma warning(pop)
50#elif defined(__GNUC__)
51#pragma GCC diagnostic pop
52#endif // WIN32
53
54#endif // __SGCT__PROFILING__H__