Anklang 0.3.0-460-gc4ef46ba
ASE — Anklang Sound Engine (C++)
« « « Anklang Documentation |
Public Member Functions | |
SubLoop (MainLoopP main) | |
![]() | |
void | wakeup () |
Wakeup loop from polling. | |
uint | add (EventSourceP loop_source, int priority=PRIORITY_NORMAL) |
Adds a new source to the loop with custom priority. | |
void | remove (uint id) |
Removes a source from loop, the source must be present. | |
bool | try_remove (uint id) |
Tries to remove a source, returns if successfull. | |
bool | clear_source (uint *id_pointer) |
Remove source if id_pointer and *id_pointer are valid. | |
void | destroy_loop (void) |
bool | has_primary (void) |
Indicates whether loop contains primary sources. | |
bool | flag_primary (bool on) |
MainLoop * | main_loop () const |
Get the main loop for this loop. | |
template<class BoolVoidFunctor > | |
uint | exec_now (BoolVoidFunctor &&bvf) |
Execute a callback as primary source with priority "now" (highest), returning true repeats callback. | |
template<class BoolVoidFunctor > | |
uint | exec_callback (BoolVoidFunctor &&bvf, int priority=PRIORITY_NORMAL) |
Execute a callback at user defined priority returning true repeats callback. | |
template<class BoolVoidFunctor > | |
uint | exec_idle (BoolVoidFunctor &&bvf) |
Execute a callback with priority "idle", returning true repeats callback. | |
uint | exec_dispatcher (const DispatcherSlot &sl, int priority=PRIORITY_NORMAL) |
uint | exec_usignal (int8 signum, const USignalSlot &sl, int priority=PRIORITY_NOW -1) |
Execute a single dispatcher callback for prepare, check, dispatch. | |
uint | exec_sigchld (int64_t pid, const SigchldSlot &vfunc, int priority=PRIORITY_NORMAL) |
Execute a signal callback for prepare, check, dispatch. | |
bool | exec_once (uint delay_ms, uint *once_id, const VoidSlot &vfunc, int priority=PRIORITY_NORMAL) |
Execute a callback once on SIGCHLD for pid . | |
template<class BoolVoidFunctor > | |
uint | exec_timer (BoolVoidFunctor &&bvf, uint delay_ms, int64 repeat_ms=-1, int priority=PRIORITY_NORMAL) |
Execute a callback after a specified timeout with adjustable initial timeout, returning true repeats callback. | |
template<class BoolVoidPollFunctor > | |
uint | exec_io_handler (BoolVoidPollFunctor &&bvf, int fd, const String &mode, int priority=PRIORITY_NORMAL) |
Execute a callback after polling for mode on fd, returning true repeats callback. | |
![]() | |
T | enable_shared_from_this (T... args) |
T | operator= (T... args) |
T | shared_from_this (T... args) |
T | weak_from_this (T... args) |
T | ~enable_shared_from_this (T... args) |
Additional Inherited Members | |
![]() | |
typedef std::function< void(void)> | VoidSlot |
typedef std::function< bool(void)> | BoolSlot |
typedef std::function< void(PollFD &)> | VPfdSlot |
typedef std::function< bool(PollFD &)> | BPfdSlot |
typedef std::function< bool(const LoopState &)> | DispatcherSlot |
typedef std::function< bool(int8)> | USignalSlot |
typedef std::function< void(int, int)> | SigchldSlot |
![]() | |
static const int16 | PRIORITY_CEILING |
Internal upper limit, don't use. | |
static const int16 | PRIORITY_NOW |
Most important, used for immediate async execution. | |
static const int16 | PRIORITY_ASCENT |
Threshold for priorization across different loops. | |
static const int16 | PRIORITY_HIGH |
Very important, used for timers or IO handlers. | |
static const int16 | PRIORITY_NEXT |
Important, used for async operations and callbacks. | |
static const int16 | PRIORITY_NORMAL |
Normal importantance, GUI event processing, RPC. | |
static const int16 | PRIORITY_UPDATE |
Mildly important, used for GUI updates or user information. | |
static const int16 | PRIORITY_IDLE |
Mildly important, used for background tasks. | |
static const int16 | PRIORITY_LOW |
Unimportant, used when everything else done. | |
![]() | |
typedef std::vector< EventSourceP > | SourceList |
![]() | |
EventLoop (MainLoop &) | |
EventSourceP & | find_first_L () |
EventSourceP & | find_source_L (uint id) |
bool | has_primary_L (void) |
void | remove_source_Lm (EventSourceP source) |
void | kill_sources_Lm (void) |
void | unpoll_sources_U () |
void | collect_sources_Lm (LoopState &) |
bool | prepare_sources_Lm (LoopState &, QuickPfdArray &) |
bool | check_sources_Lm (LoopState &, const QuickPfdArray &) |
void | dispatch_source_Lm (LoopState &) |
![]() | |
MainLoop * | main_loop_ |
SourceList | sources_ |
std::vector< EventSourceP > | poll_sources_ |
int16 | dispatch_priority_ |
bool | primary_ |