LibraryLogger for implementing an easy generic logger that can be toggled for libraries
This commit is contained in:
@@ -187,4 +187,38 @@ namespace jlog {
|
||||
extern GenericLogger Fatal;
|
||||
extern GenericLogger Verbose;
|
||||
extern GenericLogger Debug;
|
||||
|
||||
class LibraryLogger {
|
||||
public:
|
||||
LibraryLogger(const std::string libname) :
|
||||
Info {libname + "::" + "info", GlobalLogFile, Colors::Green, Colors::Gray, Colors::Gray, Colors::Green, Colors::White},
|
||||
Warning {libname + "::" + "warning", GlobalLogFile, Colors::Yellow, Colors::Gray, Colors::Gray, Colors::Yellow, Colors::White},
|
||||
Error {libname + "::" + "error", GlobalLogFile, Colors::Red, Colors::Gray, Colors::Gray, Colors::Red, Colors::White},
|
||||
Fatal {libname + "::" + "fatal", GlobalLogFile, Colors::Reds::Crimson, Colors::Gray, Colors::Gray, Colors::Reds::Crimson, Colors::White},
|
||||
Verbose {libname + "::" + "verbose", GlobalLogFile, Colors::Blue, Colors::Gray, Colors::Gray, Colors::Blue, Colors::White},
|
||||
Debug {libname + "::" + "debug", GlobalLogFile, Colors::Purples::Purple, Colors::Gray, Colors::Gray, Colors::Purples::Purple, Colors::White}
|
||||
{}
|
||||
public:
|
||||
GenericLogger Info;// {"info", GlobalLogFile, Colors::Green, Colors::Gray, Colors::Gray, Colors::Green, Colors::White};
|
||||
GenericLogger Warning;// {"warning", GlobalLogFile, Colors::Yellow, Colors::Gray, Colors::Gray, Colors::Yellow, Colors::White};
|
||||
GenericLogger Error;// {"error", GlobalLogFile, Colors::Red, Colors::Gray, Colors::Gray, Colors::Red, Colors::White};
|
||||
GenericLogger Fatal;// {"fatal", GlobalLogFile, Colors::Reds::Crimson, Colors::Gray, Colors::Gray, Colors::Reds::Crimson, Colors::White};
|
||||
GenericLogger Verbose;// {"verbose", GlobalLogFile, Colors::Blue, Colors::Gray, Colors::Gray, Colors::Blue, Colors::White};
|
||||
GenericLogger Debug;// {"debug", GlobalLogFile, Colors::Purples::Purple, Colors::Gray, Colors::Gray, Colors::Purples::Purple, Colors::White};
|
||||
public:
|
||||
void EnableAll(bool b) {
|
||||
Info.EnableConsole(b);
|
||||
Info.EnableFile(b);
|
||||
Warning.EnableConsole(b);
|
||||
Warning.EnableFile(b);
|
||||
Error.EnableConsole(b);
|
||||
Error.EnableFile(b);
|
||||
Fatal.EnableConsole(b);
|
||||
Fatal.EnableFile(b);
|
||||
Verbose.EnableConsole(b);
|
||||
Verbose.EnableFile(b);
|
||||
Debug.EnableConsole(b);
|
||||
Debug.EnableFile(b);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
15
main.cpp
15
main.cpp
@@ -16,6 +16,21 @@ int main()
|
||||
jlog::Fatal("dsadsd");
|
||||
jlog::Verbose("dsadsd");
|
||||
jlog::Debug("dsadsd");
|
||||
jlog::LibraryLogger libtest("JLog");
|
||||
libtest.Info("A");
|
||||
libtest.Warning("B");
|
||||
libtest.Debug("C");
|
||||
libtest.Error("D");
|
||||
libtest.Fatal("E");
|
||||
libtest.Verbose("G");
|
||||
libtest.EnableAll(false);
|
||||
libtest.Info("A2");
|
||||
libtest.Warning("B2");
|
||||
libtest.Debug("C2");
|
||||
libtest.Error("D2");
|
||||
libtest.Fatal("E2");
|
||||
libtest.Verbose("G2");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user