{
  "header": "SDL_render.h",
  "opaque_types": [
    {
      "name": "SDL_Renderer"
    },
    {
      "name": "SDL_Texture"
    }
  ],
  "typedefs": [],
  "function_pointers": [],
  "c_type_aliases": [],
  "enums": [
    {
      "name": "SDL_TextureAccess",
      "values": [
        {
          "name": "SDL_TEXTUREACCESS_STATIC",
          "comment": "Changes rarely, not lockable"
        },
        {
          "name": "SDL_TEXTUREACCESS_STREAMING",
          "comment": "Changes frequently, lockable"
        },
        {
          "name": "SDL_TEXTUREACCESS_TARGET",
          "comment": "Texture can be used as a render target"
        }
      ]
    },
    {
      "name": "SDL_RendererLogicalPresentation",
      "values": [
        {
          "name": "SDL_LOGICAL_PRESENTATION_DISABLED",
          "comment": "There is no logical size in effect"
        },
        {
          "name": "SDL_LOGICAL_PRESENTATION_STRETCH",
          "comment": "The rendered content is stretched to the output resolution"
        },
        {
          "name": "SDL_LOGICAL_PRESENTATION_LETTERBOX",
          "comment": "The rendered content is fit to the largest dimension and the other dimension is letterboxed with black bars"
        },
        {
          "name": "SDL_LOGICAL_PRESENTATION_OVERSCAN",
          "comment": "The rendered content is fit to the smallest dimension and the other dimension extends beyond the output bounds"
        },
        {
          "name": "SDL_LOGICAL_PRESENTATION_INTEGER_SCALE",
          "comment": "The rendered content is scaled up by integer multiples to fit the output resolution"
        }
      ]
    }
  ],
  "structs": [
    {
      "name": "SDL_Vertex",
      "fields": [
        {
          "name": "position",
          "type": "SDL_FPoint",
          "comment": "Vertex position, in SDL_Renderer coordinates"
        },
        {
          "name": "color",
          "type": "SDL_FColor",
          "comment": "Vertex color"
        },
        {
          "name": "tex_coord",
          "type": "SDL_FPoint",
          "comment": "Normalized texture coordinates, if needed"
        }
      ]
    }
  ],
  "unions": [],
  "flags": [],
  "functions": [
    {
      "name": "SDL_GetNumRenderDrivers",
      "return_type": "int",
      "parameters": []
    },
    {
      "name": "SDL_GetRenderDriver",
      "return_type": "const char *",
      "parameters": [
        {
          "name": "index",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_CreateWindowAndRenderer",
      "return_type": "bool",
      "parameters": [
        {
          "name": "title",
          "type": "const char *"
        },
        {
          "name": "width",
          "type": "int"
        },
        {
          "name": "height",
          "type": "int"
        },
        {
          "name": "window_flags",
          "type": "SDL_WindowFlags"
        },
        {
          "name": "window",
          "type": "SDL_Window **"
        },
        {
          "name": "renderer",
          "type": "SDL_Renderer **"
        }
      ]
    },
    {
      "name": "SDL_CreateRenderer",
      "return_type": "SDL_Renderer *",
      "parameters": [
        {
          "name": "window",
          "type": "SDL_Window *"
        },
        {
          "name": "name",
          "type": "const char *"
        }
      ]
    },
    {
      "name": "SDL_CreateRendererWithProperties",
      "return_type": "SDL_Renderer *",
      "parameters": [
        {
          "name": "props",
          "type": "SDL_PropertiesID"
        }
      ]
    },
    {
      "name": "SDL_CreateSoftwareRenderer",
      "return_type": "SDL_Renderer *",
      "parameters": [
        {
          "name": "surface",
          "type": "SDL_Surface *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderer",
      "return_type": "SDL_Renderer *",
      "parameters": [
        {
          "name": "window",
          "type": "SDL_Window *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderWindow",
      "return_type": "SDL_Window *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRendererName",
      "return_type": "const char *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRendererProperties",
      "return_type": "SDL_PropertiesID",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderOutputSize",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "w",
          "type": "int *"
        },
        {
          "name": "h",
          "type": "int *"
        }
      ]
    },
    {
      "name": "SDL_GetCurrentRenderOutputSize",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "w",
          "type": "int *"
        },
        {
          "name": "h",
          "type": "int *"
        }
      ]
    },
    {
      "name": "SDL_CreateTexture",
      "return_type": "SDL_Texture *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "format",
          "type": "SDL_PixelFormat"
        },
        {
          "name": "access",
          "type": "SDL_TextureAccess"
        },
        {
          "name": "w",
          "type": "int"
        },
        {
          "name": "h",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_CreateTextureFromSurface",
      "return_type": "SDL_Texture *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "surface",
          "type": "SDL_Surface *"
        }
      ]
    },
    {
      "name": "SDL_CreateTextureWithProperties",
      "return_type": "SDL_Texture *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "props",
          "type": "SDL_PropertiesID"
        }
      ]
    },
    {
      "name": "SDL_GetTextureProperties",
      "return_type": "SDL_PropertiesID",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        }
      ]
    },
    {
      "name": "SDL_GetRendererFromTexture",
      "return_type": "SDL_Renderer *",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        }
      ]
    },
    {
      "name": "SDL_GetTextureSize",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "w",
          "type": "float *"
        },
        {
          "name": "h",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetTextureColorMod",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "r",
          "type": "Uint8"
        },
        {
          "name": "g",
          "type": "Uint8"
        },
        {
          "name": "b",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_SetTextureColorModFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "r",
          "type": "float"
        },
        {
          "name": "g",
          "type": "float"
        },
        {
          "name": "b",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_GetTextureColorMod",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "r",
          "type": "Uint8 *"
        },
        {
          "name": "g",
          "type": "Uint8 *"
        },
        {
          "name": "b",
          "type": "Uint8 *"
        }
      ]
    },
    {
      "name": "SDL_GetTextureColorModFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "r",
          "type": "float *"
        },
        {
          "name": "g",
          "type": "float *"
        },
        {
          "name": "b",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetTextureAlphaMod",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "alpha",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_SetTextureAlphaModFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "alpha",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_GetTextureAlphaMod",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "alpha",
          "type": "Uint8 *"
        }
      ]
    },
    {
      "name": "SDL_GetTextureAlphaModFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "alpha",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetTextureBlendMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "blendMode",
          "type": "SDL_BlendMode"
        }
      ]
    },
    {
      "name": "SDL_GetTextureBlendMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "blendMode",
          "type": "SDL_BlendMode *"
        }
      ]
    },
    {
      "name": "SDL_SetTextureScaleMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "scaleMode",
          "type": "SDL_ScaleMode"
        }
      ]
    },
    {
      "name": "SDL_GetTextureScaleMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "scaleMode",
          "type": "SDL_ScaleMode *"
        }
      ]
    },
    {
      "name": "SDL_UpdateTexture",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        },
        {
          "name": "pixels",
          "type": "const void *"
        },
        {
          "name": "pitch",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_UpdateYUVTexture",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        },
        {
          "name": "Yplane",
          "type": "const Uint8 *"
        },
        {
          "name": "Ypitch",
          "type": "int"
        },
        {
          "name": "Uplane",
          "type": "const Uint8 *"
        },
        {
          "name": "Upitch",
          "type": "int"
        },
        {
          "name": "Vplane",
          "type": "const Uint8 *"
        },
        {
          "name": "Vpitch",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_UpdateNVTexture",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        },
        {
          "name": "Yplane",
          "type": "const Uint8 *"
        },
        {
          "name": "Ypitch",
          "type": "int"
        },
        {
          "name": "UVplane",
          "type": "const Uint8 *"
        },
        {
          "name": "UVpitch",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_LockTexture",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        },
        {
          "name": "pixels",
          "type": "void **"
        },
        {
          "name": "pitch",
          "type": "int *"
        }
      ]
    },
    {
      "name": "SDL_LockTextureToSurface",
      "return_type": "bool",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        },
        {
          "name": "surface",
          "type": "SDL_Surface **"
        }
      ]
    },
    {
      "name": "SDL_UnlockTexture",
      "return_type": "void",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderTarget",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderTarget",
      "return_type": "SDL_Texture *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderLogicalPresentation",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "w",
          "type": "int"
        },
        {
          "name": "h",
          "type": "int"
        },
        {
          "name": "mode",
          "type": "SDL_RendererLogicalPresentation"
        }
      ]
    },
    {
      "name": "SDL_GetRenderLogicalPresentation",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "w",
          "type": "int *"
        },
        {
          "name": "h",
          "type": "int *"
        },
        {
          "name": "mode",
          "type": "SDL_RendererLogicalPresentation *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderLogicalPresentationRect",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderCoordinatesFromWindow",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "window_x",
          "type": "float"
        },
        {
          "name": "window_y",
          "type": "float"
        },
        {
          "name": "x",
          "type": "float *"
        },
        {
          "name": "y",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_RenderCoordinatesToWindow",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "x",
          "type": "float"
        },
        {
          "name": "y",
          "type": "float"
        },
        {
          "name": "window_x",
          "type": "float *"
        },
        {
          "name": "window_y",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_ConvertEventToRenderCoordinates",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "event",
          "type": "SDL_Event *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderViewport",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderViewport",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_RenderViewportSet",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderSafeArea",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderClipRect",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderClipRect",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_RenderClipEnabled",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderScale",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "scaleX",
          "type": "float"
        },
        {
          "name": "scaleY",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_GetRenderScale",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "scaleX",
          "type": "float *"
        },
        {
          "name": "scaleY",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderDrawColor",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "r",
          "type": "Uint8"
        },
        {
          "name": "g",
          "type": "Uint8"
        },
        {
          "name": "b",
          "type": "Uint8"
        },
        {
          "name": "a",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_SetRenderDrawColorFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "r",
          "type": "float"
        },
        {
          "name": "g",
          "type": "float"
        },
        {
          "name": "b",
          "type": "float"
        },
        {
          "name": "a",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_GetRenderDrawColor",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "r",
          "type": "Uint8 *"
        },
        {
          "name": "g",
          "type": "Uint8 *"
        },
        {
          "name": "b",
          "type": "Uint8 *"
        },
        {
          "name": "a",
          "type": "Uint8 *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderDrawColorFloat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "r",
          "type": "float *"
        },
        {
          "name": "g",
          "type": "float *"
        },
        {
          "name": "b",
          "type": "float *"
        },
        {
          "name": "a",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderColorScale",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "scale",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_GetRenderColorScale",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "scale",
          "type": "float *"
        }
      ]
    },
    {
      "name": "SDL_SetRenderDrawBlendMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "blendMode",
          "type": "SDL_BlendMode"
        }
      ]
    },
    {
      "name": "SDL_GetRenderDrawBlendMode",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "blendMode",
          "type": "SDL_BlendMode *"
        }
      ]
    },
    {
      "name": "SDL_RenderClear",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_RenderPoint",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "x",
          "type": "float"
        },
        {
          "name": "y",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_RenderPoints",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "points",
          "type": "const SDL_FPoint *"
        },
        {
          "name": "count",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderLine",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "x1",
          "type": "float"
        },
        {
          "name": "y1",
          "type": "float"
        },
        {
          "name": "x2",
          "type": "float"
        },
        {
          "name": "y2",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_RenderLines",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "points",
          "type": "const SDL_FPoint *"
        },
        {
          "name": "count",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderRect",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "const SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderRects",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rects",
          "type": "const SDL_FRect *"
        },
        {
          "name": "count",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderFillRect",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "const SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderFillRects",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rects",
          "type": "const SDL_FRect *"
        },
        {
          "name": "count",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderTexture",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "srcrect",
          "type": "const SDL_FRect *"
        },
        {
          "name": "dstrect",
          "type": "const SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderTextureRotated",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "srcrect",
          "type": "const SDL_FRect *"
        },
        {
          "name": "dstrect",
          "type": "const SDL_FRect *"
        },
        {
          "name": "angle",
          "type": "double"
        },
        {
          "name": "center",
          "type": "const SDL_FPoint *"
        },
        {
          "name": "flip",
          "type": "SDL_FlipMode"
        }
      ]
    },
    {
      "name": "SDL_RenderTextureTiled",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "srcrect",
          "type": "const SDL_FRect *"
        },
        {
          "name": "scale",
          "type": "float"
        },
        {
          "name": "dstrect",
          "type": "const SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderTexture9Grid",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "srcrect",
          "type": "const SDL_FRect *"
        },
        {
          "name": "left_width",
          "type": "float"
        },
        {
          "name": "right_width",
          "type": "float"
        },
        {
          "name": "top_height",
          "type": "float"
        },
        {
          "name": "bottom_height",
          "type": "float"
        },
        {
          "name": "scale",
          "type": "float"
        },
        {
          "name": "dstrect",
          "type": "const SDL_FRect *"
        }
      ]
    },
    {
      "name": "SDL_RenderGeometry",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "vertices",
          "type": "const SDL_Vertex *"
        },
        {
          "name": "num_vertices",
          "type": "int"
        },
        {
          "name": "indices",
          "type": "const int *"
        },
        {
          "name": "num_indices",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderGeometryRaw",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "texture",
          "type": "SDL_Texture *"
        },
        {
          "name": "xy",
          "type": "const float *"
        },
        {
          "name": "xy_stride",
          "type": "int"
        },
        {
          "name": "color",
          "type": "const SDL_FColor *"
        },
        {
          "name": "color_stride",
          "type": "int"
        },
        {
          "name": "uv",
          "type": "const float *"
        },
        {
          "name": "uv_stride",
          "type": "int"
        },
        {
          "name": "num_vertices",
          "type": "int"
        },
        {
          "name": "indices",
          "type": "const void *"
        },
        {
          "name": "num_indices",
          "type": "int"
        },
        {
          "name": "size_indices",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_RenderReadPixels",
      "return_type": "SDL_Surface *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "rect",
          "type": "const SDL_Rect *"
        }
      ]
    },
    {
      "name": "SDL_RenderPresent",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_DestroyTexture",
      "return_type": "void",
      "parameters": [
        {
          "name": "texture",
          "type": "SDL_Texture *"
        }
      ]
    },
    {
      "name": "SDL_DestroyRenderer",
      "return_type": "void",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_FlushRenderer",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderMetalLayer",
      "return_type": "void *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_GetRenderMetalCommandEncoder",
      "return_type": "void *",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        }
      ]
    },
    {
      "name": "SDL_AddVulkanRenderSemaphores",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "wait_stage_mask",
          "type": "Uint32"
        },
        {
          "name": "wait_semaphore",
          "type": "Sint64"
        },
        {
          "name": "signal_semaphore",
          "type": "Sint64"
        }
      ]
    },
    {
      "name": "SDL_SetRenderVSync",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "vsync",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_GetRenderVSync",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "vsync",
          "type": "int *"
        }
      ]
    },
    {
      "name": "SDL_RenderDebugText",
      "return_type": "bool",
      "parameters": [
        {
          "name": "renderer",
          "type": "SDL_Renderer *"
        },
        {
          "name": "x",
          "type": "float"
        },
        {
          "name": "y",
          "type": "float"
        },
        {
          "name": "str",
          "type": "const char *"
        }
      ]
    }
  ]
}