summaryrefslogtreecommitdiffstats
path: root/Examples/OldMain/Utils/Logger.cpp
blob: b9217e7c7efd35082b138bbdc88a5d2d14a726bd (plain)
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
#include <stdint.h>
#include <vector>
#include <cstdarg>
#include "Logger.h"

namespace
{
	void logMessage( const char* lvl, const char8_t* pszFormat, std::va_list va )
	{
		fprintf( stderr, "%s: ", lvl );
		vfprintf( stderr, (const char*)pszFormat, va );
		fprintf( stderr, "\n" );
	}
}

#define LOG_MESSAGE_IMPL( lvl )                \
	std::va_list args;                         \
	va_start( args, pszFormat );               \
	logMessage( lvl, pszFormat, args );        \
	va_end( args );

void logError( const char8_t* pszFormat, ... )
{
	LOG_MESSAGE_IMPL( "Error" );
}

void logWarning( const char8_t* pszFormat, ... )
{
	LOG_MESSAGE_IMPL( "Warning" );
}

void logInfo( const char8_t* pszFormat, ... )
{
	LOG_MESSAGE_IMPL( "Info" );
}

void logDebug( const char8_t* pszFormat, ... )
{
	LOG_MESSAGE_IMPL( "Debug" );
}