My Project
Loading...
Searching...
No Matches
SDL_log.h
Go to the documentation of this file.
1/*
2 Simple DirectMedia Layer
3 Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
4
5 This software is provided 'as-is', without any express or implied
6 warranty. In no event will the authors be held liable for any damages
7 arising from the use of this software.
8
9 Permission is granted to anyone to use this software for any purpose,
10 including commercial applications, and to alter it and redistribute it
11 freely, subject to the following restrictions:
12
13 1. The origin of this software must not be misrepresented; you must not
14 claim that you wrote the original software. If you use this software
15 in a product, an acknowledgment in the product documentation would be
16 appreciated but is not required.
17 2. Altered source versions must be plainly marked as such, and must not be
18 misrepresented as being the original software.
19 3. This notice may not be removed or altered from any source distribution.
20*/
21
37#ifndef SDL_log_h_
38#define SDL_log_h_
39
40#include "SDL_stdinc.h"
41
42#include "begin_code.h"
43/* Set up for C function definitions, even when using C++ */
44#ifdef __cplusplus
45extern "C" {
46#endif
47
48
54#define SDL_MAX_LOG_MESSAGE 4096
55
64typedef enum
65{
66 SDL_LOG_CATEGORY_APPLICATION,
67 SDL_LOG_CATEGORY_ERROR,
68 SDL_LOG_CATEGORY_ASSERT,
69 SDL_LOG_CATEGORY_SYSTEM,
70 SDL_LOG_CATEGORY_AUDIO,
71 SDL_LOG_CATEGORY_VIDEO,
72 SDL_LOG_CATEGORY_RENDER,
73 SDL_LOG_CATEGORY_INPUT,
74 SDL_LOG_CATEGORY_TEST,
75
76 /* Reserved for future SDL library use */
77 SDL_LOG_CATEGORY_RESERVED1,
78 SDL_LOG_CATEGORY_RESERVED2,
79 SDL_LOG_CATEGORY_RESERVED3,
80 SDL_LOG_CATEGORY_RESERVED4,
81 SDL_LOG_CATEGORY_RESERVED5,
82 SDL_LOG_CATEGORY_RESERVED6,
83 SDL_LOG_CATEGORY_RESERVED7,
84 SDL_LOG_CATEGORY_RESERVED8,
85 SDL_LOG_CATEGORY_RESERVED9,
86 SDL_LOG_CATEGORY_RESERVED10,
87
88 /* Beyond this point is reserved for application use, e.g.
89 enum {
90 MYAPP_CATEGORY_AWESOME1 = SDL_LOG_CATEGORY_CUSTOM,
91 MYAPP_CATEGORY_AWESOME2,
92 MYAPP_CATEGORY_AWESOME3,
93 ...
94 };
95 */
96 SDL_LOG_CATEGORY_CUSTOM
98
102typedef enum
103{
104 SDL_LOG_PRIORITY_VERBOSE = 1,
105 SDL_LOG_PRIORITY_DEBUG,
106 SDL_LOG_PRIORITY_INFO,
107 SDL_LOG_PRIORITY_WARN,
108 SDL_LOG_PRIORITY_ERROR,
109 SDL_LOG_PRIORITY_CRITICAL,
110 SDL_NUM_LOG_PRIORITIES
112
113
123extern DECLSPEC void SDLCALL SDL_LogSetAllPriority(SDL_LogPriority priority);
124
136extern DECLSPEC void SDLCALL SDL_LogSetPriority(int category,
137 SDL_LogPriority priority);
138
149extern DECLSPEC SDL_LogPriority SDLCALL SDL_LogGetPriority(int category);
150
161extern DECLSPEC void SDLCALL SDL_LogResetPriorities(void);
162
182extern DECLSPEC void SDLCALL SDL_Log(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1);
183
203extern DECLSPEC void SDLCALL SDL_LogVerbose(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
204
224extern DECLSPEC void SDLCALL SDL_LogDebug(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
225
245extern DECLSPEC void SDLCALL SDL_LogInfo(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
246
266extern DECLSPEC void SDLCALL SDL_LogWarn(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
267
287extern DECLSPEC void SDLCALL SDL_LogError(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
288
308extern DECLSPEC void SDLCALL SDL_LogCritical(int category, SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(2);
309
330extern DECLSPEC void SDLCALL SDL_LogMessage(int category,
331 SDL_LogPriority priority,
332 SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(3);
333
353extern DECLSPEC void SDLCALL SDL_LogMessageV(int category,
354 SDL_LogPriority priority,
355 const char *fmt, va_list ap);
356
367typedef void (SDLCALL *SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message);
368
381extern DECLSPEC void SDLCALL SDL_LogGetOutputFunction(SDL_LogOutputFunction *callback, void **userdata);
382
393extern DECLSPEC void SDLCALL SDL_LogSetOutputFunction(SDL_LogOutputFunction callback, void *userdata);
394
395
396/* Ends C function definitions when using C++ */
397#ifdef __cplusplus
398}
399#endif
400#include "close_code.h"
401
402#endif /* SDL_log_h_ */
403
404/* vi: set ts=4 sw=4 expandtab: */
DECLSPEC void SDLCALL SDL_LogDebug(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_LogGetOutputFunction(SDL_LogOutputFunction *callback, void **userdata)
SDL_LogPriority
The predefined log priorities.
Definition: SDL_log.h:103
void(SDLCALL * SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message)
Definition: SDL_log.h:367
DECLSPEC void SDLCALL SDL_LogSetOutputFunction(SDL_LogOutputFunction callback, void *userdata)
DECLSPEC SDL_LogPriority SDLCALL SDL_LogGetPriority(int category)
DECLSPEC void SDLCALL SDL_LogMessageV(int category, SDL_LogPriority priority, const char *fmt, va_list ap)
DECLSPEC void SDLCALL SDL_LogVerbose(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_LogCritical(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_Log(SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(1)
DECLSPEC void SDLCALL SDL_LogMessage(int category, SDL_LogPriority priority, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(3)
DECLSPEC void SDLCALL SDL_LogInfo(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_LogSetAllPriority(SDL_LogPriority priority)
DECLSPEC void SDLCALL SDL_LogWarn(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_LogSetPriority(int category, SDL_LogPriority priority)
DECLSPEC void SDLCALL SDL_LogError(int category, SDL_PRINTF_FORMAT_STRING const char *fmt,...) SDL_PRINTF_VARARG_FUNC(2)
DECLSPEC void SDLCALL SDL_LogResetPriorities(void)
SDL_LogCategory
The predefined log categories.
Definition: SDL_log.h:65