template <typename BuilderImpl>
class WireTableBaseBuilder
Defined at line 906 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/wire_types.h
Public Methods
::fuchsia_hardware_audio::wire::CompositeProperties Build ()
Build and return the table. The builder should not be used after this.
bool has_manufacturer ()
void clear_manufacturer ()
Clears the manufacturer field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fidl::StringView & manufacturer ()
UI string for the manufacturer name. If not set, the manufacturer is unknown.
If included, this string must be non-empty.
Optional.
BuilderImpl & manufacturer (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)
UI string for the manufacturer name. If not set, the manufacturer is unknown.
If included, this string must be non-empty.
Optional.
bool has_product ()
void clear_product ()
Clears the product field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fidl::StringView & product ()
UI string for the product name. If not set, the product name is unknown.
If included, this string must be non-empty.
Optional.
BuilderImpl & product (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::StringView>> elem)
UI string for the product name. If not set, the product name is unknown.
If included, this string must be non-empty.
Optional.
bool has_unique_id ()
void clear_unique_id ()
Clears the unique_id field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fidl::Array<uint8_t, 16> & unique_id ()
A unique identifier. If not included, there is no unique id for the Device.
`unique_id` arrays starting with 0x42, 0x54, ... (or `BT` in ASCII) are
reserved for drivers implementing Bluetooth technologies.
`unique_id` arrays starting with 0x55, 0x53, 0x42, ... (or `USB` in ASCII) are
reserved for drivers implementing USB technologies.
Note that even though the above values map to readable ASCII characters, array
values can span the entire uint8 range (0-255).
Optional.
BuilderImpl & unique_id (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::Array<uint8_t, 16>>> elem)
A unique identifier. If not included, there is no unique id for the Device.
`unique_id` arrays starting with 0x42, 0x54, ... (or `BT` in ASCII) are
reserved for drivers implementing Bluetooth technologies.
`unique_id` arrays starting with 0x55, 0x53, 0x42, ... (or `USB` in ASCII) are
reserved for drivers implementing USB technologies.
Note that even though the above values map to readable ASCII characters, array
values can span the entire uint8 range (0-255).
Optional.
bool has_clock_domain ()
void clear_clock_domain ()
Clears the clock_domain field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint32_t & clock_domain ()
An identifier for the clock domain in which this hardware operates. If
two hardware devices have the same clock domain, their clock rates are
identical and perfectly synchronized. Although these two clocks have the
same rate, the clock positions may be offset from each other by an
arbitrary (but fixed) amount. The clock_domain typically comes from a
system wide entity, such as a platform bus or global clock tree.
There are two special values:
* `CLOCK_DOMAIN_MONOTONIC` means the hardware is operating at the same
rate as the system montonic clock.
* `CLOCK_DOMAIN_EXTERNAL` means the hardware is operating at an unknown
rate and is not synchronized with any known clock, not even with
other clocks in domain `CLOCK_DOMAIN_EXTERNAL`.
If the domain is not `CLOCK_DOMAIN_MONOTONIC`, client must use position
notification updates to recover the hardware's clock.
Required.
BuilderImpl & clock_domain (uint32_t elem)
An identifier for the clock domain in which this hardware operates. If
two hardware devices have the same clock domain, their clock rates are
identical and perfectly synchronized. Although these two clocks have the
same rate, the clock positions may be offset from each other by an
arbitrary (but fixed) amount. The clock_domain typically comes from a
system wide entity, such as a platform bus or global clock tree.
There are two special values:
* `CLOCK_DOMAIN_MONOTONIC` means the hardware is operating at the same
rate as the system montonic clock.
* `CLOCK_DOMAIN_EXTERNAL` means the hardware is operating at an unknown
rate and is not synchronized with any known clock, not even with
other clocks in domain `CLOCK_DOMAIN_EXTERNAL`.
If the domain is not `CLOCK_DOMAIN_MONOTONIC`, client must use position
notification updates to recover the hardware's clock.
Required.
Protected Methods
void WireTableBaseBuilder< ::fuchsia_hardware_audio::wire::CompositeProperties, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_audio::wire::CompositeProperties>> && frame)