voidpresentation_t::clock_id(uint32_tclk_id,boolpost=true)
clock ID for timestamps
Parametersclk_id platform clock identifier
This event tells the client in which clock domain the compositor interprets the timestamps used by the
presentation extension. This clock is called the presentation clock.
The compositor sends this event when the client binds to the presentation interface. The presentation
clock does not change during the lifetime of the client connection.
The clock identifier is platform dependent. On Linux/glibc, the identifier value is one of the clockid_t
values accepted by clock_gettime(). clock_gettime() is defined by POSIX.1-2001.
Timestamps in this clock domain are expressed as tv_sec_hi, tv_sec_lo, tv_nsec triples, each component
being an unsigned 32-bit value. Whole seconds are in tv_sec which is a 64-bit value combined from
tv_sec_hi and tv_sec_lo, and the additional fractional part in tv_nsec as nanoseconds. Hence, for valid
timestamps tv_nsec must be in [0, 999999999].
Note that clock_id applies only to the presentation clock, and implies nothing about e.g. the timestamps
used in the Wayland core protocol input events.
Compositors should prefer a clock which does not jump and is not slewed e.g. by NTP. The absolute value
of the clock is irrelevant. Precision of one millisecond or better is recommended. Clients must be able
to query the current clock value directly, not by asking the compositor.
Definition at line 702 of file wayland-server-protocol-extra.cpp.
std::stringwayland::server::resource_t::get_class()[inherited]
Retrieve the interface name (class) of a resource object.
Returns
Interface name of the resource object.
client_twayland::server::resource_t::get_client()const[inherited]
Get the associated client
Returns
the client that owns the resource.
uint32_twayland::server::resource_t::get_id()const[inherited]
Get the internal ID of the resource
Returns
the internal ID of the resource
unsignedintwayland::server::resource_t::get_version()const[inherited]
Get interface version
Returns
Interface version this resource has been constructed with.
std::function<void()>&presentation_t::on_destroy()
unbind from the presentation interface Informs the server that the client will no longer be using this
protocol object. Existing objects created by this object are not affected.
Definition at line 690 of file wayland-server-protocol-extra.cpp.
std::function<void(surface_t,presentation_feedback_t)>&presentation_t::on_feedback()
request presentation feedback information
Parameterssurface target surface
callback new feedback object
Request presentation feedback for the current content submission on the given surface. This creates a new
presentation_feedback object, which will deliver the feedback information once. If multiple
presentation_feedback objects are created for the same submission, they will all deliver the same
information.
For details on what information is returned, see the presentation_feedback interface.
Definition at line 696 of file wayland-server-protocol-extra.cpp.
voidpresentation_t::post_invalid_flag(std::stringconst&msg)
Post error: invalid flag.
Definition at line 712 of file wayland-server-protocol-extra.cpp.
voidpresentation_t::post_invalid_timestamp(std::stringconst&msg)
Post error: invalid value in tv_nsec.
Definition at line 707 of file wayland-server-protocol-extra.cpp.
voidwayland::server::resource_t::post_no_memory()const[inherited]
Post 'not enough memory' error to the client
If the compositor has not enough memory to fulfill a certail request of the client, this function can be
called to notify the client of this circumstance.
boolwayland::server::resource_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