Trait BusDeviceSync

Source
pub trait BusDeviceSync: BusDevice + Sync {
    // Required methods
    fn read(&self, offset: BusAccessInfo, data: &mut [u8]);
    fn write(&self, offset: BusAccessInfo, data: &[u8]);

    // Provided methods
    fn snapshot_sync(&self) -> Result<AnySnapshot> { ... }
    fn restore_sync(&self, _data: AnySnapshot) -> Result<()> { ... }
    fn sleep_sync(&self) -> Result<()> { ... }
    fn wake_sync(&self) -> Result<()> { ... }
}

Required Methods§

Source

fn read(&self, offset: BusAccessInfo, data: &mut [u8])

Source

fn write(&self, offset: BusAccessInfo, data: &[u8])

Provided Methods§

Source

fn snapshot_sync(&self) -> Result<AnySnapshot>

Source

fn restore_sync(&self, _data: AnySnapshot) -> Result<()>

Load a saved snapshot of an image.

Source

fn sleep_sync(&self) -> Result<()>

Stop all threads related to the device. Sleep should be idempotent.

Source

fn wake_sync(&self) -> Result<()>

Create/Resume all threads related to the device. Wake should be idempotent.

Implementors§