00001 #ifndef __NE_SDL_RENDERER_H__ 00002 #define __NE_SDL_RENDERER_H__ 00003 00004 #ifndef DOXYGEN_IGNORE_TAG 00005 00026 #endif 00027 00028 #include "../../Renderer.h" 00029 00030 #include "../../../Types/Vec2.h" 00031 00032 struct Colour; 00033 struct Rect; 00034 00035 class Window; 00036 class Sprite; 00037 00038 namespace NE 00039 { 00040 class SDL_Renderer : public Renderer 00041 { 00042 private: 00043 00044 public: 00045 SDL_Renderer(Window* pWin):Renderer(pWin) {} 00046 ~SDL_Renderer(void) {} 00047 00048 bool clearScreen(const Colour& colour); 00049 00050 bool drawRect(const Rect& tile, const Colour& colour)const; 00051 bool drawSurface(const IVec2& position,const Sprite& pSprite)const; 00052 bool drawSurface(const IVec2& position, const Sprite& pSprite, const Colour& mask)const; 00053 bool drawSurface(const IVec2& position, const Sprite& pSprite, const Rect& srcRect)const; 00054 bool drawSurface(const IVec2& position, const Sprite& pSprite, const Rect& srcRect, const Colour& mask)const; 00055 00056 bool updateWindow(void); 00057 }; 00058 } 00059 00068 #endif