MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ signal()

void MayaFlux::Vruta::EventSource::signal ( Core::WindowEvent  event)

Signals that an event occurred.

Parameters
eventThe event data

Called by GLFW callbacks. Queues event and resumes waiting coroutines.

Definition at line 7 of file EventSource.cpp.

8{
9 if (event.type == Core::WindowEventType::WINDOW_CLOSED) {
10 m_pending_events.push(event);
11 return;
12 }
13
14 m_pending_events.push(event);
15
16 auto waiters = m_waiters;
17 for (auto* awaiter : waiters) {
18 awaiter->try_resume();
19 }
20}
std::vector< Kriya::EventAwaiter * > m_waiters
std::queue< Core::WindowEvent > m_pending_events

References m_pending_events, m_waiters, MayaFlux::Core::WindowEvent::type, and MayaFlux::Core::WINDOW_CLOSED.