32template <
typename T,
typename Callback>
52template <
typename T,
typename Predicate,
typename Callback>
74[[nodiscard]] MAYAFLUX_API std::shared_ptr<Vruta::BroadcastSource<bool>>
audio_output_tick();
77 std::shared_ptr<std::vector<uint8_t>>
data;
105[[nodiscard]] MAYAFLUX_API std::shared_ptr<Vruta::BroadcastSource<WindowFrame>>
window_frame_tick(
106 const std::shared_ptr<Core::Window>& window);
110#include "BroadcastEvents.inl"
Awaitable single-value broadcast channel for cross-thread signal delivery.
Coroutine type for event-driven suspension.
Vruta::Event on_signal_matching(std::shared_ptr< Vruta::BroadcastSource< T > > source, Predicate predicate, Callback callback)
Creates an Event coroutine that fires only when a predicate matches.
std::shared_ptr< Vruta::BroadcastSource< WindowFrame > > window_frame_tick(const std::shared_ptr< Core::Window > &window)
Create a BroadcastSource<bool> ticking once per captured window frame.
Vruta::Event on_signal(std::shared_ptr< Vruta::BroadcastSource< T > > source, Callback callback)
Creates an Event coroutine that fires on every signal from a BroadcastSource.
std::shared_ptr< Vruta::BroadcastSource< bool > > audio_output_tick()
Create a BroadcastSource<bool> ticking once per audio output cycle.
std::shared_ptr< std::vector< uint8_t > > data