123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package sdl2
- import "core:c"
- when ODIN_OS == .Windows {
- foreign import lib "SDL2.lib"
- } else {
- foreign import lib "system:SDL2"
- }
- MAX_LOG_MESSAGE :: 4096
- LogCategory :: enum c.int {
- APPLICATION,
- ERROR,
- ASSERT,
- SYSTEM,
- AUDIO,
- VIDEO,
- RENDER,
- INPUT,
- TEST,
- /* Reserved for future SDL library use */
- RESERVED1,
- RESERVED2,
- RESERVED3,
- RESERVED4,
- RESERVED5,
- RESERVED6,
- RESERVED7,
- RESERVED8,
- RESERVED9,
- 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,
- ...
- };
- */
- CUSTOM,
- }
- LogPriority :: enum c.int {
- DEFAULT = 0, // CUSTOM ONE
- VERBOSE = 1,
- DEBUG,
- INFO,
- WARN,
- ERROR,
- CRITICAL,
- NUM,
- }
- LogOutputFunction :: proc "c" (userdata: rawptr, category: LogCategory, priority: LogPriority, message: cstring)
- @(default_calling_convention="c", link_prefix="SDL_")
- foreign lib {
- LogSetAllPriority :: proc(priority: LogPriority) ---
- LogSetPriority :: proc(category: c.int, priority: LogPriority) ---
- LogGetPriority :: proc(category: c.int) -> LogPriority ---
- LogResetPriorities :: proc() ---
- Log :: proc(fmt: cstring, #c_vararg args: ..any) ---
- LogVerbose :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogDebug :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogInfo :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogWarn :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogError :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogCritical :: proc(category: c.int, fmt: cstring, #c_vararg args: ..any) ---
- LogMessage :: proc(category: c.int, priority: LogPriority, fmt: cstring, #c_vararg args: ..any) ---
- // LogMessageV :: proc(category: c.int, priority: LogPriority, fmt: cstring, ap: va_list) ---
- LogGetOutputFunction :: proc(callback: ^LogOutputFunction, userdata: ^rawptr) ---
- LogSetOutputFunction :: proc(callback: LogOutputFunction, userdata: rawptr) ---
- }
|