orx 1.16
Portable Game Engine
Loading...
Searching...
No Matches
OrxDebug

Macros

#define orxASSERT(TEST, ...)
#define orxBREAK()
#define orxDEBUG_ENABLE_LEVEL(LEVEL, ENABLE)
#define orxDEBUG_EXIT()
#define orxDEBUG_GET_FLAGS()
#define orxDEBUG_INIT()
#define orxDEBUG_IS_LEVEL_ENABLED(LEVEL)
#define orxDEBUG_KS32_BUFFER_OUTPUT_SIZE   2048
#define orxDEBUG_KU32_STATIC_FLAG_CALLBACK   0x00000080
#define orxDEBUG_KU32_STATIC_FLAG_CONSOLE   0x00000040
#define orxDEBUG_KU32_STATIC_FLAG_FILE   0x00000010
#define orxDEBUG_KU32_STATIC_FLAG_FULL_TIMESTAMP   0x00000002
#define orxDEBUG_KU32_STATIC_FLAG_NONE   0x00000000
#define orxDEBUG_KU32_STATIC_FLAG_TAGGED   0x00000008
#define orxDEBUG_KU32_STATIC_FLAG_TERMINAL   0x00000020
#define orxDEBUG_KU32_STATIC_FLAG_TIMESTAMP   0x00000001
#define orxDEBUG_KU32_STATIC_FLAG_TYPE   0x00000004
#define orxDEBUG_KU32_STATIC_MASK_DEBUG   0x000000BD
#define orxDEBUG_KU32_STATIC_MASK_DEFAULT   0x000000F5
#define orxDEBUG_KU32_STATIC_MASK_USER_ALL   0x0FFFFFFF
#define orxDEBUG_KZ_DATE_FORMAT   orxANSI_KZ_COLOR_FG_CYAN "[%H:%M:%S]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_KZ_DATE_FULL_FORMAT   orxANSI_KZ_COLOR_FG_CYAN "[%Y-%m-%d %H:%M:%S]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_KZ_DEFAULT_DEBUG_FILE   "orx-debug.log"
#define orxDEBUG_KZ_DEFAULT_DEBUG_SUFFIX   "-debug.log"
#define orxDEBUG_KZ_DEFAULT_LOG_FILE   "orx.log"
#define orxDEBUG_KZ_DEFAULT_LOG_SUFFIX   ".log"
#define orxDEBUG_KZ_FILE_FORMAT   orxANSI_KZ_COLOR_FG_MAGENTA "[%s:%s(%u)]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_KZ_TYPE_ERROR_FORMAT   orxANSI_KZ_COLOR_FG_RED "[%s]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_KZ_TYPE_LOG_FORMAT   orxANSI_KZ_COLOR_FG_GREEN "[%s]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_KZ_TYPE_WARNING_FORMAT   orxANSI_KZ_COLOR_FG_YELLOW "[%s]" orxANSI_KZ_COLOR_RESET
#define orxDEBUG_PRINT(LEVEL, STRING, ...)
#define orxDEBUG_SET_FLAGS(SET, UNSET)
#define orxDEBUG_SET_LOG_CALLBACK(CALLBACK)
#define orxDEBUG_SETBASEFILENAME(FILE)
#define orxDEBUG_SETDEBUGFILE(FILE)
#define orxDEBUG_SETLOGFILE(FILE)

Typedefs

typedef orxSTATUS(orxFASTCALL * orxDEBUG_CALLBACK_FUNCTION) (orxDEBUG_LEVEL _eLevel, const orxSTRING _zFunction, const orxSTRING _zFile, orxU32 _u32Line, const orxSTRING _zLog)

Enumerations

enum  orxDEBUG_LEVEL {
  orxDEBUG_LEVEL_ANIM = 0 , orxDEBUG_LEVEL_CLOCK , orxDEBUG_LEVEL_COMMAND , orxDEBUG_LEVEL_CONFIG ,
  orxDEBUG_LEVEL_DISPLAY , orxDEBUG_LEVEL_FILE , orxDEBUG_LEVEL_INPUT , orxDEBUG_LEVEL_JOYSTICK ,
  orxDEBUG_LEVEL_KEYBOARD , orxDEBUG_LEVEL_MEMORY , orxDEBUG_LEVEL_MOUSE , orxDEBUG_LEVEL_OBJECT ,
  orxDEBUG_LEVEL_PARAM , orxDEBUG_LEVEL_PHYSICS , orxDEBUG_LEVEL_PLUGIN , orxDEBUG_LEVEL_PROFILER ,
  orxDEBUG_LEVEL_RENDER , orxDEBUG_LEVEL_SCREENSHOT , orxDEBUG_LEVEL_SOUND , orxDEBUG_LEVEL_SYSTEM ,
  orxDEBUG_LEVEL_TIMER , orxDEBUG_LEVEL_LOG , orxDEBUG_LEVEL_ASSERT , orxDEBUG_LEVEL_USER ,
  orxDEBUG_LEVEL_NUMBER , orxDEBUG_LEVEL_MAX_NUMBER = 32 , orxDEBUG_LEVEL_ALL = 0xFFFFFFFE , orxDEBUG_LEVEL_NONE = orxENUM_NONE
}

Functions

orxDLLAPI void orxFASTCALL _orxDebug_Break ()
orxDLLAPI void orxFASTCALL _orxDebug_EnableLevel (orxDEBUG_LEVEL _eLevel, orxBOOL _bEnable)
orxDLLAPI void orxFASTCALL _orxDebug_Exit ()
orxDLLAPI orxU32 orxFASTCALL _orxDebug_GetFlags ()
orxDLLAPI orxSTATUS orxFASTCALL _orxDebug_Init ()
orxDLLAPI orxBOOL orxFASTCALL _orxDebug_IsLevelEnabled (orxDEBUG_LEVEL _eLevel)
orxDLLAPI void orxCDECL _orxDebug_Log (orxDEBUG_LEVEL _eLevel, const orxSTRING _zFunction, const orxSTRING _zFile, orxU32 _u32Line, const orxSTRING _zFormat,...)
orxDLLAPI void orxFASTCALL _orxDebug_SetDebugFile (const orxSTRING _zFileName)
orxDLLAPI void orxFASTCALL _orxDebug_SetFlags (orxU32 _u32Add, orxU32 _u32Remove)
orxDLLAPI void orxFASTCALL _orxDebug_SetLogCallback (const orxDEBUG_CALLBACK_FUNCTION _pfnLogCallback)
orxDLLAPI void orxFASTCALL _orxDebug_SetLogFile (const orxSTRING _zFileName)

Detailed Description

Debug module Module used to output debug info and assert code

Macro Definition Documentation

◆ orxASSERT

#define orxASSERT ( TEST,
... )

Definition at line 378 of file orxDebug.h.

◆ orxBREAK

#define orxBREAK ( )

Definition at line 355 of file orxDebug.h.

◆ orxDEBUG_ENABLE_LEVEL

#define orxDEBUG_ENABLE_LEVEL ( LEVEL,
ENABLE )
Value:
_orxDebug_EnableLevel(LEVEL, ENABLE)
orxDLLAPI void orxFASTCALL _orxDebug_EnableLevel(orxDEBUG_LEVEL _eLevel, orxBOOL _bEnable)

Definition at line 346 of file orxDebug.h.

◆ orxDEBUG_EXIT

#define orxDEBUG_EXIT ( )
Value:
orxDLLAPI void orxFASTCALL _orxDebug_Exit()

Definition at line 249 of file orxDebug.h.

◆ orxDEBUG_GET_FLAGS

#define orxDEBUG_GET_FLAGS ( )
Value:
orxDLLAPI orxU32 orxFASTCALL _orxDebug_GetFlags()

Definition at line 350 of file orxDebug.h.

◆ orxDEBUG_INIT

#define orxDEBUG_INIT ( )
Value:
do \
{ \
orxU32 u32DebugFlags; \
_orxDebug_Init(); \
u32DebugFlags = _orxDebug_GetFlags(); \
{ \
orxLOG("The version of the runtime library [" orxANSI_KZ_COLOR_FG_GREEN "%s" \
orxANSI_KZ_COLOR_FG_DEFAULT orxANSI_KZ_COLOR_BLINK_OFF " than the version used when compiling this program [" \
orxANSI_KZ_COLOR_FG_RED orxANSI_KZ_COLOR_BLINK_ON " Problems will likely ensue!", \
} \
{ \
orxLOG("The version of the runtime library [" orxANSI_KZ_COLOR_FG_GREEN "%s" \
orxANSI_KZ_COLOR_FG_DEFAULT orxANSI_KZ_COLOR_BLINK_OFF " than the version used when compiling this program [" \
orxANSI_KZ_COLOR_FG_YELLOW orxANSI_KZ_COLOR_BLINK_ON " Problems may arise due to possible incompatibilities!",\
} \
_orxDebug_SetFlags(u32DebugFlags, orxDEBUG_KU32_STATIC_MASK_USER_ALL); \
} \
while(orxFALSE)
#define orxDEBUG_KU32_STATIC_MASK_USER_ALL
Definition orxDebug.h:69
#define orxDEBUG_KU32_STATIC_MASK_DEBUG
Definition orxDebug.h:67
#define orxANSI_KZ_COLOR_FG_YELLOW
Definition orxDecl.h:468
#define orxANSI_KZ_COLOR_BLINK_ON
Definition orxDecl.h:454
#define orxANSI_KZ_COLOR_FG_GREEN
Definition orxDecl.h:467
#define orxANSI_KZ_COLOR_FG_RED
Definition orxDecl.h:466
#define orxANSI_KZ_COLOR_BLINK_OFF
Definition orxDecl.h:461
#define orxANSI_KZ_COLOR_FG_DEFAULT
Definition orxDecl.h:473
orxDLLAPI const orxSTRING orxFASTCALL orxSystem_GetVersionFullString()
orxDLLAPI orxU32 orxFASTCALL orxSystem_GetVersionNumeric()
#define orxFALSE
Definition orxType.h:210
#define __orxVERSION__
Definition orxVersion.h:80
#define __orxVERSION_FULL_STRING__
Definition orxVersion.h:71

Definition at line 221 of file orxDebug.h.

◆ orxDEBUG_IS_LEVEL_ENABLED

#define orxDEBUG_IS_LEVEL_ENABLED ( LEVEL)
Value:
orxDLLAPI orxBOOL orxFASTCALL _orxDebug_IsLevelEnabled(orxDEBUG_LEVEL _eLevel)

Definition at line 347 of file orxDebug.h.

◆ orxDEBUG_KS32_BUFFER_OUTPUT_SIZE

#define orxDEBUG_KS32_BUFFER_OUTPUT_SIZE   2048

Definition at line 388 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_CALLBACK

#define orxDEBUG_KU32_STATIC_FLAG_CALLBACK   0x00000080

Definition at line 63 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_CONSOLE

#define orxDEBUG_KU32_STATIC_FLAG_CONSOLE   0x00000040

Definition at line 62 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_FILE

#define orxDEBUG_KU32_STATIC_FLAG_FILE   0x00000010

Definition at line 60 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_FULL_TIMESTAMP

#define orxDEBUG_KU32_STATIC_FLAG_FULL_TIMESTAMP   0x00000002

Definition at line 56 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_NONE

#define orxDEBUG_KU32_STATIC_FLAG_NONE   0x00000000

Definition at line 53 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_TAGGED

#define orxDEBUG_KU32_STATIC_FLAG_TAGGED   0x00000008

Definition at line 58 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_TERMINAL

#define orxDEBUG_KU32_STATIC_FLAG_TERMINAL   0x00000020

Definition at line 61 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_TIMESTAMP

#define orxDEBUG_KU32_STATIC_FLAG_TIMESTAMP   0x00000001

Definition at line 55 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_FLAG_TYPE

#define orxDEBUG_KU32_STATIC_FLAG_TYPE   0x00000004

Definition at line 57 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_MASK_DEBUG

#define orxDEBUG_KU32_STATIC_MASK_DEBUG   0x000000BD

Definition at line 67 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_MASK_DEFAULT

#define orxDEBUG_KU32_STATIC_MASK_DEFAULT   0x000000F5

Definition at line 65 of file orxDebug.h.

◆ orxDEBUG_KU32_STATIC_MASK_USER_ALL

#define orxDEBUG_KU32_STATIC_MASK_USER_ALL   0x0FFFFFFF

Definition at line 69 of file orxDebug.h.

◆ orxDEBUG_KZ_DATE_FORMAT

#define orxDEBUG_KZ_DATE_FORMAT   orxANSI_KZ_COLOR_FG_CYAN "[%H:%M:%S]" orxANSI_KZ_COLOR_RESET

Definition at line 390 of file orxDebug.h.

◆ orxDEBUG_KZ_DATE_FULL_FORMAT

#define orxDEBUG_KZ_DATE_FULL_FORMAT   orxANSI_KZ_COLOR_FG_CYAN "[%Y-%m-%d %H:%M:%S]" orxANSI_KZ_COLOR_RESET

Definition at line 391 of file orxDebug.h.

◆ orxDEBUG_KZ_DEFAULT_DEBUG_FILE

#define orxDEBUG_KZ_DEFAULT_DEBUG_FILE   "orx-debug.log"

Definition at line 74 of file orxDebug.h.

◆ orxDEBUG_KZ_DEFAULT_DEBUG_SUFFIX

#define orxDEBUG_KZ_DEFAULT_DEBUG_SUFFIX   "-debug.log"

Definition at line 77 of file orxDebug.h.

◆ orxDEBUG_KZ_DEFAULT_LOG_FILE

#define orxDEBUG_KZ_DEFAULT_LOG_FILE   "orx.log"

Definition at line 75 of file orxDebug.h.

◆ orxDEBUG_KZ_DEFAULT_LOG_SUFFIX

#define orxDEBUG_KZ_DEFAULT_LOG_SUFFIX   ".log"

Definition at line 76 of file orxDebug.h.

◆ orxDEBUG_KZ_FILE_FORMAT

#define orxDEBUG_KZ_FILE_FORMAT   orxANSI_KZ_COLOR_FG_MAGENTA "[%s:%s(%u)]" orxANSI_KZ_COLOR_RESET

Definition at line 397 of file orxDebug.h.

◆ orxDEBUG_KZ_TYPE_ERROR_FORMAT

#define orxDEBUG_KZ_TYPE_ERROR_FORMAT   orxANSI_KZ_COLOR_FG_RED "[%s]" orxANSI_KZ_COLOR_RESET

Definition at line 395 of file orxDebug.h.

◆ orxDEBUG_KZ_TYPE_LOG_FORMAT

#define orxDEBUG_KZ_TYPE_LOG_FORMAT   orxANSI_KZ_COLOR_FG_GREEN "[%s]" orxANSI_KZ_COLOR_RESET

Definition at line 393 of file orxDebug.h.

◆ orxDEBUG_KZ_TYPE_WARNING_FORMAT

#define orxDEBUG_KZ_TYPE_WARNING_FORMAT   orxANSI_KZ_COLOR_FG_YELLOW "[%s]" orxANSI_KZ_COLOR_RESET

Definition at line 394 of file orxDebug.h.

◆ orxDEBUG_PRINT

#define orxDEBUG_PRINT ( LEVEL,
STRING,
... )

Definition at line 344 of file orxDebug.h.

◆ orxDEBUG_SET_FLAGS

#define orxDEBUG_SET_FLAGS ( SET,
UNSET )
Value:
_orxDebug_SetFlags(SET, UNSET)
orxDLLAPI void orxFASTCALL _orxDebug_SetFlags(orxU32 _u32Add, orxU32 _u32Remove)

Definition at line 349 of file orxDebug.h.

◆ orxDEBUG_SET_LOG_CALLBACK

#define orxDEBUG_SET_LOG_CALLBACK ( CALLBACK)
Value:
orxDLLAPI void orxFASTCALL _orxDebug_SetLogCallback(const orxDEBUG_CALLBACK_FUNCTION _pfnLogCallback)

Definition at line 352 of file orxDebug.h.

◆ orxDEBUG_SETBASEFILENAME

#define orxDEBUG_SETBASEFILENAME ( FILE)
Value:
do \
{ \
if((FILE != orxNULL) && (FILE != orxSTRING_EMPTY)) \
{ \
orxCHAR zBuffer[512]; \
zBuffer[511] = orxCHAR_NULL; \
/* The redundant check is a workaround for some buggy compilers that don't realize FILE is not null here */ \
strncpy(zBuffer, FILE ? FILE : orxSTRING_EMPTY, 256); \
strncat(zBuffer, orxDEBUG_KZ_DEFAULT_LOG_SUFFIX, 255); \
_orxDebug_SetLogFile(zBuffer); \
} \
else \
{ \
_orxDebug_SetLogFile(FILE); \
} \
} while(orxFALSE)
#define orxDEBUG_KZ_DEFAULT_LOG_SUFFIX
Definition orxDebug.h:76
#define orxCHAR_NULL
Definition orxType.h:240
orxDLLAPI const orxSTRING orxSTRING_EMPTY

Definition at line 360 of file orxDebug.h.

◆ orxDEBUG_SETDEBUGFILE

#define orxDEBUG_SETDEBUGFILE ( FILE)

Definition at line 358 of file orxDebug.h.

◆ orxDEBUG_SETLOGFILE

#define orxDEBUG_SETLOGFILE ( FILE)
Value:
orxDLLAPI void orxFASTCALL _orxDebug_SetLogFile(const orxSTRING _zFileName)

Definition at line 359 of file orxDebug.h.

Typedef Documentation

◆ orxDEBUG_CALLBACK_FUNCTION

typedef orxSTATUS(orxFASTCALL * orxDEBUG_CALLBACK_FUNCTION) (orxDEBUG_LEVEL _eLevel, const orxSTRING _zFunction, const orxSTRING _zFile, orxU32 _u32Line, const orxSTRING _zLog)

Definition at line 123 of file orxDebug.h.

Enumeration Type Documentation

◆ orxDEBUG_LEVEL

Enumerator
orxDEBUG_LEVEL_ANIM 

Anim Debug

orxDEBUG_LEVEL_CLOCK 

Clock Debug

orxDEBUG_LEVEL_COMMAND 

Command Debug

orxDEBUG_LEVEL_CONFIG 

Config Debug

orxDEBUG_LEVEL_DISPLAY 

Display Debug

orxDEBUG_LEVEL_FILE 

File Debug

orxDEBUG_LEVEL_INPUT 

Input Debug

orxDEBUG_LEVEL_JOYSTICK 

Joystick Debug

orxDEBUG_LEVEL_KEYBOARD 

Keyboard Debug

orxDEBUG_LEVEL_MEMORY 

Memory Debug

orxDEBUG_LEVEL_MOUSE 

Mouse Debug

orxDEBUG_LEVEL_OBJECT 

Object Debug

orxDEBUG_LEVEL_PARAM 

Param Debug

orxDEBUG_LEVEL_PHYSICS 

Physics Debug

orxDEBUG_LEVEL_PLUGIN 

Plug-in Debug

orxDEBUG_LEVEL_PROFILER 

Profiler Debug

orxDEBUG_LEVEL_RENDER 

Render Debug

orxDEBUG_LEVEL_SCREENSHOT 

Screenshot Debug

orxDEBUG_LEVEL_SOUND 

Sound Debug

orxDEBUG_LEVEL_SYSTEM 

System Debug

orxDEBUG_LEVEL_TIMER 

Timer Debug

orxDEBUG_LEVEL_LOG 

Log Debug

orxDEBUG_LEVEL_ASSERT 

Assert Debug

orxDEBUG_LEVEL_USER 

User Debug

orxDEBUG_LEVEL_NUMBER 
orxDEBUG_LEVEL_MAX_NUMBER 
orxDEBUG_LEVEL_ALL 

All Debugs

orxDEBUG_LEVEL_NONE 

Definition at line 81 of file orxDebug.h.

Function Documentation

◆ _orxDebug_Break()

orxDLLAPI void orxFASTCALL _orxDebug_Break ( )
extern

Software break function

◆ _orxDebug_EnableLevel()

orxDLLAPI void orxFASTCALL _orxDebug_EnableLevel ( orxDEBUG_LEVEL _eLevel,
orxBOOL _bEnable )
extern

Enables/disables a given log level

Parameters
[in]_eLevelDebug level to enable/disable
[in]_bEnableEnable / disable

◆ _orxDebug_Exit()

orxDLLAPI void orxFASTCALL _orxDebug_Exit ( )
extern

Exits from the debug module

◆ _orxDebug_GetFlags()

orxDLLAPI orxU32 orxFASTCALL _orxDebug_GetFlags ( )
extern

Gets current debug flags

Returns
Current debug flags

◆ _orxDebug_Init()

orxDLLAPI orxSTATUS orxFASTCALL _orxDebug_Init ( )
extern

Inits the debug module

Returns
orxSTATUS_SUCCESS / orxSTATUS_FAILURE

◆ _orxDebug_IsLevelEnabled()

orxDLLAPI orxBOOL orxFASTCALL _orxDebug_IsLevelEnabled ( orxDEBUG_LEVEL _eLevel)
extern

Is a given log level enabled?

Parameters
[in]_eLevelConcerned debug level

◆ _orxDebug_Log()

orxDLLAPI void orxCDECL _orxDebug_Log ( orxDEBUG_LEVEL _eLevel,
const orxSTRING _zFunction,
const orxSTRING _zFile,
orxU32 _u32Line,
const orxSTRING _zFormat,
... )
extern

Logs given debug text

Parameters
[in]_eLevelDebug level associated with this output
[in]_zFunctionCalling function name
[in]_zFileCalling file name
[in]_u32LineCalling file line
[in]_zFormatPrintf formatted text

◆ _orxDebug_SetDebugFile()

orxDLLAPI void orxFASTCALL _orxDebug_SetDebugFile ( const orxSTRING _zFileName)
extern

Sets debug file name

Parameters
[in]_zFileNameDebug file name

◆ _orxDebug_SetFlags()

orxDLLAPI void orxFASTCALL _orxDebug_SetFlags ( orxU32 _u32Add,
orxU32 _u32Remove )
extern

Sets current debug flags

Parameters
[in]_u32AddFlags to add
[in]_u32RemoveFlags to remove

◆ _orxDebug_SetLogCallback()

orxDLLAPI void orxFASTCALL _orxDebug_SetLogCallback ( const orxDEBUG_CALLBACK_FUNCTION _pfnLogCallback)
extern

Sets log callback function, if the callback returns orxSTATUS_FAILURE, the log entry will be entirely inhibited

Parameters
[in]_pfnLogCallbackLog callback function, orxNULL to remove it

◆ _orxDebug_SetLogFile()

orxDLLAPI void orxFASTCALL _orxDebug_SetLogFile ( const orxSTRING _zFileName)
extern

Sets log file name

Parameters
[in]_zFileNameLog file name

Generated for orx by doxygen 1.8.11