#[repr(C, align(64))]pub struct SequencerLayout4 {
pub header: LayoutHeader,
pub initialized: IndexbusAtomicU32,
pub pad0: u32,
pub pad_to_64: [u8; 40],
pub cursor: IndexbusAtomicU64,
pub pad_cursor: [u8; 56],
pub gating: [SequencerGatingCell; 4],
}Expand description
Concrete v1 sequencer layout for N=4 (header generation target).
Fields§
§header: LayoutHeaderCommon region header (magic/version/capabilities/layout size).
initialized: IndexbusAtomicU320 = uninitialized, 1 = initializing, 2 = initialized
pad0: u32Padding (reserved).
pad_to_64: [u8; 40]Pad to 64 so the first counter starts at offset 64.
cursor: IndexbusAtomicU64Producer cursor (monotonic sequence).
pad_cursor: [u8; 56]Padding to keep the cursor in its own cache line.
gating: [SequencerGatingCell; 4]Per-consumer gating sequences.
Implementations§
Source§impl SequencerLayout4
impl SequencerLayout4
Sourcepub const REQUIRED_CAPS: u32 = caps::INDEXBUS_CAP_SUPPORTS_SEQUENCER
pub const REQUIRED_CAPS: u32 = caps::INDEXBUS_CAP_SUPPORTS_SEQUENCER
Capabilities required for this region to be considered compatible.
Auto Trait Implementations§
impl !Freeze for SequencerLayout4
impl !RefUnwindSafe for SequencerLayout4
impl Send for SequencerLayout4
impl Sync for SequencerLayout4
impl Unpin for SequencerLayout4
impl UnwindSafe for SequencerLayout4
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more