{
  "header": "SDL_init.h",
  "opaque_types": [],
  "typedefs": [],
  "function_pointers": [],
  "c_type_aliases": [
    {
      "name": "SDL_AppInit_func"
    },
    {
      "name": "SDL_AppIterate_func"
    },
    {
      "name": "SDL_AppEvent_func"
    },
    {
      "name": "SDL_AppQuit_func"
    }
  ],
  "enums": [
    {
      "name": "SDL_AppResult",
      "values": [
        {
          "name": "SDL_APP_CONTINUE",
          "comment": "Value that requests that the app continue from the main callbacks."
        },
        {
          "name": "SDL_APP_SUCCESS",
          "comment": "Value that requests termination with success from the main callbacks."
        },
        {
          "name": "SDL_APP_FAILURE",
          "comment": "Value that requests termination with error from the main callbacks."
        }
      ]
    }
  ],
  "structs": [],
  "unions": [],
  "flags": [
    {
      "name": "SDL_InitFlags",
      "underlying_type": "Uint32",
      "values": [
        {
          "name": "SDL_INIT_AUDIO",
          "value": "0x00000010u",
          "comment": "`SDL_INIT_AUDIO` implies `SDL_INIT_EVENTS`"
        },
        {
          "name": "SDL_INIT_VIDEO",
          "value": "0x00000020u",
          "comment": "`SDL_INIT_VIDEO` implies `SDL_INIT_EVENTS`"
        },
        {
          "name": "SDL_INIT_JOYSTICK",
          "value": "0x00000200u",
          "comment": "`SDL_INIT_JOYSTICK` implies `SDL_INIT_EVENTS`, should be initialized on the same thread as SDL_INIT_VIDEO on Windows if you don't set SDL_HINT_JOYSTICK_THREAD"
        },
        {
          "name": "SDL_INIT_HAPTIC",
          "value": "0x00001000u"
        },
        {
          "name": "SDL_INIT_GAMEPAD",
          "value": "0x00002000u",
          "comment": "`SDL_INIT_GAMEPAD` implies `SDL_INIT_JOYSTICK`"
        },
        {
          "name": "SDL_INIT_EVENTS",
          "value": "0x00004000u"
        },
        {
          "name": "SDL_INIT_SENSOR",
          "value": "0x00008000u",
          "comment": "`SDL_INIT_SENSOR` implies `SDL_INIT_EVENTS`"
        },
        {
          "name": "SDL_INIT_CAMERA",
          "value": "0x00010000u",
          "comment": "`SDL_INIT_CAMERA` implies `SDL_INIT_EVENTS`"
        }
      ]
    }
  ],
  "functions": [
    {
      "name": "SDL_Init",
      "return_type": "bool",
      "parameters": [
        {
          "name": "flags",
          "type": "SDL_InitFlags"
        }
      ]
    },
    {
      "name": "SDL_InitSubSystem",
      "return_type": "bool",
      "parameters": [
        {
          "name": "flags",
          "type": "SDL_InitFlags"
        }
      ]
    },
    {
      "name": "SDL_QuitSubSystem",
      "return_type": "void",
      "parameters": [
        {
          "name": "flags",
          "type": "SDL_InitFlags"
        }
      ]
    },
    {
      "name": "SDL_WasInit",
      "return_type": "SDL_InitFlags",
      "parameters": [
        {
          "name": "flags",
          "type": "SDL_InitFlags"
        }
      ]
    },
    {
      "name": "SDL_Quit",
      "return_type": "void",
      "parameters": []
    },
    {
      "name": "SDL_SetAppMetadata",
      "return_type": "bool",
      "parameters": [
        {
          "name": "appname",
          "type": "const char *"
        },
        {
          "name": "appversion",
          "type": "const char *"
        },
        {
          "name": "appidentifier",
          "type": "const char *"
        }
      ]
    },
    {
      "name": "SDL_SetAppMetadataProperty",
      "return_type": "bool",
      "parameters": [
        {
          "name": "name",
          "type": "const char *"
        },
        {
          "name": "value",
          "type": "const char *"
        }
      ]
    },
    {
      "name": "SDL_GetAppMetadataProperty",
      "return_type": "const char *",
      "parameters": [
        {
          "name": "name",
          "type": "const char *"
        }
      ]
    }
  ]
}