class MouseInputReport
Defined at line 2285 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
`MouseReport` gives the relative movement of the mouse and currently
pressed buttons. Relative means the movement seen between the previous
report and this report. The client is responsible for tracking this and
converting it to absolute movement.
At least one of the fields below must be present.
Public Methods
bool IsEmpty ()
Returns whether no field is set.
bool HasUnknownData ()
Returns whether the table references unknown fields.
::fidl::WireTableBuilder< ::fuchsia_input_report::wire::MouseInputReport> Builder (::fidl::AnyArena & arena)
Return a builder that by defaults allocates of an arena.
::fidl::WireTableExternalBuilder< ::fuchsia_input_report::wire::MouseInputReport> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_input_report::wire::MouseInputReport>> frame)
Return a builder that relies on explicitly allocating |fidl::ObjectView|s.
void MouseInputReport ()
Defined at line 2287 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
void MouseInputReport (const MouseInputReport & other)
Defined at line 2288 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
int64_t & movement_x ()
Relative X positional displacement.
Optional. Present iff the mouse reports relative X movement.
Must not co-exist with `position_x` and `position_y`.
bool has_movement_x ()
int64_t & movement_y ()
Relative Y positional displacement.
Optional. Present iff the mouse reports relative Y movement.
Must not co-exist with `position_x` and `position_y`.
bool has_movement_y ()
MouseInputReport & operator= (const MouseInputReport & other)
Defined at line 2289 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
void MouseInputReport (MouseInputReport && other)
Defined at line 2290 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
MouseInputReport & operator= (MouseInputReport && other)
Defined at line 2291 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
int64_t & scroll_v ()
Relative vertical scrolling displacement.
Optional. Present iff the mouse reports relative vertical scroll.
bool has_scroll_v ()
int64_t & scroll_h ()
Relative horizontal scrolling displacement.
Optional. Present iff the mouse reports relative horizontal scroll.
bool has_scroll_h ()
::fidl::VectorView<uint8_t> & pressed_buttons ()
A list of currently pressed buttons.
Optional. Empty iff no button is pressed. Present iff the mouse reports
button state.
bool has_pressed_buttons ()
int64_t & position_x ()
The position of X.
The main use of position is from virtual mice like over VNC.
Optional. Present iff the mouse reports absolute X position.
Must not co-exist with `movement_x` and `movement_y`.
bool has_position_x ()
int64_t & position_y ()
The position of Y.
The main use of position is from virtual mice like over VNC.
Optional. Present iff the mouse reports absolute Y position.
Must not co-exist with `movement_x` and `movement_y`.
bool has_position_y ()
MouseInputReport & set_movement_x (::fidl::ObjectView<int64_t> elem)
MouseInputReport & set_movement_x (std::nullptr_t )
MouseInputReport & clear_movement_x ()
MouseInputReport & set_movement_y (::fidl::ObjectView<int64_t> elem)
MouseInputReport & set_movement_y (std::nullptr_t )
MouseInputReport & clear_movement_y ()
MouseInputReport & clear_scroll_v ()
MouseInputReport & clear_pressed_buttons ()
void ~MouseInputReport ()
Defined at line 2293 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
template <typename... Args>
MouseInputReport & set_movement_x (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2364 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
template <typename... Args>
MouseInputReport & set_movement_y (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2373 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
MouseInputReport & set_scroll_v (::fidl::ObjectView<int64_t> elem)
MouseInputReport & set_scroll_v (std::nullptr_t )
MouseInputReport & set_scroll_h (::fidl::ObjectView<int64_t> elem)
MouseInputReport & set_scroll_h (std::nullptr_t )
MouseInputReport & clear_scroll_h ()
MouseInputReport & set_pressed_buttons (::fidl::ObjectView< ::fidl::VectorView<uint8_t>> elem)
MouseInputReport & set_pressed_buttons (std::nullptr_t )
MouseInputReport & set_position_x (::fidl::ObjectView<int64_t> elem)
MouseInputReport & set_position_x (std::nullptr_t )
MouseInputReport & clear_position_x ()
MouseInputReport & set_position_y (std::nullptr_t )
MouseInputReport & clear_position_y ()
void MouseInputReport (::fidl::AnyArena & allocator)
void MouseInputReport (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_input_report::wire::MouseInputReport>> && frame)
This constructor allows a user controlled allocation (not using a Arena).
It should only be used when performance is key.
As soon as the frame is given to the table, it must not be used directly or for another table.
void Allocate (::fidl::AnyArena & allocator)
void Init (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_input_report::wire::MouseInputReport>> && frame_ptr)
template <typename... Args>
MouseInputReport & set_scroll_v (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2382 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
template <typename... Args>
MouseInputReport & set_scroll_h (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2391 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
template <typename... Args>
MouseInputReport & set_pressed_buttons (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2400 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
template <typename... Args>
MouseInputReport & set_position_x (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2409 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
MouseInputReport & set_position_y (::fidl::ObjectView<int64_t> elem)
template <typename... Args>
MouseInputReport & set_position_y (::fidl::AnyArena & allocator, Args &&... args)
Defined at line 2418 of file fidling/gen/sdk/fidl/fuchsia.input.report/fuchsia.input.report/cpp/fidl/fuchsia.input.report/cpp/wire_types.h
Friends
class WireTableBaseBuilder
class WireTableBaseBuilder