Struct SettableElementState
pub struct SettableElementState {
pub type_specific: Option<SettableTypeSpecificElementState>,
pub vendor_specific_data: Option<Vec<u8>>,
pub started: Option<bool>,
pub bypassed: Option<bool>,
/* private fields */
}
Expand description
Processing element state that can be set by clients.
Fields§
§type_specific: Option<SettableTypeSpecificElementState>
Type-specific element-state parameters that can be set by clients.
If an element is disabled, changes in this field (and all others in SettableElementState) are purely informational and take no effect until the element is enabled.
If not set, then the element’s previous type_specific
state is preserved.
Optional for DYNAMICS, EQUALIZER, GAIN and VENDOR_SPECIFIC types. Invalid if specified for AUTOMATIC_GAIN_CONTROL, AUTOMATIC_GAIN_LIMITER, CONNECTION_POINT, DAI_INTERCONNECT, DELAY, MUTE, RING_BUFFER or SAMPLE_RATE_CONVERSION elements.
vendor_specific_data: Option<Vec<u8>>
If included, an opaque object of octets for conveying vendor-specific information from a client to the audio driver. This can be used with any element type, not just VENDOR_SPECIFIC elements.
Optional.
started: Option<bool>
Whether to start or stop this processing element. A stopped processing element does not provide its abstracted functionality. Specifically, no audio data flows through a stopped element.
If the corresponding Element
returned can_stop
equals to false
, then this field must
not be set to false
– SetElementState
will return ZX_ERR_INVALID_ARGS in that case.
If not set, then the element’s previous started
state will be unchanged.
Optional.
bypassed: Option<bool>
Whether to bypass this processing element. A bypassed element does not affect the flow of audio through the topology. Specifically, audio flows through a bypassed element, without change.
If the corresponding Element
omits can_bypass
or sets it to false
, then this field
must not be set to true
. If this occurs, SetElementState
will fail and return error
ZX_ERR_INVALID_ARGS
.
If not set, then the element’s previous bypassed
state will be unchanged.
Optional.
Trait Implementations§
§impl Clone for SettableElementState
impl Clone for SettableElementState
§fn clone(&self) -> SettableElementState
fn clone(&self) -> SettableElementState
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for SettableElementState
impl Debug for SettableElementState
§impl<D> Decode<SettableElementState, D> for SettableElementStatewhere
D: ResourceDialect,
impl<D> Decode<SettableElementState, D> for SettableElementStatewhere
D: ResourceDialect,
§fn new_empty() -> SettableElementState
fn new_empty() -> SettableElementState
Self
. The specific value does not matter,
since it will be overwritten by decode
.§impl Default for SettableElementState
impl Default for SettableElementState
§fn default() -> SettableElementState
fn default() -> SettableElementState
§impl<D> Encode<SettableElementState, D> for &SettableElementStatewhere
D: ResourceDialect,
impl<D> Encode<SettableElementState, D> for &SettableElementStatewhere
D: ResourceDialect,
§impl PartialEq for SettableElementState
impl PartialEq for SettableElementState
§impl TypeMarker for SettableElementState
impl TypeMarker for SettableElementState
§type Owned = SettableElementState
type Owned = SettableElementState
§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align
.§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 more§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.§impl ValueTypeMarker for SettableElementState
impl ValueTypeMarker for SettableElementState
§type Borrowed<'a> = &'a SettableElementState
type Borrowed<'a> = &'a SettableElementState
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more§fn borrow(
value: &<SettableElementState as TypeMarker>::Owned,
) -> <SettableElementState as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<SettableElementState as TypeMarker>::Owned, ) -> <SettableElementState as ValueTypeMarker>::Borrowed<'_>
&Self::Owned
to Self::Borrowed
.