|
QuantumLibrary
|
| ▼NBloomberg | |
| ▼Nquantum | |
| CAllocator | |
| CAllocatorTraits | Allows application-wide settings for the various allocators used by Quantum |
| CBoostAllocator | |
| CBrokenPromiseException | |
| CBuffer | Container which allows buffered access to a series of values. Values are pushed-in (written) by a producer(s) and pulled-out (read) by a consumer(s) |
| CBufferClosedException | |
| CBufferingDataException | |
| CCapture | Class allowing lambda parameter captures |
| CConditionVariable | This class represents a coroutine-compatible implementation of the std::condition_variable. Most methods of the latter have been recreated with the same behavior. This object will yield instead of blocking if called from a coroutine |
| CConfiguration | |
| CContext | Concrete class representing a coroutine or a thread context |
| CContiguousPoolManager | Provides fast (quasi zero-time) in-place allocation for STL containers. Objects are allocated from a contiguous buffer (aka object pool). When the buffer is exhausted, allocation is delegated to the heap. The default buffer size is 1000 |
| CCoroContextTag | |
| CCoroutinePoolAllocator | Provides fast (quasi zero-time) in-place allocation for coroutines. Coroutine stacks are pre-allocated from separate (i.e. non-contiguous) heap blocks and maintained in a reusable list |
| CCoroutinePoolAllocatorProxy | |
| CDispatcher | Parallel execution engine used to run coroutines or IO tasks asynchronously. This class is the main entry point into the library |
| CDispatcherCore | Class implementing the dispatching logic unto worker threads. Used for both coroutines and IO tasks |
| CFunction | Similar implementation to std::function except that it allows capture of non-copyable types |
| CFunction< RET(ARGS...)> | |
| CFunctions | Contains typedefs for various functions |
| CFuture | Class representing a promised future. Can only be instantiated via a Promise object |
| CFutureAlreadyRetrievedException | |
| CFutureException | Exception thrown by a Future or Promise object during various errors |
| CFutureJoiner | Utility class that joins N futures into a single one |
| ▼CHeapAllocator | Provides a heap-based object pool to the underlying ContiguousPoolManager. The default buffer size is 1000 |
| Crebind | |
| CIContextBase | This interface exposes shared functionality between IThreadContext and ICoroContext |
| CICoroContext | Exposes methods to manipulate the coroutine context |
| CICoroContextBase | Exposes methods to manipulate the coroutine context, especially future wait methods |
| CICoroFuture | Exposes methods to access a coroutine-compatible future |
| CICoroFutureBase | Exposes methods to access a coroutine-compatible future |
| CICoroPromise | Exposes methods to access and manipulate a coroutine-compatible promise |
| CICoroSync | Provides an interface to facilitate 'implicit' coroutine yielding within other primitives such as mutexes and condition variables or to allow 'explicit' cooperative yielding by the user |
| CIoQueue | Thread queue for executing IO tasks |
| CIoTask | Long running or blocking task running in the IO thread pool |
| CIPromiseBase | Exposes methods to manipulate and access a promise |
| CIQueue | Interface to a task queue. For internal use only |
| CIQueueStatistics | Interface to access and manipulate a QueueStatistics object |
| CITask | Interface to a task. For internal use only |
| CITaskAccessor | Interface to a task accessor. For internal use only |
| CITaskContinuation | Interface to a task continuation. For internal use only |
| ▼CITerminate | Represents an object which can be terminated. This interface allows certain objects to be explicitly disposed of before their destructors are called |
| CGuard | |
| CIThreadContext | Exposes methods to manipulate the thread context |
| CIThreadContextBase | Exposes methods to manipulate the thread context, especially future wait methods |
| CIThreadFuture | |
| CIThreadFutureBase | |
| CIThreadPromise | Exposes methods to access and manipulate a non-coroutine promise (i.e. used in a thread) |
| ▼CMutex | Coroutine-compatible implementation of a mutex |
| CGuard | |
| CReverseGuard | |
| CNoStateException | |
| CPromise | Class representing a promised value |
| CPromiseAlreadySatisfiedException | |
| CPromiseNotSatisfiedException | |
| CQueueStatistics | Provides various counters related to queues and task execution |
| CReturnOf | |
| CSequenceKeyData | |
| CSequenceKeyStatistics | Implementation of a statistics collection for a SequenceKey in Sequencer |
| CSequenceKeyStatisticsWriter | |
| CSequencer | Implementation of a key-based task sequencing with quantum |
| CSequencerConfiguration | Implementation of a configuration class for Sequencer |
| CSharedState | Shared state used between a Promise and a Future to exchange values |
| CSharedState< Buffer< T > > | |
| ▼CSpinLock | Coroutine-compatible spinlock. Used internally for mutexes since threads running coroutines cannot block |
| CGuard | |
| CReverseGuard | |
| ▼CStackAllocator | Provides a stack-based object pool to the underlying ContiguousPoolManager. The default buffer size is 1000 |
| Crebind | |
| CStackTraits | Allows application-wide overrides for the coroutine stack traits which are used internally by boost::coroutines2 |
| CStackTraitsProxy | |
| CStlAllocator | |
| CTask | Runnable object representing a coroutine |
| CTaskQueue | Thread queue for running coroutines |
| CThreadContextTag | |
| CThreadTraits | Allows application-wide settings for the various thread settings used by Quantum |
| ▼CTraits | Contains definitions for various traits used by this library. For internal use only |
| CDerivedFrom | |
| CIsBuffer | |
| CIsBuffer< Buffer< T > > | |
| CUtil | Utility to bind a user callable function unto a coroutine or an IO task |
| CYieldingThreadDuration | This class provides the same functionality as a coroutine yield when called from a thread context |
| ▼NITerminate | |
| CGuard | RAII-style mechanism for ensuring an object is terminated at the end of a scope. Acquires an ITerminate interface on construction and terminates the object in the destructor |
| ▼NMutex | |
| CGuard | RAII-style mechanism for mutex ownership. Acquires a mutex on construction and releases it inside the destructor |
| CReverseGuard | Opposite form of RAII-style mechanism for mutex ownership. Releases a mutex on construction and acquires it inside the destructor |
| ▼NSpinLock | |
| CGuard | RAII-style mechanism for SpinLock ownership. Acquires a SpinLock on construction and releases it inside the destructor |
| CReverseGuard | Opposite form of RAII-style mechanism for SpinLock ownership. Releases a SpinLock on construction and acquires it inside the destructor |
| Cclass | Configuration parameters for the Quantum library |