Class Ase::SubLoop
Inherits the following classes: Ase::EventLoop
Public Types inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
typedef std::function< bool(PollFD &)> | BPfdSlot |
typedef std::function< bool(void)> | BoolSlot |
typedef std::function< bool(const LoopState &)> | DispatcherSlot |
typedef std::function< bool(int8)> | USignalSlot |
typedef std::function< void(PollFD &)> | VPfdSlot |
typedef std::function< void(void)> | VoidSlot |
Public Static Attributes inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
const int16 | PRIORITY_ASCENT = = 800 Threshold for priorization across different loops. |
const int16 | PRIORITY_CEILING = = 999 Internal upper limit, don't use. |
const int16 | PRIORITY_HIGH = = 700 Very important, used for timers or IO handlers. |
const int16 | PRIORITY_IDLE = = 200 Mildly important, used for background tasks. |
const int16 | PRIORITY_LOW = = 100 Unimportant, used when everything else done. |
const int16 | PRIORITY_NEXT = = 600 Important, used for async operations and callbacks. |
const int16 | PRIORITY_NORMAL = = 500 Normal importantance, GUI event processing, RPC. |
const int16 | PRIORITY_NOW = = 900 Most important, used for immediate async execution. |
const int16 | PRIORITY_UPDATE = = 400 Mildly important, used for GUI updates or user information. |
Public Functions
Type | Name |
---|---|
SubLoop (MainLoopP main) |
|
~SubLoop () |
Public Functions inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
uint | add (EventSourceP loop_source, int priority=PRIORITY_NORMAL) Adds a new source to the loop with custom priority. |
bool | clear_source (uint * id_pointer) Remove source if id_pointer and*id_pointer are valid. |
void | destroy_loop (void) |
uint | exec_callback (BoolVoidFunctor && bvf, int priority=PRIORITY_NORMAL) Execute a callback at user defined priority returning true repeats callback. |
uint | exec_dispatcher (const DispatcherSlot & sl, int priority=PRIORITY_NORMAL) |
uint | exec_idle (BoolVoidFunctor && bvf) Execute a callback with priority "idle", returning true repeats callback. |
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. |
uint | exec_now (BoolVoidFunctor && bvf) Execute a callback as primary source with priority "now" (highest), returning true repeats callback. |
bool | exec_once (uint delay_ms, uint * once_id, const VoidSlot & vfunc, int priority=PRIORITY_NORMAL) Execute a signal callback for prepare, check, dispatch. |
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. |
uint | exec_usignal (int8 signum, const USignalSlot & sl, int priority=PRIORITY_NOW -1) Execute a single dispatcher callback for prepare, check, dispatch. |
bool | flag_primary (bool on) |
bool | has_primary (void) Indicates whether loop contains primary sources. |
MainLoop * | main_loop () const Get the main loop for this loop. |
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. |
void | wakeup () Wakeup loop from polling. |
Protected Types inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
typedef std::vector< EventSourceP > | SourceList |
Protected Attributes inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
int16 | dispatch_priority_ |
MainLoop * | main_loop_ |
std::vector< EventSourceP > | poll_sources_ |
bool | primary_ |
SourceList | sources_ |
Protected Functions inherited from Ase::EventLoop
See Ase::EventLoop
Type | Name |
---|---|
EventLoop (MainLoop & main) |
|
bool | check_sources_Lm (LoopState & state, const QuickPfdArray & pfda) |
void | collect_sources_Lm (LoopState & state) |
void | dispatch_source_Lm (LoopState & state) |
EventSourceP & | find_first_L () |
EventSourceP & | find_source_L (uint id) |
bool | has_primary_L (void) |
void | kill_sources_Lm (void) |
bool | prepare_sources_Lm (LoopState & state, QuickPfdArray & pfda) |
void | remove_source_Lm (EventSourceP source) |
void | unpoll_sources_U () |
virtual | ~EventLoop () |
Public Functions Documentation
function SubLoop
inline Ase::SubLoop::SubLoop (
MainLoopP main
)
function ~SubLoop
inline Ase::SubLoop::~SubLoop ()
The documentation for this class was generated from the following file /__w/anklang/anklang/ase/loop.cc