sdlGetMasksForPixelFormat function

bool sdlGetMasksForPixelFormat(
  1. int format,
  2. Pointer<Int32> bpp,
  3. Pointer<Uint32> rmask,
  4. Pointer<Uint32> gmask,
  5. Pointer<Uint32> bmask,
  6. Pointer<Uint32> amask,
)

Convert one of the enumerated pixel formats to a bpp value and RGBA masks.

\param format one of the SDL_PixelFormat values. \param bpp a bits per pixel value; usually 15, 16, or 32. \param Rmask a pointer filled in with the red mask for the format. \param Gmask a pointer filled in with the green mask for the format. \param Bmask a pointer filled in with the blue mask for the format. \param Amask a pointer filled in with the alpha mask for the format. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety It is safe to call this function from any thread.

\since This function is available since SDL 3.1.3.

\sa SDL_GetPixelFormatForMasks

extern SDL_DECLSPEC bool SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask)

Implementation

bool sdlGetMasksForPixelFormat(
    int format,
    Pointer<Int32> bpp,
    Pointer<Uint32> rmask,
    Pointer<Uint32> gmask,
    Pointer<Uint32> bmask,
    Pointer<Uint32> amask) {
  final sdlGetMasksForPixelFormatLookupFunction = libSdl3.lookupFunction<
      Uint8 Function(Int32 format, Pointer<Int32> bpp, Pointer<Uint32> rmask,
          Pointer<Uint32> gmask, Pointer<Uint32> bmask, Pointer<Uint32> amask),
      int Function(
          int format,
          Pointer<Int32> bpp,
          Pointer<Uint32> rmask,
          Pointer<Uint32> gmask,
          Pointer<Uint32> bmask,
          Pointer<Uint32> amask)>('SDL_GetMasksForPixelFormat');
  return sdlGetMasksForPixelFormatLookupFunction(
          format, bpp, rmask, gmask, bmask, amask) ==
      1;
}