//========================================================================================================
// E library
//
// - Logging
//
// AUTHOR:  Gabor Nagy
// DATE:    2019-Jun-23 00:17:18
//
// Copyright (C) 1996-2026 By Gabor Nagy. All rights reserved.
//========================================================================================================
#ifndef _ELog_h
#define _ELog_h


#if defined (__cplusplus) && (!(defined (__CPLUSLIBS)))
extern "C" {
#endif

// Logging
//
#ifndef ELogERROR
#define ELogERROR    0x0001
#define ELogWARNING  0x0002
#define ELogTIMING   0x0004
#define ELogMESSAGE  0x0008
#define ELogALL      0x000F
#define ELogSILENT   0x0010    // Don't display message, just log it
#endif

typedef uint16_t  ELoggingFlags;

typedef void  (*ELogFunc)(const int PType, const char* PPrefix, const char* PMessage, ...);


#if defined (__cplusplus) && (!(defined (__CPLUSLIBS)))
}	// Close scope of 'extern "C"' declaration
#endif


#endif // _ELog_h
