Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
MemoryProfiling.h
Go to the documentation of this file.
1#pragma once
2
3#ifdef ENABLE_TRACY
4#include <iostream>
5#include <cstdlib>
6#include <new>
7#include <mutex>
8#include <tracy/Tracy.hpp> // Assuming Tracy headers are in your include path
9/*
10extern std::mutex tracy_mutex; // Mutex for thread safety
11
12// Regular new/delete
13void* operator new(std::size_t count);
14void operator delete(void* ptr) noexcept;
15
16// Array new/delete
17void* operator new[](std::size_t count);
18void operator delete[](void* ptr) noexcept;
19
20// Placement new/delete (noexcept)
21void* operator new(std::size_t count, const std::nothrow_t& tag) noexcept;
22void operator delete(void* ptr, const std::nothrow_t& tag) noexcept;
23void* operator new[](std::size_t count, const std::nothrow_t& tag) noexcept;
24void operator delete[](void* ptr, const std::nothrow_t& tag) noexcept;
25
26// Aligned new/delete
27#ifdef _WIN32
28#include <malloc.h> // For _aligned_malloc, _aligned_free (Windows)
29#endif
30
31void* operator new(std::size_t count, std::align_val_t al);
32void operator delete(void* ptr, std::align_val_t al) noexcept;
33void* operator new[](std::size_t count, std::align_val_t al);
34void operator delete[](void* ptr, std::align_val_t al) noexcept;
35*/
36#endif