sdlVideoInit function

int sdlVideoInit(
  1. String? driverName
)

Initialize the video subsystem, optionally specifying a video driver.

This function initializes the video subsystem, setting up a connection to the window manager, etc, and determines the available display modes and pixel formats, but does not initialize a window or graphics mode.

If you use this function and you haven't used the SDL_INIT_VIDEO flag with either SDL_Init() or SDL_InitSubSystem(), you should call SDL_VideoQuit() before calling SDL_Quit().

It is safe to call this function multiple times. SDL_VideoInit() will call SDL_VideoQuit() itself if the video subsystem has already been initialized.

You can use SDL_GetNumVideoDrivers() and SDL_GetVideoDriver() to find a specific driver_name.

\param driver_name the name of a video driver to initialize, or NULL for the default driver \returns 0 on success or a negative error code on failure; call SDL_GetError() for more information.

\since This function is available since SDL 2.0.0.

\sa SDL_GetNumVideoDrivers \sa SDL_GetVideoDriver \sa SDL_InitSubSystem \sa SDL_VideoQuit

extern DECLSPEC int SDLCALL SDL_VideoInit(const char *driver_name)

Implementation

int sdlVideoInit(String? driverName) {
  final sdlVideoInitLookupFunction = libSdl2.lookupFunction<
      Int32 Function(Pointer<Utf8> driverName),
      int Function(Pointer<Utf8> driverName)>('SDL_VideoInit');
  final driverNamePointer =
      driverName != null ? driverName.toNativeUtf8() : nullptr;
  final result = sdlVideoInitLookupFunction(driverNamePointer);
  calloc.free(driverNamePointer);
  return result;
}