#ifndef DEF_SDLTL_H #define DEF_SDLTL_H /* [LIBS] Internes =========================================================*/ #include "SDL.h" #include "SDL_image.h" #include #include /* [LIBS] Externes =========================================================*/ /* [NS] Namespaces =========================================================*/ using namespace std; class sdltl{ public: sdltl(const char *t, int w, int h); ~sdltl(); SDL_Window *window(); SDL_Renderer *renderer(); bool status(); bool setBackground(Uint8 r=0xff, Uint8 g=0xff, Uint8 b=0xff, Uint8 a=0xff); bool setImage(const char *url); void waitEvent(SDL_EventType t, void(*handler)(SDL_Event*) ); void push(SDL_Texture *t, SDL_Rect *origin, SDL_Rect *dest); void pull(SDL_Texture *t); void update(); void manageFps(const int fps=0); private: // gestion FPS Uint32 _lasttick; Uint32 _fpstime; // status de l'initialisation bool _status; // Elements utiles SDL_Window *_window; SDL_Renderer *_renderer; SDL_Texture *_texture; // Gestion des textures vector _sprites; vector _src; vector _dst; // Protection thread-safe mutex _mutex; }; /* [BODY] Inclusion du corps =========================================================*/ #include "sdltl.cpp" #endif