sdlxGetRenderLogicalPresentation function render
- Pointer<
SdlRenderer> renderer, - SdlxRenderLogicalPresentation presentation
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)
Implementation
bool sdlxGetRenderLogicalPresentation(
Pointer<SdlRenderer> renderer,
SdlxRenderLogicalPresentation presentation,
) {
final wPointer = calloc<Int32>();
final hPointer = calloc<Int32>();
final modePointer = calloc<Int32>();
final rectPointer = calloc<SdlFRect>();
var result = sdlGetRenderLogicalPresentation(
renderer,
wPointer,
hPointer,
modePointer,
);
if (result) {
presentation
..w = wPointer.value
..h = hPointer.value
..mode = modePointer.value;
result = sdlGetRenderLogicalPresentationRect(renderer, rectPointer);
if (result) {
presentation.rect.loadFromPointer(rectPointer);
}
}
wPointer.callocFree();
hPointer.callocFree();
modePointer.callocFree();
rectPointer.callocFree();
return result;
}