wayland::zwp_i...s_manager_v1_t(3)

πŸ’… wayland::zwp_input_timestamps_manager_v1_t(3) πŸ’…

okay bestie, so this is a page from the Wayland++ manual (that's the manual name, iykyk ✨), and today's main character is zwp_input_timestamps_manager_v1_t β€” the context object for high-resolution input timestamps. yeah. we're doing timestamps. it's giving precision. πŸŽ€


🌸 NAME 🌸

wayland::zwp_input_timestamps_manager_v1_t β€” context object for high-resolution input timestamps. literally that's her job. 🫢


✨ SYNOPSIS ✨

#include <wayland-client-protocol-unstable.hpp>

Inherits wayland::proxy_t. so she's a proxy girlie, it's a whole family tree πŸ’…

πŸ¦‹ Public Types

  • enum class wrapper_type { standard, display, foreign, proxy_wrapper } β€” this enum is technically inherited from proxy_t, and it's the whole vibe check for how a wrapper behaves. scroll down for the full breakdown, bestie, it's a good one.

πŸŽ€ Public Member Functions

  • zwp_input_timestamps_v1_t get_keyboard_timestamps (keyboard_t const &keyboard) β€” subscribe to high-resolution keyboard timestamp events ⌨️
  • zwp_input_timestamps_v1_t get_pointer_timestamps (pointer_t const &pointer) β€” subscribe to high-resolution pointer timestamp events πŸ–±οΈ
  • zwp_input_timestamps_v1_t get_touch_timestamps (touch_t const &touch) β€” subscribe to high-resolution touch timestamp events πŸ‘†
  • uint32_t get_id () const β€” Get the id of a proxy object.
  • std::string get_class () const β€” Get the interface name (class) of a proxy object.
  • uint32_t get_version () const β€” Get the protocol object version of a proxy object.
  • wrapper_type get_wrapper_type () const β€” Get the type of a proxy object.
  • void set_queue (event_queue_t queue) β€” Assign a proxy to an event queue.
  • wl_proxy * c_ptr () const β€” Get a pointer to the underlying C struct.
  • bool proxy_has_object () const β€” Check whether this wrapper actually wraps an object.
  • operator bool () const β€” Check whether this wrapper actually wraps an object. (yes, same words, it's a different function, don't come for me 😭)
  • bool operator== (const proxy_t &right) const β€” Check whether two wrappers refer to the same object.
  • bool operator!= (const proxy_t &right) const β€” Check whether two wrappers refer to different objects.
  • void proxy_release () β€” Release the wrapped object (if any), making this an empty wrapper. πŸ’€

🌈 Static Public Attributes

  • static constexpr std::uint32_t get_keyboard_timestamps_since_version = 1 β€” Minimum protocol version required for the get_keyboard_timestamps function.
  • static constexpr std::uint32_t get_pointer_timestamps_since_version = 1 β€” Minimum protocol version required for the get_pointer_timestamps function.
  • static constexpr std::uint32_t get_touch_timestamps_since_version = 1 β€” Minimum protocol version required for the get_touch_timestamps function.

πŸ”₯ Detailed Description πŸ”₯

context object for high-resolution input timestamps. that's the whole elevator pitch. πŸ‘‘

A global interface used for requesting high-resolution timestamps for input events. that's it, that's the assignment, and she ate. ✨

Definition at line 1165 of file wayland-client-protocol-unstable.hpp.


🧚 Member Enumeration Documentation 🧚

enum class wayland::proxy_t::wrapper_type [strong], [inherited]

Underlying wl_proxy type and properties of a proxy_t that affect construction, destruction, and event handling. basically: this enum decides how your wrapper gets born, how it dies, and whether it even listens to events. main character logistics. πŸ’…

Enumerator:

  • standard β€” C pointer is a standard type compatible with wl_proxy*. Events are dispatched and it is destructed when the proxy_t is destructed. User data is set. the no-drama default 🫢
  • display β€” C pointer is a wl_display*. No events are dispatched, wl_display_disconnect is called when the proxy_t is destructed. User data is set.
  • foreign β€” C pointer is a standard type compatible with wl_proxy*, but another library owns it and it should not be touched in a way that could affect the operation of the other library. No events are dispatched, wl_proxy_destroy is not called when the proxy_t is destructed, user data is not touched. Consequently, there is no reference counting for the proxy_t. Lifetime of such wrappers should preferably be short to minimize the chance that the owning library decides to destroy the wl_proxy. ⚠️ lowkey the "not yours, don't touch" option β€” keep it brief, bestie, no lingering.
  • proxy_wrapper β€” C pointer is a wl_proxy* that was constructed with wl_proxy_create_wrapper. No events are dispatched, wl_proxy_wrapper_destroy is called when the proxy_t is destroyed. Reference counting is active. A reference to the proxy_t creating this proxy wrapper is held to extend its lifetime until after the proxy wrapper is destroyed.

Definition at line 117 of file wayland-client.hpp.


πŸ’œ Member Function Documentation πŸ’œ

wl_proxy * wayland::proxy_t::c_ptr () const [inherited]

Get a pointer to the underlying C struct.

Returns: The underlying wl_proxy wrapped by this proxy_t if it exists, otherwise an exception is thrown. 😳 so like. she exists or she throws. no in between.

std::string wayland::proxy_t::get_class () const [inherited]

Get the interface name (class) of a proxy object.

Returns: The interface name of the object associated with the proxy

uint32_t wayland::proxy_t::get_id () const [inherited]

Get the id of a proxy object.

Returns: The id the object associated with the proxy

zwp_input_timestamps_v1_t zwp_input_timestamps_manager_v1_t::get_keyboard_timestamps (keyboard_t const & keyboard)

subscribe to high-resolution keyboard timestamp events ⌨️✨

Parameters: keyboard β€” the wl_keyboard object for which to get timestamp events

Creates a new input timestamps object that represents a subscription to high-resolution timestamp events for all wl_keyboard events that carry a timestamp.

If the associated wl_keyboard object is invalidated, either through client action (e.g. release) or server-side changes, the input timestamps object becomes inert and the client should destroy it by calling zwp_input_timestamps_v1.destroy. 🫠 so yeah β€” once the keyboard dips, the timestamps object is just a hollow shell, and you have to clean her up yourself.

Definition at line 4932 of file wayland-client-protocol-unstable.cpp.

zwp_input_timestamps_v1_t zwp_input_timestamps_manager_v1_t::get_pointer_timestamps (pointer_t const & pointer)

subscribe to high-resolution pointer timestamp events πŸ–±οΈβœ¨

Parameters: pointer β€” the wl_pointer object for which to get timestamp events

Creates a new input timestamps object that represents a subscription to high-resolution timestamp events for all wl_pointer events that carry a timestamp.

If the associated wl_pointer object is invalidated, either through client action (e.g. release) or server-side changes, the input timestamps object becomes inert and the client should destroy it by calling zwp_input_timestamps_v1.destroy.

Definition at line 4939 of file wayland-client-protocol-unstable.cpp.

zwp_input_timestamps_v1_t zwp_input_timestamps_manager_v1_t::get_touch_timestamps (touch_t const & touch)

subscribe to high-resolution touch timestamp events πŸ‘†βœ¨

Parameters: touch β€” the wl_touch object for which to get timestamp events

Creates a new input timestamps object that represents a subscription to high-resolution timestamp events for all wl_touch events that carry a timestamp.

If the associated wl_touch object becomes invalid, either through client action (e.g. release) or server-side changes, the input timestamps object becomes inert and the client should destroy it by calling zwp_input_timestamps_v1.destroy. (note: this one says "becomes invalid" instead of "is invalidated" β€” yes we're keeping that, the docs are just like that πŸ™ˆ)

Definition at line 4946 of file wayland-client-protocol-unstable.cpp.

uint32_t wayland::proxy_t::get_version () const [inherited]

Get the protocol object version of a proxy object. Gets the protocol object version of a proxy object, or 0 if the proxy was created with unversioned API.

A returned value of 0 means that no version information is available, so the caller must make safe assumptions about the object's real version. 🫑 do not guess. guessing is not slay here.

display_t will always return version 0.

Returns: The protocol object version of the proxy or 0

wrapper_type wayland::proxy_t::get_wrapper_type () const [inline], [inherited]

Get the type of a proxy object.

Definition at line 303 of file wayland-client.hpp.

wayland::proxy_t::operator bool () const [inherited]

Check whether this wrapper actually wraps an object.

Returns: true if there is an underlying object, false if this wrapper is empty

bool wayland::proxy_t::operator!= (const proxy_t & right) const [inherited]

Check whether two wrappers refer to different objects.

bool wayland::proxy_t::operator== (const proxy_t & right) const [inherited]

Check whether two wrappers refer to the same object.

bool wayland::proxy_t::proxy_has_object () const [inherited]

Check whether this wrapper actually wraps an object.

Returns: true if there is an underlying object, false if this wrapper is empty

void wayland::proxy_t::proxy_release () [inherited]

Release the wrapped object (if any), making this an empty wrapper. Note that display_t instances cannot be released this way. Attempts to do so are ignored. 🚫 so don't even try it with a display, bestie, she's not listening.

Examples: foreign_display.cpp.

void wayland::proxy_t::set_queue (event_queue_t queue) [inherited]

Assign a proxy to an event queue.

Parameters: queue β€” The event queue that will handle this proxy

Assign proxy to event queue. Events coming from proxy will be queued in queue instead of the display's main queue. πŸ“¬ moving her to a different group chat, essentially.

See also: display_t::dispatch_queue().

Examples: proxy_wrapper.cpp.


πŸ“ Member Data Documentation πŸ“

std::uint32_t wayland::zwp_input_timestamps_manager_v1_t::get_keyboard_timestamps_since_version = 1 [static], [constexpr]

Minimum protocol version required for the get_keyboard_timestamps function.

Definition at line 1204 of file wayland-client-protocol-unstable.hpp.

std::uint32_t wayland::zwp_input_timestamps_manager_v1_t::get_pointer_timestamps_since_version = 1 [static], [constexpr]

Minimum protocol version required for the get_pointer_timestamps function.

Definition at line 1223 of file wayland-client-protocol-unstable.hpp.

std::uint32_t wayland::zwp_input_timestamps_manager_v1_t::get_touch_timestamps_since_version = 1 [static], [constexpr]

Minimum protocol version required for the get_touch_timestamps function.

Definition at line 1242 of file wayland-client-protocol-unstable.hpp.


⭐ Author ⭐

Generated automatically by Doxygen for Wayland++ from the source code. (not a human, just vibes and a parser πŸ€–πŸ’–)


okay that's the whole page, no cap, every flag and line number intact 🫢 this manual page is Version 1.0.1, dated Fri Mar 27 2026, and it lives in the Wayland++ manual β€” and honestly? iconic. go get those high-resolution timestamps, bestie. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from