1

add overloads for bse::string

This commit is contained in:
2022-07-24 00:08:22 +02:00
parent 4aa6d089ca
commit 520445b66e
10 changed files with 84 additions and 48 deletions

View File

@ -4,20 +4,19 @@
SpinLock Logger::sem;
bool Logger::kout_enabled = true;
bool Logger::serial_enabled = true;
// const Semaphore Logger::sem = Semaphore(1);
Logger::LogLevel Logger::level = Logger::ERROR;
constexpr char* ansi_red = "\033[1;31m";
constexpr char* ansi_green = "\033[1;32m";
constexpr char* ansi_yellow = "\033[1;33m";
constexpr char* ansi_blue = "\033[1;34m";
constexpr char* ansi_magenta = "\033[1;35m";
constexpr char* ansi_cyan = "\033[1;36m";
constexpr char* ansi_white = "\033[1;37m";
constexpr char* ansi_default = "\033[0;39m ";
constexpr const char* ansi_red = "\033[1;31m";
constexpr const char* ansi_green = "\033[1;32m";
constexpr const char* ansi_yellow = "\033[1;33m";
constexpr const char* ansi_blue = "\033[1;34m";
constexpr const char* ansi_magenta = "\033[1;35m";
constexpr const char* ansi_cyan = "\033[1;36m";
constexpr const char* ansi_white = "\033[1;37m";
constexpr const char* ansi_default = "\033[0;39m ";
void Logger::log(char* message, CGA::color col) const {
void Logger::log(const char* message, CGA::color col) const {
if (Logger::kout_enabled) {
CGA::color old_col = kout.color_fg;
kout << fgc(col)
@ -55,16 +54,16 @@ void Logger::flush() {
switch (this->current_message_level) {
case Logger::TRACE:
this->trace(this->buffer);
this->trace(&buffer);
break;
case Logger::DEBUG:
this->debug(this->buffer);
this->debug(&buffer);
break;
case Logger::ERROR:
this->error(this->buffer);
this->error(&buffer);
break;
case Logger::INFO:
this->info(this->buffer);
this->info(&buffer);
break;
}
@ -73,29 +72,41 @@ void Logger::flush() {
Logger::unlock();
}
void Logger::trace(char* message) const {
void Logger::trace(const char* message) const {
if (Logger::level <= Logger::TRACE) {
this->log(message, CGA::WHITE);
}
}
void Logger::trace(const bse::string& message) const {
trace((const char*)message);
}
void Logger::debug(char* message) const {
void Logger::debug(const char* message) const {
if (Logger::level <= Logger::DEBUG) {
this->log(message, CGA::LIGHT_MAGENTA);
}
}
void Logger::debug(const bse::string& message) const {
debug((const char*)message);
}
void Logger::error(char* message) const {
void Logger::error(const char* message) const {
if (Logger::level <= Logger::ERROR) {
this->log(message, CGA::LIGHT_RED);
}
}
void Logger::error(const bse::string& message) const {
error((const char*)message);
}
void Logger::info(char* message) const {
void Logger::info(const char* message) const {
if (Logger::level <= Logger::INFO) {
this->log(message, CGA::LIGHT_BLUE);
}
}
void Logger::info(const bse::string& message) const {
info((const char*)message);
}
// Manipulatoren
Logger& TRACE(Logger& log) {