Fixed Some bugs and added better deprication stuff

This commit is contained in:
OusmBlueNinja 2025-04-30 18:28:04 -05:00
parent dbd0ad28d2
commit 818aa7cfee
11 changed files with 429 additions and 267 deletions

View File

@ -80,6 +80,7 @@
"future": "cpp", "future": "cpp",
"any": "cpp", "any": "cpp",
"ranges": "cpp", "ranges": "cpp",
"unordered_set": "cpp" "unordered_set": "cpp",
"source_location": "cpp"
} }
} }

View File

@ -10,40 +10,40 @@ Collapsed=1
[Window][WindowOverViewport_11111111] [Window][WindowOverViewport_11111111]
Pos=0,19 Pos=0,19
Size=1280,701 Size=1920,1158
Collapsed=0 Collapsed=0
[Window][Inspector] [Window][Inspector]
Pos=991,19 Pos=1553,19
Size=289,701 Size=367,860
Collapsed=0 Collapsed=0
DockId=0x00000017,0 DockId=0x00000018,0
[Window][Scene Tree] [Window][Scene Tree]
Pos=0,19 Pos=0,19
Size=342,348 Size=342,575
Collapsed=0 Collapsed=0
DockId=0x00000003,0 DockId=0x00000003,0
[Window][Viewport] [Window][Viewport]
Pos=344,19 Pos=344,19
Size=645,390 Size=1207,860
Collapsed=0 Collapsed=0
DockId=0x00000007,0 DockId=0x00000017,0
[Window][##MainMenuBar] [Window][##MainMenuBar]
Size=1280,19 Size=1280,19
Collapsed=0 Collapsed=0
[Window][Performance Info] [Window][Performance Info]
Pos=978,592 Pos=1430,881
Size=302,128 Size=490,296
Collapsed=0 Collapsed=0
DockId=0x00000011,0 DockId=0x0000000F,0
[Window][Console] [Window][Console]
Pos=344,411 Pos=344,881
Size=541,139 Size=1448,125
Collapsed=0 Collapsed=0
DockId=0x00000013,0 DockId=0x00000013,0
@ -51,11 +51,11 @@ DockId=0x00000013,0
Pos=265,19 Pos=265,19
Size=1263,674 Size=1263,674
Collapsed=0 Collapsed=0
DockId=0x00000007,1 DockId=0x00000017,1
[Window][Profiler] [Window][Profiler]
Pos=344,552 Pos=344,1008
Size=541,168 Size=1448,169
Collapsed=0 Collapsed=0
DockId=0x00000014,0 DockId=0x00000014,0
@ -63,29 +63,29 @@ DockId=0x00000014,0
Pos=265,69 Pos=265,69
Size=623,651 Size=623,651
Collapsed=0 Collapsed=0
DockId=0x00000013,1 DockId=0x00000015,1
[Window][Profiler (Unity Style)] [Window][Profiler (Unity Style)]
Pos=265,430 Pos=265,430
Size=623,290 Size=623,290
Collapsed=0 Collapsed=0
DockId=0x00000013,1 DockId=0x00000015,1
[Window][Profiler Timeline View] [Window][Profiler Timeline View]
Pos=265,526 Pos=265,526
Size=1263,651 Size=1263,651
Collapsed=0 Collapsed=0
DockId=0x00000013,1 DockId=0x00000015,1
[Window][Color Correction] [Window][Color Correction]
Pos=1131,592 Pos=1669,881
Size=149,128 Size=251,296
Collapsed=0 Collapsed=0
DockId=0x00000012,0 DockId=0x00000010,0
[Window][Asset Browser] [Window][Asset Browser]
Pos=0,369 Pos=0,596
Size=342,351 Size=342,581
Collapsed=0 Collapsed=0
DockId=0x00000004,0 DockId=0x00000004,0
@ -110,44 +110,44 @@ DockId=0x0000000C,0
Pos=978,460 Pos=978,460
Size=302,260 Size=302,260
Collapsed=0 Collapsed=0
DockId=0x0000000F,0 DockId=0x0000000E,0
[Window][Audio Output] [Window][Audio Output]
Pos=887,411 Pos=1794,881
Size=102,309 Size=126,296
Collapsed=0 Collapsed=0
DockId=0x00000016,0 DockId=0x00000012,0
[Window][Master Bus] [Window][Master Bus]
Pos=1003,570 Pos=1003,570
Size=277,150 Size=277,150
Collapsed=0 Collapsed=0
DockId=0x00000018,0 DockId=0x0000000D,0
[Docking][Data] [Docking][Data]
DockSpace ID=0x11111111 Window=0x1BBC0F80 Pos=0,19 Size=1280,701 Split=X DockSpace ID=0x11111111 Window=0x1BBC0F80 Pos=0,19 Size=1920,1158 Split=X
DockNode ID=0x00000005 Parent=0x11111111 SizeRef=989,1158 Split=X DockNode ID=0x00000005 Parent=0x11111111 SizeRef=989,1158 Split=X
DockNode ID=0x00000001 Parent=0x00000005 SizeRef=342,701 Split=Y Selected=0x12EF0F59 DockNode ID=0x00000001 Parent=0x00000005 SizeRef=342,701 Split=Y Selected=0x12EF0F59
DockNode ID=0x00000003 Parent=0x00000001 SizeRef=342,575 HiddenTabBar=1 Selected=0x12EF0F59 DockNode ID=0x00000003 Parent=0x00000001 SizeRef=342,575 HiddenTabBar=1 Selected=0x12EF0F59
DockNode ID=0x00000004 Parent=0x00000001 SizeRef=342,581 HiddenTabBar=1 Selected=0x36AF052B DockNode ID=0x00000004 Parent=0x00000001 SizeRef=342,581 HiddenTabBar=1 Selected=0x36AF052B
DockNode ID=0x00000002 Parent=0x00000005 SizeRef=645,701 Split=Y Selected=0xC450F867 DockNode ID=0x00000002 Parent=0x00000005 SizeRef=1484,701 Split=Y Selected=0xC450F867
DockNode ID=0x00000007 Parent=0x00000002 SizeRef=606,847 CentralNode=1 HiddenTabBar=1 Selected=0xC450F867 DockNode ID=0x00000007 Parent=0x00000002 SizeRef=606,860 Split=X Selected=0xC450F867
DockNode ID=0x00000008 Parent=0x00000002 SizeRef=606,309 Split=X Selected=0xEA83D666 DockNode ID=0x00000017 Parent=0x00000007 SizeRef=1207,860 CentralNode=1 HiddenTabBar=1 Selected=0xC450F867
DockNode ID=0x00000015 Parent=0x00000008 SizeRef=541,172 Split=Y Selected=0xEA83D666 DockNode ID=0x00000018 Parent=0x00000007 SizeRef=367,860 HiddenTabBar=1 Selected=0x36DC96AB
DockNode ID=0x00000013 Parent=0x00000015 SizeRef=553,139 HiddenTabBar=1 Selected=0xEA83D666 DockNode ID=0x00000008 Parent=0x00000002 SizeRef=606,296 Split=X Selected=0xEA83D666
DockNode ID=0x00000014 Parent=0x00000015 SizeRef=553,168 HiddenTabBar=1 Selected=0x9B5D3198 DockNode ID=0x00000015 Parent=0x00000008 SizeRef=1291,172 Split=X Selected=0xEA83D666
DockNode ID=0x00000016 Parent=0x00000008 SizeRef=102,172 HiddenTabBar=1 Selected=0x56009A08 DockNode ID=0x00000011 Parent=0x00000015 SizeRef=1448,168 Split=Y Selected=0x9B5D3198
DockNode ID=0x00000013 Parent=0x00000011 SizeRef=1449,125 HiddenTabBar=1 Selected=0xEA83D666
DockNode ID=0x00000014 Parent=0x00000011 SizeRef=1449,169 HiddenTabBar=1 Selected=0x9B5D3198
DockNode ID=0x00000012 Parent=0x00000015 SizeRef=126,168 HiddenTabBar=1 Selected=0x56009A08
DockNode ID=0x00000016 Parent=0x00000008 SizeRef=283,172 Split=X Selected=0x56009A08
DockNode ID=0x0000000F Parent=0x00000016 SizeRef=140,296 HiddenTabBar=1 Selected=0x3FC1A724
DockNode ID=0x00000010 Parent=0x00000016 SizeRef=148,296 HiddenTabBar=1 Selected=0xA873C17F
DockNode ID=0x00000006 Parent=0x11111111 SizeRef=289,1158 Split=Y Selected=0x36DC96AB DockNode ID=0x00000006 Parent=0x11111111 SizeRef=289,1158 Split=Y Selected=0x36DC96AB
DockNode ID=0x00000009 Parent=0x00000006 SizeRef=449,488 Split=Y Selected=0x36DC96AB DockNode ID=0x00000009 Parent=0x00000006 SizeRef=449,488 Split=Y Selected=0x36DC96AB
DockNode ID=0x0000000B Parent=0x00000009 SizeRef=449,556 Split=Y Selected=0x36DC96AB DockNode ID=0x0000000B Parent=0x00000009 SizeRef=449,556 Split=Y Selected=0x36DC96AB
DockNode ID=0x0000000D Parent=0x0000000B SizeRef=449,439 Split=Y Selected=0x36DC96AB DockNode ID=0x0000000D Parent=0x0000000B SizeRef=449,860 Selected=0x36DC96AB
DockNode ID=0x00000017 Parent=0x0000000D SizeRef=277,549 HiddenTabBar=1 Selected=0x36DC96AB DockNode ID=0x0000000E Parent=0x0000000B SizeRef=449,296 HiddenTabBar=1 Selected=0x9D7E7171
DockNode ID=0x00000018 Parent=0x0000000D SizeRef=277,150 Selected=0x96A8354B
DockNode ID=0x0000000E Parent=0x0000000B SizeRef=449,260 Split=Y Selected=0x9D7E7171
DockNode ID=0x0000000F Parent=0x0000000E SizeRef=302,215 HiddenTabBar=1 Selected=0x9D7E7171
DockNode ID=0x00000010 Parent=0x0000000E SizeRef=302,213 Split=X Selected=0x3FC1A724
DockNode ID=0x00000011 Parent=0x00000010 SizeRef=151,213 HiddenTabBar=1 Selected=0x3FC1A724
DockNode ID=0x00000012 Parent=0x00000010 SizeRef=149,213 HiddenTabBar=1 Selected=0xA873C17F
DockNode ID=0x0000000C Parent=0x00000009 SizeRef=449,143 HiddenTabBar=1 Selected=0xB6C74292 DockNode ID=0x0000000C Parent=0x00000009 SizeRef=449,143 HiddenTabBar=1 Selected=0xB6C74292
DockNode ID=0x0000000A Parent=0x00000006 SizeRef=449,211 HiddenTabBar=1 Selected=0xD83E5DD3 DockNode ID=0x0000000A Parent=0x00000006 SizeRef=449,211 HiddenTabBar=1 Selected=0xD83E5DD3

View File

@ -40,6 +40,7 @@ cc: gcc
cflags: cflags:
- -std=c99 - -std=c99
- -Wall - -Wall
- -g
# C++ compiler and flags # C++ compiler and flags
cxx: g++ cxx: g++
@ -59,6 +60,7 @@ auto_libs:
- comdlg32 - comdlg32
- ssl - ssl
- crypto - crypto
- dbghelp
auto_includes: auto_includes:
- imgui - imgui

View File

@ -7,5 +7,6 @@
"comdlg32": "C:\\msys64\\mingw64\\lib\\libcomdlg32.a", "comdlg32": "C:\\msys64\\mingw64\\lib\\libcomdlg32.a",
"ssl": "C:\\msys64\\mingw64\\lib\\libssl.a", "ssl": "C:\\msys64\\mingw64\\lib\\libssl.a",
"crypto": "C:\\msys64\\mingw64\\lib\\libcrypto.a", "crypto": "C:\\msys64\\mingw64\\lib\\libcrypto.a",
"dbghelp": "C:\\msys64\\mingw64\\lib\\libdbghelp.a",
"imgui": "src\\vendor\\imgui" "imgui": "src\\vendor\\imgui"
} }

View File

@ -1,3 +1,2 @@
[COMPILE] g++ -std=c++20 -Wall -g -Isrc/include -Isrc/include/lua -Isrc/vendor -Isrc/vendor/imgui -Isrc/vendor/box2d -Isrc/vendor/xxhash -Isrc/vendor/miniaudio -IC:/msys64/mingw64/include -Isrc\vendor\imgui -IC:\msys64\mingw64\lib\libyaml-cpp.a -MMD -MP -c src\src\editor\windows\AudioInfo.cpp -o src\build\editor\windows\AudioInfo.o [LINK] g++ src\build\Engine.o src\build\main.o src\build\Renderer.o src\build\Components\AnimationComponent.o src\build\Components\AudioPlayerComponent.o src\build\Components\CameraComponent.o src\build\Components\LightComponent.o src\build\Components\ParticleComponent.o src\build\Components\PhysicsComponent.o src\build\Components\ScriptComponent.o src\build\Components\SpriteComponent.o src\build\Components\TextComonent.o src\build\Components\TilemapComponent.o src\build\core\audio\AudioEngine.o src\build\core\utils\AssetManager.o src\build\core\utils\EngineConfig.o src\build\core\utils\ExceptionHandler.o src\build\core\utils\FileDialog.o src\build\core\utils\input.o src\build\core\utils\LoadingWindow.o src\build\core\utils\Logging.o src\build\core\utils\Profiler.o src\build\core\utils\Texture.o src\build\core\utils\utils.o src\build\editor\windows\AssetBrowser.o src\build\editor\windows\AudioInfo.o src\build\editor\windows\Inspector.o src\build\Entitys\Object.o src\build\utils\GameObjectsList.o src\build\utils\Shader.o src\build\utils\UID.o src\build\lapi.o src\build\lauxlib.o src\build\lbaselib.o src\build\lcode.o src\build\lcorolib.o src\build\lctype.o src\build\ldblib.o src\build\ldebug.o src\build\ldo.o src\build\ldump.o src\build\lfunc.o src\build\lgc.o src\build\linit.o src\build\liolib.o src\build\llex.o src\build\lmathlib.o src\build\lmem.o src\build\loadlib.o src\build\lobject.o src\build\lopcodes.o src\build\loslib.o src\build\lparser.o src\build\lstate.o src\build\lstring.o src\build\lstrlib.o src\build\ltable.o src\build\ltablib.o src\build\ltm.o src\build\lua.o src\build\luac.o src\build\lundump.o src\build\lutf8lib.o src\build\lvm.o src\build\lzio.o src\build\imgui.o src\build\imgui_demo.o src\build\imgui_draw.o src\build\imgui_impl_glfw.o src\build\imgui_impl_opengl3.o src\build\imgui_tables.o src\build\imgui_widgets.o src\build\aabb.o src\build\arena_allocator.o src\build\array.o src\build\bitset.o src\build\body.o src\build\broad_phase.o src\build\constraint_graph.o src\build\contact.o src\build\contact_solver.o src\build\core.o src\build\distance.o src\build\distance_joint.o src\build\dynamic_tree.o src\build\geometry.o src\build\hull.o src\build\id_pool.o src\build\island.o src\build\joint.o src\build\manifold.o src\build\math_functions.o src\build\motor_joint.o src\build\mouse_joint.o src\build\mover.o src\build\prismatic_joint.o src\build\revolute_joint.o src\build\sensor.o src\build\shape.o src\build\solver.o src\build\solver_set.o src\build\table.o src\build\timer.o src\build\types.o src\build\weld_joint.o src\build\wheel_joint.o src\build\world.o src\build\xxhash.o src\build\miniaudio.o -o src\build\app.exe -LC:\msys64\mingw64\lib -lglfw3 -lglew32 -lopengl32 -lgdi32 -lyaml-cpp -lcomdlg32 -lssl -lcrypto -ldbghelp
[LINK] g++ src\build\Engine.o src\build\main.o src\build\Renderer.o src\build\Components\AnimationComponent.o src\build\Components\AudioPlayerComponent.o src\build\Components\CameraComponent.o src\build\Components\LightComponent.o src\build\Components\ParticleComponent.o src\build\Components\PhysicsComponent.o src\build\Components\ScriptComponent.o src\build\Components\SpriteComponent.o src\build\Components\TextComonent.o src\build\Components\TilemapComponent.o src\build\core\audio\AudioEngine.o src\build\core\utils\AssetManager.o src\build\core\utils\EngineConfig.o src\build\core\utils\ExceptionHandler.o src\build\core\utils\FileDialog.o src\build\core\utils\input.o src\build\core\utils\LoadingWindow.o src\build\core\utils\Logging.o src\build\core\utils\Profiler.o src\build\core\utils\Texture.o src\build\core\utils\utils.o src\build\editor\windows\AssetBrowser.o src\build\editor\windows\AudioInfo.o src\build\editor\windows\Inspector.o src\build\Entitys\Object.o src\build\utils\GameObjectsList.o src\build\utils\Shader.o src\build\utils\UID.o src\build\lapi.o src\build\lauxlib.o src\build\lbaselib.o src\build\lcode.o src\build\lcorolib.o src\build\lctype.o src\build\ldblib.o src\build\ldebug.o src\build\ldo.o src\build\ldump.o src\build\lfunc.o src\build\lgc.o src\build\linit.o src\build\liolib.o src\build\llex.o src\build\lmathlib.o src\build\lmem.o src\build\loadlib.o src\build\lobject.o src\build\lopcodes.o src\build\loslib.o src\build\lparser.o src\build\lstate.o src\build\lstring.o src\build\lstrlib.o src\build\ltable.o src\build\ltablib.o src\build\ltm.o src\build\lua.o src\build\luac.o src\build\lundump.o src\build\lutf8lib.o src\build\lvm.o src\build\lzio.o src\build\imgui.o src\build\imgui_demo.o src\build\imgui_draw.o src\build\imgui_impl_glfw.o src\build\imgui_impl_opengl3.o src\build\imgui_tables.o src\build\imgui_widgets.o src\build\aabb.o src\build\arena_allocator.o src\build\array.o src\build\bitset.o src\build\body.o src\build\broad_phase.o src\build\constraint_graph.o src\build\contact.o src\build\contact_solver.o src\build\core.o src\build\distance.o src\build\distance_joint.o src\build\dynamic_tree.o src\build\geometry.o src\build\hull.o src\build\id_pool.o src\build\island.o src\build\joint.o src\build\manifold.o src\build\math_functions.o src\build\motor_joint.o src\build\mouse_joint.o src\build\mover.o src\build\prismatic_joint.o src\build\revolute_joint.o src\build\sensor.o src\build\shape.o src\build\solver.o src\build\solver_set.o src\build\table.o src\build\timer.o src\build\types.o src\build\weld_joint.o src\build\wheel_joint.o src\build\world.o src\build\xxhash.o src\build\miniaudio.o -o src\build\app.exe -LC:\msys64\mingw64\lib -lglfw3 -lglew32 -lopengl32 -lgdi32 -lyaml-cpp -lcomdlg32 -lssl -lcrypto
[RUN] Executed app.exe successfully. [RUN] Executed app.exe successfully.

File diff suppressed because it is too large Load Diff

View File

@ -27,17 +27,17 @@ void AudioPlayerComponent::Stop() {
AudioEngine::Stop(m_UAID); AudioEngine::Stop(m_UAID);
} }
void AudioPlayerComponent::Update() { void AudioPlayerComponent::Update()
// drive the engines per-frame update {
Logger::LogDepricatedWithStackTrace("AudioPlayerComponent::Update()");
// This is never called. Its useless
AudioEngine::Update(); AudioEngine::Update();
// now you can, if you like, pull back the current time or VU data
// for your own logic/UI. E.g.:
auto& map = AudioEngine::GetPlayingInfoMap(); auto& map = AudioEngine::GetPlayingInfoMap();
auto it = map.find(m_UAID); auto it = map.find(m_UAID);
if (it != map.end()) { if (it != map.end()) {
const auto& info = it->second; const auto& info = it->second;
// info.currentTime, info.totalTime, info.vuLeft, info.vuRight ...
} }
} }

View File

@ -190,6 +190,8 @@ void Renderer::InitQuadBatch()
void Renderer::Init() void Renderer::Init()
{ {
glGenFramebuffers(1, &fbo); glGenFramebuffers(1, &fbo);
glBindFramebuffer(GL_FRAMEBUFFER, fbo); glBindFramebuffer(GL_FRAMEBUFFER, fbo);

View File

@ -35,7 +35,8 @@ public:
static void SetVolume(uint64_t uaid, float volume); static void SetVolume(uint64_t uaid, float volume);
static void SetLooping(uint64_t uaid, bool loop); static void SetLooping(uint64_t uaid, bool loop);
// Now returns a per-channel master peak vector static ma_engine* GetEngine() { return &s_Engine; }
static const std::vector<float> &GetMasterVU(); static const std::vector<float> &GetMasterVU();
static const std::unordered_map<uint64_t, PlayingInfo> &GetPlayingInfoMap(); static const std::unordered_map<uint64_t, PlayingInfo> &GetPlayingInfoMap();

View File

@ -8,6 +8,8 @@
#include <fstream> #include <fstream>
#include <filesystem> #include <filesystem>
#include <windows.h> #include <windows.h>
#include <mutex>
#include <dbghelp.h>
class ScopedLogFileWriter class ScopedLogFileWriter
{ {
@ -153,6 +155,92 @@ void Logger::LogVerbose(const char *fmt, ...)
va_end(args); va_end(args);
} }
void Logger::LogDepricated(const char* fmt, ...)
{
va_list args;
va_start(args, fmt);
char buffer[1024];
vsnprintf(buffer, sizeof(buffer), fmt, args);
std::string full = std::string("[DEPRECATED] ") + buffer;
LogVA(Warning, full.c_str(), args);
va_end(args);
}
void Logger::LogDepricatedWithCaller(const char* msg, const std::source_location location)
{
std::string formatted = std::string("[DEPRECATED] ") + msg +
" (called from " + location.file_name() +
":" + std::to_string(location.line()) +
" in " + location.function_name() + ")";
Log(Warning, "%s", formatted.c_str());
}
void Logger::LogDepricatedWithStackTrace(const char* msg)
{
static std::once_flag symInitFlag;
std::call_once(symInitFlag, []() {
SymSetOptions(SYMOPT_DEFERRED_LOADS | SYMOPT_LOAD_LINES | SYMOPT_UNDNAME);
SymInitialize(GetCurrentProcess(), nullptr, TRUE);
});
HANDLE process = GetCurrentProcess();
void* stack[32];
USHORT frames = CaptureStackBackTrace(0, 32, stack, nullptr);
std::string formatted = std::string("[DEPRECATED] ") + msg + "\n Call stack:";
for (USHORT i = 1; i < frames; ++i) // skip self
{
DWORD64 addr = (DWORD64)(stack[i]);
// Resolve function name
char symbolBuffer[sizeof(SYMBOL_INFO) + MAX_SYM_NAME];
PSYMBOL_INFO symbol = (PSYMBOL_INFO)symbolBuffer;
symbol->SizeOfStruct = sizeof(SYMBOL_INFO);
symbol->MaxNameLen = MAX_SYM_NAME;
std::string line;
if (SymFromAddr(process, addr, nullptr, symbol))
{
line = std::string(" -> ") + symbol->Name;
}
else
{
// fallback: raw address
char addrStr[64];
snprintf(addrStr, sizeof(addrStr), "0x%llx", (unsigned long long)addr);
line = std::string(" -> [unresolved symbol] ") + addrStr;
}
// Resolve file + line number
IMAGEHLP_LINE64 lineInfo = {};
lineInfo.SizeOfStruct = sizeof(IMAGEHLP_LINE64);
DWORD lineDisp = 0;
if (SymGetLineFromAddr64(process, addr, &lineDisp, &lineInfo))
{
line += " (" + std::string(lineInfo.FileName) + ":" + std::to_string(lineInfo.LineNumber) + ")";
}
formatted += "\n" + line;
}
Log(Warning, "%s", formatted.c_str());
}
void Logger::Clear() void Logger::Clear()
{ {
s_Messages.clear(); s_Messages.clear();

View File

@ -2,6 +2,14 @@
#include <string> #include <string>
#include <vector> #include <vector>
#include <ostream> #include <ostream>
#include <source_location>
#define LOG_DEPRECATED_USE(msg) \
Logger::LogDepricated("%s (called from %s:%d in %s)", msg, __FILE__, __LINE__, __func__)
#define DEPRICATED(func, ...) \
Logger::LogDepricatedWithCaller(#func " is deprecated", std::source_location::current()); \
func(__VA_ARGS__)
class Logger class Logger
{ {
@ -14,18 +22,24 @@ public:
Debug, Debug,
Verbose Verbose
}; };
static void Log(Level level, const char* fmt, ...); static void Log(Level level, const char *fmt, ...);
static void LogVA(Level level, const char* fmt, va_list args); static void LogVA(Level level, const char *fmt, va_list args);
static void LogInfo(const char* fmt, ...); static void LogInfo(const char *fmt, ...);
static void LogWarning(const char* fmt, ...); static void LogWarning(const char *fmt, ...);
static void LogError(const char* fmt, ...); static void LogError(const char *fmt, ...);
static void LogDebug(const char* fmt, ...); static void LogDebug(const char *fmt, ...);
static void LogVerbose(const char* fmt, ...); static void LogVerbose(const char *fmt, ...);
static void LogDepricated(const char *fmt, ...);
static void LogDepricatedWithCaller(
const char *msg,
const std::source_location location = std::source_location::current());
static void LogDepricatedWithStackTrace(const char *msg);
static void Clear(); static void Clear();
static void Draw(const char* title = "Console"); static void Draw(const char *title = "Console");
private: private:
struct LogMessage struct LogMessage
@ -42,7 +56,6 @@ private:
static bool s_ShowDebug; static bool s_ShowDebug;
static bool s_ShowVerbose; static bool s_ShowVerbose;
static const char *ToString(Level level);
static const char* ToString(Level level); static const char *GetAnsiColor(Level level);
static const char* GetAnsiColor(Level level);
}; };