(Feat): Create basic terminal logger

This commit is contained in:
illyum 2024-08-16 02:18:53 -06:00
parent 0858e70121
commit f8341ff8f2
2 changed files with 49 additions and 0 deletions

27
src/BasicLogger.cpp Normal file
View File

@ -0,0 +1,27 @@
//
// Created by illyum on 8/15/2024.
//
#include "BasicLogger.h"
#include <iostream>
// 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;
}

22
src/BasicLogger.h Normal file
View File

@ -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