template <typename BuilderImpl>

class WireTableBaseBuilder

Defined at line 782 of file fidling/gen/sdk/fidl/fuchsia.diagnostics/fuchsia.diagnostics/cpp/fidl/fuchsia.diagnostics/cpp/wire_types.h

Public Methods

::fuchsia_diagnostics::wire::SampleReady Build ()

Build and return the table. The builder should not be used after this.

bool has_batch_iter ()
void clear_batch_iter ()

Clears the batch_iter field.

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

O(number_of_fields) complexity.

::fidl::ClientEnd< ::fuchsia_diagnostics::BatchIterator> & batch_iter ()

`batch_iter` is the `BatchIterator` over the set of data.

BuilderImpl & batch_iter (::fidl::ClientEnd< ::fuchsia_diagnostics::BatchIterator> elem)

`batch_iter` is the `BatchIterator` over the set of data.

bool has_seconds_since_start ()
void clear_seconds_since_start ()

Clears the seconds_since_start field.

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

O(number_of_fields) complexity.

int64_t & seconds_since_start ()

`seconds_since_start` is `ticks * interval_secs` for the current

polling period.

This can be used to check whether a value in the batch corresponds

to a `SampleDatum`, assuming you have not registered the same selector

with different `SampleStrategy` types. The procedure is:

1) Resolve `batch_iter` into a set of Inspect hierarchies.

2) Filter the set of `SampleDatum`s committed to this server with

the predicate `seconds_since_start % datum.interval_secs == 0`.

3) Any selector from the filtered `SampleDatum`s that matches data

in the resolved Inspect hierarchies is valid.

If you DO have one selector registered twice with different strategies,

you must maintain a local cache and check the value yourself.

BuilderImpl & seconds_since_start (Wrapper_Ignore_Me_< ::fidl::ObjectView<int64_t>> elem)

`seconds_since_start` is `ticks * interval_secs` for the current

polling period.

This can be used to check whether a value in the batch corresponds

to a `SampleDatum`, assuming you have not registered the same selector

with different `SampleStrategy` types. The procedure is:

1) Resolve `batch_iter` into a set of Inspect hierarchies.

2) Filter the set of `SampleDatum`s committed to this server with

the predicate `seconds_since_start % datum.interval_secs == 0`.

3) Any selector from the filtered `SampleDatum`s that matches data

in the resolved Inspect hierarchies is valid.

If you DO have one selector registered twice with different strategies,

you must maintain a local cache and check the value yourself.

Protected Methods

void WireTableBaseBuilder< ::fuchsia_diagnostics::wire::SampleReady, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_diagnostics::wire::SampleReady>> && frame)

Records