pub struct SynicPorts<T> { /* private fields */ }Expand description
Adapts a Synic implementation to [SynicPortAccess].
Wraps a shared SynicPortMap (stored on the partition inner struct)
with the Synic trait methods needed for port registration.
Implementations§
Trait Implementations§
Source§impl<T: Debug> Debug for SynicPorts<T>
impl<T: Debug> Debug for SynicPorts<T>
Source§impl<T: Synic> SynicMonitorAccess for SynicPorts<T>
impl<T: Synic> SynicMonitorAccess for SynicPorts<T>
Source§impl<T: Synic> SynicPortAccess for SynicPorts<T>
impl<T: Synic> SynicPortAccess for SynicPorts<T>
Source§fn add_message_port(
&self,
connection_id: u32,
minimum_vtl: Vtl,
port: Arc<dyn MessagePort>,
) -> Result<Box<dyn Sync + Send>, Error>
fn add_message_port( &self, connection_id: u32, minimum_vtl: Vtl, port: Arc<dyn MessagePort>, ) -> Result<Box<dyn Sync + Send>, Error>
Adds a host message port, which gets notified when the guest calls
HvPostMessage.Source§fn add_event_port(
&self,
connection_id: u32,
minimum_vtl: Vtl,
port: Arc<dyn EventPort>,
monitor_info: Option<MonitorInfo>,
) -> Result<Box<dyn Sync + Send>, Error>
fn add_event_port( &self, connection_id: u32, minimum_vtl: Vtl, port: Arc<dyn EventPort>, monitor_info: Option<MonitorInfo>, ) -> Result<Box<dyn Sync + Send>, Error>
Adds a host event port, which gets notified when the guest calls
HvSignalEvent. Read moreSource§fn new_guest_message_port(
&self,
vtl: Vtl,
vp: u32,
sint: u8,
) -> Result<Box<dyn GuestMessagePort>, HypervisorError>
fn new_guest_message_port( &self, vtl: Vtl, vp: u32, sint: u8, ) -> Result<Box<dyn GuestMessagePort>, HypervisorError>
Creates a [
GuestMessagePort] for posting messages to the guest.Source§fn new_guest_event_port(
&self,
_port_id: u32,
vtl: Vtl,
vp: u32,
sint: u8,
flag: u16,
_monitor_info: Option<MonitorInfo>,
) -> Result<Box<dyn GuestEventPort>, HypervisorError>
fn new_guest_event_port( &self, _port_id: u32, vtl: Vtl, vp: u32, sint: u8, flag: u16, _monitor_info: Option<MonitorInfo>, ) -> Result<Box<dyn GuestEventPort>, HypervisorError>
Creates a [
GuestEventPort] for signaling VMBus channels in the guest. Read moreSource§fn prefer_os_events(&self) -> bool
fn prefer_os_events(&self) -> bool
Returns whether callers should pass an OS event when creating event
ports, as opposed to passing a function to call. Read more
Source§fn monitor_support(&self) -> Option<&dyn SynicMonitorAccess>
fn monitor_support(&self) -> Option<&dyn SynicMonitorAccess>
Returns an object for manipulating the monitor page, or None if monitor pages aren’t
supported.
Auto Trait Implementations§
impl<T> Freeze for SynicPorts<T>
impl<T> RefUnwindSafe for SynicPorts<T>where
T: RefUnwindSafe,
impl<T> Send for SynicPorts<T>
impl<T> Sync for SynicPorts<T>
impl<T> Unpin for SynicPorts<T>
impl<T> UnwindSafe for SynicPorts<T>where
T: RefUnwindSafe,
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