Ase::USignalSource class

EventLoop source for handler execution.

Base classes

class EventSource virtual
EventLoop source for callback execution.

Public static functions

static void raise(int8 signum)
Flag a unix signal being raised, this function may be called from any thread at any time.

Public functions

void add_poll(PollFD*const pfd)
Add a PollFD descriptors for poll(2) and check().
void loop_remove()
Remove this source from its event loop if any.
auto main_loop() const →  MainLoop*
Get the main loop for this source.
auto may_recurse() const →  bool
Indicates if this source may recurse.
void may_recurse(bool may_recurse)
Dispatch this source if its running recursively.
auto primary() const →  bool
Indicate whether this source is primary.
void primary(bool is_primary)
Set whether this source prevents its loop from exiting.
auto recursion() const →  bool
Indicates wether the source is currently in recursion.
void remove_poll(PollFD*const pfd)
Remove a previously added PollFD.

Protected functions

auto check(const LoopState& state) →  bool virtual
Check the source and its PollFD descriptors for dispatching (true return).
auto dispatch(const LoopState& state) →  bool virtual
Dispatch source, returns if it should be kept alive.
auto prepare(const LoopState& state, int64* timeout_usecs_p) →  bool virtual
Prepare the source for dispatching (true return) or polling (false).