pub struct DeviceProxy { /* private fields */ }
Implementations§
Source§impl DeviceProxy
impl DeviceProxy
Sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.hardware.network/Device.
Sourcepub fn take_event_stream(&self) -> DeviceEventStream
pub fn take_event_stream(&self) -> DeviceEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn get_info(
&self,
) -> QueryResponseFut<DeviceInfo, DefaultFuchsiaResourceDialect>
pub fn get_info( &self, ) -> QueryResponseFut<DeviceInfo, DefaultFuchsiaResourceDialect>
Obtain information about device
- response
info
device information.
Sourcepub fn open_session(
&self,
session_name: &str,
session_info: SessionInfo,
) -> QueryResponseFut<DeviceOpenSessionResult, DefaultFuchsiaResourceDialect>
pub fn open_session( &self, session_name: &str, session_info: SessionInfo, ) -> QueryResponseFut<DeviceOpenSessionResult, DefaultFuchsiaResourceDialect>
Opens a new session with the network device.
- request
session_name
is used as a debugging label attached to this session. - request
session_info
contains the necessary information to setup the session’s data exchange.
- response
session
a handle to control the session. - response
fifos
data-plane FIFOs attached to the session.
- error
ZX_ERR_NOT_SUPPORTED
ifsession_info
contains not supported frame types or descriptors set up. - error
ZX_ERR_INVALID_ARGS
ifsession_info
is missing fields or contains invalid information. - error
ZX_ERR_INTERNAL
if the data VMO is rejected by the underlying device.
Sourcepub fn get_port(
&self,
id: &PortId,
port: ServerEnd<PortMarker>,
) -> Result<(), Error>
pub fn get_port( &self, id: &PortId, port: ServerEnd<PortMarker>, ) -> Result<(), Error>
Connects to a port the given id
.
- request
id
port to connect to. - request
port
server end of port channel.
port
is closed with a ZX_ERR_NOT_FOUND
epitaph if no port with id
exists.
Sourcepub fn get_port_watcher(
&self,
watcher: ServerEnd<PortWatcherMarker>,
) -> Result<(), Error>
pub fn get_port_watcher( &self, watcher: ServerEnd<PortWatcherMarker>, ) -> Result<(), Error>
Connects a [PortWatcher
] to this device.
- request
watcher
server end of watcher channel.
Sourcepub fn clone(&self, device: ServerEnd<DeviceMarker>) -> Result<(), Error>
pub fn clone(&self, device: ServerEnd<DeviceMarker>) -> Result<(), Error>
Establishes a new connection to this device.
- request
device
the server end for the new connection.
Trait Implementations§
Source§impl Clone for DeviceProxy
impl Clone for DeviceProxy
Source§fn clone(&self) -> DeviceProxy
fn clone(&self) -> DeviceProxy
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for DeviceProxy
impl Debug for DeviceProxy
Source§impl DeviceProxyInterface for DeviceProxy
impl DeviceProxyInterface for DeviceProxy
type GetInfoResponseFut = QueryResponseFut<DeviceInfo>
type OpenSessionResponseFut = QueryResponseFut<Result<(ClientEnd<SessionMarker>, Fifos), i32>>
fn get_info(&self) -> Self::GetInfoResponseFut
fn open_session( &self, session_name: &str, session_info: SessionInfo, ) -> Self::OpenSessionResponseFut
fn get_port( &self, id: &PortId, port: ServerEnd<PortMarker>, ) -> Result<(), Error>
fn get_port_watcher( &self, watcher: ServerEnd<PortWatcherMarker>, ) -> Result<(), Error>
fn clone(&self, device: ServerEnd<DeviceMarker>) -> Result<(), Error>
Source§impl Proxy for DeviceProxy
impl Proxy for DeviceProxy
Source§type Protocol = DeviceMarker
type Protocol = DeviceMarker
The protocol which this
Proxy
controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Create a proxy over the given channel.
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Attempt to convert the proxy back into a channel. Read more
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
Get a reference to the proxy’s underlying channel. Read more
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Attempt to convert the proxy back into a client end. Read more
Auto Trait Implementations§
impl Freeze for DeviceProxy
impl !RefUnwindSafe for DeviceProxy
impl Send for DeviceProxy
impl Sync for DeviceProxy
impl Unpin for DeviceProxy
impl !UnwindSafe for DeviceProxy
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> ProxyHasClient for Twhere
T: Proxy,
impl<T> ProxyHasClient for Twhere
T: Proxy,
§fn client(&self) -> Result<ZirconClient, Infallible>
fn client(&self) -> Result<ZirconClient, Infallible>
Get a “client” for this proxy. This is just an object which has methods
for a few common handle creation operations.