- Qt 6.10
- Qt Wayland Compositor
- C++ Classes
- QWaylandPresentationTime
- Qt Wayland Compositor | Commercial or GPLv3

# QWaylandPresentationTime Class

The QWaylandPresentationTime class is an extension to get timing for on-screen presentation. More...

Header: | `#include <QWaylandPresentationTime>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)` `target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)`
qmake: | `QT += waylandcompositor`
Since: | Qt 6.3
In QML: | PresentationTime
Inherits: | QWaylandCompositorExtensionTemplate

- List of all members, including inherited members

## Public Functions

| QWaylandPresentationTime()
| QWaylandPresentationTime(QWaylandCompositor *compositor)
void | sendFeedback(QQuickWindow *window, quint64 sequence, quint64 tv_sec, quint32 tv_nsec)

## Reimplemented Public Functions

virtual void | initialize() override

## Static Public Members

const struct wl_interface * | interface()

## Detailed Description

The QWaylandPresentationTime extension provides a way to track rendering timing for a surface. Client can request feedbacks associated with a surface, then compositor send events for the feedback with the time when the surface is presented on-screen.

QWaylandPresentationTime corresponds to the Wayland `wp_presentation` interface.

## Member Function Documentation

### QWaylandPresentationTime::QWaylandPresentationTime()

Constructs an empty QWaylandPresentationTime object.

### QWaylandPresentationTime::QWaylandPresentationTime(QWaylandCompositor *compositor)

Constructs a QWaylandPresentationTime object for compositor.

### `[override virtual]` void QWaylandPresentationTime::initialize()

Reimplements: QWaylandCompositorExtension::initialize().

Initializes the extension.

### `[static]` const struct wl_interface *QWaylandPresentationTime::interface()

Returns the Wayland interface for the QWaylandPresentationTime.

### `[invokable]` void QWaylandPresentationTime::sendFeedback(QQuickWindow *window, quint64 sequence, quint64 tv_sec, quint32 tv_nsec)

Interface to notify that a frame is presented on screen using window. If your platform supports DRM events, `page_flip_handler` is the proper timing to send it. The sequence is the refresh counter. tv_sec and tv_nsec hold the seconds and nanoseconds parts of the presentation timestamp, respectively.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.