template <typename BuilderImpl>
class WireTableBaseBuilder
Defined at line 488 of file fidling/gen/sdk/fidl/fuchsia.hardware.network/fuchsia.hardware.network/cpp/fidl/fuchsia.hardware.network/cpp/wire_types.h
Public Methods
::fuchsia_hardware_network::wire::DeviceBaseInfo Build ()
Build and return the table. The builder should not be used after this.
bool has_rx_depth ()
void clear_rx_depth ()
Clears the rx_depth field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint16_t & rx_depth ()
Maximum number of items in rx FIFO (per session). Required.
`rx_depth` is calculated based on the size of the actual backing
hardware rx queue.
BuilderImpl & rx_depth (uint16_t elem)
Maximum number of items in rx FIFO (per session). Required.
`rx_depth` is calculated based on the size of the actual backing
hardware rx queue.
bool has_tx_depth ()
void clear_tx_depth ()
Clears the tx_depth field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint16_t & tx_depth ()
Maximum number of items in tx FIFO (per session). Required.
`tx_depth` is calculated based on the size of the actual backing
hardware tx queue.
BuilderImpl & tx_depth (uint16_t elem)
Maximum number of items in tx FIFO (per session). Required.
`tx_depth` is calculated based on the size of the actual backing
hardware tx queue.
bool has_buffer_alignment ()
void clear_buffer_alignment ()
Clears the buffer_alignment field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint32_t & buffer_alignment ()
Alignment requirement for buffers in the data VMO.
All buffers in the data VMO *must* be aligned to `buffer_alignment`
relative to the start of the VMO. `buffer_alignment == 0` is never
reported. Required.
BuilderImpl & buffer_alignment (uint32_t elem)
Alignment requirement for buffers in the data VMO.
All buffers in the data VMO *must* be aligned to `buffer_alignment`
relative to the start of the VMO. `buffer_alignment == 0` is never
reported. Required.
bool has_max_buffer_length ()
void clear_max_buffer_length ()
Clears the max_buffer_length field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint32_t & max_buffer_length ()
Maximum supported length of buffers in the data VMO, in bytes.
Absent if no maximum buffer length is defined. Must be nonzero.
BuilderImpl & max_buffer_length (uint32_t elem)
Maximum supported length of buffers in the data VMO, in bytes.
Absent if no maximum buffer length is defined. Must be nonzero.
bool has_min_rx_buffer_length ()
void clear_min_rx_buffer_length ()
Clears the min_rx_buffer_length field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint32_t & min_rx_buffer_length ()
The minimum rx buffer length required for device. Required.
BuilderImpl & min_rx_buffer_length (uint32_t elem)
The minimum rx buffer length required for device. Required.
bool has_min_tx_buffer_length ()
void clear_min_tx_buffer_length ()
Clears the min_tx_buffer_length field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint32_t & min_tx_buffer_length ()
The minimum tx buffer length required for the device. Required.
This value accounts only for tx payload length, `min_tx_buffer_head` and
`min_tx_buffer_tail` are not part of this value.
Clients must zero pad outgoing frames to meet the required minimum
length.
BuilderImpl & min_tx_buffer_length (uint32_t elem)
The minimum tx buffer length required for the device. Required.
This value accounts only for tx payload length, `min_tx_buffer_head` and
`min_tx_buffer_tail` are not part of this value.
Clients must zero pad outgoing frames to meet the required minimum
length.
bool has_min_tx_buffer_head ()
void clear_min_tx_buffer_head ()
Clears the min_tx_buffer_head field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint16_t & min_tx_buffer_head ()
The number of bytes the device requests be free as `head` space in a tx
buffer. Required.
BuilderImpl & min_tx_buffer_head (uint16_t elem)
The number of bytes the device requests be free as `head` space in a tx
buffer. Required.
bool has_min_tx_buffer_tail ()
void clear_min_tx_buffer_tail ()
Clears the min_tx_buffer_tail field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint16_t & min_tx_buffer_tail ()
The amount of bytes the device requests be free as `tail` space in a tx
buffer. Required.
BuilderImpl & min_tx_buffer_tail (uint16_t elem)
The amount of bytes the device requests be free as `tail` space in a tx
buffer. Required.
bool has_max_buffer_parts ()
void clear_max_buffer_parts ()
Clears the max_buffer_parts field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
uint8_t & max_buffer_parts ()
Maximum descriptor chain length accepted by the device. Required.
BuilderImpl & max_buffer_parts (uint8_t elem)
Maximum descriptor chain length accepted by the device. Required.
bool has_rx_accel ()
void clear_rx_accel ()
Clears the rx_accel field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fidl::VectorView< ::fuchsia_hardware_network::wire::RxAcceleration> & rx_accel ()
Available rx acceleration flags for this device.
`rx_accel` maps the `RX_ACCEL_*` flags in the frame descriptors with
semantic acceleration features described by [`RxAcceleration`]. Position
`n` of `rx_accel` conveys the meaning of the `RX_ACCEL_n` flag.
Interpreted as empty if not provided.
BuilderImpl & rx_accel (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_hardware_network::wire::RxAcceleration>>> elem)
Available rx acceleration flags for this device.
`rx_accel` maps the `RX_ACCEL_*` flags in the frame descriptors with
semantic acceleration features described by [`RxAcceleration`]. Position
`n` of `rx_accel` conveys the meaning of the `RX_ACCEL_n` flag.
Interpreted as empty if not provided.
bool has_tx_accel ()
void clear_tx_accel ()
Clears the tx_accel field.
This method should be used sparingly, such as only during tests, as it has
O(number_of_fields) complexity.
::fidl::VectorView< ::fuchsia_hardware_network::wire::TxAcceleration> & tx_accel ()
Available tx acceleration flags for this device.
`tx_accel` maps the `TX_ACCEL_*` flags in the frame descriptors with
semantic acceleration features described by [`TxAcceleration`]. Position
`n` of `tx_accel` conveys the meaning of the `TX_ACCEL_n` flag.
Interpreted as empty if not provided.
BuilderImpl & tx_accel (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_hardware_network::wire::TxAcceleration>>> elem)
Available tx acceleration flags for this device.
`tx_accel` maps the `TX_ACCEL_*` flags in the frame descriptors with
semantic acceleration features described by [`TxAcceleration`]. Position
`n` of `tx_accel` conveys the meaning of the `TX_ACCEL_n` flag.
Interpreted as empty if not provided.
Protected Methods
void WireTableBaseBuilder< ::fuchsia_hardware_network::wire::DeviceBaseInfo, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_network::wire::DeviceBaseInfo>> && frame)