class DynamicsBandState
Defined at line 563 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio.signalprocessing/fuchsia.hardware.audio.signalprocessing/cpp/fidl/fuchsia.hardware.audio.signalprocessing/cpp/natural_types.h
State for a single band within an `Element` with `type` equal to `DYNAMICS`.
`WatchElementState` may return control band fields, even if the values cannot be changed by the
client (i.e. the bits are not set in `supported_controls`).
Public Methods
void DynamicsBandState (Storage_ storage)
void DynamicsBandState ()
Defined at line 568 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio.signalprocessing/fuchsia.hardware.audio.signalprocessing/cpp/fidl/fuchsia.hardware.audio.signalprocessing/cpp/natural_types.h
void DynamicsBandState (DynamicsBandState && )
Defined at line 569 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio.signalprocessing/fuchsia.hardware.audio.signalprocessing/cpp/fidl/fuchsia.hardware.audio.signalprocessing/cpp/natural_types.h
void DynamicsBandState (const DynamicsBandState & other)
DynamicsBandState & operator= (DynamicsBandState && )
Defined at line 570 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio.signalprocessing/fuchsia.hardware.audio.signalprocessing/cpp/fidl/fuchsia.hardware.audio.signalprocessing/cpp/natural_types.h
DynamicsBandState & operator= (const DynamicsBandState & other)
bool operator== (const DynamicsBandState & other)
bool operator!= (const DynamicsBandState & other)
bool IsEmpty ()
const std::optional<uint64_t> & id ()
Unique ID for the band. Must match one of the `id`s specified in
`Dynamics` `bands`.
::std::optional<uint64_t> & id ()
Unique ID for the band. Must match one of the `id`s specified in
`Dynamics` `bands`.
DynamicsBandState & id (std::optional<uint64_t> value)
Unique ID for the band. Must match one of the `id`s specified in
`Dynamics` `bands`.
const std::optional<uint32_t> & min_frequency ()
Minimum frequency for the band in Hz.
This field could be 0, for instance for single band dynamics processing to specify
(together with max_frequency) that the band is full range.
::std::optional<uint32_t> & min_frequency ()
Minimum frequency for the band in Hz.
This field could be 0, for instance for single band dynamics processing to specify
(together with max_frequency) that the band is full range.
DynamicsBandState & min_frequency (std::optional<uint32_t> value)
Minimum frequency for the band in Hz.
This field could be 0, for instance for single band dynamics processing to specify
(together with max_frequency) that the band is full range.
const std::optional<uint32_t> & max_frequency ()
Maximum frequency for the band in Hz.
This field could be the Nyquist frequency, for instance for single band dynamics
processing to specify (together with min_frequency) that the band is full range.
Required.
::std::optional<uint32_t> & max_frequency ()
Maximum frequency for the band in Hz.
This field could be the Nyquist frequency, for instance for single band dynamics
processing to specify (together with min_frequency) that the band is full range.
Required.
DynamicsBandState & max_frequency (std::optional<uint32_t> value)
Maximum frequency for the band in Hz.
This field could be the Nyquist frequency, for instance for single band dynamics
processing to specify (together with min_frequency) that the band is full range.
Required.
const std::optional<float> & threshold_db ()
The value beyond which the dynamics main processing starts (subject to the
`knee_width_db`), in input dB.
Some signal processing like `input_gain` and `output_gain` are not affected by this value.
Required. Must be finite.
::std::optional<float> & threshold_db ()
The value beyond which the dynamics main processing starts (subject to the
`knee_width_db`), in input dB.
Some signal processing like `input_gain` and `output_gain` are not affected by this value.
Required. Must be finite.
DynamicsBandState & threshold_db (std::optional<float> value)
The value beyond which the dynamics main processing starts (subject to the
`knee_width_db`), in input dB.
Some signal processing like `input_gain` and `output_gain` are not affected by this value.
Required. Must be finite.
const std::optional< ::fuchsia_hardware_audio_signalprocessing::ThresholdType> & threshold_type ()
Dynamics processing is applied `ABOVE` or `BELOW` the threshold.
Required for `WatchElementState`.
Disallowed in `SetElementState` if `DynamicsSupportedControls.THRESHOLD_TYPE` is not set
in `supported_controls`.
::std::optional< ::fuchsia_hardware_audio_signalprocessing::ThresholdType> & threshold_type ()
Dynamics processing is applied `ABOVE` or `BELOW` the threshold.
Required for `WatchElementState`.
Disallowed in `SetElementState` if `DynamicsSupportedControls.THRESHOLD_TYPE` is not set
in `supported_controls`.
DynamicsBandState & threshold_type (std::optional< ::fuchsia_hardware_audio_signalprocessing::ThresholdType> value)
Dynamics processing is applied `ABOVE` or `BELOW` the threshold.
Required for `WatchElementState`.
Disallowed in `SetElementState` if `DynamicsSupportedControls.THRESHOLD_TYPE` is not set
in `supported_controls`.
const std::optional<float> & ratio ()
The input-to-output dB ratio above or below (see `threshold_type`) the knee region.
Required. Must be finite.
::std::optional<float> & ratio ()
The input-to-output dB ratio above or below (see `threshold_type`) the knee region.
Required. Must be finite.
DynamicsBandState & ratio (std::optional<float> value)
The input-to-output dB ratio above or below (see `threshold_type`) the knee region.
Required. Must be finite.
const std::optional<float> & knee_width_db ()
The width of the knee region, in input dB. If present, cannot be negative.
If not included, the width of the knee region is unspecified.
A value of zero is a "hard" knee; larger values lead to "softer" knees.
This knee is centered on `threshold_db`.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.KNEE_WIDTH` is not set
in `supported_controls`.
::std::optional<float> & knee_width_db ()
The width of the knee region, in input dB. If present, cannot be negative.
If not included, the width of the knee region is unspecified.
A value of zero is a "hard" knee; larger values lead to "softer" knees.
This knee is centered on `threshold_db`.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.KNEE_WIDTH` is not set
in `supported_controls`.
DynamicsBandState & knee_width_db (std::optional<float> value)
The width of the knee region, in input dB. If present, cannot be negative.
If not included, the width of the knee region is unspecified.
A value of zero is a "hard" knee; larger values lead to "softer" knees.
This knee is centered on `threshold_db`.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.KNEE_WIDTH` is not set
in `supported_controls`.
const std::optional<int64_t> & attack ()
Attack time.
If not included, the attack time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.ATTACK` is not set
in `supported_controls`.
::std::optional<int64_t> & attack ()
Attack time.
If not included, the attack time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.ATTACK` is not set
in `supported_controls`.
DynamicsBandState & attack (std::optional<int64_t> value)
Attack time.
If not included, the attack time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.ATTACK` is not set
in `supported_controls`.
const std::optional<int64_t> & release ()
Release time.
If not included, the release time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.RELEASE` is not set
in `supported_controls`.
::std::optional<int64_t> & release ()
Release time.
If not included, the release time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.RELEASE` is not set
in `supported_controls`.
DynamicsBandState & release (std::optional<int64_t> value)
Release time.
If not included, the release time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.RELEASE` is not set
in `supported_controls`.
const std::optional<float> & output_gain_db ()
Output (a.k.a. make up or post) gain value in dB.
If not included, the output gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.OUTPUT_GAIN` is not set
in `supported_controls`.
::std::optional<float> & output_gain_db ()
Output (a.k.a. make up or post) gain value in dB.
If not included, the output gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.OUTPUT_GAIN` is not set
in `supported_controls`.
DynamicsBandState & output_gain_db (std::optional<float> value)
Output (a.k.a. make up or post) gain value in dB.
If not included, the output gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.OUTPUT_GAIN` is not set
in `supported_controls`.
const std::optional<float> & input_gain_db ()
Input (a.k.a. pre) gain value in dB.
If not included, the input gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.INPUT_GAIN` is not set
in `supported_controls`.
::std::optional<float> & input_gain_db ()
Input (a.k.a. pre) gain value in dB.
If not included, the input gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.INPUT_GAIN` is not set
in `supported_controls`.
DynamicsBandState & input_gain_db (std::optional<float> value)
Input (a.k.a. pre) gain value in dB.
If not included, the input gain is unspecified.
Optional. If specified, must be finite.
Disallowed in `SetElementState` if `DynamicsSupportedControls.INPUT_GAIN` is not set
in `supported_controls`.
const std::optional< ::fuchsia_hardware_audio_signalprocessing::LevelType> & level_type ()
Level type (peak or RMS).
If not included, the level type is unspecified.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LEVEL_TYPE` is not set
in `supported_controls`.
::std::optional< ::fuchsia_hardware_audio_signalprocessing::LevelType> & level_type ()
Level type (peak or RMS).
If not included, the level type is unspecified.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LEVEL_TYPE` is not set
in `supported_controls`.
DynamicsBandState & level_type (std::optional< ::fuchsia_hardware_audio_signalprocessing::LevelType> value)
Level type (peak or RMS).
If not included, the level type is unspecified.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LEVEL_TYPE` is not set
in `supported_controls`.
const std::optional<int64_t> & lookahead ()
Look-ahead time.
If not included, the look-ahead time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LOOKAHEAD` is not set
in `supported_controls`.
::std::optional<int64_t> & lookahead ()
Look-ahead time.
If not included, the look-ahead time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LOOKAHEAD` is not set
in `supported_controls`.
DynamicsBandState & lookahead (std::optional<int64_t> value)
Look-ahead time.
If not included, the look-ahead time is unspecified.
Optional. If specified, must be non-negative.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LOOKAHEAD` is not set
in `supported_controls`.
const std::optional<bool> & linked_channels ()
Linked channels (a.k.a. Stereo linked for 2-channel systems).
If not included, the linked channels option is unspecified.
If true, the dynamics response is applied to all channels.
If false, each channel has its own dynamics response.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LINKED_CHANNELS` is not set
in `supported_controls`.
::std::optional<bool> & linked_channels ()
Linked channels (a.k.a. Stereo linked for 2-channel systems).
If not included, the linked channels option is unspecified.
If true, the dynamics response is applied to all channels.
If false, each channel has its own dynamics response.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LINKED_CHANNELS` is not set
in `supported_controls`.
DynamicsBandState & linked_channels (std::optional<bool> value)
Linked channels (a.k.a. Stereo linked for 2-channel systems).
If not included, the linked channels option is unspecified.
If true, the dynamics response is applied to all channels.
If false, each channel has its own dynamics response.
Optional.
Disallowed in `SetElementState` if `DynamicsSupportedControls.LINKED_CHANNELS` is not set
in `supported_controls`.
void DynamicsBandState (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )
Friends
class MemberVisitor
class NaturalTableCodingTraits