Man page - sdl_init_interface(3)
Packages contains this manual
Manual
SDL_INIT_INTERFACE
NAMEHEADER FILE
SYNOPSIS
DESCRIPTION
THREAD SAFETY
AVAILABILITY
SEE ALSO
NAME
SDL_INIT_INTERFACE - A macro to initialize an SDL interface.
HEADER FILE
Defined in SDL3/SDL_stdinc.h
SYNOPSIS
#include "SDL3/SDL.h"
#define SDL_INIT_INTERFACE(iface) .BI do { .BI SDL_zerop(iface); .BI (iface)->version = sizeof(*(iface)); .BI } while (0)
DESCRIPTION
This macro will initialize an SDL interface structure and should be called before you fill out the fields with your implementation.
You can use it like this:
SDL_IOStreamInterface iface;
SDL_INIT_INTERFACE(&iface);
// Fill in the
interface function pointers with your implementation
iface.seek = ...
stream = SDL_OpenIO(&iface, NULL);
If you are using designated initializers, you can use the size of the interface as the version, e.g.
SDL_IOStreamInterface
iface = {
.version = sizeof(iface),
.seek = ...
};
stream = SDL_OpenIO(&iface, NULL);
THREAD SAFETY
It is safe to call this macro from any thread.
AVAILABILITY
This macro is available since SDL 3.2.0.
SEE ALSO
• (3), SDL_IOStreamInterface (3type), • (3), SDL_StorageInterface (3type), • (3), SDL_VirtualJoystickDesc (3type)