|
The Pedigree Project 0.1
|
#include <PicIrqState.h>
Collaboration diagram for PicHardTailQueue:Public Member Functions | |
| bool | publish (uint8_t irq, const PicHardTailRecord &record) |
| bool | take (uint8_t irq, PicHardTailRecord &record) |
| void | complete (uint8_t irq) |
| template<typename Finalizer > | |
| bool | consume (uint8_t irq, Finalizer &&finalizer) |
| bool | pending (uint8_t irq) const |
Static Public Attributes | |
| static constexpr size_t | LineCount = PicIrqState::LineCount |
Private Member Functions | |
| PicHardTailQueue (const PicHardTailQueue &)=delete | |
| PicHardTailQueue & | operator= (const PicHardTailQueue &)=delete |
Private Attributes | |
| size_t | m_States [LineCount] |
| PicHardTailRecord | m_Records [LineCount] |
Static Private Attributes | |
| static constexpr size_t | Empty = 0 |
| static constexpr size_t | Claimed = 1 |
| static constexpr size_t | Ready = 2 |
One lock-free terminal record per 8259 input.
A line which still owes EOI cannot deliver another occurrence. A line acknowledged before its hard stage still cannot produce a second rich tail while the first is pending: its next entry sees controller ownership and is reduced to the counted fail-closed path. The caller keeps that counted path as an overflow fallback rather than waiting here.
Definition at line 903 of file PicIrqState.h.
|
inline |
Definition at line 907 of file PicIrqState.h.
|
inline |
Definition at line 942 of file PicIrqState.h.
|
inline |
Keeps the slot claimed until all terminal actions have returned.
Definition at line 952 of file PicIrqState.h.
|
inline |
Definition at line 962 of file PicIrqState.h.
|
inline |
Definition at line 913 of file PicIrqState.h.
|
inline |
Definition at line 928 of file PicIrqState.h.
|
staticconstexprprivate |
Definition at line 968 of file PicIrqState.h.
|
staticconstexprprivate |
Definition at line 967 of file PicIrqState.h.
|
staticconstexpr |
Definition at line 905 of file PicIrqState.h.
|
private |
Definition at line 972 of file PicIrqState.h.
|
private |
Definition at line 971 of file PicIrqState.h.
|
staticconstexprprivate |
Definition at line 969 of file PicIrqState.h.