2026-03-16 17:33:46 +01:00
|
|
|
#include <iostream>
|
|
|
|
|
#include <pd/common.hpp>
|
|
|
|
|
|
2026-03-21 13:35:16 +01:00
|
|
|
namespace PD {
|
|
|
|
|
constexpr const char* pColorNo = "\033[0m";
|
|
|
|
|
constexpr const char* pColorYellow = "\033[33m";
|
|
|
|
|
constexpr const char* pColorRed = "\033[31m";
|
|
|
|
|
static LogLevel pFilter = LogLevel::Info;
|
2026-03-21 15:52:09 +01:00
|
|
|
|
|
|
|
|
PD_API void LogFilter(LogLevel lvl) {
|
|
|
|
|
pFilter = lvl;
|
|
|
|
|
}
|
|
|
|
|
|
2026-03-21 13:35:16 +01:00
|
|
|
PD_API void Log(const std::string& txt, LogLevel lvl) {
|
|
|
|
|
if ((int)lvl < (int)pFilter) return;
|
|
|
|
|
const char* clr = pColorNo;
|
|
|
|
|
const char* plvl = "INFO";
|
|
|
|
|
switch (lvl) {
|
|
|
|
|
case PD::LogLevel::Info:
|
|
|
|
|
clr = pColorNo;
|
|
|
|
|
plvl = "INFO";
|
|
|
|
|
break;
|
|
|
|
|
case PD::LogLevel::Warning:
|
|
|
|
|
clr = pColorYellow;
|
|
|
|
|
plvl = "WARNING";
|
|
|
|
|
break;
|
|
|
|
|
case PD::LogLevel::Error:
|
|
|
|
|
clr = pColorRed;
|
|
|
|
|
plvl = "ERROR";
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::cout << clr << "[PD][" << plvl << "] " << txt << pColorNo << std::endl;
|
|
|
|
|
}
|
|
|
|
|
} // namespace PD
|