Implemented log level handling/switching. Use LOGLEVEL macro for setting level/severity. See jlog::severity in jlog.hpp for more information.
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
|
||||
namespace jlog
|
||||
{
|
||||
enum class severity
|
||||
/*enum class severity : uint8_t
|
||||
{
|
||||
none,
|
||||
verbose,
|
||||
@@ -34,6 +34,19 @@ namespace jlog
|
||||
error,
|
||||
fatal
|
||||
};
|
||||
*/
|
||||
|
||||
enum class severity : uint8_t
|
||||
{
|
||||
none,
|
||||
warning,
|
||||
error,
|
||||
fatal,
|
||||
verbose,
|
||||
debug,
|
||||
};
|
||||
|
||||
severity loglevel = severity::debug; // Default log level always debug
|
||||
|
||||
struct LogEntry
|
||||
{
|
||||
@@ -112,26 +125,30 @@ namespace jlog
|
||||
void usfatal_spec(const std::string& message, const std::string& func, const std::string& file, int line);
|
||||
}
|
||||
|
||||
#define INFO(i) jlog::info_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SINFO(i) jlog::sinfo_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USINFO(i) jlog::usinfo_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define INFO(i) if (jlog::loglevel >= jlog::severity::none) { jlog::info_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SINFO(i) if (jlog::loglevel >= jlog::severity::none) { jlog::sinfo_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USINFO(i) if (jlog::loglevel >= jlog::severity::none) { jlog::usinfo_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
#define VERBOSE(i) jlog::verbose_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SVERBOSE(i) jlog::sverbose_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USVERBOSE(i) jlog::usverbose_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define VERBOSE(i) if (jlog::loglevel >= jlog::severity::verbose) { jlog::verbose_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SVERBOSE(i) if (jlog::loglevel >= jlog::severity::verbose) { jlog::sverbose_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USVERBOSE(i) if (jlog::loglevel >= jlog::severity::verbose) { jlog::usverbose_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
#define DEBUG(i) jlog::debug_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SDEBUG(i) jlog::sdebug_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USDEBUG(i) jlog::usdebug_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define DEBUG(i) if (jlog::loglevel >= jlog::severity::debug) { jlog::debug_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SDEBUG(i) if (jlog::loglevel >= jlog::severity::debug) { jlog::sdebug_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USDEBUG(i) if (jlog::loglevel >= jlog::severity::debug) { jlog::usdebug_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
#define WARNING(i) jlog::warning_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SWARNING(i) jlog::swarning_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USWARNING(i) jlog::uswarning_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define WARNING(i) if (jlog::loglevel >= jlog::severity::warning) { jlog::warning_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SWARNING(i) if (jlog::loglevel >= jlog::severity::warning) { jlog::swarning_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USWARNING(i) if (jlog::loglevel >= jlog::severity::warning) { jlog::uswarning_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
#define ERROR(i) jlog::error_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SERROR(i) jlog::serror_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USERROR(i) jlog::userror_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define ERROR(i) if (jlog::loglevel >= jlog::severity::error) { jlog::error_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SERROR(i) if (jlog::loglevel >= jlog::severity::error) { jlog::serror_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USERROR(i) if (jlog::loglevel >= jlog::severity::error) { jlog::userror_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
#define FATAL(i) jlog::fatal_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define SFATAL(i) jlog::sfatal_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define USFATAL(i) jlog::usfatal_spec(i, FUNCTION, __FILE__, __LINE__);
|
||||
#define FATAL(i) if (jlog::loglevel >= jlog::severity::fatal) { jlog::fatal_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define SFATAL(i) if (jlog::loglevel >= jlog::severity::fatal) { jlog::sfatal_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
#define USFATAL(i) if (jlog::loglevel >= jlog::severity::fatal) { jlog::usfatal_spec(i, FUNCTION, __FILE__, __LINE__); };
|
||||
|
||||
//LINFO
|
||||
|
||||
#define LOGLEVEL(i) jlog::loglevel = i;
|
Reference in New Issue
Block a user