Rapicorn - Experimental UI Toolkit - Source Code  13.07.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
Public Member Functions | Protected Member Functions | Protected Attributes
Rapicorn::EventLoop::Source Class Reference

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].

List of all members.

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.
MainLoopmain_loop () const
 Get the main loop for this source.

Protected Member Functions

uint n_pfds ()
uint source_id ()

Protected Attributes

EventLooploop_
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

Detailed Description

EventLoop source for callback execution.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines