struct Worker {
    request_receiver: Receiver<WorkerRequest>,
    response_sender: Sender<Result<WorkerResponse>>,
    exit_evt_wrtube: SendTube,
    gpu_control_tube: Tube,
    resource_bridges: ResourceBridges,
    suspend_evt: Event,
    kill_evt: Event,
    state: Frontend,
    fence_state: Arc<Mutex<FenceState>>,
    fence_handler_resources: Arc<Mutex<Option<FenceHandlerActivationResources<SharedQueueReader>>>>,
    activation_resources: Option<GpuActivationResources>,
}Fields§
§request_receiver: Receiver<WorkerRequest>§response_sender: Sender<Result<WorkerResponse>>§exit_evt_wrtube: SendTube§gpu_control_tube: Tube§resource_bridges: ResourceBridges§suspend_evt: Event§kill_evt: Event§state: Frontend§fence_state: Arc<Mutex<FenceState>>§fence_handler_resources: Arc<Mutex<Option<FenceHandlerActivationResources<SharedQueueReader>>>>§activation_resources: Option<GpuActivationResources>Implementations§
source§impl Worker
 
impl Worker
fn new( gpu_parameters: GpuParameters, rutabaga_paths: Vec<RutabagaPath>, rutabaga_component: RutabagaComponentType, rutabaga_server_descriptor: Option<RutabagaDescriptor>, display_backends: Vec<DisplayBackend>, display_params: Vec<GpuDisplayParameters>, display_event: Arc<AtomicBool>, mapper: Arc<Mutex<Option<Box<dyn SharedMemoryMapper>>>>, event_devices: Vec<EventDevice>, external_blob: bool, fixed_blob_mapping: bool, udmabuf: bool, request_receiver: Receiver<WorkerRequest>, response_sender: Sender<Result<WorkerResponse>>, exit_evt_wrtube: SendTube, gpu_control_tube: Tube, resource_bridges: ResourceBridges, suspend_evt: Event, kill_evt: Event, snapshot_scratch_directory: Option<PathBuf>, ) -> Result<Worker>
fn run(&mut self)
fn on_activate(&mut self, request: WorkerActivateRequest) -> Result<()>
fn on_suspend(&mut self) -> Result<GpuDeactivationResources>
fn on_snapshot(&mut self) -> Result<WorkerSnapshot>
fn on_restore(&mut self, snapshot: WorkerSnapshot) -> Result<()>
fn run_until_sleep_or_exit(&mut self) -> Result<WorkerStopReason>
Auto Trait Implementations§
impl !Freeze for Worker
impl !RefUnwindSafe for Worker
impl !Send for Worker
impl !Sync for Worker
impl Unpin for Worker
impl !UnwindSafe for Worker
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
§impl<T> Downcast for Twhere
    T: Any,
 
impl<T> Downcast for Twhere
    T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
 
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert 
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
 
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert 
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
 
fn as_any(&self) -> &(dyn Any + 'static)
Convert 
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
 
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert 
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.