pub struct Stream_Proxy { /* private fields */ }
Implementations§
Source§impl Stream_Proxy
impl Stream_Proxy
Sourcepub fn take_event_stream(&self) -> Stream_EventStream
pub fn take_event_stream(&self) -> Stream_EventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn get_properties(
&self,
) -> QueryResponseFut<StreamProperties, DefaultFuchsiaResourceDialect>
pub fn get_properties( &self, ) -> QueryResponseFut<StreamProperties, DefaultFuchsiaResourceDialect>
Gets the properties associated with this stream. The value returned is identical to the one corresponding to this stream as returned by |Device.GetConfigurations|.
Sourcepub fn get_properties2(
&self,
) -> QueryResponseFut<StreamProperties2, DefaultFuchsiaResourceDialect>
pub fn get_properties2( &self, ) -> QueryResponseFut<StreamProperties2, DefaultFuchsiaResourceDialect>
Gets the properties associated with this stream. The value returned is identical to the one corresponding to this stream as returned by |Device.GetConfigurations|.
Sourcepub fn set_crop_region(&self, region: Option<&RectF>) -> Result<(), Error>
pub fn set_crop_region(&self, region: Option<&RectF>) -> Result<(), Error>
Sets the Stream’s crop region to the provided region, with the top-left of the image represented by (0,0) and the bottom-right of the image represented by (1,1). The resulting content is subsequently scaled to fill the output buffer. If the implementation does not precisely support the provided value, it will be expanded to the minimum region that covers the provided region. If region is set to null, the crop region is unset, which is equivalent to specifying a region covering the entire image. Upon initial connection, the region is unset. If the stream does not support crop region, the connection is closed with the ZX_ERR_NOT_SUPPORTED epitaph.
Sourcepub fn watch_crop_region(
&self,
) -> QueryResponseFut<Option<Box<RectF>>, DefaultFuchsiaResourceDialect>
pub fn watch_crop_region( &self, ) -> QueryResponseFut<Option<Box<RectF>>, DefaultFuchsiaResourceDialect>
Returns the crop region if it has changed from a previously returned value, or is called by a client for the first time. Frame callbacks received after receiving this callback reflect the use of the new region. See SetCropRegion for a description of the region parameter.
Sourcepub fn set_resolution(&self, coded_size: &Size) -> Result<(), Error>
pub fn set_resolution(&self, coded_size: &Size) -> Result<(), Error>
Sets the resolution of the stream to the provided value. If the implementation does not precisely support the provided value, it will be expanded to the minimum resolution that exceeds the provided resolution.
Sourcepub fn watch_resolution(
&self,
) -> QueryResponseFut<Size, DefaultFuchsiaResourceDialect>
pub fn watch_resolution( &self, ) -> QueryResponseFut<Size, DefaultFuchsiaResourceDialect>
Returns the resolution if it has changed from a previously returned value, or is called by a client for the first time. Frame callbacks received after receiving this callback reflect the new resolution.
Sourcepub fn set_buffer_collection2(
&self,
token: Option<ClientEnd<BufferCollectionTokenMarker>>,
) -> Result<(), Error>
pub fn set_buffer_collection2( &self, token: Option<ClientEnd<BufferCollectionTokenMarker>>, ) -> Result<(), Error>
If non-null, requests renegotiation of the buffer collection backing this stream, and identifies this client as a participant in buffer negotiation. If null, identifies this client as a non-participant in buffer negotiation. Upon initial connection, the client is a non-participant. After registering as a participant, clients must always have an outstanding call to WatchBufferCollection to receive tokens from the server so that they are able to respond to current and future renegotiation requests.
pub fn set_buffer_collection( &self, token: Option<ClientEnd<BufferCollectionTokenMarker>>, ) -> Result<(), Error>
Sourcepub fn watch_buffer_collection2(
&self,
) -> QueryResponseFut<ClientEnd<BufferCollectionTokenMarker>, DefaultFuchsiaResourceDialect>
pub fn watch_buffer_collection2( &self, ) -> QueryResponseFut<ClientEnd<BufferCollectionTokenMarker>, DefaultFuchsiaResourceDialect>
Returns when the server or any buffer negotiation participant (including the current client) requires buffer renegotiation, and the current client is registered as a participant. Frame callbacks received after receiving this callback apply to the newly negotiated collection.
Because the camera can output directly to these collections, each client should support reading from a |fuchsia.sysmem.CoherencyDomain| of RAM, and set |ram_domain_supported| in their |fuchsia.sysmem.BufferMemoryConstraints|.
pub fn watch_buffer_collection( &self, ) -> QueryResponseFut<ClientEnd<BufferCollectionTokenMarker>, DefaultFuchsiaResourceDialect>
Sourcepub fn watch_orientation(
&self,
) -> QueryResponseFut<Orientation, DefaultFuchsiaResourceDialect>
pub fn watch_orientation( &self, ) -> QueryResponseFut<Orientation, DefaultFuchsiaResourceDialect>
Returns the orientation if it has changed from a previously returned value, or is called by a client for the first time. Frame callbacks received after receiving this callback reflect the new orientation.
Sourcepub fn get_next_frame(
&self,
) -> QueryResponseFut<FrameInfo, DefaultFuchsiaResourceDialect>
pub fn get_next_frame( &self, ) -> QueryResponseFut<FrameInfo, DefaultFuchsiaResourceDialect>
See GetNextFrame2.
Sourcepub fn get_next_frame2(
&self,
) -> QueryResponseFut<FrameInfo2, DefaultFuchsiaResourceDialect>
pub fn get_next_frame2( &self, ) -> QueryResponseFut<FrameInfo2, DefaultFuchsiaResourceDialect>
Request the next available frame for this stream that has not yet been acquired by the current client. Multiple participating clients may concurrently hold the same frame. Returns when the stream has completed populating the buffer and may be read by the client, provided the number of unreleased buffers is less than the count provided via the most recently negotiated buffer collection token. If a buffer renegotiation is in progress, this call will return only after the negotiation is complete and a new collection is available.
Sourcepub fn rebind(&self, request: ServerEnd<Stream_Marker>) -> Result<(), Error>
pub fn rebind(&self, request: ServerEnd<Stream_Marker>) -> Result<(), Error>
Request another connection to this Stream. This allows a client to delegate different operations to different coordinated clients, or have multiple clients concurrently observe frames produced by the stream.
Trait Implementations§
Source§impl Clone for Stream_Proxy
impl Clone for Stream_Proxy
Source§fn clone(&self) -> Stream_Proxy
fn clone(&self) -> Stream_Proxy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for Stream_Proxy
impl Debug for Stream_Proxy
Source§impl Proxy for Stream_Proxy
impl Proxy for Stream_Proxy
Source§type Protocol = Stream_Marker
type Protocol = Stream_Marker
Proxy
controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Source§impl Stream_ProxyInterface for Stream_Proxy
impl Stream_ProxyInterface for Stream_Proxy
type GetPropertiesResponseFut = QueryResponseFut<StreamProperties>
type GetProperties2ResponseFut = QueryResponseFut<StreamProperties2>
type WatchCropRegionResponseFut = QueryResponseFut<Option<Box<RectF>>>
type WatchResolutionResponseFut = QueryResponseFut<Size>
type WatchBufferCollection2ResponseFut = QueryResponseFut<ClientEnd<BufferCollectionTokenMarker>>
type WatchBufferCollectionResponseFut = QueryResponseFut<ClientEnd<BufferCollectionTokenMarker>>
type WatchOrientationResponseFut = QueryResponseFut<Orientation>
type GetNextFrameResponseFut = QueryResponseFut<FrameInfo>
type GetNextFrame2ResponseFut = QueryResponseFut<FrameInfo2>
fn get_properties(&self) -> Self::GetPropertiesResponseFut
fn get_properties2(&self) -> Self::GetProperties2ResponseFut
fn set_crop_region(&self, region: Option<&RectF>) -> Result<(), Error>
fn watch_crop_region(&self) -> Self::WatchCropRegionResponseFut
fn set_resolution(&self, coded_size: &Size) -> Result<(), Error>
fn watch_resolution(&self) -> Self::WatchResolutionResponseFut
fn set_buffer_collection2( &self, token: Option<ClientEnd<BufferCollectionTokenMarker>>, ) -> Result<(), Error>
fn set_buffer_collection( &self, token: Option<ClientEnd<BufferCollectionTokenMarker>>, ) -> Result<(), Error>
fn watch_buffer_collection2(&self) -> Self::WatchBufferCollection2ResponseFut
fn watch_buffer_collection(&self) -> Self::WatchBufferCollectionResponseFut
fn watch_orientation(&self) -> Self::WatchOrientationResponseFut
fn get_next_frame(&self) -> Self::GetNextFrameResponseFut
fn get_next_frame2(&self) -> Self::GetNextFrame2ResponseFut
fn rebind(&self, request: ServerEnd<Stream_Marker>) -> Result<(), Error>
Auto Trait Implementations§
impl Freeze for Stream_Proxy
impl !RefUnwindSafe for Stream_Proxy
impl Send for Stream_Proxy
impl Sync for Stream_Proxy
impl Unpin for Stream_Proxy
impl !UnwindSafe for Stream_Proxy
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
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)
clone_to_uninit
)