Last active
October 22, 2018 01:39
-
-
Save kujyp/9c84eff1b8c764671f1ef86d483c68a7 to your computer and use it in GitHub Desktop.
C++ logger using cout
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__) | |
#define LOG_WARN_JYP(str) \ | |
if (WARN <= g_logLevel) { \ | |
LOG_JYP(str) \ | |
}; | |
#define LOG_DEBUG_JYP(str) \ | |
if (DEBUG <= g_logLevel) { \ | |
LOG_JYP(str) \ | |
}; | |
#define LOG_JYP(str) \ | |
if (str != NULL) {\ | |
cout << str; \ | |
} | |
#define LOG_DEBUG_JYP_START() \ | |
LOG_DEBUG_JYP("[DEBUG] [") \ | |
LOG_DEBUG_JYP(__FILENAME__) \ | |
LOG_DEBUG_JYP(":") \ | |
LOG_DEBUG_JYP(__LINE__) \ | |
LOG_DEBUG_JYP("] ") | |
#define LOG_WARN_JYP_START() \ | |
LOG_WARN_JYP("[WARN] [") \ | |
LOG_WARN_JYP(__FILENAME__) \ | |
LOG_WARN_JYP(":") \ | |
LOG_WARN_JYP(__LINE__) \ | |
LOG_WARN_JYP("] ") | |
#define _LOG_DEBUG_JYP_VECTOR(vct) \ | |
LOG_DEBUG_JYP("size=[") \ | |
LOG_DEBUG_JYP(vct->size()) \ | |
LOG_DEBUG_JYP("], content=[") \ | |
for (auto i = vct->begin(); i != vct->end(); ++i) {\ | |
LOG_DEBUG_JYP((*i)) \ | |
LOG_DEBUG_JYP(", ") \ | |
} | |
#define _LOG_WARN_JYP_VECTOR(vct) \ | |
LOG_WARN_JYP("size=[") \ | |
LOG_WARN_JYP(vct->size()) \ | |
LOG_WARN_JYP("], content=[") \ | |
for (auto i = vct->begin(); i != vct->end(); ++i) {\ | |
LOG_WARN_JYP((*i)) \ | |
LOG_WARN_JYP(", ") \ | |
} | |
#define LOG_WARN_JYP_END() \ | |
LOG_WARN_JYP("\n"); | |
#define LOG_DEBUG_JYP_END() \ | |
LOG_DEBUG_JYP("\n"); | |
#define LOG_WARN_JYP_1(first) \ | |
LOG_WARN_JYP_START() \ | |
LOG_WARN_JYP(first) \ | |
LOG_WARN_JYP_END() | |
#define LOG_DEBUG_JYP_1(first) \ | |
LOG_DEBUG_JYP_START() \ | |
LOG_DEBUG_JYP(first) \ | |
LOG_DEBUG_JYP_END() | |
#define LOG_WARN_JYP_2(first, second) \ | |
LOG_WARN_JYP_START() \ | |
LOG_WARN_JYP(first) \ | |
LOG_WARN_JYP("=[") \ | |
LOG_WARN_JYP(second) \ | |
LOG_WARN_JYP("]") \ | |
LOG_WARN_JYP_END() | |
#define LOG_DEBUG_JYP_2(first, second) \ | |
LOG_DEBUG_JYP_START() \ | |
LOG_DEBUG_JYP(first) \ | |
LOG_DEBUG_JYP("=[") \ | |
LOG_DEBUG_JYP(second) \ | |
LOG_DEBUG_JYP("]") \ | |
LOG_DEBUG_JYP_END() | |
#define LOG_WARN_JYP_VECTOR(first, vector) \ | |
LOG_WARN_JYP_START() \ | |
LOG_WARN_JYP(first) \ | |
LOG_WARN_JYP("=[") \ | |
_LOG_WARN_JYP_VECTOR(vector) \ | |
LOG_WARN_JYP("]") \ | |
LOG_WARN_JYP_END() | |
#define LOG_DEBUG_JYP_VECTOR(first, vector) \ | |
LOG_DEBUG_JYP_START() \ | |
LOG_DEBUG_JYP(first) \ | |
LOG_DEBUG_JYP("=[") \ | |
_LOG_DEBUG_JYP_VECTOR(vector) \ | |
LOG_DEBUG_JYP("]") \ | |
LOG_DEBUG_JYP_END() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment