#ifndef RENDERER_H #define RENDERER_H #include "SDL.h" #include "SDL_render.h" #include "SDL_surface.h" #include "SDL_video.h" #include #include #ifdef __cplusplus extern "C" { #endif // !__cplusplus typedef struct renderer Renderer; Renderer *create_renderer(); bool init_renderer(Renderer *renderer, SDL_Window *window); void get_drawable_size(Renderer *renderer, int32_t *w, int32_t *h); SDL_Texture *load_texture(const Renderer *renderer, const char *path); void render_clear(const Renderer *renderer, SDL_Color color); void render_surface(const Renderer *renderer, SDL_Surface *surface, float x, float y, float w, float h); void render_texture(const Renderer *renderer, SDL_Texture *texture, float x, float y, float w, float h); void swap_buffers(const Renderer *renderer); void destroy_renderer(Renderer **renderer); #ifdef __cplusplus } #endif // !__cplusplus #endif // !RENDERER_H