class Watch

Defined at line 57 of file fidling/gen/sdk/fidl/fuchsia.ui.pointer/fuchsia.ui.pointer/cpp/fidl/fuchsia.ui.pointer/cpp/markers.h

A method for a client to receive mouse pointer events.

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

a set of recent events, 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.

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 events to the caller on a FIFO,

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

keep up with new events.

Event times. The timestamps on each event in the event vector are *not*

guaranteed monotonic; events from different devices may be injected into

Scenic at different times. Generally, events from a single device are

expected to have monotonically increasing timestamps.

View parameters. Occasionally, changes in view or viewport require

notifying the client. If a |MouseEvent| carries |ViewParameters|, these

parameters apply to successive |MousePointerSample|s until the next

|ViewParameters|.

Public Members

static const bool kHasClientToServer
static const bool kHasClientToServerBody
static const bool kHasServerToClient
static const bool kHasServerToClientBody
static const bool kHasNonEmptyUserFacingResponse
static const bool kHasDomainError
static const bool kHasFrameworkError
static const uint64_t kOrdinal