pub struct ScreenSplitMux<'a, S: Screen<'a>> { /* private fields */ }
Expand description
Split-screen manager that multiplexes for multiple splits.
This enables two users (e.g., the kernel and all userspace apps) to share a single physical screen. Each split screen is assigned a fixed region.
Implementations§
Trait Implementations§
Source§impl<'a, S: Screen<'a>> DeferredCallClient for ScreenSplitMux<'a, S>
impl<'a, S: Screen<'a>> DeferredCallClient for ScreenSplitMux<'a, S>
Source§impl<'a, S: Screen<'a>> ScreenClient for ScreenSplitMux<'a, S>
impl<'a, S: Screen<'a>> ScreenClient for ScreenSplitMux<'a, S>
Source§fn command_complete(&self, _r: Result<(), ErrorCode>)
fn command_complete(&self, _r: Result<(), ErrorCode>)
The screen will call this function to notify that a command (except
write) has finished.
Source§fn write_complete(
&self,
data: SubSliceMut<'static, u8>,
r: Result<(), ErrorCode>,
)
fn write_complete( &self, data: SubSliceMut<'static, u8>, r: Result<(), ErrorCode>, )
The screen will call this function to notify that the write command has
finished. This is different from
command_complete
as it has to pass
back the write bufferSource§fn screen_is_ready(&self)
fn screen_is_ready(&self)
Some screens need some time to start, this function is called when the
screen is ready.
Auto Trait Implementations§
impl<'a, S> !Freeze for ScreenSplitMux<'a, S>
impl<'a, S> !RefUnwindSafe for ScreenSplitMux<'a, S>
impl<'a, S> !Send for ScreenSplitMux<'a, S>
impl<'a, S> !Sync for ScreenSplitMux<'a, S>
impl<'a, S> Unpin for ScreenSplitMux<'a, S>
impl<'a, S> !UnwindSafe for ScreenSplitMux<'a, S>
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