28 lines
796 B
C
28 lines
796 B
C
#ifndef __LOG_H_INCLUDED
|
|
#define __LOG_H_INCLUDED
|
|
|
|
/* Logging level severities */
|
|
#define LFATAL 0 /* fatal error */
|
|
#define LERROR 1 /* error */
|
|
#define LWARN 2 /* warning */
|
|
#define LINFO 3 /* information */
|
|
#define LDEBUG 4 /* debugging */
|
|
|
|
extern void Log(int level, const char *format, ...);
|
|
extern void Log_assert_failed(const char *test, const char *file, int line);
|
|
|
|
/* Current file name definitions for assert macros */
|
|
#define THIS_FILE __FILE__
|
|
#define DECLARE_THIS_FILE() static const char THIS_FILE[] = __FILE__
|
|
|
|
/* Assert macros */
|
|
#ifdef DEBUG_ASSERT
|
|
#define ASSERT(x) ((x) ? (void)0 : Log_assert_failed(#x, THIS_FILE, __LINE__))
|
|
#define VERIFY(x) ASSERT(x)
|
|
#else
|
|
#define ASSERT(x) ((void)0)
|
|
#define VERIFY(x) ((void)(x))
|
|
#endif
|
|
|
|
#endif /* __LOG_H_INCLUDED */
|