sdlConvertSurfaceAndColorspace function

Pointer<SdlSurface> sdlConvertSurfaceAndColorspace(
  1. Pointer<SdlSurface> surface,
  2. int format,
  3. Pointer<SdlPalette> palette,
  4. int colorspace,
  5. int props,
)

Copy an existing surface to a new surface of the specified format and colorspace.

This function converts an existing surface to a new format and colorspace and returns the new surface. This will perform any pixel format and colorspace conversion needed.

If the original surface has alternate images, the new surface will have a reference to them as well.

\param surface the existing SDL_Surface structure to convert. \param format the new pixel format. \param palette an optional palette to use for indexed formats, may be NULL. \param colorspace the new colorspace. \param props an SDL_PropertiesID with additional color properties, or 0. \returns the new SDL_Surface structure that is created or NULL on failure; call SDL_GetError() for more information.

\since This function is available since SDL 3.1.3.

\sa SDL_ConvertSurface \sa SDL_DestroySurface

extern SDL_DECLSPEC SDL_Surface * SDLCALL SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelFormat format, SDL_Palette *palette, SDL_Colorspace colorspace, SDL_PropertiesID props)

Implementation

Pointer<SdlSurface> sdlConvertSurfaceAndColorspace(Pointer<SdlSurface> surface,
    int format, Pointer<SdlPalette> palette, int colorspace, int props) {
  final sdlConvertSurfaceAndColorspaceLookupFunction = libSdl3.lookupFunction<
      Pointer<SdlSurface> Function(Pointer<SdlSurface> surface, Int32 format,
          Pointer<SdlPalette> palette, Int32 colorspace, Uint32 props),
      Pointer<SdlSurface> Function(
          Pointer<SdlSurface> surface,
          int format,
          Pointer<SdlPalette> palette,
          int colorspace,
          int props)>('SDL_ConvertSurfaceAndColorspace');
  return sdlConvertSurfaceAndColorspaceLookupFunction(
      surface, format, palette, colorspace, props);
}