template <>

class WireServer

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

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fidl::ClientEnd

<

::fuchsia_ui_observation_geometry::ViewTreeWatcher>|

and |::fidl::ServerEnd

<

::fuchsia_ui_observation_geometry::ViewTreeWatcher>|).

Public Methods

void Watch (WatchCompleter::Sync & completer)

A method of obtaining view tree snapshots for a particular view.

This call is formulated as a "hanging get" pattern: the client asks for

a set of recent snapshots, and receives them via the callback. This

pull-based approach ensures that clients consume events at their own

pace; events don't clog up the channel in an unbounded manner.

Error Handling. If Error is unset, the client may assume that the

the response contains updates with complete information over its epoch.

Flow control. The caller is allowed at most one in-flight |Watch| call

at a time; it is a logical error to have concurrent calls to |Watch|.

Non-compliance results in channel closure.

Client pacing. The server will dispatch snapshots to the caller on a

lossless, best-effort basis, but the caller must allocate enough time to

keep up with new snapshots.

void WireServer ()

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

Handler bind_handler (async_dispatcher_t * dispatcher)

|bind_handler| returns a handler that binds incoming connections to this

server implementation.

The returned handler borrows the server instance.

The server must outlive the provided |dispatcher|. Only after

the dispatcher is shutdown will it be safe to destroy the servers.

The server should not be moved.

void ~WireServer ()

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