#[repr(C, align(64))]pub struct SharedLayout {
pub header: LayoutHeader,
pub initialized: IndexbusAtomicU32,
pub pad0: u32,
pub pad_to_64: [u8; 40],
pub slot_pool: SlotPoolLayout,
pub queue: IndexQueue,
pub mpsc_queue: MpscQueue,
}Expand description
Shared events region (SPSC + MPSC) base layout.
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 SlotPoolLayout (align 64) starts at offset 64.
slot_pool: SlotPoolLayoutSlot pool backing both the SPSC and MPSC queues.
queue: IndexQueueSPSC queue of slot indices.
mpsc_queue: MpscQueueMPSC queue of slot indices.
Implementations§
Sourcepub const REQUIRED_CAPS: u32 = caps::INDEXBUS_CAP_SUPPORTS_EVENTS
pub const REQUIRED_CAPS: u32 = caps::INDEXBUS_CAP_SUPPORTS_EVENTS
Capabilities required for this region to be considered compatible.
Auto Trait Implementations§
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