pub struct SharedVmoRegisterProxy { /* private fields */ }Implementations§
Sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.hardware.sharedmemory/SharedVmoRegister.
Sourcepub fn take_event_stream(&self) -> SharedVmoRegisterEventStream
pub fn take_event_stream(&self) -> SharedVmoRegisterEventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn register_vmo(
&self,
vmo_id: u32,
vmo: Range,
rights: SharedVmoRight,
) -> QueryResponseFut<SharedVmoRegisterRegisterVmoResult, DefaultFuchsiaResourceDialect> ⓘ
pub fn register_vmo( &self, vmo_id: u32, vmo: Range, rights: SharedVmoRight, ) -> QueryResponseFut<SharedVmoRegisterRegisterVmoResult, DefaultFuchsiaResourceDialect> ⓘ
Registers a VMO and transfers ownership to the driver. vmo_id: The ID chosen by the client that will be used in operations on this VMO. vmo: The handle, offset, and size of this VMO. IO operations on this VMO will be relative to the offset and size specified here. rights: A bit field of SharedVmoRight values indicating how this VMO may be used. Callers should assume that the driver will map and/or pin the VMO using these rights.
Sourcepub fn unregister_vmo(
&self,
vmo_id: u32,
) -> QueryResponseFut<SharedVmoRegisterUnregisterVmoResult, DefaultFuchsiaResourceDialect> ⓘ
pub fn unregister_vmo( &self, vmo_id: u32, ) -> QueryResponseFut<SharedVmoRegisterUnregisterVmoResult, DefaultFuchsiaResourceDialect> ⓘ
Unmaps and/or unpins the VMO and returns the handle to the caller.
Trait Implementations§
Source§type Protocol = SharedVmoRegisterMarker
type Protocol = SharedVmoRegisterMarker
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
type RegisterVmoResponseFut = QueryResponseFut<Result<(), i32>>
type UnregisterVmoResponseFut = QueryResponseFut<Result<Vmo, i32>>
fn register_vmo( &self, vmo_id: u32, vmo: Range, rights: SharedVmoRight, ) -> Self::RegisterVmoResponseFut
fn unregister_vmo(&self, vmo_id: u32) -> Self::UnregisterVmoResponseFut
Auto Trait Implementations§
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§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<T> FromClient for Twhere
T: Proxy,
impl<T> FromClient for Twhere
T: Proxy,
§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ProxyHasDomain for Twhere
T: Proxy,
impl<T> ProxyHasDomain for Twhere
T: Proxy,
Source§fn domain(&self) -> ZirconClient
fn domain(&self) -> ZirconClient
Get a “client” for this proxy. This is just an object which has methods
for a few common handle creation operations.