mirror of
https://github.com/celisej567/mcpe.git
synced 2026-09-11 20:11:18 +03:00
43 lines
955 B
C++
43 lines
955 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
class Logger
|
|
{
|
|
private:
|
|
static Logger* m_singleton;
|
|
public:
|
|
static Logger* const singleton();
|
|
|
|
Logger();
|
|
~Logger();
|
|
|
|
virtual void print(const char* const str);
|
|
virtual void print(std::string str);
|
|
virtual void vprintf(const char* const fmt, va_list argPtr);
|
|
virtual void printf(const char* const fmt, ...);
|
|
};
|
|
|
|
#ifdef _DEBUG
|
|
|
|
#define LOG(...) Logger::singleton()->printf(__VA_ARGS__)
|
|
|
|
#ifdef PLATFORM_ANDROID
|
|
#define LOG_I(...) __android_log_print(ANDROID_LOG_INFO, "MinecraftPE", __VA_ARGS__)
|
|
#define LOG_W(...) __android_log_print(ANDROID_LOG_WARN, "MinecraftPE", __VA_ARGS__)
|
|
#define LOG_E(...) __android_log_print(ANDROID_LOG_ERROR, "MinecraftPE", __VA_ARGS__)
|
|
#else
|
|
#define LOG_I(...) LOG("[Info]: " __VA_ARGS__)
|
|
#define LOG_W(...) LOG("[WARN]: " __VA_ARGS__)
|
|
#define LOG_E(...) LOG("[ERROR]: " __VA_ARGS__)
|
|
#endif
|
|
|
|
#else
|
|
|
|
#define LOG(...)
|
|
#define LOG_I(...)
|
|
#define LOG_W(...)
|
|
#define LOG_E(...)
|
|
|
|
#endif
|