1 #ifndef TERMOX_SYSTEM_EVENT_QUEUE_HPP
2 #define TERMOX_SYSTEM_EVENT_QUEUE_HPP
7 #include <termox/common/unique_queue.hpp>
8 #include <termox/system/event_fwd.hpp>
12 [[nodiscard]]
auto operator<(Paint_event
const& x, Paint_event
const& y)
15 [[nodiscard]]
auto operator==(Paint_event
const& a, Paint_event
const& b)
20 namespace ox::detail {
29 [[nodiscard]]
auto size()
const -> std::size_t;
41 [[nodiscard]]
auto size()
const -> std::size_t;
44 std::vector<Delete_event> deletes_;
51 auto send_all() -> bool;
53 [[nodiscard]]
auto size()
const -> std::size_t;
56 std::vector<Event> basics_;
78 void add_to_a_queue(T e)
80 basics_.append(std::move(e));
Definition: event_queue.hpp:63
void send_all()
Send all events, then flush the screen if any events were actually sent.
Definition: event_queue.cpp:84
void append(Event e)
Adds the given event with priority for the underlying event type.
Definition: event_queue.cpp:75
A Queue like container holding only unique values.
Definition: unique_queue.hpp:19
Definition: event_queue.hpp:47
Definition: event_queue.hpp:35
void send_all()
Definition: event_queue.cpp:47
Definition: event_queue.hpp:22
auto send_all() -> bool
Return true if any events are actually sent.
Definition: event_queue.cpp:32