sdlxGetMasksForPixelFormat function pixels
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.2.0.
\sa SDL_GetPixelFormatForMasks
extern SDL_DECLSPEC bool SDLCALL SDL_GetMasksForPixelFormat(SDL_PixelFormat format, int *bpp, Uint32 *Rmask, Uint32 *Gmask, Uint32 *Bmask, Uint32 *Amask)
See also:
Implementation
SdlxMasks? sdlxGetMasksForPixelFormat(int format) => ffi.using((arena) {
final bppPointer = arena<Int32>();
final rmaskPointer = arena<Uint32>();
final gmaskPointer = arena<Uint32>();
final bmaskPointer = arena<Uint32>();
final amaskPointer = arena<Uint32>();
final result = sdlGetMasksForPixelFormat(
format,
bppPointer,
rmaskPointer,
gmaskPointer,
bmaskPointer,
amaskPointer,
);
if (!result) {
return null;
}
return SdlxMasks(
bpp: bppPointer.value,
rmask: rmaskPointer.value,
gmask: gmaskPointer.value,
bmask: bmaskPointer.value,
amask: amaskPointer.value,
);
});