template <typename BuilderImpl>
class WireTableBaseBuilder
Defined at line 1499 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio.signalprocessing/fuchsia.hardware.audio.signalprocessing/cpp/fidl/fuchsia.hardware.audio.signalprocessing/cpp/wire_types.h
Public Methods
::fuchsia_hardware_audio_signalprocessing::wire::DynamicsBandState Build ()
Build and return the table. The builder should not be used after this.
bool has_id ()
void clear_id ()
Clears the id field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint64_t & id ()
Unique ID for the band. Must match one of the `id`s specified in
`Dynamics` `bands`.
BuilderImpl & id (Wrapper_Ignore_Me_< ::fidl::ObjectView<uint64_t>> elem)
Unique ID for the band. Must match one of the `id`s specified in
`Dynamics` `bands`.
bool has_min_frequency ()
void clear_min_frequency ()
Clears the min_frequency field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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.
BuilderImpl & min_frequency (uint32_t elem)
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.
bool has_max_frequency ()
void clear_max_frequency ()
Clears the max_frequency field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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.
BuilderImpl & max_frequency (uint32_t elem)
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.
bool has_threshold_db ()
void clear_threshold_db ()
Clears the threshold_db field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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.
BuilderImpl & threshold_db (float elem)
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.
bool has_threshold_type ()
void clear_threshold_type ()
Clears the threshold_type field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fuchsia_hardware_audio_signalprocessing::wire::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`.
BuilderImpl & threshold_type (::fuchsia_hardware_audio_signalprocessing::wire::ThresholdType elem)
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`.
bool has_ratio ()
void clear_ratio ()
Clears the ratio field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
float & ratio ()
The input-to-output dB ratio above or below (see `threshold_type`) the knee region.
Required. Must be finite.
BuilderImpl & ratio (float elem)
The input-to-output dB ratio above or below (see `threshold_type`) the knee region.
Required. Must be finite.
bool has_knee_width_db ()
void clear_knee_width_db ()
Clears the knee_width_db field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & knee_width_db (float elem)
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`.
bool has_attack ()
void clear_attack ()
Clears the attack field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & attack (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)
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`.
bool has_release ()
void clear_release ()
Clears the release field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & release (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)
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`.
bool has_output_gain_db ()
void clear_output_gain_db ()
Clears the output_gain_db field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & output_gain_db (float elem)
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`.
bool has_input_gain_db ()
void clear_input_gain_db ()
Clears the input_gain_db field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & input_gain_db (float elem)
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`.
bool has_level_type ()
void clear_level_type ()
Clears the level_type field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fuchsia_hardware_audio_signalprocessing::wire::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`.
BuilderImpl & level_type (::fuchsia_hardware_audio_signalprocessing::wire::LevelType elem)
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`.
bool has_lookahead ()
void clear_lookahead ()
Clears the lookahead field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & lookahead (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)
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`.
bool has_linked_channels ()
void clear_linked_channels ()
Clears the linked_channels field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
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`.
BuilderImpl & linked_channels (bool elem)
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`.
Protected Methods
void WireTableBaseBuilder< ::fuchsia_hardware_audio_signalprocessing::wire::DynamicsBandState, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_audio_signalprocessing::wire::DynamicsBandState>> && frame)