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
| The maximum size of a log message. More...

## Typedefs

typedef void(* | SDL_LogOutputFunction) (void *userdata, int category, SDL_LogPriority priority, const char *message)
| The prototype for the log output function. More...

## Enumerations

enum

{
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
}

| The predefined log categories. More...
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 }
| The predefined log priorities. More...

## Functions

void | SDL_LogSetAllPriority (SDL_LogPriority priority)
| Set the priority of all log categories. More...
void | SDL_LogSetPriority (int category, SDL_LogPriority priority)
| Set the priority of a particular log category. More...
SDL_LogPriority | SDL_LogGetPriority (int category)
| Get the priority of a particular log category. More...
void | SDL_LogResetPriorities (void)
| Reset all priorities to default. More...
void | SDL_Log (SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(1)
| Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO. More...
void | SDL_LogVerbose (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_VERBOSE. More...
void | SDL_LogDebug (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_DEBUG. More...
void | SDL_LogInfo (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_INFO. More...
void | SDL_LogWarn (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_WARN. More...
void | SDL_LogError (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_ERROR. More...
void | SDL_LogCritical (int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
| Log a message with SDL_LOG_PRIORITY_CRITICAL. More...
void | SDL_LogMessage (int category, SDL_LogPriority priority, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(3)
| Log a message with the specified category and priority. More...
void | SDL_LogMessageV (int category, SDL_LogPriority priority, const char *fmt, va_list ap)
| Log a message with the specified category and priority. More...
void | SDL_LogGetOutputFunction (SDL_LogOutputFunction *callback, void **userdata)
| Get the current log output function. More...
void | SDL_LogSetOutputFunction (SDL_LogOutputFunction callback, void *userdata)
| This function allows you to replace the default log output function with one of your own. More...

## Detailed Description

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)

Definition in file SDL_log.h.

## Macro Definition Documentation

#define SDL_MAX_LOG_MESSAGE 4096

The maximum size of a log message.

Messages longer than the maximum size will be truncated

Definition at line 54 of file SDL_log.h.

Referenced by SDL_LogMessageV(), SDL_LogOutput(), and SDL_PromptAssertion().

## Typedef Documentation

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

The prototype for the log output function.

Definition at line 189 of file SDL_log.h.

## Enumeration Type Documentation

anonymous enum

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 CRITICAL 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_LOG_CATEGORY_VIDEO
Definition: SDL_log.h:71
SDL_LOG_CATEGORY_SYSTEM
Definition: SDL_log.h:69
SDL_LOG_CATEGORY_INPUT
Definition: SDL_log.h:73
SDL_LOG_CATEGORY_CUSTOM
Definition: SDL_log.h:96
SDL_LOG_CATEGORY_RESERVED8
Definition: SDL_log.h:84
SDL_LOG_CATEGORY_RESERVED7
Definition: SDL_log.h:83
SDL_LOG_CATEGORY_RESERVED4
Definition: SDL_log.h:80
SDL_LOG_CATEGORY_RESERVED2
Definition: SDL_log.h:78
SDL_LOG_CATEGORY_RESERVED3
Definition: SDL_log.h:79
SDL_LOG_CATEGORY_RESERVED1
Definition: SDL_log.h:77
SDL_LOG_CATEGORY_RESERVED10
Definition: SDL_log.h:86
SDL_LOG_CATEGORY_ASSERT
Definition: SDL_log.h:68
SDL_LOG_CATEGORY_AUDIO
Definition: SDL_log.h:70
SDL_LOG_CATEGORY_TEST
Definition: SDL_log.h:74
SDL_LOG_CATEGORY_RESERVED9
Definition: SDL_log.h:85
SDL_LOG_CATEGORY_ERROR
Definition: SDL_log.h:67
SDL_LOG_CATEGORY_RENDER
Definition: SDL_log.h:72
SDL_LOG_CATEGORY_APPLICATION
Definition: SDL_log.h:66
SDL_LOG_CATEGORY_RESERVED6
Definition: SDL_log.h:82
SDL_LOG_CATEGORY_RESERVED5
Definition: SDL_log.h:81

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_LOG_PRIORITY_ERROR
Definition: SDL_log.h:108
SDL_LOG_PRIORITY_DEBUG
Definition: SDL_log.h:105
SDL_LOG_PRIORITY_VERBOSE
Definition: SDL_log.h:104
SDL_LOG_PRIORITY_CRITICAL
Definition: SDL_log.h:109
SDL_NUM_LOG_PRIORITIES
Definition: SDL_log.h:110
SDL_LOG_PRIORITY_INFO
Definition: SDL_log.h:106
SDL_LogPriority
SDL_LogPriority
The predefined log priorities.
Definition: SDL_log.h:102
SDL_LOG_PRIORITY_WARN
Definition: SDL_log.h:107

## Function Documentation

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

Log a message with SDL_LOG_CATEGORY_APPLICATION and SDL_LOG_PRIORITY_INFO.

Definition at line 173 of file SDL_log.c.

References SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO, fmt, ap);
va_end(ap);
}
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267
SDL_LOG_PRIORITY_INFO
Definition: SDL_log.h:106
SDL_LOG_CATEGORY_APPLICATION
Definition: SDL_log.h:66

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

Log a message with SDL_LOG_PRIORITY_CRITICAL.

Definition at line 233 of file SDL_log.c.

References SDL_LOG_PRIORITY_CRITICAL, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_CRITICAL, fmt, ap);
va_end(ap);
}
SDL_LOG_PRIORITY_CRITICAL
Definition: SDL_log.h:109
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267

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

Log a message with SDL_LOG_PRIORITY_DEBUG.

Definition at line 193 of file SDL_log.c.

References SDL_LOG_PRIORITY_DEBUG, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_DEBUG, fmt, ap);
va_end(ap);
}
SDL_LOG_PRIORITY_DEBUG
Definition: SDL_log.h:105
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267

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

Log a message with SDL_LOG_PRIORITY_ERROR.

Definition at line 223 of file SDL_log.c.

References SDL_LOG_PRIORITY_ERROR, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_ERROR, fmt, ap);
va_end(ap);
}
SDL_LOG_PRIORITY_ERROR
Definition: SDL_log.h:108
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267

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

Get the current log output function.

Definition at line 423 of file SDL_log.c.

References SDL_log_function, and SDL_log_userdata.

{
if (callback) {
*callback = SDL_log_function;
}
if (userdata) {
*userdata = SDL_log_userdata;
}
}
SDL_log_function
static SDL_LogOutputFunction SDL_log_function
Definition: SDL_log.c:62
callback
static Uint32 callback(Uint32 interval, void *param)
Definition: testtimer.c:34
SDL_log_userdata
static void * SDL_log_userdata
Definition: SDL_log.c:63

SDL_LogPriority SDL_LogGetPriority | ( | int | category | ) |

Get the priority of a particular log category.

Definition at line 134 of file SDL_log.c.

References SDL_LogLevel::category, SDL_LogLevel::next, SDL_LogLevel::priority, SDL_application_priority, SDL_assert_priority, SDL_default_priority, SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_CATEGORY_ASSERT, SDL_LOG_CATEGORY_TEST, and SDL_test_priority.

Referenced by SDL_LogMessageV().

{
SDL_LogLevel *entry;
for (entry = SDL_loglevels; entry; entry = entry->next) {
if (entry->category == category) {
return entry->priority;
}
}
if (category == SDL_LOG_CATEGORY_TEST) {
return SDL_test_priority;
} else if (category == SDL_LOG_CATEGORY_APPLICATION) {
return SDL_application_priority;
} else if (category == SDL_LOG_CATEGORY_ASSERT) {
return SDL_assert_priority;
} else {
return SDL_default_priority;
}
}
SDL_test_priority
static SDL_LogPriority SDL_test_priority
Definition: SDL_log.c:61
SDL_loglevels
static SDL_LogLevel * SDL_loglevels
Definition: SDL_log.c:57
SDL_LogLevel::priority
SDL_LogPriority priority
Definition: SDL_log.c:48
SDL_assert_priority
static SDL_LogPriority SDL_assert_priority
Definition: SDL_log.c:59
SDL_default_priority
static SDL_LogPriority SDL_default_priority
Definition: SDL_log.c:58
SDL_LogLevel::category
int category
Definition: SDL_log.c:47
SDL_LogLevel::next
struct SDL_LogLevel * next
Definition: SDL_log.c:49
SDL_LOG_CATEGORY_ASSERT
Definition: SDL_log.h:68
SDL_LogLevel
Definition: SDL_log.c:45
SDL_LOG_CATEGORY_TEST
Definition: SDL_log.h:74
SDL_application_priority
static SDL_LogPriority SDL_application_priority
Definition: SDL_log.c:60
SDL_LOG_CATEGORY_APPLICATION
Definition: SDL_log.h:66

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

Log a message with SDL_LOG_PRIORITY_INFO.

Definition at line 203 of file SDL_log.c.

References SDL_LOG_PRIORITY_INFO, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_INFO, fmt, ap);
va_end(ap);
}
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267
SDL_LOG_PRIORITY_INFO
Definition: SDL_log.h:106

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

Log a message with the specified category and priority.

Definition at line 243 of file SDL_log.c.

References SDL_LogLevel::category, SDL_LOG_CATEGORY_CUSTOM, SDL_LOG_CATEGORY_RESERVED1, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, priority, fmt, ap);
va_end(ap);
}
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267

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

Log a message with the specified category and priority.

Definition at line 267 of file SDL_log.c.

References NULL, SDL_log_function, SDL_log_userdata, SDL_LogGetPriority(), SDL_MAX_LOG_MESSAGE, SDL_NUM_LOG_PRIORITIES, SDL_stack_alloc, SDL_stack_free, SDL_strlen, and SDL_vsnprintf.

Referenced by SDL_Log(), SDL_LogCritical(), SDL_LogDebug(), SDL_LogError(), SDL_LogInfo(), SDL_LogMessage(), SDL_LogVerbose(), and SDL_LogWarn().

{
char *message;
size_t len;
/* Nothing to do if we don't have an output function */
if (!SDL_log_function) {
return;
}
/* Make sure we don't exceed array bounds */
if ((int)priority < 0 || priority >= SDL_NUM_LOG_PRIORITIES) {
return;
}
/* See if we want to do anything with this message */
if (priority < SDL_LogGetPriority(category)) {
return;
}
message = SDL_stack_alloc(char, SDL_MAX_LOG_MESSAGE);
if (!message) {
return;
}
SDL_vsnprintf(message, SDL_MAX_LOG_MESSAGE, fmt, ap);
/* Chop off final endline. */
len = SDL_strlen(message);
if ((len > 0) && (message[len-1] == '\n')) {
message[--len] = '\0';
if ((len > 0) && (message[len-1] == '\r')) { /* catch "\r\n", too. */
message[--len] = '\0';
}
}
SDL_log_function(SDL_log_userdata, category, priority, message);
SDL_stack_free(message);
}
SDL_MAX_LOG_MESSAGE
#define SDL_MAX_LOG_MESSAGE
The maximum size of a log message.
Definition: SDL_log.h:54
message
GLuint GLsizei const GLchar * message
Definition: SDL_opengl_glext.h:2483
len
GLenum GLsizei len
Definition: SDL_opengl_glext.h:2926
SDL_vsnprintf
#define SDL_vsnprintf
Definition: SDL_dynapi_overrides.h:427
SDL_log_function
static SDL_LogOutputFunction SDL_log_function
Definition: SDL_log.c:62
SDL_NUM_LOG_PRIORITIES
Definition: SDL_log.h:110
SDL_stack_alloc
#define SDL_stack_alloc(type, count)
Definition: SDL_stdinc.h:326
SDL_LogGetPriority
SDL_LogPriority SDL_LogGetPriority(int category)
Get the priority of a particular log category.
Definition: SDL_log.c:134
SDL_log_userdata
static void * SDL_log_userdata
Definition: SDL_log.c:63
SDL_strlen
#define SDL_strlen
Definition: SDL_dynapi_overrides.h:399
SDL_stack_free
#define SDL_stack_free(data)
Definition: SDL_stdinc.h:327

void SDL_LogResetPriorities | ( | void |  | ) |

Reset all priorities to default.

Note
  This is called in SDL_Quit().

Definition at line 156 of file SDL_log.c.

References DEFAULT_APPLICATION_PRIORITY, DEFAULT_ASSERT_PRIORITY, DEFAULT_PRIORITY, DEFAULT_TEST_PRIORITY, SDL_LogLevel::next, SDL_application_priority, SDL_assert_priority, SDL_default_priority, SDL_free(), SDL_loglevels, and SDL_test_priority.

{
SDL_LogLevel *entry;
while (SDL_loglevels) {
entry = SDL_loglevels;
SDL_loglevels = entry->next;
SDL_free(entry);
}
SDL_default_priority = DEFAULT_PRIORITY;
SDL_assert_priority = DEFAULT_ASSERT_PRIORITY;
SDL_application_priority = DEFAULT_APPLICATION_PRIORITY;
SDL_test_priority = DEFAULT_TEST_PRIORITY;
}
DEFAULT_APPLICATION_PRIORITY
#define DEFAULT_APPLICATION_PRIORITY
Definition: SDL_log.c:42
SDL_test_priority
static SDL_LogPriority SDL_test_priority
Definition: SDL_log.c:61
SDL_loglevels
static SDL_LogLevel * SDL_loglevels
Definition: SDL_log.c:57
DEFAULT_ASSERT_PRIORITY
#define DEFAULT_ASSERT_PRIORITY
Definition: SDL_log.c:41
SDL_assert_priority
static SDL_LogPriority SDL_assert_priority
Definition: SDL_log.c:59
SDL_default_priority
static SDL_LogPriority SDL_default_priority
Definition: SDL_log.c:58
SDL_free
void SDL_free(void *mem)
SDL_LogLevel::next
struct SDL_LogLevel * next
Definition: SDL_log.c:49
SDL_LogLevel
Definition: SDL_log.c:45
DEFAULT_PRIORITY
#define DEFAULT_PRIORITY
Definition: SDL_log.c:40
SDL_application_priority
static SDL_LogPriority SDL_application_priority
Definition: SDL_log.c:60
DEFAULT_TEST_PRIORITY
#define DEFAULT_TEST_PRIORITY
Definition: SDL_log.c:43

void SDL_LogSetAllPriority | ( | SDL_LogPriority | priority | ) |

Set the priority of all log categories.

Definition at line 99 of file SDL_log.c.

References SDL_LogLevel::next, SDL_LogLevel::priority, SDL_application_priority, SDL_assert_priority, and SDL_default_priority.

{
SDL_LogLevel *entry;
for (entry = SDL_loglevels; entry; entry = entry->next) {
entry->priority = priority;
}
SDL_default_priority = priority;
SDL_assert_priority = priority;
SDL_application_priority = priority;
}
SDL_loglevels
static SDL_LogLevel * SDL_loglevels
Definition: SDL_log.c:57
SDL_LogLevel::priority
SDL_LogPriority priority
Definition: SDL_log.c:48
SDL_assert_priority
static SDL_LogPriority SDL_assert_priority
Definition: SDL_log.c:59
SDL_default_priority
static SDL_LogPriority SDL_default_priority
Definition: SDL_log.c:58
SDL_LogLevel::next
struct SDL_LogLevel * next
Definition: SDL_log.c:49
SDL_LogLevel
Definition: SDL_log.c:45
SDL_application_priority
static SDL_LogPriority SDL_application_priority
Definition: SDL_log.c:60

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

This function allows you to replace the default log output function with one of your own.

Definition at line 434 of file SDL_log.c.

References callback(), SDL_log_function, and SDL_log_userdata.

{
SDL_log_function = callback;
SDL_log_userdata = userdata;
}
SDL_log_function
static SDL_LogOutputFunction SDL_log_function
Definition: SDL_log.c:62
callback
static Uint32 callback(Uint32 interval, void *param)
Definition: testtimer.c:34
SDL_log_userdata
static void * SDL_log_userdata
Definition: SDL_log.c:63

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

Set the priority of a particular log category.

Definition at line 112 of file SDL_log.c.

References SDL_LogLevel::category, SDL_LogLevel::next, SDL_LogLevel::priority, SDL_loglevels, and SDL_malloc.

{
SDL_LogLevel *entry;
for (entry = SDL_loglevels; entry; entry = entry->next) {
if (entry->category == category) {
entry->priority = priority;
return;
}
}
/* Create a new entry */
entry = (SDL_LogLevel *)SDL_malloc(sizeof(*entry));
if (entry) {
entry->category = category;
entry->priority = priority;
entry->next = SDL_loglevels;
SDL_loglevels = entry;
}
}
SDL_loglevels
static SDL_LogLevel * SDL_loglevels
Definition: SDL_log.c:57
SDL_LogLevel::priority
SDL_LogPriority priority
Definition: SDL_log.c:48
SDL_LogLevel::category
int category
Definition: SDL_log.c:47
SDL_LogLevel::next
struct SDL_LogLevel * next
Definition: SDL_log.c:49
SDL_LogLevel
Definition: SDL_log.c:45
SDL_malloc
#define SDL_malloc
Definition: SDL_dynapi_overrides.h:380

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

Log a message with SDL_LOG_PRIORITY_VERBOSE.

Definition at line 183 of file SDL_log.c.

References SDL_LOG_PRIORITY_VERBOSE, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_VERBOSE, fmt, ap);
va_end(ap);
}
SDL_LOG_PRIORITY_VERBOSE
Definition: SDL_log.h:104
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267

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

Log a message with SDL_LOG_PRIORITY_WARN.

Definition at line 213 of file SDL_log.c.

References SDL_LOG_PRIORITY_WARN, and SDL_LogMessageV().

{
va_list ap;
va_start(ap, fmt);
SDL_LogMessageV(category, SDL_LOG_PRIORITY_WARN, fmt, ap);
va_end(ap);
}
SDL_LogMessageV
void SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
Log a message with the specified category and priority.
Definition: SDL_log.c:267
SDL_LOG_PRIORITY_WARN
Definition: SDL_log.h:107