Anklang-0.3.0.dev712+gdc4e642f anklang-0.3.0.dev712+gdc4e642f
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Typedefs | Enumerations | Functions
loop.hh File Reference
#include <ase/defs.hh>
#include <ase/cotask.hh>
#include <chrono>
#include <mutex>
#include <variant>

Go to the source code of this file.

Classes

struct  Ase::PollFD
 Mirrors struct pollfd for poll(3posix) More...
 
class  Ase::Loop
 Loop object, polling for events and executing callbacks in accordance. More...
 
struct  Ase::LoopState
 
class  Ase::LoopSource
 Loop source for callback execution. More...
 
class  Ase::DispatcherSource
 Loop source for handler execution. More...
 
class  Ase::USignalSource
 Loop source for handler execution. More...
 
class  Ase::SigchldSource
 Loop source for handler execution. More...
 
class  Ase::TimedSource
 Loop source for timer execution. More...
 
class  Ase::PollFDSource
 Loop source for IO callbacks. More...
 
struct  Ase::Loop::Promise< Result >
 
struct  Ase::Loop::Promise< Result >::PromiseAwaiter
 Helper to capture shared_ptr<Promise> to allow co_await on temporary Promise instances. More...
 

Namespaces

namespace  Ase
 The Anklang C++ API namespace.
 

Concepts

concept  Ase::IsLoopCallback
 

Typedefs

typedef std::shared_ptr< LoopSourceAse::LoopSourceP
 
typedef std::shared_ptr< TimedSourceAse::TimedSourceP
 
typedef std::shared_ptr< PollFDSourceAse::PollFDSourceP
 
typedef std::shared_ptr< DispatcherSourceAse::DispatcherSourceP
 
typedef std::shared_ptr< USignalSourceAse::USignalSourceP
 
typedef std::shared_ptr< SigchldSourceAse::SigchldSourceP
 
typedef std::shared_ptr< LoopAse::LoopP
 
typedef ::GMainContext Ase::GlibGMainContext
 
template<typename Result >
using Ase::LoopPromiseP = std::shared_ptr< Loop::Promise< Result > >
 

Enumerations

enum class  Ase::LoopPriority : uint16_t {
  Ase::SYSALLOC , Ase::RTAUDIO , Ase::USIGNAL , Ase::COAWAIT ,
  Ase::NOTIFY , Ase::AFRAME , Ase::NORMAL , Ase::IDLE ,
  Ase::LOW
}
 

Functions

template<typename T >
auto Ase::operator co_await (LoopPromiseP< T > p)