Rapicorn - Experimental UI Toolkit - Source Code
13.07.0
|
EventLoop source for callback execution. More...
#include <loop.hh>
Inherits Rapicorn::ReferenceCountable.
Inherited by Rapicorn::AppSource, Rapicorn::EventLoop::DispatcherSource [virtual]
, Rapicorn::EventLoop::PollFDSource [virtual]
, Rapicorn::EventLoop::TimedSource [virtual]
, and Rapicorn::ServerConnectionSource [virtual]
.
Public Member Functions | |
virtual bool | prepare (const State &state, int64 *timeout_usecs_p)=0 |
Prepare the source for dispatching (true return) or polling (false). | |
virtual bool | check (const State &state)=0 |
Check the source and its PollFD descriptors for dispatching (true return). | |
virtual bool | dispatch (const State &state)=0 |
Dispatch source, returns if it should be kept alive. | |
virtual void | destroy () |
bool | recursion () const |
Indicates wether the source is currently in recursion. | |
bool | may_recurse () const |
Indicates if this source may recurse. | |
void | may_recurse (bool may_recurse) |
Dispatch this source if its running recursively. | |
bool | primary () const |
Indicate whether this source is primary. | |
void | primary (bool is_primary) |
Set whether this source prevents its loop from exiting. | |
void | add_poll (PollFD *const pfd) |
Add a PollFD descriptors for poll(2) and check(). | |
void | remove_poll (PollFD *const pfd) |
Remove a previously added PollFD. | |
void | loop_remove () |
Remove this source from its event loop if any. | |
MainLoop * | main_loop () const |
Get the main loop for this source. | |
Protected Member Functions | |
uint | n_pfds () |
uint | source_id () |
Protected Attributes | |
EventLoop * | loop_ |
struct { | |
PollFD * pfd | |
uint idx | |
} | pfds_ |
uint | id_ |
int | priority_ |
uint16 | loop_state_ |
uint | may_recurse_: 1 |
uint | dispatching_: 1 |
uint | was_dispatching_: 1 |
uint | primary_: 1 |
EventLoop source for callback execution.