pub enum ElementControlRequest {
OpenStatusChannel {
status_channel: ServerEnd<StatusMarker>,
control_handle: ElementControlControlHandle,
},
AddDependency {
dependency_type: DependencyType,
dependent_level: u8,
requires_token: Event,
requires_level: u8,
responder: ElementControlAddDependencyResponder,
},
RemoveDependency {
dependency_type: DependencyType,
dependent_level: u8,
requires_token: Event,
requires_level: u8,
responder: ElementControlRemoveDependencyResponder,
},
RegisterDependencyToken {
token: Event,
dependency_type: DependencyType,
responder: ElementControlRegisterDependencyTokenResponder,
},
UnregisterDependencyToken {
token: Event,
responder: ElementControlUnregisterDependencyTokenResponder,
},
_UnknownMethod {
ordinal: u64,
control_handle: ElementControlControlHandle,
method_type: MethodType,
},
}
Expand description
Provides element-scoped access to an element previously added via Topology.AddElement.
Variants§
OpenStatusChannel
Register a new Status channel on which Power Broker will send read-only updates of the element’s current power level. This method is intended to allow element owners to give read-only access to the element’s current power level to clients by opening and transferring this channel.
AddDependency
Adds an active or passive dependency of this element upon another element.
Fields
dependency_type: DependencyType
requires_token: Event
responder: ElementControlAddDependencyResponder
RemoveDependency
Removes an active or passive dependency of this element upon another element.
Fields
dependency_type: DependencyType
requires_token: Event
responder: ElementControlRemoveDependencyResponder
RegisterDependencyToken
Register a token which will permit the bearer to add either an active or passive dependency upon this element, depending on the dependency_type specified.
UnregisterDependencyToken
Unregister a token previously registered via RegisterDependencyToken.
_UnknownMethod
An interaction was received which does not match any known method.
Fields
This variant is marked as non-exhaustive
control_handle: ElementControlControlHandle
method_type: MethodType
Implementations§
source§impl ElementControlRequest
impl ElementControlRequest
pub fn into_open_status_channel( self ) -> Option<(ServerEnd<StatusMarker>, ElementControlControlHandle)>
pub fn into_add_dependency( self ) -> Option<(DependencyType, u8, Event, u8, ElementControlAddDependencyResponder)>
pub fn into_remove_dependency( self ) -> Option<(DependencyType, u8, Event, u8, ElementControlRemoveDependencyResponder)>
pub fn into_register_dependency_token( self ) -> Option<(Event, DependencyType, ElementControlRegisterDependencyTokenResponder)>
pub fn into_unregister_dependency_token( self ) -> Option<(Event, ElementControlUnregisterDependencyTokenResponder)>
sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL