[go: up one dir, main page]

Menu

[r19]: / CLog.cpp  Maximize  Restore  History

Download this file

135 lines (108 with data), 3.1 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#include "main.h"
CLog::CLog()
{
logfile = fopen("saves/logs.txt", "a");
char buf[256];
char timestr[128];
time_t rawtime;
time(&rawtime);
struct tm * timeinfo;
timeinfo = localtime(&rawtime);
strftime(timestr, 128, "%d-%m-%Y", timeinfo);
#ifdef _IRR_WINDOWS_
snprintf(buf, 256, "\r\n\r\n\r\n--------------\r\n| Log opened |\r\n| %s |\r\n--------------\r\n\r\n", timestr);
#else
snprintf(buf, 256, "\n\n\n--------------\n| Log opened |\n| %s |\n--------------\n\n", timestr);
#endif
fputs(buf, logfile);
info("LOG", "Log file opened.");
}
CLog::~CLog()
{
info("LOG", "Log file closed.");
fclose(logfile);
}
void CLog::PutInLog(const char source[], const char type[], const char msg[])
{
char buf[256];
char timestr[128];
time_t rawtime;
time(&rawtime);
struct tm * timeinfo;
timeinfo = localtime(&rawtime);
strftime(timestr, 128, "%H:%M:%S", timeinfo);
#ifdef _IRR_WINDOWS_
snprintf(buf, 256, "[%s] [%8s] [%4s] %s\r\n", timestr, source, type, msg);
#else
snprintf(buf, 256, "[%s] [%8s] [%4s] %s\n", timestr, source, type, msg);
#endif
fputs(buf, logfile);
}
int CLog::error(int errnum, const char errmsg[])
{
char buf[256];
if(errnum!=0) snprintf(buf, 256, "%s (error ID: %d)", errmsg, errnum);
else snprintf(buf, 256, "%s", errmsg);
cerr << "ERROR: " << buf << endl;
PutInLog("", "ERR", buf);
return errnum;
}
int CLog::warning(int errnum, const char errmsg[])
{
char buf[256];
if(errnum!=0) snprintf(buf, 256, "%s (error ID: %d)", errmsg, errnum);
else snprintf(buf, 256, "%s", errmsg);
cerr << "WARNING: " << buf << endl;
PutInLog("", "WARN", buf);
return errnum;
}
void CLog::info(const char errmsg[])
{
char buf[256];
snprintf(buf, 256, "%s", errmsg);
cout << "INFO: " << buf << endl;
PutInLog("", "INFO", buf);
}
void CLog::debug(const char errmsg[])
{
char buf[256];
snprintf(buf, 256, "%s", errmsg);
#ifdef CONFIG_DEBUG_MODE
cout << "DEBUG: " << buf << endl;
#endif
PutInLog("", "DBG", buf);
}
int CLog::error(int errnum, const char source[], const char errmsg[])
{
char buf[256];
if(errnum!=0) snprintf(buf, 256, "%s (error ID: %d)", errmsg, errnum);
else snprintf(buf, 256, "%s", errmsg);
cerr << "ERROR: " << buf << endl;
PutInLog(source, "ERR", buf);
return errnum;
}
int CLog::warning(int errnum, const char source[], const char errmsg[])
{
char buf[256];
if(errnum!=0) snprintf(buf, 256, "%s (error ID: %d)", errmsg, errnum);
else snprintf(buf, 256, "%s", errmsg);
cerr << "WARNING: " << buf << endl;
PutInLog(source, "WARN", buf);
return errnum;
}
void CLog::info(const char source[], const char errmsg[])
{
char buf[256];
snprintf(buf, 256, "%s", errmsg);
cout << "INFO: " << buf << endl;
PutInLog(source, "INFO", buf);
}
void CLog::debug(const char source[], const char errmsg[])
{
char buf[256];
snprintf(buf, 256, "%s", errmsg);
#ifdef CONFIG_DEBUG_MODE
cout << "DEBUG: " << buf << endl;
#endif
PutInLog(source, "DBG", buf);
}