3#ifndef YAZE_APP_GFX_BACKEND_NULL_RENDERER_H_
4#define YAZE_APP_GFX_BACKEND_NULL_RENDERER_H_
22 LOG_INFO(
"NullRenderer",
"Initialized headless renderer");
27 LOG_INFO(
"NullRenderer",
"Shutdown headless renderer");
36 int access)
override {
49 int* pitch)
override {
66 const SDL_Rect* dstrect)
override {
Represents a bitmap image optimized for SNES ROM hacking.
Defines an abstract interface for all rendering operations.
Null implementation of the renderer for headless mode.
bool LockTexture(TextureHandle texture, SDL_Rect *rect, void **pixels, int *pitch) override
void Shutdown() override
Shuts down the renderer and releases all associated resources.
void Present() override
Presents the back buffer to the screen, making the rendered content visible.
void UpdateTexture(TextureHandle texture, const Bitmap &bitmap) override
Updates a texture with the pixel data from a Bitmap.
void SetRenderTarget(TextureHandle texture) override
Sets the render target for subsequent drawing operations.
TextureHandle CreateTextureWithFormat(int width, int height, uint32_t format, int access) override
Creates a new texture with a specific pixel format.
void * GetBackendRenderer() override
Provides an escape hatch to get the underlying, concrete renderer object.
void RenderCopy(TextureHandle texture, const SDL_Rect *srcrect, const SDL_Rect *dstrect) override
Copies a portion of a texture to the current render target.
void DestroyTexture(TextureHandle texture) override
Destroys a texture and frees its associated resources.
void Clear() override
Clears the entire render target with the current draw color.
void UnlockTexture(TextureHandle texture) override
bool Initialize(SDL_Window *window) override
Initializes the renderer with a given window.
~NullRenderer() override=default
void SetDrawColor(SDL_Color color) override
Sets the color used for drawing operations (e.g., Clear).
TextureHandle CreateTexture(int width, int height) override
Creates a new, empty texture.
#define LOG_INFO(category, format,...)
void * TextureHandle
An abstract handle representing a texture.