pub struct GuestEmulationDevice { /* private fields */ }
Expand description
VMBUS device that implements the host side of the Guest Emulation Transport protocol.
Implementations§
Source§impl GuestEmulationDevice
impl GuestEmulationDevice
Sourcepub fn new(
config: GuestConfig,
power_client: PowerRequestClient,
firmware_event_send: Option<Sender<FirmwareEvent>>,
guest_request_recv: Receiver<GuestEmulationRequest>,
framebuffer_control: Option<Box<dyn FramebufferControl>>,
vmgs_disk: Option<Disk>,
) -> Self
pub fn new( config: GuestConfig, power_client: PowerRequestClient, firmware_event_send: Option<Sender<FirmwareEvent>>, guest_request_recv: Receiver<GuestEmulationRequest>, framebuffer_control: Option<Box<dyn FramebufferControl>>, vmgs_disk: Option<Disk>, ) -> Self
Create a new Host side GET device.
Trait Implementations§
Source§impl InspectMut for GuestEmulationDevice
impl InspectMut for GuestEmulationDevice
Source§fn inspect_mut(&mut self, req: Request<'_>)
fn inspect_mut(&mut self, req: Request<'_>)
Inspects the object.
Source§impl SimpleVmbusDevice for GuestEmulationDevice
impl SimpleVmbusDevice for GuestEmulationDevice
Source§type Runner = GedChannel
type Runner = GedChannel
The type used to run an open channel.
Source§type SavedState = SavedStateNotSupported
type SavedState = SavedStateNotSupported
The saved state type.
Source§fn open(
&mut self,
channel: RawAsyncChannel<GpadlRingMem>,
guest_memory: GuestMemory,
) -> Result<Self::Runner, ChannelOpenError>
fn open( &mut self, channel: RawAsyncChannel<GpadlRingMem>, guest_memory: GuestMemory, ) -> Result<Self::Runner, ChannelOpenError>
Opens the channel, returning the runner to use to run the channel. Read more
Source§fn run<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 mut self,
stop: &'life1 mut StopTask<'life2>,
task_state: &'life3 mut GedChannel,
) -> Pin<Box<dyn Future<Output = Result<(), Cancelled>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn run<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 mut self,
stop: &'life1 mut StopTask<'life2>,
task_state: &'life3 mut GedChannel,
) -> Pin<Box<dyn Future<Output = Result<(), Cancelled>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Runs an open channel until
stop
is signaled.Source§fn supports_save_restore(
&mut self,
) -> Option<&mut dyn SaveRestoreSimpleVmbusDevice<SavedState = Self::SavedState, Runner = Self::Runner>>
fn supports_save_restore( &mut self, ) -> Option<&mut dyn SaveRestoreSimpleVmbusDevice<SavedState = Self::SavedState, Runner = Self::Runner>>
Returns a trait used to save/restore the device. Read more
Auto Trait Implementations§
impl Freeze for GuestEmulationDevice
impl !RefUnwindSafe for GuestEmulationDevice
impl Send for GuestEmulationDevice
impl !Sync for GuestEmulationDevice
impl Unpin for GuestEmulationDevice
impl !UnwindSafe for GuestEmulationDevice
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