|
| | EditorDisplay () |
| virtual | ~EditorDisplay () |
| bool | Initialize (int32_t width, int32_t height) override |
| | Initialize the platform display.
|
| void | Shutdown () override |
| | Shutdown the display and cleanup resources.
|
| void | Present (const uint8_t *framebuffer, int width, int height, int format) override |
| | Present the frame buffer to the display.
|
| bool | SupportsPartialPresent () const override |
| | True when PresentRegions() pushes only the rectangles it is given.
|
| void | PresentRegions (const uint8_t *framebuffer, int width, int height, int format, const DekiRect *rects, int32_t count) override |
| | Present only rects of the framebuffer.
|
| void | GetDisplaySize (int32_t *width, int32_t *height) const override |
| | Get the display dimensions.
|
| bool | IsInitialized () const override |
| | Check if the display is initialized.
|
| void | RequestFullRefresh () override |
| | Request a full display refresh.
|
| bool | ProcessEvents () override |
| | Process platform events (window close, resize, etc.).
|
| void * | CreateUIOverlay (int32_t width, int32_t height) override |
| bool | UpdateUIOverlay (void *overlay, int32_t x, int32_t y, int32_t width, int32_t height, const uint32_t *pixels) override |
| bool | UpdateUIOverlayRGB565A8 (void *overlay, int32_t x, int32_t y, int32_t width, int32_t height, const uint8_t *rgb565a8_pixels) override |
| void | DestroyUIOverlay (void *overlay) override |
| void | SetActiveUIOverlay (void *overlay) override |
| void | ClearActiveUIOverlay () override |
| uint32_t | GetTextureId () const |
| virtual | ~IDekiDisplay ()=default |
| virtual uint8_t * | GetRenderBuffer (int32_t *width, int32_t *height) |
| | Get a display-owned buffer suitable for direct rendering.
|
| virtual void | SetBacklight (bool on) |
| | Turn the display backlight on or off.
|
Editor implementation of display interface.
This display renders to an OpenGL texture that can be displayed in ImGui. It doesn't create its own window - the editor manages the window.
| void EditorDisplay::PresentRegions |
( |
const uint8_t * | framebuffer, |
|
|
int | width, |
|
|
int | height, |
|
|
int | format, |
|
|
const DekiRect * | rects, |
|
|
int32_t | count ) |
|
overridevirtual |
Present only rects of the framebuffer.
Rectangles are framebuffer pixels, half-open, already clipped to the buffer; they may overlap. count 0 means nothing changed since the last present: a windowed display still redraws its window from the texture it holds, an LCD does nothing. The default pushes the whole frame, so a display that does not override this behaves exactly as before.
Reimplemented from IDekiDisplay.