From e62817b8252974b8a98393275874ee303840bf13 Mon Sep 17 00:00:00 2001 From: LaG1924 <12997935+LaG1924@users.noreply.github.com> Date: Fri, 12 May 2017 18:49:50 +0500 Subject: 2017-05-12 --- Debug.hpp | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Debug.hpp (limited to 'Debug.hpp') diff --git a/Debug.hpp b/Debug.hpp new file mode 100644 index 0000000..1a9efb6 --- /dev/null +++ b/Debug.hpp @@ -0,0 +1,43 @@ +#pragma once + +#include +#include +#include +#include + +namespace debug { + + enum LogLevel { + FATAL = 0, + ERROR = 5, + WARNING = 10, + INFO = 15, + DEBUG = 20, + }; + + enum LogSource { + Unknown, + Display, + Network, + NetworkClient, + Game, + World, + Field, + Packet, + AssetManager, + }; + + struct Exception : public std::exception { + std::string message; + LogLevel level; + LogSource source; + + const char *what() const noexcept override{ + return this->message.c_str(); + } + }; + + void WriteLog(std::string message, LogLevel level = LogLevel::INFO, LogSource source = LogSource::Unknown, + std::string sourceFile = "", int lineInFile = 0); +#define LOG(MESSAGE, LEVEL, SOURCE) {using namespace debug; debug::WriteLog(MESSAGE,debug::LEVEL,debug::SOURCE,__FILE__,__LINE__);} +} \ No newline at end of file -- cgit v1.2.3