|
| using | Build = BasicRuntime< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Complete builder configuration and return BasicRuntime type.
|
| |
| template<size_t Capacity> |
| using | WithCapacity = BasicRuntimeBuilder< EventVariant, internal::rebind_queue_capacity_t< QueuePolicy, Capacity >, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom queue capacity for bounded MPSC queue (preserves existing event variant).
|
| |
| template<typename NewClockPolicy > |
| using | WithClockPolicy = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, FixedTimerStoragePolicy< TimerStoragePolicy::max_timers, NewClockPolicy >, ProfilerPolicy > |
| | Specify custom ClockPolicy (time source strategy).
|
| |
| template<typename NewEventVariant > |
| using | WithEvents = BasicRuntimeBuilder< NewEventVariant, internal::rebind_queue_policy_t< QueuePolicy, NewEventVariant >, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom event variant list type (preserves existing queue capacity/policy).
|
| |
| template<std::size_t BufferCapacity = 256> |
| using | WithFlightRecorder = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, profiler::FlightRecorderProfiler< BufferCapacity, internal::queue_capacity_of_v< QueuePolicy > > > |
| | Convenience helper: Configure FlightRecorder circular trace logger. The QueueCapacity of the internal timestamp ring buffer is automatically derived from the current QueuePolicy capacity, ensuring accurate per-event latency measurement.
|
| |
| template<size_t NewInlineSize> |
| using | WithInlineSize = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, FixedStoragePolicy< StoragePolicy::max_handlers_per_event, NewInlineSize >, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify inline storage size for FastDelegate (rebinds StoragePolicy).
|
| |
| template<std::size_t BufferCapacity = 256> |
| using | WithLatencyTracker = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, profiler::LatencyTracker< internal::queue_capacity_of_v< QueuePolicy > > > |
| | Convenience helper: Configure real-time event latency statistics tracker. The QueueCapacity of the internal timestamp ring buffer is automatically derived from the current QueuePolicy capacity, ensuring accurate per-event latency measurement.
|
| |
| template<size_t NewMaxHandlers> |
| using | WithMaxHandlersPerEvent = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, FixedStoragePolicy< NewMaxHandlers, StoragePolicy::inline_storage_size >, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify maximum handlers per event type (rebinds StoragePolicy).
|
| |
| template<size_t MaxTimers> |
| using | WithMaxTimers = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, FixedTimerStoragePolicy< MaxTimers >, ProfilerPolicy > |
| | Specify maximum number of concurrent active timers.
|
| |
| template<typename NewOverflowPolicy > |
| using | WithOverflowPolicy = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, NewOverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom OverflowPolicy.
|
| |
| template<size_t HighCapacity = 256, size_t NormalCapacity = 1024> |
| using | WithPriorityQueue = BasicRuntimeBuilder< EventVariant, PriorityMpscQueuePolicy< EventVariant, HighCapacity, NormalCapacity >, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Switch queue policy to PriorityMpscQueuePolicy with specified high and normal capacities.
|
| |
| template<typename NewProfilerPolicy > |
| using | WithProfiler = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, NewProfilerPolicy > |
| | Specify custom ProfilerPolicy strategy.
|
| |
| template<typename NewQueuePolicy > |
| using | WithQueuePolicy = BasicRuntimeBuilder< EventVariant, NewQueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom QueuePolicy.
|
| |
| template<typename NewSignalPolicy > |
| using | WithSignalPolicy = BasicRuntimeBuilder< EventVariant, QueuePolicy, NewSignalPolicy, StoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom SignalPolicy.
|
| |
| template<typename NewStoragePolicy > |
| using | WithStoragePolicy = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, NewStoragePolicy, OverflowPolicy, TimerStoragePolicy, ProfilerPolicy > |
| | Specify custom StoragePolicy.
|
| |
| template<typename NewTimerStoragePolicy > |
| using | WithTimerStoragePolicy = BasicRuntimeBuilder< EventVariant, QueuePolicy, SignalPolicy, StoragePolicy, OverflowPolicy, NewTimerStoragePolicy, ProfilerPolicy > |
| | Specify custom TimerStoragePolicy.
|
| |
Fluent compile-time builder for configuring BasicRuntime. Usage: using MyRuntime = corium::RuntimeBuilder::WithEvents<MyEvents>::Build;