pub enum ReaderRequest {
GetElements {
responder: ReaderGetElementsResponder,
},
WatchElementState {
processing_element_id: u64,
responder: ReaderWatchElementStateResponder,
},
GetTopologies {
responder: ReaderGetTopologiesResponder,
},
WatchTopology {
responder: ReaderWatchTopologyResponder,
},
_UnknownMethod {
ordinal: u64,
control_handle: ReaderControlHandle,
method_type: MethodType,
},
}
Expand description
For an overview see [Signal Processing Interface].
Variants§
GetElements
Returns a vector of supported processing elements.
Must return one or more processing elements, or ZX_ERR_NOT_SUPPORTED
.
If GetTopologies
returns one or more topologies, then GetElements
must return one or
more elements.
Fields
responder: ReaderGetElementsResponder
WatchElementState
Get the processing element state via a hanging get.
For a given processing_element_id
, the driver will reply to the first WatchElementState
sent by the client. The driver will not respond to subsequent client WatchElementState
calls for a given processing_element_id
until any field of the Element
table changes
from what was most recently reported for that processing_element_id
.
The driver will close the protocol channel with an error of ZX_ERR_BAD_STATE
, if this
method is called again while there is already a pending WatchElementState
for this client
and processing_element_id.
GetTopologies
Returns a vector of supported topologies.
Must return one or more topologies, or ZX_ERR_NOT_SUPPORTED
.
If more than one topology is returned, then the client may choose any of the topologies from
the list with SetTopology
.
If only one topology is returned, then the topology definition is informational only since
the one and only topology used can’t be changed with SetTopology
.
If GetElements
returns one or more elements, then GetTopologies
must return one or
more topologies.
Fields
responder: ReaderGetTopologiesResponder
WatchTopology
Get the current topology via a hanging get.
The driver will immediately reply to the first WatchTopology
sent by each client. The
driver will not respond to subsequent WatchTopology
calls from that client until the
signal-processing topology changes, which occurs as a result of a SetTopology
call.
The driver will close the protocol channel with an error of ZX_ERR_BAD_STATE
, if this
method is called again while there is already a pending WatchTopology
for this client.
Fields
responder: ReaderWatchTopologyResponder
_UnknownMethod
An interaction was received which does not match any known method.
Fields
This variant is marked as non-exhaustive
control_handle: ReaderControlHandle
method_type: MethodType
Implementations§
Source§impl ReaderRequest
impl ReaderRequest
pub fn into_get_elements(self) -> Option<ReaderGetElementsResponder>
pub fn into_watch_element_state( self, ) -> Option<(u64, ReaderWatchElementStateResponder)>
pub fn into_get_topologies(self) -> Option<ReaderGetTopologiesResponder>
pub fn into_watch_topology(self) -> Option<ReaderWatchTopologyResponder>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL