pub struct ObserverSynchronousProxy { /* private fields */ }
Implementations§
Source§impl ObserverSynchronousProxy
impl ObserverSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ObserverEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ObserverEvent, 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. This vector must include one or more processing 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 immediately reply to the first
WatchElementState
sent by the client. The driver will not respond to subsequent client
WatchElementState
calls for that processing_element_id
until any portion of the
ElementState
has changed from what was most recently reported for that element.
The driver will close the protocol channel with an error of ZX_ERR_INVALID_ARGS
, if
processing_element_id
does not match an ElementId returned by GetElements
.
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.
This vector must include one or more topologies.
If more than one topology is returned, then the client may select any topology from the
list by calling SetTopology
.
If only one topology is returned, SetTopology
can still be called but causes no change.
Each Element must be included in at least one Topology, but need not be included in every Topology.
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; this 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.
Sourcepub fn watch_plug_state(
&self,
___deadline: MonotonicInstant,
) -> Result<ObserverWatchPlugStateResult, Error>
pub fn watch_plug_state( &self, ___deadline: MonotonicInstant, ) -> Result<ObserverWatchPlugStateResult, Error>
Request notification of any change to the device’s plug state. When called for the first time, it will return immediately.
Should only be called for Codec devices.
Sourcepub fn get_reference_clock(
&self,
___deadline: MonotonicInstant,
) -> Result<ObserverGetReferenceClockResult, Error>
pub fn get_reference_clock( &self, ___deadline: MonotonicInstant, ) -> Result<ObserverGetReferenceClockResult, Error>
Retrieve the device’s reference clock.
This clock will be in the domain specified in the device’s Info
table.
Should only be called for Composite devices.
Trait Implementations§
Source§impl Debug for ObserverSynchronousProxy
impl Debug for ObserverSynchronousProxy
Source§impl From<Channel> for ObserverSynchronousProxy
impl From<Channel> for ObserverSynchronousProxy
Source§impl From<ObserverSynchronousProxy> for Handle
impl From<ObserverSynchronousProxy> for Handle
Source§fn from(value: ObserverSynchronousProxy) -> Self
fn from(value: ObserverSynchronousProxy) -> Self
Source§impl FromClient for ObserverSynchronousProxy
impl FromClient for ObserverSynchronousProxy
Source§type Protocol = ObserverMarker
type Protocol = ObserverMarker
Source§fn from_client(value: ClientEnd<ObserverMarker>) -> Self
fn from_client(value: ClientEnd<ObserverMarker>) -> Self
Source§impl SynchronousProxy for ObserverSynchronousProxy
impl SynchronousProxy for ObserverSynchronousProxy
Source§type Proxy = ObserverProxy
type Proxy = ObserverProxy
Source§type Protocol = ObserverMarker
type Protocol = ObserverMarker
Proxy
controls.