template <typename BuilderImpl>

class WireTableBaseBuilder

Defined at line 234 of file fidling/gen/sdk/fidl/fuchsia.ui.observation.geometry/fuchsia.ui.observation.geometry/cpp/fidl/fuchsia.ui.observation.geometry/cpp/wire_types.h

Public Methods

::fuchsia_ui_observation_geometry::wire::ViewDescriptor Build ()

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

bool has_view_ref_koid ()
void clear_view_ref_koid ()

Clears the view_ref_koid field.

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

O(number_of_fields) complexity.

uint64_t & view_ref_koid ()

This view's fuchsia.ui.views.ViewRef koid.

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

This view's fuchsia.ui.views.ViewRef koid.

bool has_layout ()
void clear_layout ()

Clears the layout field.

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

O(number_of_fields) complexity.

::fuchsia_ui_observation_geometry::wire::Layout & layout ()

This view's origin, logical size, pixel scale, and inset data, in the view's

own coordinate system.

Limitations. Data consistency between server and client depend on the

specific graphics API. Some APIs provide weak consistency, where the

server-side data (this data) and the client-side data (in the view's UI

client) are allowed to diverge for some time.

BuilderImpl & layout (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_observation_geometry::wire::Layout>> elem)

This view's origin, logical size, pixel scale, and inset data, in the view's

own coordinate system.

Limitations. Data consistency between server and client depend on the

specific graphics API. Some APIs provide weak consistency, where the

server-side data (this data) and the client-side data (in the view's UI

client) are allowed to diverge for some time.

bool has_extent_in_context ()
void clear_extent_in_context ()

Clears the extent_in_context field.

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

O(number_of_fields) complexity.

::fuchsia_ui_observation_geometry::wire::RotatableExtent & extent_in_context ()

This view's extent, in the context view's coordinate system.

It does NOT describe the child view's logical size.

This describes the "ground truth" position of this view within the context

view, regardless of view tree depth, or specific layout state of

intermediate views.

Limitations. It does NOT describe whether the view is "visible" (e.g.,

whether the view has opacity applied, or is not occluded by another view),

and it does NOT describe whether the view is "hittable" (e.g., whether the

view is positioned fully inside of every ancestor view's bounding box).

BuilderImpl & extent_in_context (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_observation_geometry::wire::RotatableExtent>> elem)

This view's extent, in the context view's coordinate system.

It does NOT describe the child view's logical size.

This describes the "ground truth" position of this view within the context

view, regardless of view tree depth, or specific layout state of

intermediate views.

Limitations. It does NOT describe whether the view is "visible" (e.g.,

whether the view has opacity applied, or is not occluded by another view),

and it does NOT describe whether the view is "hittable" (e.g., whether the

view is positioned fully inside of every ancestor view's bounding box).

bool has_extent_in_parent ()
void clear_extent_in_parent ()

Clears the extent_in_parent field.

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

O(number_of_fields) complexity.

::fuchsia_ui_observation_geometry::wire::RotatableExtent & extent_in_parent ()

The space occupied within the parent view's coordinate system.

It does NOT describe the child view's logical size.

BuilderImpl & extent_in_parent (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fuchsia_ui_observation_geometry::wire::RotatableExtent>> elem)

The space occupied within the parent view's coordinate system.

It does NOT describe the child view's logical size.

bool has_children ()
void clear_children ()

Clears the children field.

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

O(number_of_fields) complexity.

::fidl::VectorView<uint32_t> & children ()

The list of child views, in the order known to the graphics API.

Each integer in this vector refers to the child's position in the

|views| or |incomplete| vector that the parent is in.

The identity, position, and size of each child view. Position and size are

described by the extent of the child view within the parent view's

coordinate system.

The view tree topology is reliable. A child placed here is equivalent to

the parent view receiving a "child view connected" signal.

Limitations. A child's view boundary is described in the parent view's

coordinate system, which is subject to weak consistency (depending on the

graphics API). That is, when a parent view has a change in size or metrics,

the context view may observe a "jump" as the parent view incorporates those

data. In such cases, a new ViewTreeSnapshot is issued to describe the

change in position, relative to the context view.

BuilderImpl & children (Wrapper_Ignore_Me_< ::fidl::ObjectView< ::fidl::VectorView<uint32_t>>> elem)

The list of child views, in the order known to the graphics API.

Each integer in this vector refers to the child's position in the

|views| or |incomplete| vector that the parent is in.

The identity, position, and size of each child view. Position and size are

described by the extent of the child view within the parent view's

coordinate system.

The view tree topology is reliable. A child placed here is equivalent to

the parent view receiving a "child view connected" signal.

Limitations. A child's view boundary is described in the parent view's

coordinate system, which is subject to weak consistency (depending on the

graphics API). That is, when a parent view has a change in size or metrics,

the context view may observe a "jump" as the parent view incorporates those

data. In such cases, a new ViewTreeSnapshot is issued to describe the

change in position, relative to the context view.

Protected Methods

void WireTableBaseBuilder< ::fuchsia_ui_observation_geometry::wire::ViewDescriptor, BuilderImpl> (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_ui_observation_geometry::wire::ViewDescriptor>> && frame)

Records