| // Copyright 2011 Google Inc. All Rights Reserved. |
| // Author: qianzhang@google.com (ken Zhang) |
| |
| |
| #ifndef _SAGELOG_H_ |
| #define _SAGELOG_H_ |
| |
| #include <assert.h> |
| |
| enum { _LOG_TIMING = 0x01, // Timing and performance measurements |
| _LOG_TRACE = 0x02, // General step point call tracing |
| _LOG_MEMORY = 0x04, // Memory and object allocation/destruction |
| _LOG_LOCKING = 0x08, // Locking/unlocking of critical sections |
| _LOG_ERROR = 0x10, // Debug error notification |
| _LOG_CUSTOM1 = 0x20, |
| _LOG_CUSTOM2 = 0x40, |
| }; |
| |
| #define _MIN(x,y) ((x)>(y)? (y):(x)) |
| #define _MAX(x,y) ((x)>(y)? (x):(y)) |
| |
| |
| #ifndef TEXT |
| #define TEXT( x ) x |
| #endif |
| |
| #define snprintf snprintf |
| #define vsnprintf vsnprintf |
| |
| #ifndef lstrlen |
| #define lstrlen strlen |
| #endif |
| |
| #ifndef lstrcat |
| #define lstrcat strcat |
| #endif |
| |
| #ifndef ASSERT |
| #define ASSERT assert |
| #endif |
| |
| #define sage_log( x ) _sagelog x |
| |
| void _sagelog( int type, int level, const char* cstr, ... ); |
| void _flog_setup( char* filename, int enable ); |
| char* _get_flog_path( ); |
| int _get_flog_state( ); |
| int _flog_check(); |
| void _set_native_log( int level ); |
| void _enable_native_log( ); |
| void _disable_native_log(); |
| #endif /* SAGELOG_H_ */ |