|
Corium 1.1.0
High-Performance Zero-Heap C++20 MPSC Application Runtime
|
Lightweight, zero-overhead wrapper around EventSink explicitly tailored for Hardware ISR handlers. Guarantees zero heap allocation, lock-free execution, and noexcept exception safety. More...
#include <IsrSink.hpp>
Collaboration diagram for corium::embedded::IsrEventSink< EventSinkType >:Public Member Functions | |
| constexpr | IsrEventSink () noexcept=default |
| constexpr | IsrEventSink (EventSinkType sink) noexcept |
| template<typename Event > | |
| void | postFromIsr (Event &&event, EventPriority priority=EventPriority::Normal) noexcept |
| Post an event safely from hardware ISR context. | |
| template<typename Event > | |
| void | postHighPriorityFromIsr (Event &&event) noexcept |
| Post a high-priority emergency or hardware interrupt event from ISR context. | |
| constexpr const EventSinkType & | sink () const noexcept |
| constexpr EventSinkType & | sink () noexcept |
| Access underlying EventSink handle. | |
| template<typename Event > | |
| void | tryPostFromIsr (Event &&event, EventPriority priority=EventPriority::Normal) noexcept |
| Post an event from ISR context. | |
Lightweight, zero-overhead wrapper around EventSink explicitly tailored for Hardware ISR handlers. Guarantees zero heap allocation, lock-free execution, and noexcept exception safety.
| EventSinkType | Target underlying event sink type. |
|
constexprdefaultnoexcept |
|
inlineexplicitconstexprnoexcept |
|
inlinenoexcept |
Post an event safely from hardware ISR context.
| Event | Concrete event type. |
| event | Event instance to post. |
| priority | Priority level (High, Normal, Low). |
|
inlinenoexcept |
Post a high-priority emergency or hardware interrupt event from ISR context.
| Event | Concrete event type. |
| event | Event instance to post. |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
Access underlying EventSink handle.
|
inlinenoexcept |
Post an event from ISR context.