|
- #include "IZ_log.h"
-
- void IZ_LogError(const char* fmt, ...) {
- #ifdef IZ_LOG_LEVEL_FLAG_ERROR
- char buffer[4096];
- va_list args;
- va_start(args, fmt);
- vsnprintf(buffer, sizeof(buffer), fmt, args);
- va_end(args);
- #if IZ_LOG_DATE_FUNCTION == IZ_TimerElapsed
- fprintf(stderr, RED "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- #elif IZ_LOG_DATE_FUNCTION == IZ_TimerNow
- fprintf(stderr, RED "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- #endif
- #endif
- }
-
- void IZ_LogInfo(IZ_LogCategory category, const char* fmt, ...) {
- #ifdef IZ_LOG_LEVEL_FLAG_INFO
- char buffer[4096];
- va_list args;
- va_start(args, fmt);
- vsnprintf(buffer, sizeof(buffer), fmt, args);
- va_end(args);
- #if IZ_LOG_DATE_FUNCTION == IZ_TimerElapsed
- switch (category) {
- default:
- case IZ_LOG_CATEGORY_GENERIC:
- fprintf(stdout, CYN "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- case IZ_LOG_CATEGORY_GLOBAL:
- fprintf(stdout, MAG "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- case IZ_LOG_CATEGORY_INPUT:
- fprintf(stdout, GRN "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- }
-
- #elif IZ_LOG_DATE_FUNCTION == IZ_TimerNow
- switch (category) {
- default:
- case IZ_LOG_CATEGORY_GENERIC:
- fprintf(stdout, CYN "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- case IZ_LOG_CATEGORY_GLOBAL:
- fprintf(stdout, MAG "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- case IZ_LOG_CATEGORY_INPUT:
- fprintf(stdout, GRN "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- break;
- }
- #endif
- #endif
- }
-
- void IZ_LogWarn(bool is_critical, const char* fmt, ...) {
- #ifdef IZ_LOG_LEVEL_FLAG_WARN
- char buffer[4096];
- va_list args;
- va_start(args, fmt);
- vsnprintf(buffer, sizeof(buffer), fmt, args);
- va_end(args);
- #if IZ_LOG_DATE_FUNCTION == IZ_TimerElapsed
- if (is_critical) {
- fprintf(stdout, WHT "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- } else {
- fprintf(stdout, YEL "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- }
- #elif IZ_LOG_DATE_FUNCTION == IZ_TimerNow
- if (is_critical) {
- fprintf(stdout, WHT "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- } else {
- fprintf(stdout, YEL "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- }
- #endif
- #endif
- }
-
- void IZ_Log(const char* fmt, ...) {
- #ifdef IZ_LOG_LEVEL_FLAG_DEBUG
- char buffer[4096];
- va_list args;
- va_start(args, fmt);
- vsnprintf(buffer, sizeof(buffer), fmt, args);
- va_end(args);
- #if IZ_LOG_DATE_FUNCTION == IZ_TimerElapsed
- fprintf(stdout, BLU "%12s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- #elif IZ_LOG_DATE_FUNCTION == IZ_TimerNow
- fprintf(stdout, BLU "%24s" RESET " %s\n", IZ_LOG_DATE_FUNCTION(), buffer);
- #endif
- #endif
- }
|