class Tree

Defined at line 1773 of file fidling/gen/sdk/fidl/fuchsia.inspect/fuchsia.inspect/hlcpp/fuchsia/inspect/cpp/fidl.h

The Tree protocol represents a hierarchy of Inspect VMOs.

Link values stored in an Inspect file contain references to new

named files that contain a continuation of the data for the overall

hierarchy. Protocol Tree allows clients to request these named files so

long as the hosting component is still alive.

Connecting to a particular tree keeps the content for that Tree resident

in memory. Clients are recommended to traverse the trees in depth-first

order to reduce memory usage. Serving components are free to deny

connections to avoid unbounded memory usage.

Public Members

static const char[] Name_

Public Methods

void ~Tree ()
void GetContent (GetContentCallback callback)

Get the content for the Inspect VMO backing this tree.

So long as the Tree connection is still maintained, the contents

of the tree are guaranteed to still be live. Once the connection is

lost, the serving component is free to clear the contents of returned

shared buffers.

Serving components may return different buffers to GetContent

requests for the same Tree.

void ListChildNames (::fidl::InterfaceRequest< ::fuchsia::inspect::TreeNameIterator> tree_iterator)

Iterate over the names of Trees that are children of this Tree.

The underlying list of children may change in between calls to

ListChildNames and OpenChild.

void OpenChild (::std::string child_name, ::fidl::InterfaceRequest< ::fuchsia::inspect::Tree> tree)

Open a child Tree by name.

If the child cannot be opened, the given request is closed.

Protected Methods

void handle_unknown_method (uint64_t ordinal, bool method_has_response)

Friends

class Tree_Stub