pub struct ReaderSynchronousProxy { /* private fields */ }
Implementations§
Source§impl ReaderSynchronousProxy
impl ReaderSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ReaderEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ReaderEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn get_elements(
&self,
___deadline: MonotonicInstant,
) -> Result<ReaderGetElementsResult, Error>
pub fn get_elements( &self, ___deadline: MonotonicInstant, ) -> Result<ReaderGetElementsResult, Error>
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.
Sourcepub fn watch_element_state(
&self,
processing_element_id: u64,
___deadline: MonotonicInstant,
) -> Result<ElementState, Error>
pub fn watch_element_state( &self, processing_element_id: u64, ___deadline: MonotonicInstant, ) -> Result<ElementState, Error>
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.
Sourcepub fn get_topologies(
&self,
___deadline: MonotonicInstant,
) -> Result<ReaderGetTopologiesResult, Error>
pub fn get_topologies( &self, ___deadline: MonotonicInstant, ) -> Result<ReaderGetTopologiesResult, Error>
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.
Sourcepub fn watch_topology(
&self,
___deadline: MonotonicInstant,
) -> Result<u64, Error>
pub fn watch_topology( &self, ___deadline: MonotonicInstant, ) -> Result<u64, Error>
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.
Trait Implementations§
Source§impl Debug for ReaderSynchronousProxy
impl Debug for ReaderSynchronousProxy
Source§impl SynchronousProxy for ReaderSynchronousProxy
impl SynchronousProxy for ReaderSynchronousProxy
Source§type Proxy = ReaderProxy
type Proxy = ReaderProxy
Source§type Protocol = ReaderMarker
type Protocol = ReaderMarker
Proxy
controls.