pub struct StreamProcessorRemoveBufferRequest {
pub port: Option<Port>,
pub buffer_lifetime_ordinal: Option<u64>,
pub buffer_index: Option<u32>,
/* private fields */
}Fields§
§port: Option<Port>Must be set. Which port (input or output) the buffer is for.
buffer_lifetime_ordinal: Option<u64>Scoped to input or output, this is the buffer_lifetime_ordinal under which the buffer_index is meaningful.
buffer_index: Option<u32>The buffer_index of the buffer previously established (and most recently established) by AddBuffer, or by SetInputBufferPartialSettings / SetOutputBufferPartialSettings. The scope of this value is under input vs. output and under the buffer_lifetime_ordinal value.
When using dynamic buffers, the buffer_index values that are between AddBuffer starting and RemoveBuffer completing (the active buffer_index values) must be unique for a given Port value and buffer_lifetime_ordinal value.
Clients using dynamic buffers may wish to not re-use a buffer_index value quickly upon completion of RemoveBuffer just to make debugging/diagnosing easier, but technically re-use of buffer_index in a subsequent AddBuffer is permitted as soon as RemoveBuffer completes (from the StreamProcessor point of view - the client may have its own reasons to not re-use that quickly). AddBuffer under an old (not current) buffer_lifetime_ordinal is never allowed.
Trait Implementations§
Source§impl Decode<StreamProcessorRemoveBufferRequest, DefaultFuchsiaResourceDialect> for StreamProcessorRemoveBufferRequest
impl Decode<StreamProcessorRemoveBufferRequest, DefaultFuchsiaResourceDialect> for StreamProcessorRemoveBufferRequest
Source§impl Default for StreamProcessorRemoveBufferRequest
impl Default for StreamProcessorRemoveBufferRequest
Source§fn default() -> StreamProcessorRemoveBufferRequest
fn default() -> StreamProcessorRemoveBufferRequest
Source§impl Encode<StreamProcessorRemoveBufferRequest, DefaultFuchsiaResourceDialect> for &mut StreamProcessorRemoveBufferRequest
impl Encode<StreamProcessorRemoveBufferRequest, DefaultFuchsiaResourceDialect> for &mut StreamProcessorRemoveBufferRequest
Source§impl PartialEq for StreamProcessorRemoveBufferRequest
impl PartialEq for StreamProcessorRemoveBufferRequest
Source§fn eq(&self, other: &StreamProcessorRemoveBufferRequest) -> bool
fn eq(&self, other: &StreamProcessorRemoveBufferRequest) -> bool
self and other values to be equal, and is used by ==.Source§impl ResourceTypeMarker for StreamProcessorRemoveBufferRequest
impl ResourceTypeMarker for StreamProcessorRemoveBufferRequest
Source§type Borrowed<'a> = &'a mut StreamProcessorRemoveBufferRequest
type Borrowed<'a> = &'a mut StreamProcessorRemoveBufferRequest
Encode<Self>
type cheaply obtainable from &mut Self::Owned. There are three cases: Read moreSource§fn take_or_borrow<'a>(
value: &'a mut <Self as TypeMarker>::Owned,
) -> Self::Borrowed<'a>
fn take_or_borrow<'a>( value: &'a mut <Self as TypeMarker>::Owned, ) -> Self::Borrowed<'a>
&mut Self::Owned to Self::Borrowed. For
HandleBased types this is “take” (it returns an owned handle and
replaces value with Handle::invalid), and for all other types it is
“borrow” (just converts from one reference to another).Source§impl TypeMarker for StreamProcessorRemoveBufferRequest
impl TypeMarker for StreamProcessorRemoveBufferRequest
Source§type Owned = StreamProcessorRemoveBufferRequest
type Owned = StreamProcessorRemoveBufferRequest
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned to a single memcpy.