From f1857fc2d4ddec71b3f0395903f8446cf96b8d0c Mon Sep 17 00:00:00 2001 From: heavydemon21 Date: Tue, 22 Oct 2024 15:37:00 +0200 Subject: fixed everything and can now work with new compiler, example rendering and made it work with component manager --- src/crepe/SdlContext.h | 45 ++++++++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 19 deletions(-) (limited to 'src/crepe/SdlContext.h') diff --git a/src/crepe/SdlContext.h b/src/crepe/SdlContext.h index c8f1304..a6c85f1 100644 --- a/src/crepe/SdlContext.h +++ b/src/crepe/SdlContext.h @@ -1,43 +1,50 @@ #pragma once -#include "SDL_rect.h" +#include "RenderSystem.h" #include "api/Sprite.h" #include "api/Transform.h" #include #include -namespace crepe { +namespace crepe::api { +class Texture; +} +namespace crepe { class SdlContext { public: - - void handleEvents(bool& running); - void clearScreen(); - void presentScreen(); - void draw(const api::Sprite&, const api::Transform&); - // singleton static SdlContext & get_instance(); - SDL_Texture* setTextureFromPath(const char*); - SDL_Texture* setTextureFromPath(const char*, SDL_Rect& clip, const int row, const int col); - -private: - SdlContext(); - virtual ~SdlContext(); - SdlContext(const SdlContext &) = delete; SdlContext(SdlContext &&) = delete; SdlContext & operator=(const SdlContext &) = delete; SdlContext & operator=(SdlContext &&) = delete; + //TODO decide events wouter? private: + void handle_events(bool & running); - SDL_Window* m_game_window; - SDL_Renderer* m_game_renderer; -}; +private: + SdlContext(); + virtual ~SdlContext(); + +private: + friend class api::Texture; + SDL_Texture * texture_from_path(const char *); + //SDL_Texture* setTextureFromPath(const char*, SDL_Rect& clip, const int row, const int col); -} // +private: + friend class RenderSystem; + void draw(const api::Sprite &, const api::Transform &); + void clear_screen(); + void present_screen(); + +private: + SDL_Window * m_game_window; + SDL_Renderer * m_game_renderer; +}; +} // namespace crepe -- cgit v1.2.3