sdlxGetRenderLogicalPresentation function render

({int h, int mode, int w})? sdlxGetRenderLogicalPresentation(
  1. Pointer<SdlRenderer> renderer
)

Get device independent resolution and presentation mode for rendering.

This function gets the width and height of the logical rendering output, or 0 if a logical resolution is not enabled.

Each render target has its own logical presentation state. This function gets the state for the current render target.

\param renderer the rendering context. \param w an int filled with the logical presentation width. \param h an int filled with the logical presentation height. \param mode a variable filled with the logical presentation mode being used. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety This function should only be called on the main thread.

\since This function is available since SDL 3.2.0.

\sa SDL_SetRenderLogicalPresentation

extern SDL_DECLSPEC bool SDLCALL SDL_GetRenderLogicalPresentation(SDL_Renderer *renderer, int *w, int *h, SDL_RendererLogicalPresentation *mode)

See also:

Implementation

({int w, int h, int mode})? sdlxGetRenderLogicalPresentation(
  Pointer<SdlRenderer> renderer,
) {
  var w = 0;
  var h = 0;
  var mode = 0;
  final wPointer = ffi.calloc<Int32>();
  final hPointer = ffi.calloc<Int32>();
  final modePointer = ffi.calloc<Int32>();
  final result = sdlGetRenderLogicalPresentation(
    renderer,
    wPointer,
    hPointer,
    modePointer,
  );
  if (result) {
    w = wPointer.value;
    h = hPointer.value;
    mode = modePointer.value;
  }
  wPointer.callocFree();
  hPointer.callocFree();
  modePointer.callocFree();
  if (!result) {
    return null;
  }
  return (w: w, h: h, mode: mode);
}