From cd9747ccfe405fdbc82e53fbe1afa9058bc396bb Mon Sep 17 00:00:00 2001 From: Light Date: Mon, 14 Jun 2021 10:20:59 +0430 Subject: [PATCH] Logger - Logger now logs it's info on Init - Fixed a mistake from previous commit --- Engine/src/Engine/Core/Logger.cpp | 9 ++++ Engine/src/Engine/Core/Window.h | 2 +- Engine/src/Engine/Utility/Stringifier.cpp | 61 ++++++++++++++-------- Engine/src/Engine/Utility/Stringifier.h | 2 + Engine/src/Platform/OS/Windows/wWindow.cpp | 4 +- 5 files changed, 53 insertions(+), 25 deletions(-) diff --git a/Engine/src/Engine/Core/Logger.cpp b/Engine/src/Engine/Core/Logger.cpp index 76765c2..ee2db31 100644 --- a/Engine/src/Engine/Core/Logger.cpp +++ b/Engine/src/Engine/Core/Logger.cpp @@ -3,6 +3,8 @@ #include +#include "Utility/Stringifier.h" + namespace Light { std::shared_ptr Logger::s_EngineLogger = nullptr; @@ -19,6 +21,13 @@ namespace Light { s_ClientLogger = spdlog::stdout_color_mt("Client"); s_ClientLogger->set_level(spdlog::level::trace); + + LT_ENGINE_INFO("________________________________________"); + LT_ENGINE_INFO("Logger::"); + LT_ENGINE_INFO(" ClientLevel: {}", Stringifier::spdlogLevel(s_ClientLogger->level())); + LT_ENGINE_INFO(" EngineLevel: {}", Stringifier::spdlogLevel(s_EngineLogger->level())); + LT_ENGINE_INFO(" DefaultLevel: {}", Stringifier::spdlogLevel(spdlog::get_level())); + LT_ENGINE_INFO("________________________________________"); } } \ No newline at end of file diff --git a/Engine/src/Engine/Core/Window.h b/Engine/src/Engine/Core/Window.h index 1acd699..04ba305 100644 --- a/Engine/src/Engine/Core/Window.h +++ b/Engine/src/Engine/Core/Window.h @@ -21,7 +21,7 @@ namespace Light { bool b_Open; public: - static Window* Create(const WindowProperties& properties, std::function callback); + static Window* Create(std::function callback); Window(const Window&) = delete; Window& operator=(const Window&) = delete; diff --git a/Engine/src/Engine/Utility/Stringifier.cpp b/Engine/src/Engine/Utility/Stringifier.cpp index ea1410b..08fc9e2 100644 --- a/Engine/src/Engine/Utility/Stringifier.cpp +++ b/Engine/src/Engine/Utility/Stringifier.cpp @@ -3,17 +3,19 @@ #include +#include + namespace Light { std::string Stringifier::glDebugMsgSeverity(unsigned int severity) { switch (severity) { - case GL_DEBUG_SEVERITY_NOTIFICATION: return "GL_DEBUG_SEVERITY_NOTIFICATION"; - case GL_DEBUG_SEVERITY_LOW: return "GL_DEBUG_SEVERITY_LOW"; - case GL_DEBUG_SEVERITY_MEDIUM: return "GL_DEBUG_SEVERITY_MEDIUM"; - case GL_DEBUG_SEVERITY_HIGH: return "GL_DEBUG_SEVERITY_HIGH"; - default: return "UNKNOWN"; + case GL_DEBUG_SEVERITY_NOTIFICATION: return "GL_DEBUG_SEVERITY_NOTIFICATION"; + case GL_DEBUG_SEVERITY_LOW: return "GL_DEBUG_SEVERITY_LOW"; + case GL_DEBUG_SEVERITY_MEDIUM: return "GL_DEBUG_SEVERITY_MEDIUM"; + case GL_DEBUG_SEVERITY_HIGH: return "GL_DEBUG_SEVERITY_HIGH"; + default: return "UNKNOWN"; } } @@ -21,13 +23,13 @@ namespace Light { { switch (source) { - case GL_DEBUG_SOURCE_API: return "GL_DEBUG_SOURCE_API"; - case GL_DEBUG_SOURCE_WINDOW_SYSTEM: return "GL_DEBUG_SOURCE_WINDOW_SYSTEM"; - case GL_DEBUG_SOURCE_SHADER_COMPILER: return "GL_DEBUG_SOURCE_SHADER_COMPILER"; - case GL_DEBUG_SOURCE_THIRD_PARTY: return "GL_DEBUG_SOURCE_THIRD_PARTY"; - case GL_DEBUG_SOURCE_APPLICATION: return "GL_DEBUG_SOURCE_APPLICATION"; - case GL_DEBUG_SOURCE_OTHER: return "GL_DEBUG_SOURCE_OTHER"; - default: return "UNKNOWN"; + case GL_DEBUG_SOURCE_API: return "GL_DEBUG_SOURCE_API"; + case GL_DEBUG_SOURCE_WINDOW_SYSTEM: return "GL_DEBUG_SOURCE_WINDOW_SYSTEM"; + case GL_DEBUG_SOURCE_SHADER_COMPILER: return "GL_DEBUG_SOURCE_SHADER_COMPILER"; + case GL_DEBUG_SOURCE_THIRD_PARTY: return "GL_DEBUG_SOURCE_THIRD_PARTY"; + case GL_DEBUG_SOURCE_APPLICATION: return "GL_DEBUG_SOURCE_APPLICATION"; + case GL_DEBUG_SOURCE_OTHER: return "GL_DEBUG_SOURCE_OTHER"; + default: return "UNKNOWN"; } } @@ -35,16 +37,31 @@ namespace Light { { switch (type) { - case GL_DEBUG_TYPE_ERROR: return "GL_DEBUG_TYPE_ERROR"; - case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR: return "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR"; - case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR: return "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR"; - case GL_DEBUG_TYPE_PORTABILITY: return "GL_DEBUG_TYPE_PORTABILITY"; - case GL_DEBUG_TYPE_PERFORMANCE: return "GL_DEBUG_TYPE_PERFORMANCE"; - case GL_DEBUG_TYPE_MARKER: return "GL_DEBUG_TYPE_MARKER"; - case GL_DEBUG_TYPE_PUSH_GROUP: return "GL_DEBUG_TYPE_PUSH_GROUP"; - case GL_DEBUG_TYPE_POP_GROUP: return "GL_DEBUG_TYPE_POP_GROUP"; - case GL_DEBUG_TYPE_OTHER: return "GL_DEBUG_TYPE_OTHER"; - default: return "UNKNOWN"; + case GL_DEBUG_TYPE_ERROR: return "GL_DEBUG_TYPE_ERROR"; + case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR: return "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR"; + case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR: return "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR"; + case GL_DEBUG_TYPE_PORTABILITY: return "GL_DEBUG_TYPE_PORTABILITY"; + case GL_DEBUG_TYPE_PERFORMANCE: return "GL_DEBUG_TYPE_PERFORMANCE"; + case GL_DEBUG_TYPE_MARKER: return "GL_DEBUG_TYPE_MARKER"; + case GL_DEBUG_TYPE_PUSH_GROUP: return "GL_DEBUG_TYPE_PUSH_GROUP"; + case GL_DEBUG_TYPE_POP_GROUP: return "GL_DEBUG_TYPE_POP_GROUP"; + case GL_DEBUG_TYPE_OTHER: return "GL_DEBUG_TYPE_OTHER"; + default: return "UNKNOWN"; + } + } + + std::string Stringifier::spdlogLevel(unsigned int level) + { + switch (level) + { + case SPDLOG_LEVEL_TRACE: return "SPDLOG_LEVEL_TRACE"; + case SPDLOG_LEVEL_DEBUG: return "SPDLOG_LEVEL_DEBUG"; + case SPDLOG_LEVEL_INFO: return "SPDLOG_LEVEL_INFO"; + case SPDLOG_LEVEL_WARN: return "SPDLOG_LEVEL_WARN"; + case SPDLOG_LEVEL_ERROR: return "SPDLOG_LEVEL_ERROR"; + case SPDLOG_LEVEL_CRITICAL: return "SPDLOG_LEVEL_CRITICAL"; + case SPDLOG_LEVEL_OFF: return "SPDLOG_LEVEL_OFF"; + default: return "UNKNOWN"; } } diff --git a/Engine/src/Engine/Utility/Stringifier.h b/Engine/src/Engine/Utility/Stringifier.h index 08a30fc..221ea8f 100644 --- a/Engine/src/Engine/Utility/Stringifier.h +++ b/Engine/src/Engine/Utility/Stringifier.h @@ -10,6 +10,8 @@ namespace Light { static std::string glDebugMsgSeverity(unsigned int severity); static std::string glDebugMsgSource(unsigned int source); static std::string glDebugMsgType(unsigned int type); + + static std::string spdlogLevel(unsigned int level); }; } \ No newline at end of file diff --git a/Engine/src/Platform/OS/Windows/wWindow.cpp b/Engine/src/Platform/OS/Windows/wWindow.cpp index 167ef5b..20777dd 100644 --- a/Engine/src/Platform/OS/Windows/wWindow.cpp +++ b/Engine/src/Platform/OS/Windows/wWindow.cpp @@ -12,9 +12,9 @@ namespace Light { - Window* Window::Create(const WindowProperties& properties, std::function callback) + Window* Window::Create(std::function callback) { - return new wWindow(properties, callback); + return new wWindow(callback); } wWindow::wWindow(std::function callback)