pub struct VirtIOInput<'a> { /* private fields */ }
Expand description
VirtIO for input devices (e.g., keyboards).
Implementations§
Source§impl<'a> VirtIOInput<'a>
impl<'a> VirtIOInput<'a>
pub fn new( eventq: &'a SplitVirtqueue<'static, 'static, 3>, statusq: &'a SplitVirtqueue<'static, 'static, 1>, status_buffer: &'static mut [u8], ) -> Self
pub fn provide_buffers( &self, event_buffer1: &'static mut [u8], event_buffer2: &'static mut [u8], event_buffer3: &'static mut [u8], )
Trait Implementations§
Source§impl<'a> Keyboard<'a> for VirtIOInput<'a>
impl<'a> Keyboard<'a> for VirtIOInput<'a>
fn set_client(&self, client: &'a dyn KeyboardClient)
Source§impl SplitVirtqueueClient<'static> for VirtIOInput<'_>
impl SplitVirtqueueClient<'static> for VirtIOInput<'_>
fn buffer_chain_ready( &self, queue_number: u32, buffer_chain: &mut [Option<VirtqueueBuffer<'static>>], _bytes_used: usize, )
Source§impl VirtIODeviceDriver for VirtIOInput<'_>
impl VirtIODeviceDriver for VirtIOInput<'_>
Source§fn negotiate_features(&self, _offered_features: u64) -> Option<u64>
fn negotiate_features(&self, _offered_features: u64) -> Option<u64>
VirtIO feature negotiation. Read more
Source§fn device_type(&self) -> VirtIODeviceType
fn device_type(&self) -> VirtIODeviceType
VirtIO device type which the driver supports. Read more
Auto Trait Implementations§
impl<'a> !Freeze for VirtIOInput<'a>
impl<'a> !RefUnwindSafe for VirtIOInput<'a>
impl<'a> !Send for VirtIOInput<'a>
impl<'a> !Sync for VirtIOInput<'a>
impl<'a> Unpin for VirtIOInput<'a>
impl<'a> !UnwindSafe for VirtIOInput<'a>
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