113 std::vector<PointerSample> take_pending_();
116 std::vector<Point> path_;
117 bool has_pending_ =
false;
118 std::size_t merged_in_pending_ = 0;
119 std::size_t last_merged_ = 0;
120 std::size_t total_merged_ = 0;
Collapses runs of motion into one sample per presented frame while leaving button transitions untouch...
Definition pointer_coalescer.hpp:71
std::vector< PointerSample > submit(const PointerSample &sample)
Feed one raw sample.
std::vector< PointerSample > flush_frame()
Call once per PRESENTED frame.
std::size_t total_merged() const
Total motion samples dropped since construction. Diagnostics only.
Definition pointer_coalescer.hpp:106
const std::vector< Point > & pending_path() const
Positions merged into the currently-held motion, oldest first, with the surviving position last.
Definition pointer_coalescer.hpp:98
std::size_t last_merged_count() const
Raw motion samples discarded by the most recent flush or transition — the samples that would have bee...
Definition pointer_coalescer.hpp:103
void reset()
Drop any held motion without dispatching it.
bool has_pending() const
True when motion is held and waiting for a flush.
Definition pointer_coalescer.hpp:94
Hover-cursor tracking for platform window hosts.
Definition fwd.hpp:27
MouseButton
Mouse button identifiers.
Definition input_events.hpp:67
@ left
Definition input_events.hpp:69
MousePhase
Explicit press/drag/release phase for a pointer gesture.
Definition input_events.hpp:94
@ automatic
Infer from is_down (legacy / headless default).
Definition input_events.hpp:95
@ drag
Pointer moved with the button held (a drag tick).
Definition input_events.hpp:97
@ hover
Pointer moved with no button held.
Definition input_events.hpp:99
Definition geometry.hpp:20
Device identity of the pointer a delivery verb is dispatching, stamped onto every MouseEvent the verb...
Definition pointer_dispatch.hpp:110
One pointer sample as the host received it, before any coalescing.
Definition pointer_coalescer.hpp:46
PointerAttributes pointer
Definition pointer_coalescer.hpp:55
int click_count
Definition pointer_coalescer.hpp:52
MouseButton button
Definition pointer_coalescer.hpp:54
bool is_motion() const
Motion is mergeable; a button transition is not.
Definition pointer_coalescer.hpp:60
std::vector< Point > path
Raw positions represented by this sample after coalescing, oldest first.
Definition pointer_coalescer.hpp:50
Point position
Definition pointer_coalescer.hpp:47
std::uint16_t modifiers
Definition pointer_coalescer.hpp:51
MousePhase phase
Definition pointer_coalescer.hpp:53