From f8341ff8f2f7ba9d3d1de4d998638b7dfbaa9d21 Mon Sep 17 00:00:00 2001 From: illyum <90023277+itzilly@users.noreply.github.com> Date: Fri, 16 Aug 2024 02:18:53 -0600 Subject: [PATCH] (Feat): Create basic terminal logger --- src/BasicLogger.cpp | 27 +++++++++++++++++++++++++++ src/BasicLogger.h | 22 ++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 src/BasicLogger.cpp create mode 100644 src/BasicLogger.h diff --git a/src/BasicLogger.cpp b/src/BasicLogger.cpp new file mode 100644 index 0000000..3a688ce --- /dev/null +++ b/src/BasicLogger.cpp @@ -0,0 +1,27 @@ +// +// Created by illyum on 8/15/2024. +// + +#include "BasicLogger.h" +#include + +// Set default verbosity +LogPriority BasicLogger::verbosity = TraceP; + +void BasicLogger::Log(LogPriority priority, const char *message) { + if (priority >= verbosity) { + switch (priority) { + case TraceP: std::cout << "Trace: \t"; break; + case DebugP: std::cout << "Debug: \t"; break; + case InfoP: std::cout << "Info: \t"; break; + case WarnP: std::cout << "Warn: \t"; break; + case ErrorP: std::cout << "Error: \t"; break; + case FatalP: std::cout << "Fatal: \t"; break; + } + std::cout << message << "\n"; + } +} + +void BasicLogger::SetVerbosity(LogPriority new_priority) { + verbosity = new_priority; +} \ No newline at end of file diff --git a/src/BasicLogger.h b/src/BasicLogger.h new file mode 100644 index 0000000..9c023ac --- /dev/null +++ b/src/BasicLogger.h @@ -0,0 +1,22 @@ +// +// Created by illyum on 8/15/2024. +// + +#ifndef BASICLOGGER_H +#define BASICLOGGER_H + + +enum LogPriority { + TraceP, DebugP, InfoP, WarnP, ErrorP, FatalP +}; + +class BasicLogger { +private: + static LogPriority verbosity; + +public: + static void Log(LogPriority priority, const char *message); + static void SetVerbosity(LogPriority new_priority); +}; + +#endif //BASICLOGGER_H