Anklang-0.3.0-1416-gfa8ce8d2 anklang-0.3.0-1416-gfa8ce8d2
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Static Public Member Functions | Protected Member Functions | List of all members
Ase::USignalSource Class Reference

Loop source for handler execution. More...

#include "loop.hh"

Inheritance diagram for Ase::USignalSource:
[legend]

Static Public Member Functions

static void raise (int8 signum)
 Flag a unix signal being raised, this function may be called from any thread at any time.
 
static USignalSourceP create (int8 signum, const USignalSlot &slot)
 
static void install_sigaction (int8)
 

Protected Member Functions

virtual bool prepare (const LoopState &state, int64 *timeout_usecs_p)
 Prepare the source for dispatching (true return) or polling (false).
 
virtual bool check (const LoopState &state)
 Check the source and its PollFD descriptors for dispatching (true return).
 
virtual bool dispatch (const LoopState &state)
 Dispatch source, returns if it should be kept alive.
 
virtual void destroy ()
 
 USignalSource (int8 signum, const USignalSlot &slot)
 
- Protected Member Functions inherited from Ase::LoopSource
uint n_pfds ()
 
LoopID source_id ()
 

Additional Inherited Members

- Public Member Functions inherited from Ase::LoopSource
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.
 
Loop * loop () const
 Get the main loop for this source.
 
- Protected Attributes inherited from Ase::LoopSource
Loop * loop_
 
struct { 
 
PollFD * pfd
 
uint idx
 
} * pfds_ 
 
LoopID id_
 
int16 priority_
 
uint8 loop_state_
 
uint may_recurse_: 1
 
uint dispatching_: 1
 
uint was_dispatching_: 1
 
uint primary_: 1
 

Detailed Description

Loop source for handler execution.

Definition at line 202 of file loop.hh.

Constructor & Destructor Documentation

◆ ~USignalSource()

Ase::USignalSource::~USignalSource ( )
protectedvirtual

Definition at line 948 of file loop.cc.

◆ USignalSource()

Ase::USignalSource::USignalSource ( int8  signum,
const USignalSlot &  slot 
)
explicitprotected

Definition at line 940 of file loop.cc.

Member Function Documentation

◆ check()

bool Ase::USignalSource::check ( const LoopState &  state)
protectedvirtual

Check the source and its PollFD descriptors for dispatching (true return).

Implements Ase::LoopSource.

Definition at line 972 of file loop.cc.

◆ create()

static USignalSourceP Ase::USignalSource::create ( int8  signum,
const USignalSlot &  slot 
)
static

Definition at line 217 of file loop.hh.

◆ destroy()

void Ase::USignalSource::destroy ( )
protectedvirtual

Reimplemented from Ase::LoopSource.

Definition at line 985 of file loop.cc.

◆ dispatch()

bool Ase::USignalSource::dispatch ( const LoopState &  state)
protectedvirtual

Dispatch source, returns if it should be kept alive.

Implements Ase::LoopSource.

Definition at line 978 of file loop.cc.

◆ install_sigaction()

void Ase::USignalSource::install_sigaction ( int8  signum)
static

Definition at line 1008 of file loop.cc.

◆ prepare()

bool Ase::USignalSource::prepare ( const LoopState &  state,
int64 *  timeout_usecs_p 
)
protectedvirtual

Prepare the source for dispatching (true return) or polling (false).

Implements Ase::LoopSource.

Definition at line 966 of file loop.cc.

◆ raise()

void Ase::USignalSource::raise ( int8  signum)
static

Flag a unix signal being raised, this function may be called from any thread at any time.

Definition at line 957 of file loop.cc.


The documentation for this class was generated from the following files: