SDL_log.h File Reference
`#include "SDL_stdinc.h"`
`#include "begin_code.h"`
`#include "close_code.h"`
Include dependency graph for SDL_log.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Macros

#define | SDL_MAX_LOG_MESSAGE 4096

## Typedefs

typedef void(* | SDL_LogOutputFunction) (void *userdata, int category, SDL_LogPriority priority, const char *message)

## Enumerations

enum

SDL_LogCategory {
SDL_LOG_CATEGORY_APPLICATION ,
SDL_LOG_CATEGORY_ERROR ,
SDL_LOG_CATEGORY_ASSERT ,
SDL_LOG_CATEGORY_SYSTEM ,
SDL_LOG_CATEGORY_AUDIO ,
SDL_LOG_CATEGORY_VIDEO ,
SDL_LOG_CATEGORY_RENDER ,
SDL_LOG_CATEGORY_INPUT ,
SDL_LOG_CATEGORY_TEST ,
SDL_LOG_CATEGORY_RESERVED1 ,
SDL_LOG_CATEGORY_RESERVED2 ,
SDL_LOG_CATEGORY_RESERVED3 ,
SDL_LOG_CATEGORY_RESERVED4 ,
SDL_LOG_CATEGORY_RESERVED5 ,
SDL_LOG_CATEGORY_RESERVED6 ,
SDL_LOG_CATEGORY_RESERVED7 ,
SDL_LOG_CATEGORY_RESERVED8 ,
SDL_LOG_CATEGORY_RESERVED9 ,
SDL_LOG_CATEGORY_RESERVED10 ,
SDL_LOG_CATEGORY_CUSTOM
}

enum | SDL_LogPriority { SDL_LOG_PRIORITY_VERBOSE = 1 , SDL_LOG_PRIORITY_DEBUG , SDL_LOG_PRIORITY_INFO , SDL_LOG_PRIORITY_WARN , SDL_LOG_PRIORITY_ERROR , SDL_LOG_PRIORITY_CRITICAL , SDL_NUM_LOG_PRIORITIES }

## Functions

void | SDL_LogSetAllPriority (SDL_LogPriority priority)
void | SDL_LogSetPriority (int category, SDL_LogPriority priority)
SDL_LogPriority | SDL_LogGetPriority (int category)
void | SDL_LogResetPriorities (void)
void | SDL_Log (SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(1)
void | SDL_LogVerbose (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogDebug (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogInfo (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogWarn (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogError (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogCritical (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
void | SDL_LogMessage (int category, SDL_LogPriority priority, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(3)
void | SDL_LogMessageV (int category, SDL_LogPriority priority, SDL_PRINTF_FORMAT_STRING const char *fmt, va_list ap) SDL_PRINTF_VARARG_FUNCV(3)
void | SDL_LogGetOutputFunction (SDL_LogOutputFunction *callback, void **userdata)
void | SDL_LogSetOutputFunction (SDL_LogOutputFunction callback, void *userdata)

## Macro Definition Documentation

## SDL_MAX_LOG_MESSAGE

#define SDL_MAX_LOG_MESSAGE 4096

# CategoryLog

Simple log messages with categories and priorities.

By default logs are quiet, but if you're debugging SDL you might want:

SDL_LogSetAllPriority(SDL_LOG_PRIORITY_WARN);

Here's where the messages go on different platforms:

- Windows: debug output stream
- Android: log output
- Others: standard error output (stderr) The maximum size of a log message prior to SDL 2.0.24

As of 2.0.24 there is no limit to the length of SDL log messages.

Definition at line 55 of file SDL_log.h.

## Typedef Documentation

## SDL_LogOutputFunction

typedef void(* SDL_LogOutputFunction) (void *userdata, int category, SDL_LogPriority priority, const char *message)

The prototype for the log output callback function.

This function is called by SDL when there is new text to be logged.

Parameters

  userdata | what was passed as userdata to SDL_LogSetOutputFunction().
  category | the category of the message.
  priority | the priority of the message.
  message | the message being output.

Definition at line 368 of file SDL_log.h.

## Enumeration Type Documentation

## SDL_LogCategory

enum SDL_LogCategory

The predefined log categories

By default the application category is enabled at the INFO level, the assert category is enabled at the WARN level, test is enabled at the VERBOSE level and all other categories are enabled at the ERROR level.

Enumerator
SDL_LOG_CATEGORY_APPLICATION |
SDL_LOG_CATEGORY_ERROR |
SDL_LOG_CATEGORY_ASSERT |
SDL_LOG_CATEGORY_SYSTEM |
SDL_LOG_CATEGORY_AUDIO |
SDL_LOG_CATEGORY_VIDEO |
SDL_LOG_CATEGORY_RENDER |
SDL_LOG_CATEGORY_INPUT |
SDL_LOG_CATEGORY_TEST |
SDL_LOG_CATEGORY_RESERVED1 |
SDL_LOG_CATEGORY_RESERVED2 |
SDL_LOG_CATEGORY_RESERVED3 |
SDL_LOG_CATEGORY_RESERVED4 |
SDL_LOG_CATEGORY_RESERVED5 |
SDL_LOG_CATEGORY_RESERVED6 |
SDL_LOG_CATEGORY_RESERVED7 |
SDL_LOG_CATEGORY_RESERVED8 |
SDL_LOG_CATEGORY_RESERVED9 |
SDL_LOG_CATEGORY_RESERVED10 |
SDL_LOG_CATEGORY_CUSTOM |

Definition at line 64 of file SDL_log.h.

{
SDL_LOG_CATEGORY_APPLICATION,
SDL_LOG_CATEGORY_ERROR,
SDL_LOG_CATEGORY_ASSERT,
SDL_LOG_CATEGORY_SYSTEM,
SDL_LOG_CATEGORY_AUDIO,
SDL_LOG_CATEGORY_VIDEO,
SDL_LOG_CATEGORY_RENDER,
SDL_LOG_CATEGORY_INPUT,
SDL_LOG_CATEGORY_TEST,
/* Reserved for future SDL library use */
SDL_LOG_CATEGORY_RESERVED1,
SDL_LOG_CATEGORY_RESERVED2,
SDL_LOG_CATEGORY_RESERVED3,
SDL_LOG_CATEGORY_RESERVED4,
SDL_LOG_CATEGORY_RESERVED5,
SDL_LOG_CATEGORY_RESERVED6,
SDL_LOG_CATEGORY_RESERVED7,
SDL_LOG_CATEGORY_RESERVED8,
SDL_LOG_CATEGORY_RESERVED9,
SDL_LOG_CATEGORY_RESERVED10,
/* Beyond this point is reserved for application use, e.g.
enum {
MYAPP_CATEGORY_AWESOME1 = SDL_LOG_CATEGORY_CUSTOM,
MYAPP_CATEGORY_AWESOME2,
MYAPP_CATEGORY_AWESOME3,
...
};
*/
SDL_LOG_CATEGORY_CUSTOM
} SDL_LogCategory;
SDL_LogCategory
SDL_LogCategory
Definition SDL_log.h:65
SDL_LOG_CATEGORY_CUSTOM
@ SDL_LOG_CATEGORY_CUSTOM
Definition SDL_log.h:96
SDL_LOG_CATEGORY_RESERVED1
@ SDL_LOG_CATEGORY_RESERVED1
Definition SDL_log.h:77
SDL_LOG_CATEGORY_RESERVED8
@ SDL_LOG_CATEGORY_RESERVED8
Definition SDL_log.h:84
SDL_LOG_CATEGORY_RESERVED6
@ SDL_LOG_CATEGORY_RESERVED6
Definition SDL_log.h:82
SDL_LOG_CATEGORY_ERROR
@ SDL_LOG_CATEGORY_ERROR
Definition SDL_log.h:67
SDL_LOG_CATEGORY_RENDER
@ SDL_LOG_CATEGORY_RENDER
Definition SDL_log.h:72
SDL_LOG_CATEGORY_RESERVED5
@ SDL_LOG_CATEGORY_RESERVED5
Definition SDL_log.h:81
SDL_LOG_CATEGORY_RESERVED3
@ SDL_LOG_CATEGORY_RESERVED3
Definition SDL_log.h:79
SDL_LOG_CATEGORY_INPUT
@ SDL_LOG_CATEGORY_INPUT
Definition SDL_log.h:73
SDL_LOG_CATEGORY_TEST
@ SDL_LOG_CATEGORY_TEST
Definition SDL_log.h:74
SDL_LOG_CATEGORY_RESERVED9
@ SDL_LOG_CATEGORY_RESERVED9
Definition SDL_log.h:85
SDL_LOG_CATEGORY_SYSTEM
@ SDL_LOG_CATEGORY_SYSTEM
Definition SDL_log.h:69
SDL_LOG_CATEGORY_RESERVED10
@ SDL_LOG_CATEGORY_RESERVED10
Definition SDL_log.h:86
SDL_LOG_CATEGORY_RESERVED4
@ SDL_LOG_CATEGORY_RESERVED4
Definition SDL_log.h:80
SDL_LOG_CATEGORY_APPLICATION
@ SDL_LOG_CATEGORY_APPLICATION
Definition SDL_log.h:66
SDL_LOG_CATEGORY_AUDIO
@ SDL_LOG_CATEGORY_AUDIO
Definition SDL_log.h:70
SDL_LOG_CATEGORY_RESERVED7
@ SDL_LOG_CATEGORY_RESERVED7
Definition SDL_log.h:83
SDL_LOG_CATEGORY_ASSERT
@ SDL_LOG_CATEGORY_ASSERT
Definition SDL_log.h:68
SDL_LOG_CATEGORY_VIDEO
@ SDL_LOG_CATEGORY_VIDEO
Definition SDL_log.h:71
SDL_LOG_CATEGORY_RESERVED2
@ SDL_LOG_CATEGORY_RESERVED2
Definition SDL_log.h:78

## SDL_LogPriority

enum SDL_LogPriority

The predefined log priorities

Enumerator
SDL_LOG_PRIORITY_VERBOSE |
SDL_LOG_PRIORITY_DEBUG |
SDL_LOG_PRIORITY_INFO |
SDL_LOG_PRIORITY_WARN |
SDL_LOG_PRIORITY_ERROR |
SDL_LOG_PRIORITY_CRITICAL |
SDL_NUM_LOG_PRIORITIES |

Definition at line 102 of file SDL_log.h.

{
SDL_LOG_PRIORITY_VERBOSE = 1,
SDL_LOG_PRIORITY_DEBUG,
SDL_LOG_PRIORITY_INFO,
SDL_LOG_PRIORITY_WARN,
SDL_LOG_PRIORITY_ERROR,
SDL_LOG_PRIORITY_CRITICAL,
SDL_NUM_LOG_PRIORITIES
} SDL_LogPriority;
SDL_LogPriority
SDL_LogPriority
Definition SDL_log.h:103
SDL_NUM_LOG_PRIORITIES
@ SDL_NUM_LOG_PRIORITIES
Definition SDL_log.h:110
SDL_LOG_PRIORITY_INFO
@ SDL_LOG_PRIORITY_INFO
Definition SDL_log.h:106
SDL_LOG_PRIORITY_CRITICAL
@ SDL_LOG_PRIORITY_CRITICAL
Definition SDL_log.h:109
SDL_LOG_PRIORITY_VERBOSE
@ SDL_LOG_PRIORITY_VERBOSE
Definition SDL_log.h:104
SDL_LOG_PRIORITY_DEBUG
@ SDL_LOG_PRIORITY_DEBUG
Definition SDL_log.h:105
SDL_LOG_PRIORITY_ERROR
@ SDL_LOG_PRIORITY_ERROR
Definition SDL_log.h:108
SDL_LOG_PRIORITY_WARN
@ SDL_LOG_PRIORITY_WARN
Definition SDL_log.h:107

## Function Documentation

## SDL_Log()

void SDL_Log | ( | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO.

= *

Parameters

  fmt | a printf() style message format string
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

## SDL_LogCritical()

void SDL_LogCritical | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_CRITICAL.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogCritical(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogCritical().

## SDL_LogDebug()

void SDL_LogDebug | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_DEBUG.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogDebug(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogDebug().

## SDL_LogError()

void SDL_LogError | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_ERROR.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogError(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogError().

## SDL_LogGetOutputFunction()

void SDL_LogGetOutputFunction | ( | SDL_LogOutputFunction * | callback,
|  | void ** | userdata )

extern

Get the current log output function.

Parameters

  callback | an SDL_LogOutputFunction filled in with the current log callback.
  userdata | a pointer filled in with the pointer that is passed to callback.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogSetOutputFunction

References SDL_LogGetOutputFunction().

Referenced by SDL_LogGetOutputFunction().

## SDL_LogGetPriority()

SDL_LogPriority SDL_LogGetPriority | ( | int | category | ) |

extern

Get the priority of a particular log category.

Parameters

  category | the category to query.

Returns
  the SDL_LogPriority for the requested category.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogSetPriority

## SDL_LogInfo()

void SDL_LogInfo | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_INFO.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogInfo(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogInfo().

## SDL_LogMessage()

void SDL_LogMessage | ( | int | category,
|  | SDL_LogPriority | priority,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with the specified category and priority.

Parameters

  category | the category of the message.
  priority | the priority of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessageV
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogMessage(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogMessage().

## SDL_LogMessageV()

void SDL_LogMessageV | ( | int | category,
|  | SDL_LogPriority | priority,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  | va_list | ap )

extern

Log a message with the specified category and priority.

Parameters

  category | the category of the message.
  priority | the priority of the message.
  fmt | a printf() style message format string.
  ap | a variable argument list.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogVerbose
  SDL_LogWarn

References SDL_LogMessageV(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNCV.

Referenced by SDL_LogMessageV().

## SDL_LogResetPriorities()

void SDL_LogResetPriorities | ( | void |  | ) |

extern

Reset all priorities to default.

This is called by SDL_Quit().

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogSetAllPriority
  SDL_LogSetPriority

## SDL_LogSetAllPriority()

void SDL_LogSetAllPriority | ( | SDL_LogPriority | priority | ) |

extern

Set the priority of all log categories.

Parameters

  priority | the SDL_LogPriority to assign.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogSetPriority

## SDL_LogSetOutputFunction()

void SDL_LogSetOutputFunction | ( | SDL_LogOutputFunction | callback,
|  | void * | userdata )

extern

Replace the default log output function with one of your own.

Parameters

  callback | an SDL_LogOutputFunction to call instead of the default.
  userdata | a pointer that is passed to callback.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogGetOutputFunction

References SDL_LogSetOutputFunction().

Referenced by SDL_LogSetOutputFunction().

## SDL_LogSetPriority()

void SDL_LogSetPriority | ( | int | category,
|  | SDL_LogPriority | priority )

extern

Set the priority of a particular log category.

Parameters

  category | the category to assign a priority to.
  priority | the SDL_LogPriority to assign.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_LogGetPriority
  SDL_LogSetAllPriority

## SDL_LogVerbose()

void SDL_LogVerbose | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_VERBOSE.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogWarn

References SDL_LogVerbose(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogVerbose().

## SDL_LogWarn()

void SDL_LogWarn | ( | int | category,
|  | SDL_PRINTF_FORMAT_STRING const char * | fmt,
|  |  | ... )

extern

Log a message with SDL_LOG_PRIORITY_WARN.

Parameters

  category | the category of the message.
  fmt | a printf() style message format string.
  ... | additional parameters matching % tokens in the fmt string, if any.

Since
  This function is available since SDL 2.0.0.

See also
  SDL_Log
  SDL_LogCritical
  SDL_LogDebug
  SDL_LogError
  SDL_LogInfo
  SDL_LogMessage
  SDL_LogMessageV
  SDL_LogVerbose

References SDL_LogWarn(), SDL_PRINTF_FORMAT_STRING, and SDL_PRINTF_VARARG_FUNC.

Referenced by SDL_LogWarn().