{
  "header": "SDL_pixels.h",
  "opaque_types": [],
  "typedefs": [],
  "function_pointers": [],
  "c_type_aliases": [],
  "enums": [
    {
      "name": "SDL_PixelType",
      "values": [
        {
          "name": "SDL_PIXELTYPE_UNKNOWN"
        },
        {
          "name": "SDL_PIXELTYPE_INDEX1"
        },
        {
          "name": "SDL_PIXELTYPE_INDEX4"
        },
        {
          "name": "SDL_PIXELTYPE_INDEX8"
        },
        {
          "name": "SDL_PIXELTYPE_PACKED8"
        },
        {
          "name": "SDL_PIXELTYPE_PACKED16"
        },
        {
          "name": "SDL_PIXELTYPE_PACKED32"
        },
        {
          "name": "SDL_PIXELTYPE_ARRAYU8"
        },
        {
          "name": "SDL_PIXELTYPE_ARRAYU16"
        },
        {
          "name": "SDL_PIXELTYPE_ARRAYU32"
        },
        {
          "name": "SDL_PIXELTYPE_ARRAYF16"
        },
        {
          "name": "SDL_PIXELTYPE_ARRAYF32"
        },
        {
          "name": "SDL_PIXELTYPE_INDEX2"
        }
      ]
    },
    {
      "name": "SDL_BitmapOrder",
      "values": [
        {
          "name": "SDL_BITMAPORDER_NONE"
        },
        {
          "name": "SDL_BITMAPORDER_4321"
        },
        {
          "name": "SDL_BITMAPORDER_1234"
        }
      ]
    },
    {
      "name": "SDL_PackedOrder",
      "values": [
        {
          "name": "SDL_PACKEDORDER_NONE"
        },
        {
          "name": "SDL_PACKEDORDER_XRGB"
        },
        {
          "name": "SDL_PACKEDORDER_RGBX"
        },
        {
          "name": "SDL_PACKEDORDER_ARGB"
        },
        {
          "name": "SDL_PACKEDORDER_RGBA"
        },
        {
          "name": "SDL_PACKEDORDER_XBGR"
        },
        {
          "name": "SDL_PACKEDORDER_BGRX"
        },
        {
          "name": "SDL_PACKEDORDER_ABGR"
        },
        {
          "name": "SDL_PACKEDORDER_BGRA"
        }
      ]
    },
    {
      "name": "SDL_ArrayOrder",
      "values": [
        {
          "name": "SDL_ARRAYORDER_NONE"
        },
        {
          "name": "SDL_ARRAYORDER_RGB"
        },
        {
          "name": "SDL_ARRAYORDER_RGBA"
        },
        {
          "name": "SDL_ARRAYORDER_ARGB"
        },
        {
          "name": "SDL_ARRAYORDER_BGR"
        },
        {
          "name": "SDL_ARRAYORDER_BGRA"
        },
        {
          "name": "SDL_ARRAYORDER_ABGR"
        }
      ]
    },
    {
      "name": "SDL_PackedLayout",
      "values": [
        {
          "name": "SDL_PACKEDLAYOUT_NONE"
        },
        {
          "name": "SDL_PACKEDLAYOUT_332"
        },
        {
          "name": "SDL_PACKEDLAYOUT_4444"
        },
        {
          "name": "SDL_PACKEDLAYOUT_1555"
        },
        {
          "name": "SDL_PACKEDLAYOUT_5551"
        },
        {
          "name": "SDL_PACKEDLAYOUT_565"
        },
        {
          "name": "SDL_PACKEDLAYOUT_8888"
        },
        {
          "name": "SDL_PACKEDLAYOUT_2101010"
        },
        {
          "name": "SDL_PACKEDLAYOUT_1010102"
        }
      ]
    },
    {
      "name": "SDL_PixelFormat",
      "values": [
        {
          "name": "SDL_PIXELFORMAT_YV12",
          "value": "0x32315659u",
          "comment": "Planar mode: Y + V + U  (3 planes)"
        },
        {
          "name": "SDL_PIXELFORMAT_IYUV",
          "value": "0x56555949u",
          "comment": "Planar mode: Y + U + V  (3 planes)"
        },
        {
          "name": "SDL_PIXELFORMAT_YUY2",
          "value": "0x32595559u",
          "comment": "Packed mode: Y0+U0+Y1+V0 (1 plane)"
        },
        {
          "name": "SDL_PIXELFORMAT_UYVY",
          "value": "0x59565955u",
          "comment": "Packed mode: U0+Y0+V0+Y1 (1 plane)"
        },
        {
          "name": "SDL_PIXELFORMAT_YVYU",
          "value": "0x55595659u",
          "comment": "Packed mode: Y0+V0+Y1+U0 (1 plane)"
        },
        {
          "name": "SDL_PIXELFORMAT_NV12",
          "value": "0x3231564eu",
          "comment": "Planar mode: Y + U/V interleaved  (2 planes)"
        },
        {
          "name": "SDL_PIXELFORMAT_NV21",
          "value": "0x3132564eu",
          "comment": "Planar mode: Y + V/U interleaved  (2 planes)"
        },
        {
          "name": "SDL_PIXELFORMAT_P010",
          "value": "0x30313050u",
          "comment": "Planar mode: Y + U/V interleaved  (2 planes)"
        },
        {
          "name": "SDL_PIXELFORMAT_EXTERNAL_OES",
          "value": "0x2053454fu",
          "comment": "Android video texture format"
        },
        {
          "name": "SDL_PIXELFORMAT_MJPG",
          "value": "0x47504a4du",
          "comment": "Motion JPEG"
        }
      ]
    },
    {
      "name": "SDL_ColorType",
      "values": []
    },
    {
      "name": "SDL_ColorRange",
      "values": [
        {
          "name": "SDL_COLOR_RANGE_LIMITED",
          "value": "1",
          "comment": "Narrow range, e.g. 16-235 for 8-bit RGB and luma, and 16-240 for 8-bit chroma"
        },
        {
          "name": "SDL_COLOR_RANGE_FULL",
          "value": "2"
        }
      ]
    },
    {
      "name": "SDL_ColorPrimaries",
      "values": [
        {
          "name": "SDL_COLOR_PRIMARIES_BT709",
          "value": "1",
          "comment": "ITU-R BT.709-6"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT470M",
          "value": "4",
          "comment": "ITU-R BT.470-6 System M"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT470BG",
          "value": "5",
          "comment": "ITU-R BT.470-6 System B, G / ITU-R BT.601-7 625"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT601",
          "value": "6",
          "comment": "ITU-R BT.601-7 525, SMPTE 170M"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_SMPTE240",
          "value": "7",
          "comment": "SMPTE 240M, functionally the same as SDL_COLOR_PRIMARIES_BT601"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_GENERIC_FILM",
          "value": "8",
          "comment": "Generic film (color filters using Illuminant C)"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT2020",
          "value": "9",
          "comment": "ITU-R BT.2020-2 / ITU-R BT.2100-0"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_XYZ",
          "value": "10",
          "comment": "SMPTE ST 428-1"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_SMPTE431",
          "value": "11",
          "comment": "SMPTE RP 431-2"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_SMPTE432",
          "value": "12",
          "comment": "SMPTE EG 432-1 / DCI P3"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_EBU3213",
          "value": "22",
          "comment": "EBU Tech. 3213-E"
        }
      ]
    },
    {
      "name": "SDL_TransferCharacteristics",
      "values": [
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT709",
          "value": "1",
          "comment": "Rec. ITU-R BT.709-6 / ITU-R BT1361"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_GAMMA22",
          "value": "4",
          "comment": "ITU-R BT.470-6 System M / ITU-R BT1700 625 PAL & SECAM"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_GAMMA28",
          "value": "5",
          "comment": "ITU-R BT.470-6 System B, G"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT601",
          "value": "6",
          "comment": "SMPTE ST 170M / ITU-R BT.601-7 525 or 625"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_SMPTE240",
          "value": "7",
          "comment": "SMPTE ST 240M"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_IEC61966",
          "value": "11",
          "comment": "IEC 61966-2-4"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT1361",
          "value": "12",
          "comment": "ITU-R BT1361 Extended Colour Gamut"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_SRGB",
          "value": "13",
          "comment": "IEC 61966-2-1 (sRGB or sYCC)"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT2020_10BIT",
          "value": "14",
          "comment": "ITU-R BT2020 for 10-bit system"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT2020_12BIT",
          "value": "15",
          "comment": "ITU-R BT2020 for 12-bit system"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_PQ",
          "value": "16",
          "comment": "SMPTE ST 2084 for 10-, 12-, 14- and 16-bit systems"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_SMPTE428",
          "value": "17",
          "comment": "SMPTE ST 428-1"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_HLG",
          "value": "18",
          "comment": "ARIB STD-B67, known as \"hybrid log-gamma\" (HLG)"
        }
      ]
    },
    {
      "name": "SDL_MatrixCoefficients",
      "values": [
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT709",
          "value": "1",
          "comment": "ITU-R BT.709-6"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_FCC",
          "value": "4",
          "comment": "US FCC Title 47"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT470BG",
          "value": "5",
          "comment": "ITU-R BT.470-6 System B, G / ITU-R BT.601-7 625, functionally the same as SDL_MATRIX_COEFFICIENTS_BT601"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT601",
          "value": "6",
          "comment": "ITU-R BT.601-7 525"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_SMPTE240",
          "value": "7",
          "comment": "SMPTE 240M"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT2020_NCL",
          "value": "9",
          "comment": "ITU-R BT.2020-2 non-constant luminance"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT2020_CL",
          "value": "10",
          "comment": "ITU-R BT.2020-2 constant luminance"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_SMPTE2085",
          "value": "11",
          "comment": "SMPTE ST 2085"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_ICTCP",
          "value": "14",
          "comment": "ITU-R BT.2100-0 ICTCP"
        }
      ]
    },
    {
      "name": "SDL_ChromaLocation",
      "values": [
        {
          "name": "SDL_CHROMA_LOCATION_NONE",
          "value": "0",
          "comment": "RGB, no chroma sampling"
        },
        {
          "name": "SDL_CHROMA_LOCATION_LEFT",
          "value": "1",
          "comment": "In MPEG-2, MPEG-4, and AVC, Cb and Cr are taken on midpoint of the left-edge of the 2x2 square. In other words, they have the same horizontal location as the top-left pixel, but is shifted one-half pixel down vertically."
        },
        {
          "name": "SDL_CHROMA_LOCATION_CENTER",
          "value": "2",
          "comment": "In JPEG/JFIF, H.261, and MPEG-1, Cb and Cr are taken at the center of the 2x2 square. In other words, they are offset one-half pixel to the right and one-half pixel down compared to the top-left pixel."
        },
        {
          "name": "SDL_CHROMA_LOCATION_TOPLEFT",
          "value": "3"
        }
      ]
    },
    {
      "name": "SDL_Colorspace",
      "values": [
        {
          "name": "SDL_COLORSPACE_SRGB",
          "value": "0x120005a0u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709"
        },
        {
          "name": "SDL_COLOR_RANGE_FULL"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT709"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_SRGB"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_IDENTITY"
        },
        {
          "name": "SDL_COLORSPACE_SRGB_LINEAR",
          "value": "0x12000500u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_LINEAR"
        },
        {
          "name": "SDL_COLORSPACE_HDR10",
          "value": "0x12002600u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT2020"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_PQ"
        },
        {
          "name": "SDL_COLORSPACE_JPEG",
          "value": "0x220004c6u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT601"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT601"
        },
        {
          "name": "SDL_COLORSPACE_BT601_LIMITED",
          "value": "0x211018c6u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601"
        },
        {
          "name": "SDL_COLOR_RANGE_LIMITED"
        },
        {
          "name": "SDL_COLOR_PRIMARIES_BT601"
        },
        {
          "name": "SDL_COLORSPACE_BT601_FULL",
          "value": "0x221018c6u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601"
        },
        {
          "name": "SDL_COLORSPACE_BT709_LIMITED",
          "value": "0x21100421u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709"
        },
        {
          "name": "SDL_TRANSFER_CHARACTERISTICS_BT709"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT709"
        },
        {
          "name": "SDL_COLORSPACE_BT709_FULL",
          "value": "0x22100421u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709"
        },
        {
          "name": "SDL_COLORSPACE_BT2020_LIMITED",
          "value": "0x21102609u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020"
        },
        {
          "name": "SDL_MATRIX_COEFFICIENTS_BT2020_NCL"
        },
        {
          "name": "SDL_COLORSPACE_BT2020_FULL",
          "value": "0x22102609u",
          "comment": "Equivalent to DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020"
        },
        {
          "name": "SDL_COLORSPACE_RGB_DEFAULT",
          "value": "SDL_COLORSPACE_SRGB",
          "comment": "The default colorspace for RGB surfaces if no colorspace is specified"
        },
        {
          "name": "SDL_COLORSPACE_YUV_DEFAULT",
          "value": "SDL_COLORSPACE_JPEG",
          "comment": "The default colorspace for YUV surfaces if no colorspace is specified"
        }
      ]
    }
  ],
  "structs": [
    {
      "name": "SDL_Color",
      "fields": [
        {
          "name": "r",
          "type": "Uint8"
        },
        {
          "name": "g",
          "type": "Uint8"
        },
        {
          "name": "b",
          "type": "Uint8"
        },
        {
          "name": "a",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_FColor",
      "fields": [
        {
          "name": "r",
          "type": "float"
        },
        {
          "name": "g",
          "type": "float"
        },
        {
          "name": "b",
          "type": "float"
        },
        {
          "name": "a",
          "type": "float"
        }
      ]
    },
    {
      "name": "SDL_Palette",
      "fields": [
        {
          "name": "ncolors",
          "type": "int",
          "comment": "number of elements in `colors`."
        },
        {
          "name": "colors",
          "type": "SDL_Color *",
          "comment": "an array of colors, `ncolors` long."
        },
        {
          "name": "version",
          "type": "Uint32",
          "comment": "internal use only, do not touch."
        },
        {
          "name": "refcount",
          "type": "int",
          "comment": "internal use only, do not touch."
        }
      ]
    },
    {
      "name": "SDL_PixelFormatDetails",
      "fields": [
        {
          "name": "format",
          "type": "SDL_PixelFormat"
        },
        {
          "name": "bits_per_pixel",
          "type": "Uint8"
        },
        {
          "name": "bytes_per_pixel",
          "type": "Uint8"
        },
        {
          "name": "padding",
          "type": "Uint8[2]"
        },
        {
          "name": "Rmask",
          "type": "Uint32"
        },
        {
          "name": "Gmask",
          "type": "Uint32"
        },
        {
          "name": "Bmask",
          "type": "Uint32"
        },
        {
          "name": "Amask",
          "type": "Uint32"
        },
        {
          "name": "Rbits",
          "type": "Uint8"
        },
        {
          "name": "Gbits",
          "type": "Uint8"
        },
        {
          "name": "Bbits",
          "type": "Uint8"
        },
        {
          "name": "Abits",
          "type": "Uint8"
        },
        {
          "name": "Rshift",
          "type": "Uint8"
        },
        {
          "name": "Gshift",
          "type": "Uint8"
        },
        {
          "name": "Bshift",
          "type": "Uint8"
        },
        {
          "name": "Ashift",
          "type": "Uint8"
        }
      ]
    }
  ],
  "unions": [],
  "flags": [],
  "functions": [
    {
      "name": "SDL_GetPixelFormatName",
      "return_type": "const char *",
      "parameters": [
        {
          "name": "format",
          "type": "SDL_PixelFormat"
        }
      ]
    },
    {
      "name": "SDL_GetMasksForPixelFormat",
      "return_type": "bool",
      "parameters": [
        {
          "name": "format",
          "type": "SDL_PixelFormat"
        },
        {
          "name": "bpp",
          "type": "int *"
        },
        {
          "name": "Rmask",
          "type": "Uint32 *"
        },
        {
          "name": "Gmask",
          "type": "Uint32 *"
        },
        {
          "name": "Bmask",
          "type": "Uint32 *"
        },
        {
          "name": "Amask",
          "type": "Uint32 *"
        }
      ]
    },
    {
      "name": "SDL_GetPixelFormatForMasks",
      "return_type": "SDL_PixelFormat",
      "parameters": [
        {
          "name": "bpp",
          "type": "int"
        },
        {
          "name": "Rmask",
          "type": "Uint32"
        },
        {
          "name": "Gmask",
          "type": "Uint32"
        },
        {
          "name": "Bmask",
          "type": "Uint32"
        },
        {
          "name": "Amask",
          "type": "Uint32"
        }
      ]
    },
    {
      "name": "SDL_GetPixelFormatDetails",
      "return_type": "const SDL_PixelFormatDetails *",
      "parameters": [
        {
          "name": "format",
          "type": "SDL_PixelFormat"
        }
      ]
    },
    {
      "name": "SDL_CreatePalette",
      "return_type": "SDL_Palette *",
      "parameters": [
        {
          "name": "ncolors",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_SetPaletteColors",
      "return_type": "bool",
      "parameters": [
        {
          "name": "palette",
          "type": "SDL_Palette *"
        },
        {
          "name": "colors",
          "type": "const SDL_Color *"
        },
        {
          "name": "firstcolor",
          "type": "int"
        },
        {
          "name": "ncolors",
          "type": "int"
        }
      ]
    },
    {
      "name": "SDL_DestroyPalette",
      "return_type": "void",
      "parameters": [
        {
          "name": "palette",
          "type": "SDL_Palette *"
        }
      ]
    },
    {
      "name": "SDL_MapRGB",
      "return_type": "Uint32",
      "parameters": [
        {
          "name": "format",
          "type": "const SDL_PixelFormatDetails *"
        },
        {
          "name": "palette",
          "type": "const SDL_Palette *"
        },
        {
          "name": "r",
          "type": "Uint8"
        },
        {
          "name": "g",
          "type": "Uint8"
        },
        {
          "name": "b",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_MapRGBA",
      "return_type": "Uint32",
      "parameters": [
        {
          "name": "format",
          "type": "const SDL_PixelFormatDetails *"
        },
        {
          "name": "palette",
          "type": "const SDL_Palette *"
        },
        {
          "name": "r",
          "type": "Uint8"
        },
        {
          "name": "g",
          "type": "Uint8"
        },
        {
          "name": "b",
          "type": "Uint8"
        },
        {
          "name": "a",
          "type": "Uint8"
        }
      ]
    },
    {
      "name": "SDL_GetRGB",
      "return_type": "void",
      "parameters": [
        {
          "name": "pixel",
          "type": "Uint32"
        },
        {
          "name": "format",
          "type": "const SDL_PixelFormatDetails *"
        },
        {
          "name": "palette",
          "type": "const SDL_Palette *"
        },
        {
          "name": "r",
          "type": "Uint8 *"
        },
        {
          "name": "g",
          "type": "Uint8 *"
        },
        {
          "name": "b",
          "type": "Uint8 *"
        }
      ]
    },
    {
      "name": "SDL_GetRGBA",
      "return_type": "void",
      "parameters": [
        {
          "name": "pixel",
          "type": "Uint32"
        },
        {
          "name": "format",
          "type": "const SDL_PixelFormatDetails *"
        },
        {
          "name": "palette",
          "type": "const SDL_Palette *"
        },
        {
          "name": "r",
          "type": "Uint8 *"
        },
        {
          "name": "g",
          "type": "Uint8 *"
        },
        {
          "name": "b",
          "type": "Uint8 *"
        },
        {
          "name": "a",
          "type": "Uint8 *"
        }
      ]
    }
  ]
}