changed things to include plog
This commit is contained in:
parent
b018a44f10
commit
68a1618743
34 changed files with 2702 additions and 27 deletions
202
include/plog/Log.h
Normal file
202
include/plog/Log.h
Normal file
|
@ -0,0 +1,202 @@
|
|||
//////////////////////////////////////////////////////////////////////////
|
||||
// Plog - portable and simple log for C++
|
||||
// Documentation and sources: https://github.com/SergiusTheBest/plog
|
||||
// License: MIT, https://choosealicense.com/licenses/mit
|
||||
|
||||
#pragma once
|
||||
#include <plog/Logger.h>
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Helper macros that get context info
|
||||
|
||||
#if defined(PLOG_ENABLE_GET_THIS) && defined(_MSC_VER) && _MSC_VER >= 1600 && !defined(__INTELLISENSE__) && !defined(__INTEL_COMPILER) && !defined(__llvm__) && !defined(__RESHARPER__) // >= Visual Studio 2010, skip IntelliSense, Intel Compiler, Clang Code Model and ReSharper
|
||||
# define PLOG_GET_THIS() __if_exists(this) { this } __if_not_exists(this) { 0 }
|
||||
#else
|
||||
# define PLOG_GET_THIS() reinterpret_cast<void*>(0)
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
# define PLOG_GET_FUNC() __FUNCTION__
|
||||
#elif defined(__BORLANDC__)
|
||||
# define PLOG_GET_FUNC() __FUNC__
|
||||
#else
|
||||
# define PLOG_GET_FUNC() __PRETTY_FUNCTION__
|
||||
#endif
|
||||
|
||||
#ifdef PLOG_CAPTURE_FILE
|
||||
# define PLOG_GET_FILE() __FILE__
|
||||
#else
|
||||
# define PLOG_GET_FILE() ""
|
||||
#endif
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Log severity level checker
|
||||
|
||||
#ifdef PLOG_DISABLE_LOGGING
|
||||
# ifdef _MSC_VER
|
||||
# define IF_PLOG_(instanceId, severity) __pragma(warning(push)) __pragma(warning(disable:4127)) if (true) {;} else __pragma(warning(pop)) // conditional expression is constant
|
||||
# else
|
||||
# define IF_PLOG_(instanceId, severity) if (true) {;} else
|
||||
# endif
|
||||
#else
|
||||
# define IF_PLOG_(instanceId, severity) if (!plog::get<instanceId>() || !plog::get<instanceId>()->checkSeverity(severity)) {;} else
|
||||
#endif
|
||||
|
||||
#define IF_PLOG(severity) IF_PLOG_(PLOG_DEFAULT_INSTANCE_ID, severity)
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Main logging macros
|
||||
|
||||
#define PLOG_(instanceId, severity) IF_PLOG_(instanceId, severity) (*plog::get<instanceId>()) += plog::Record(severity, PLOG_GET_FUNC(), __LINE__, PLOG_GET_FILE(), PLOG_GET_THIS(), instanceId).ref()
|
||||
#define PLOG(severity) PLOG_(PLOG_DEFAULT_INSTANCE_ID, severity)
|
||||
|
||||
#define PLOG_VERBOSE PLOG(plog::verbose)
|
||||
#define PLOG_DEBUG PLOG(plog::debug)
|
||||
#define PLOG_INFO PLOG(plog::info)
|
||||
#define PLOG_WARNING PLOG(plog::warning)
|
||||
#define PLOG_ERROR PLOG(plog::error)
|
||||
#define PLOG_FATAL PLOG(plog::fatal)
|
||||
#define PLOG_NONE PLOG(plog::none)
|
||||
|
||||
#define PLOG_VERBOSE_(instanceId) PLOG_(instanceId, plog::verbose)
|
||||
#define PLOG_DEBUG_(instanceId) PLOG_(instanceId, plog::debug)
|
||||
#define PLOG_INFO_(instanceId) PLOG_(instanceId, plog::info)
|
||||
#define PLOG_WARNING_(instanceId) PLOG_(instanceId, plog::warning)
|
||||
#define PLOG_ERROR_(instanceId) PLOG_(instanceId, plog::error)
|
||||
#define PLOG_FATAL_(instanceId) PLOG_(instanceId, plog::fatal)
|
||||
#define PLOG_NONE_(instanceId) PLOG_(instanceId, plog::none)
|
||||
|
||||
#define PLOGV PLOG_VERBOSE
|
||||
#define PLOGD PLOG_DEBUG
|
||||
#define PLOGI PLOG_INFO
|
||||
#define PLOGW PLOG_WARNING
|
||||
#define PLOGE PLOG_ERROR
|
||||
#define PLOGF PLOG_FATAL
|
||||
#define PLOGN PLOG_NONE
|
||||
|
||||
#define PLOGV_(instanceId) PLOG_VERBOSE_(instanceId)
|
||||
#define PLOGD_(instanceId) PLOG_DEBUG_(instanceId)
|
||||
#define PLOGI_(instanceId) PLOG_INFO_(instanceId)
|
||||
#define PLOGW_(instanceId) PLOG_WARNING_(instanceId)
|
||||
#define PLOGE_(instanceId) PLOG_ERROR_(instanceId)
|
||||
#define PLOGF_(instanceId) PLOG_FATAL_(instanceId)
|
||||
#define PLOGN_(instanceId) PLOG_NONE_(instanceId)
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Conditional logging macros
|
||||
|
||||
#define PLOG_IF_(instanceId, severity, condition) if (!(condition)) {;} else PLOG_(instanceId, severity)
|
||||
#define PLOG_IF(severity, condition) PLOG_IF_(PLOG_DEFAULT_INSTANCE_ID, severity, condition)
|
||||
|
||||
#define PLOG_VERBOSE_IF(condition) PLOG_IF(plog::verbose, condition)
|
||||
#define PLOG_DEBUG_IF(condition) PLOG_IF(plog::debug, condition)
|
||||
#define PLOG_INFO_IF(condition) PLOG_IF(plog::info, condition)
|
||||
#define PLOG_WARNING_IF(condition) PLOG_IF(plog::warning, condition)
|
||||
#define PLOG_ERROR_IF(condition) PLOG_IF(plog::error, condition)
|
||||
#define PLOG_FATAL_IF(condition) PLOG_IF(plog::fatal, condition)
|
||||
#define PLOG_NONE_IF(condition) PLOG_IF(plog::none, condition)
|
||||
|
||||
#define PLOG_VERBOSE_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::verbose, condition)
|
||||
#define PLOG_DEBUG_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::debug, condition)
|
||||
#define PLOG_INFO_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::info, condition)
|
||||
#define PLOG_WARNING_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::warning, condition)
|
||||
#define PLOG_ERROR_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::error, condition)
|
||||
#define PLOG_FATAL_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::fatal, condition)
|
||||
#define PLOG_NONE_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::none, condition)
|
||||
|
||||
#define PLOGV_IF(condition) PLOG_VERBOSE_IF(condition)
|
||||
#define PLOGD_IF(condition) PLOG_DEBUG_IF(condition)
|
||||
#define PLOGI_IF(condition) PLOG_INFO_IF(condition)
|
||||
#define PLOGW_IF(condition) PLOG_WARNING_IF(condition)
|
||||
#define PLOGE_IF(condition) PLOG_ERROR_IF(condition)
|
||||
#define PLOGF_IF(condition) PLOG_FATAL_IF(condition)
|
||||
#define PLOGN_IF(condition) PLOG_NONE_IF(condition)
|
||||
|
||||
#define PLOGV_IF_(instanceId, condition) PLOG_VERBOSE_IF_(instanceId, condition)
|
||||
#define PLOGD_IF_(instanceId, condition) PLOG_DEBUG_IF_(instanceId, condition)
|
||||
#define PLOGI_IF_(instanceId, condition) PLOG_INFO_IF_(instanceId, condition)
|
||||
#define PLOGW_IF_(instanceId, condition) PLOG_WARNING_IF_(instanceId, condition)
|
||||
#define PLOGE_IF_(instanceId, condition) PLOG_ERROR_IF_(instanceId, condition)
|
||||
#define PLOGF_IF_(instanceId, condition) PLOG_FATAL_IF_(instanceId, condition)
|
||||
#define PLOGN_IF_(instanceId, condition) PLOG_NONE_IF_(instanceId, condition)
|
||||
|
||||
// Old macro names for downward compatibility. To bypass including these macro names, add
|
||||
// #define PLOG_OMIT_LOG_DEFINES before #include <plog/Log.h>
|
||||
#ifndef PLOG_OMIT_LOG_DEFINES
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Main logging macros - can be changed later to point at macros for a different logging package
|
||||
|
||||
#define LOG_(instanceId, severity) IF_PLOG_(instanceId, severity) (*plog::get<instanceId>()) += plog::Record(severity, PLOG_GET_FUNC(), __LINE__, PLOG_GET_FILE(), PLOG_GET_THIS(), instanceId).ref()
|
||||
#define LOG(severity) PLOG_(PLOG_DEFAULT_INSTANCE_ID, severity)
|
||||
|
||||
#define LOG_VERBOSE PLOG(plog::verbose)
|
||||
#define LOG_DEBUG PLOG(plog::debug)
|
||||
#define LOG_INFO PLOG(plog::info)
|
||||
#define LOG_WARNING PLOG(plog::warning)
|
||||
#define LOG_ERROR PLOG(plog::error)
|
||||
#define LOG_FATAL PLOG(plog::fatal)
|
||||
#define LOG_NONE PLOG(plog::none)
|
||||
|
||||
#define LOG_VERBOSE_(instanceId) PLOG_(instanceId, plog::verbose)
|
||||
#define LOG_DEBUG_(instanceId) PLOG_(instanceId, plog::debug)
|
||||
#define LOG_INFO_(instanceId) PLOG_(instanceId, plog::info)
|
||||
#define LOG_WARNING_(instanceId) PLOG_(instanceId, plog::warning)
|
||||
#define LOG_ERROR_(instanceId) PLOG_(instanceId, plog::error)
|
||||
#define LOG_FATAL_(instanceId) PLOG_(instanceId, plog::fatal)
|
||||
#define LOG_NONE_(instanceId) PLOG_(instanceId, plog::none)
|
||||
|
||||
#define LOGV PLOG_VERBOSE
|
||||
#define LOGD PLOG_DEBUG
|
||||
#define LOGI PLOG_INFO
|
||||
#define LOGW PLOG_WARNING
|
||||
#define LOGE PLOG_ERROR
|
||||
#define LOGF PLOG_FATAL
|
||||
#define LOGN PLOG_NONE
|
||||
|
||||
#define LOGV_(instanceId) PLOG_VERBOSE_(instanceId)
|
||||
#define LOGD_(instanceId) PLOG_DEBUG_(instanceId)
|
||||
#define LOGI_(instanceId) PLOG_INFO_(instanceId)
|
||||
#define LOGW_(instanceId) PLOG_WARNING_(instanceId)
|
||||
#define LOGE_(instanceId) PLOG_ERROR_(instanceId)
|
||||
#define LOGF_(instanceId) PLOG_FATAL_(instanceId)
|
||||
#define LOGN_(instanceId) PLOG_NONE_(instanceId)
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Conditional logging macros
|
||||
|
||||
#define LOG_IF_(instanceId, severity, condition) if (!(condition)) {;} else PLOG_(instanceId, severity)
|
||||
#define LOG_IF(severity, condition) PLOG_IF_(PLOG_DEFAULT_INSTANCE_ID, severity, condition)
|
||||
|
||||
#define LOG_VERBOSE_IF(condition) PLOG_IF(plog::verbose, condition)
|
||||
#define LOG_DEBUG_IF(condition) PLOG_IF(plog::debug, condition)
|
||||
#define LOG_INFO_IF(condition) PLOG_IF(plog::info, condition)
|
||||
#define LOG_WARNING_IF(condition) PLOG_IF(plog::warning, condition)
|
||||
#define LOG_ERROR_IF(condition) PLOG_IF(plog::error, condition)
|
||||
#define LOG_FATAL_IF(condition) PLOG_IF(plog::fatal, condition)
|
||||
#define LOG_NONE_IF(condition) PLOG_IF(plog::none, condition)
|
||||
|
||||
#define LOG_VERBOSE_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::verbose, condition)
|
||||
#define LOG_DEBUG_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::debug, condition)
|
||||
#define LOG_INFO_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::info, condition)
|
||||
#define LOG_WARNING_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::warning, condition)
|
||||
#define LOG_ERROR_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::error, condition)
|
||||
#define LOG_FATAL_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::fatal, condition)
|
||||
#define LOG_NONE_IF_(instanceId, condition) PLOG_IF_(instanceId, plog::none, condition)
|
||||
|
||||
#define LOGV_IF(condition) PLOG_VERBOSE_IF(condition)
|
||||
#define LOGD_IF(condition) PLOG_DEBUG_IF(condition)
|
||||
#define LOGI_IF(condition) PLOG_INFO_IF(condition)
|
||||
#define LOGW_IF(condition) PLOG_WARNING_IF(condition)
|
||||
#define LOGE_IF(condition) PLOG_ERROR_IF(condition)
|
||||
#define LOGF_IF(condition) PLOG_FATAL_IF(condition)
|
||||
#define LOGN_IF(condition) PLOG_NONE_IF(condition)
|
||||
|
||||
#define LOGV_IF_(instanceId, condition) PLOG_VERBOSE_IF_(instanceId, condition)
|
||||
#define LOGD_IF_(instanceId, condition) PLOG_DEBUG_IF_(instanceId, condition)
|
||||
#define LOGI_IF_(instanceId, condition) PLOG_INFO_IF_(instanceId, condition)
|
||||
#define LOGW_IF_(instanceId, condition) PLOG_WARNING_IF_(instanceId, condition)
|
||||
#define LOGE_IF_(instanceId, condition) PLOG_ERROR_IF_(instanceId, condition)
|
||||
#define LOGF_IF_(instanceId, condition) PLOG_FATAL_IF_(instanceId, condition)
|
||||
#define LOGN_IF_(instanceId, condition) PLOG_NONE_IF_(instanceId, condition)
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue