RIT VEXU Core API
Loading...
Searching...
No Matches
screen_controller.h
1#pragma once
2
3#include <functional>
4#include <optional>
5
6#include "core/utils/math/geometry/point2d.h"
7
8namespace ScreenController {
9
11using screen_handle = void();
12
22bool set(std::function<screen_handle> handle, std::function<screen_handle> draw = nullptr, bool clear = true);
23
25void unset();
26
31bool was_initialized();
32
34void pause();
35
37void resume();
38
43bool is_running();
44
50std::optional<Point2d> get_press_pos();
51
57std::optional<Point2d> get_last_press_pos();
58
64std::optional<Point2d> get_first_press_pos();
65
70uint64_t get_frame_count();
71
76uint64_t get_frame_delta_time();
77
78} // namespace ScreenController