1#ifndef TATOOINE_GL_WINDOW_H
2#define TATOOINE_GL_WINDOW_H
39 window(
const std::string &title,
size_t width,
size_t height);
67 auto monitor = glfwGetPrimaryMonitor();
68 std::pair<int, int> res;
69 glfwGetMonitorPhysicalSize(monitor, &res.first, &res.second);
81 *it = std::thread{[
this, it, f = std::forward<F>(f)] {
91 void setup(
const std::string &title,
size_t width,
size_t height);
auto should_close() const
Definition: window.h:65
void on_resize(int, int) override
auto get() -> auto &
Definition: window.h:62
std::unique_ptr< struct imgui_render_backend > m_imgui_render_backend
Definition: window.h:26
void setup(const std::string &title, size_t width, size_t height)
void on_wheel_right() override
void on_button_pressed(button) override
void on_wheel_up() override
auto imgui_render_backend() -> auto &
Definition: window.h:34
window(const std::string &title, size_t width, size_t height)
void on_key_pressed(key) override
std::vector< std::list< std::thread >::iterator > m_joinable_async_tasks
Definition: window.h:28
std::unique_ptr< glfw::window > m_glfw_window
Definition: window.h:25
std::mutex m_async_tasks_mutex
Definition: window.h:29
void on_key_released(key) override
auto imgui_render_backend() const -> auto const &
Definition: window.h:31
void do_async(F &&f)
Definition: window.h:74
auto primary_screen_resolution() const
Definition: window.h:66
auto get() const -> auto const &
Definition: window.h:63
void on_wheel_down() override
void on_cursor_moved(double, double) override
void on_wheel_left() override
std::list< std::thread > m_async_tasks
Definition: window.h:27
void on_button_released(button) override
void init_imgui(size_t width, size_t height)
Definition: ansiformat.h:6
button
Definition: mouse.h:8
key
Definition: keyboard.h:9
auto end(buffer_map< ArrayType, T, Access > &map)
Definition: buffer.h:104
auto prev(Iter iter)
Definition: iterator_facade.h:343
Definition: window_listener.h:10
Definition: window_notifier.h:122