class PcmSupportedFormats
Defined at line 5409 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/natural_types.h
Format supporting PCM audio. Each frame consists of one or more
(number_of_channels) samples, stored contiguously. Within the `bytes_per_sample` allocated for
each sample, `valid_bits_per_sample` bits of data are stored in the most-significant
(left-justified) portion.
All values listed in each vector are supported. This implies a cross-product: any listed
item in one vector is supported in combination with any listed item in another vector.
When not all combinations supported by the driver can be described with one
`PcmSupportedFormats` table, `GetSupportedFormats` must return a vector with multiple
`SupportedFormats` entries.
For more detailed information see [Audio Driver Streaming Interface](https://fuchsia.dev/fuchsia-src/concepts/drivers/driver_architectures/audio_drivers/audio_streaming).
Public Methods
void PcmSupportedFormats (Storage_ storage)
void PcmSupportedFormats ()
Defined at line 5414 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/natural_types.h
void PcmSupportedFormats (PcmSupportedFormats && )
Defined at line 5415 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/natural_types.h
void PcmSupportedFormats (const PcmSupportedFormats & other)
PcmSupportedFormats & operator= (PcmSupportedFormats && )
Defined at line 5416 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/natural_types.h
PcmSupportedFormats & operator= (const PcmSupportedFormats & other)
bool operator== (const PcmSupportedFormats & other)
bool operator!= (const PcmSupportedFormats & other)
bool IsEmpty ()
const std::optional< ::std::vector< ::fuchsia_hardware_audio::ChannelSet>> & channel_sets ()
Vector of possible `ChannelSets` supported.
A `ChannelSet` specifies a channel configuration (including a channel-count), plus a number
of optional attributes.
Only one `ChannelSet` is allowed for each unique channel-count. As a result, no two entries
in `channel_sets` can contain `attributes` vectors with the same length.
Required.
::std::optional< ::std::vector< ::fuchsia_hardware_audio::ChannelSet>> & channel_sets ()
Vector of possible `ChannelSets` supported.
A `ChannelSet` specifies a channel configuration (including a channel-count), plus a number
of optional attributes.
Only one `ChannelSet` is allowed for each unique channel-count. As a result, no two entries
in `channel_sets` can contain `attributes` vectors with the same length.
Required.
PcmSupportedFormats & channel_sets (std::optional< ::std::vector< ::fuchsia_hardware_audio::ChannelSet>> value)
Vector of possible `ChannelSets` supported.
A `ChannelSet` specifies a channel configuration (including a channel-count), plus a number
of optional attributes.
Only one `ChannelSet` is allowed for each unique channel-count. As a result, no two entries
in `channel_sets` can contain `attributes` vectors with the same length.
Required.
const std::optional< ::std::vector< ::fuchsia_hardware_audio::SampleFormat>> & sample_formats ()
Vector of possible `SampleFormat`s supported.
Required.
::std::optional< ::std::vector< ::fuchsia_hardware_audio::SampleFormat>> & sample_formats ()
Vector of possible `SampleFormat`s supported.
Required.
PcmSupportedFormats & sample_formats (std::optional< ::std::vector< ::fuchsia_hardware_audio::SampleFormat>> value)
Vector of possible `SampleFormat`s supported.
Required.
const std::optional< ::std::vector<uint8_t>> & bytes_per_sample ()
Vector of possible bytes allocated for each sample. Values must be listed in ascending
order. All values listed in `valid_bits_per_sample` must fit into at least the largest
`bytes_per_sample` value.
Required.
::std::optional< ::std::vector<uint8_t>> & bytes_per_sample ()
Vector of possible bytes allocated for each sample. Values must be listed in ascending
order. All values listed in `valid_bits_per_sample` must fit into at least the largest
`bytes_per_sample` value.
Required.
PcmSupportedFormats & bytes_per_sample (std::optional< ::std::vector<uint8_t>> value)
Vector of possible bytes allocated for each sample. Values must be listed in ascending
order. All values listed in `valid_bits_per_sample` must fit into at least the largest
`bytes_per_sample` value.
Required.
const std::optional< ::std::vector<uint8_t>> & valid_bits_per_sample ()
Vector of possible number of bits containing valid data, within the sample container defined
by `bytes_per_sample`. Values must be listed in ascending order. All values listed must fit
into the largest `bytes_per_sample` value. The valid data bits must be most-significant
(left-justified) within the sample container, and any additional bits will be ignored.
Required.
::std::optional< ::std::vector<uint8_t>> & valid_bits_per_sample ()
Vector of possible number of bits containing valid data, within the sample container defined
by `bytes_per_sample`. Values must be listed in ascending order. All values listed must fit
into the largest `bytes_per_sample` value. The valid data bits must be most-significant
(left-justified) within the sample container, and any additional bits will be ignored.
Required.
PcmSupportedFormats & valid_bits_per_sample (std::optional< ::std::vector<uint8_t>> value)
Vector of possible number of bits containing valid data, within the sample container defined
by `bytes_per_sample`. Values must be listed in ascending order. All values listed must fit
into the largest `bytes_per_sample` value. The valid data bits must be most-significant
(left-justified) within the sample container, and any additional bits will be ignored.
Required.
const std::optional< ::std::vector<uint32_t>> & frame_rates ()
Vector of possible frame rates supported. Values must be listed in ascending order.
Required.
::std::optional< ::std::vector<uint32_t>> & frame_rates ()
Vector of possible frame rates supported. Values must be listed in ascending order.
Required.
PcmSupportedFormats & frame_rates (std::optional< ::std::vector<uint32_t>> value)
Vector of possible frame rates supported. Values must be listed in ascending order.
Required.
void PcmSupportedFormats (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )
Friends
class MemberVisitor
class NaturalTableCodingTraits