3 #include "ge211_color.h" 4 #include "ge211_forward.h" 5 #include "ge211_geometry.h" 6 #include "ge211_window.h" 7 #include "ge211_util.h" 17 explicit Renderer(
const Window&);
19 bool is_vsync() const noexcept;
21 void set_color(Color);
24 void copy(const Texture&, Position);
25 void copy(const Texture&, Position, const Transform&);
29 void prepare(const Texture&) const;
31 void present() noexcept;
36 SDL_Renderer* get_raw_() const noexcept;
38 static SDL_Renderer* create_renderer_(SDL_Window*);
40 delete_ptr<SDL_Renderer> ptr_;
56 explicit Texture(SDL_Surface*);
57 explicit Texture(delete_ptr<SDL_Surface>);
59 Dimensions dimensions() const noexcept;
63 SDL_Surface* as_surface() noexcept;
65 bool empty() const noexcept;
72 Impl_(SDL_Surface*) noexcept;
73 Impl_(SDL_Texture*) noexcept;
75 Impl_(delete_ptr<SDL_Surface>) noexcept;
76 Impl_(delete_ptr<SDL_Texture>) noexcept;
78 delete_ptr<SDL_Surface> surface_;
79 delete_ptr<SDL_Texture> texture_;
86 SDL_Texture* get_raw_(
const Renderer&)
const;
88 std::shared_ptr<Impl_> impl_;
The game engine namespace.