20 #ifndef ANTKEEPER_APP_SDL_WINDOW_HPP
21 #define ANTKEEPER_APP_SDL_WINDOW_HPP
37 const std::string& title,
51 void set_title(
const std::string& title)
override;
64 return *m_graphics_pipeline;
69 return *m_graphics_pipeline;
75 SDL_Window* m_internal_window;
76 SDL_GLContext m_internal_context;
77 std::unique_ptr<gl::pipeline> m_graphics_pipeline;
sdl_window & operator=(sdl_window &&)=delete
sdl_window(const std::string &title, const math::ivec2 &windowed_position, const math::ivec2 &windowed_size, bool maximized, bool fullscreen, bool v_sync)
void make_current() override
Makes the window's graphics context current.
void swap_buffers() override
Swaps the front and back buffers of the window's graphics context.
void set_v_sync(bool v_sync) override
Enables or disables v-sync.
gl::pipeline & get_graphics_pipeline() noexcept override
Returns the graphics pipeline associated with this window.
void set_title(const std::string &title) override
Changes the title of the window.
sdl_window(const sdl_window &)=delete
void set_position(const math::ivec2 &position) override
Changes the position of the window.
sdl_window(sdl_window &&)=delete
void set_maximized(bool maximized) override
Maximizes or unmaximizes the window.
const gl::pipeline & get_graphics_pipeline() const noexcept override
Returns the graphics pipeline associated with this window.
void set_fullscreen(bool fullscreen) override
Enables or disables fullscreen mode.
sdl_window & operator=(const sdl_window &)=delete
void set_minimum_size(const math::ivec2 &size) override
Sets the minimum size of the window.
void set_size(const math::ivec2 &size) override
Changes the size of the window.
void set_maximum_size(const math::ivec2 &size) override
Sets the maximum size of the window.
Graphics pipeline interface.
@ position
Vertex position (vec3)