template <typename BuilderImpl>

class WireTableBaseBuilder

Defined at line 302 of file fidling/gen/sdk/fidl/fuchsia.hardware.hrtimer/fuchsia.hardware.hrtimer/cpp/fidl/fuchsia.hardware.hrtimer/cpp/wire_types.h

Public Methods

::fuchsia_hardware_hrtimer::wire::TimerProperties 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 identifier for this timer.

The `id` is stable for a given timer, i.e. it does not change across different clients

or different connections from the same client.

Required.

BuilderImpl & id (Wrapper_Ignore_Me_< ::fidl::ObjectView<uint64_t>> elem)

Unique identifier for this timer.

The `id` is stable for a given timer, i.e. it does not change across different clients

or different connections from the same client.

Required.

bool has_supported_resolutions ()
void clear_supported_resolutions ()

Clears the supported_resolutions field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

::fidl::VectorView< ::fuchsia_hardware_hrtimer::wire::Resolution> & supported_resolutions ()

Retrieves the resolutions supported by this timer.

Required.

BuilderImpl & supported_resolutions (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_hardware_hrtimer::wire::Resolution>>> elem)

Retrieves the resolutions supported by this timer.

Required.

bool has_max_ticks ()
void clear_max_ticks ()

Clears the max_ticks field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

uint64_t & max_ticks ()

Range in ticks.

This is the maximum amount of time that can be set in terms of ticks when a timer is

started. The maximum range in actual time (e.g. nanoseconds) depends on the resolution used.

NOTE: The value reported here does not need to be identical to what

the hardware actually supports. The driver MAY provide the support for

the reported `max_ticks` that is greater than the largest value of ticks

that can be put into the device's hardware register. The driver supports

a greater value of `max_ticks` by re-programming the hardware counter multiple times

with its maximum supported interval, with an interrupt generated after

each re-programming. If you want as few re-programmings (and interrupts)

to happen as possible, as may be the case when using the hrtimer in a power-aware

context, select the coarsest available resolution from [supported_resolutions].

This will ensure the longest possible wall-clock time passes without a re-program.

Required.

BuilderImpl & max_ticks (Wrapper_Ignore_Me_< ::fidl::ObjectView<uint64_t>> elem)

Range in ticks.

This is the maximum amount of time that can be set in terms of ticks when a timer is

started. The maximum range in actual time (e.g. nanoseconds) depends on the resolution used.

NOTE: The value reported here does not need to be identical to what

the hardware actually supports. The driver MAY provide the support for

the reported `max_ticks` that is greater than the largest value of ticks

that can be put into the device's hardware register. The driver supports

a greater value of `max_ticks` by re-programming the hardware counter multiple times

with its maximum supported interval, with an interrupt generated after

each re-programming. If you want as few re-programmings (and interrupts)

to happen as possible, as may be the case when using the hrtimer in a power-aware

context, select the coarsest available resolution from [supported_resolutions].

This will ensure the longest possible wall-clock time passes without a re-program.

Required.

bool has_supports_event ()
void clear_supports_event ()

Clears the supports_event field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

bool & supports_event ()

If true then the `SetEvent` method is supported, if false or not present it is not

supported.

Optional.

BuilderImpl & supports_event (bool elem)

If true then the `SetEvent` method is supported, if false or not present it is not

supported.

Optional.

bool has_supports_wait ()
void clear_supports_wait ()

Clears the supports_wait field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

bool & supports_wait ()

If true then the `StartAndWait` and `StartAndWait2` methods are supported, if false or

not present these methods are not supported.

Optional.

BuilderImpl & supports_wait (bool elem)

If true then the `StartAndWait` and `StartAndWait2` methods are supported, if false or

not present these methods are not supported.

Optional.

bool has_supports_read ()
void clear_supports_read ()

Clears the supports_read field.

This method should be used sparingly, such as only during tests, as it has

O(number_of_fields) complexity.

bool & supports_read ()

If true, then the `TimerRead` and `ClockRead` methods are supported, if

false or not present, these methods are not supported.

Optional.

BuilderImpl & supports_read (bool elem)

If true, then the `TimerRead` and `ClockRead` methods are supported, if

false or not present, these methods are not supported.

Optional.

Protected Methods

void WireTableBaseBuilder< ::fuchsia_hardware_hrtimer::wire::TimerProperties, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_hardware_hrtimer::wire::TimerProperties>> && frame)

Records