Spec-Zone.ru › Qt 6.0

Класс QWaylandCompositor

Класс QWaylandCompositor управляет сервером отображения Wayland. Подробнее...

Заголовок: #include <QWaylandCompositor>
CMake: find_package(Qt6 COMPONENTS Waylandcompositor REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Waylandcompositor)
qmake: QT += waylandcompositor
С тех пор: Qt 5.8
Наследует: QWaylandObject
  • Список всех членов, включая унаследованные

Свойства

  • additionalShmFormats : QVector<ShmFormat>
  • created : const bool
  • defaultOutput : QWaylandOutput*
  • defaultSeat : QWaylandSeat* const
  • retainedSelection : bool
  • socketName : QByteArray
  • useHardwareIntegrationExtension : bool

Открытые функции

QWaylandCompositor(QObject *parent = nullptr)
virtual ~QWaylandCompositor() override
void addSocketDescriptor(int fd)
QVector<QWaylandCompositor::ShmFormat> additionalShmFormats() const
virtual void create()
QWaylandOutput * defaultOutput() const
QWaylandSeat * defaultSeat() const
void destroyClient(QWaylandClient *client)
void destroyClientForSurface(QWaylandSurface *surface)
virtual void grabSurface(QWaylandSurfaceGrabber *grabber, const QWaylandBufferRef &buffer)
bool isCreated() const
QWaylandOutput * outputFor(QWindow *window) const
bool retainedSelectionEnabled() const
void setAdditionalShmFormats(const QVector<QWaylandCompositor::ShmFormat> &additionalShmFormats)
void setDefaultOutput(QWaylandOutput *output)
void setRetainedSelectionEnabled(bool enabled)
void setSocketName(const QByteArray &name)
void setUseHardwareIntegrationExtension(bool use)
QByteArray socketName() const
bool useHardwareIntegrationExtension() const

Сигналы

void additionalShmFormatsChanged()
void createdChanged()
void defaultOutputChanged()
void defaultSeatChanged(QWaylandSeat *newDevice, QWaylandSeat *oldDevice)
void retainedSelectionChanged(bool retainedSelection)
void socketNameChanged(const QByteArray &socketName)
void surfaceCreated(QWaylandSurface *surface)
void surfaceRequested(QWaylandClient *client, uint id, int version)
void useHardwareIntegrationExtensionChanged()

Подробное описание

Класс QWaylandCompositor управляет подключениями к клиентам, а также различными выводами и местами.

Обычно приложение-композитор имеет один экземпляр WaylandCompositor, который может иметь несколько выводов в качестве дочерних элементов.

Документация свойств

[since 6.0] additionalShmFormats : QVector<ShmFormat>

Это свойство содержит список дополнительных форматов wl_shm, рекламируемых как поддерживаемые композитором.

По умолчанию, перечислены только необходимые форматы ShmFormat_ARGB8888 и ShmFormat_XRGB8888, и этот список будет пустым.

Это свойство должно быть установлено до создания композитора create. Последующие изменения не повлияют.

Это свойство было введено в Qt 6.0.

Функции доступа:

QVector<QWaylandCompositor::ShmFormat> additionalShmFormats() const
void setAdditionalShmFormats(const QVector<QWaylandCompositor::ShmFormat> &additionalShmFormats)

Сигнал уведомления:

void additionalShmFormatsChanged()

[read-only] created : const bool

Это свойство равно true, если QWaylandCompositor был инициализирован, в противном случае оно равно false.

Функции доступа:

bool isCreated() const

Сигнал уведомления:

void createdChanged()

defaultOutput : QWaylandOutput*

Это свойство содержит первый в списке выводов, добавленных в QWaylandCompositor, или null, если выводы не были добавлены.

Установка нового значения для свойства вывода помещает его в начало списка выводов, делая его новым значением по умолчанию, но предыдущее значение по умолчанию не удаляется из списка. Если новый вывод по умолчанию уже присутствует в списке выводов, он перемещается в начало списка.

Функции доступа:

QWaylandOutput * defaultOutput() const
void setDefaultOutput(QWaylandOutput *output)

Сигнал уведомления:

void defaultOutputChanged()

[read-only] defaultSeat : QWaylandSeat* const

Это свойство содержит стандартное место для этого QWaylandCompositor.

Функции доступа:

QWaylandSeat * defaultSeat() const

Сигнал уведомления:

void defaultSeatChanged(QWaylandSeat *newDevice, QWaylandSeat *oldDevice)

retainedSelection : bool

Это свойство указывает, включена ли функция сохранения выделения.

Функции доступа:

bool retainedSelectionEnabled() const
void setRetainedSelectionEnabled(bool enabled)

Сигнал уведомления:

void retainedSelectionChanged(bool retainedSelection)

socketName : QByteArray

Это свойство содержит имя сокета, используемое QWaylandCompositor для связи с клиентами. Это свойство должно быть установлено до вызова create композитора.

Если socketName пустое (значение по умолчанию), используется содержимое аргумента start --wayland-socket-name. Если этот аргумент не задан, композитор пытается найти имя сокета, которое равно wayland-0 по умолчанию.

Функции доступа:

QByteArray socketName() const
void setSocketName(const QByteArray &name)

Сигнал уведомления:

void socketNameChanged(const QByteArray &socketName)

useHardwareIntegrationExtension : bool

Это свойство указывает, следует ли включить расширение интеграции аппаратного обеспечения для данного QWaylandCompositor.

Это свойство должно быть установлено до вызова create композитора.

Функции доступа:

bool useHardwareIntegrationExtension() const
void setUseHardwareIntegrationExtension(bool use)

Сигнал уведомления:

void useHardwareIntegrationExtensionChanged()

Документация функций-членов

QWaylandCompositor::QWaylandCompositor(QObject *parent = nullptr)

Создаёт QWaylandCompositor с заданным parent.

[signal] void QWaylandCompositor::surfaceCreated(QWaylandSurface *surface)

Этот сигнал испускается, когда создан новый экземпляр QWaylandSurface surface.

[signal] void QWaylandCompositor::surfaceRequested(QWaylandClient *client, uint id, int version)

Этот сигнал испускается, когда client создал поверхность с id id. Также доступна версия интерфейса version.

Включающаяся в этот сигнал функция может создать и инициализировать экземпляр QWaylandSurface в области действия функции. В противном случае создаётся поверхность по умолчанию.

Подключения к этому сигналу должны иметь тип подключения Qt::DirectConnection.

[override virtual] QWaylandCompositor::~QWaylandCompositor()

Уничтожает QWaylandCompositor.

[since 5.12] void QWaylandCompositor::addSocketDescriptor(int fd)

Прослушивает подключения клиентов по дескриптору файла fd, относящемуся уже связанному и прослушивающему сокету сервера.

Не принимает владение дескриптором файла; он должен быть закрыт явно, если это необходимо.

Примечание: Этот метод доступен только с libwayland 1.10.0 или новее. Если построено с более ранним libwayland, этот метод является пустой операцией.

Примечание: Эта функция может быть вызвана через систему метаобъектов и из QML. См. Q_INVOKABLE.

Эта функция была введена в Qt 5.12.

[virtual] void QWaylandCompositor::create()

Инициализирует QWaylandCompositor. Если переопределите эту функцию в своём подклассе, обязательно вызовите базовый класс.

void QWaylandCompositor::destroyClient(QWaylandClient *client)

Уничтожает client.

Примечание: Эта функция может быть вызвана через систему метаобъектов и из QML. См. Q_INVOKABLE.

void QWaylandCompositor::destroyClientForSurface(QWaylandSurface *surface)

Уничтожает клиента для поверхности surface.

Примечание: Эта функция может быть вызвана через систему метаобъектов и из QML. См. Q_INVOKABLE.

[virtual] void QWaylandCompositor::grabSurface(QWaylandSurfaceGrabber *grabber, const QWaylandBufferRef &buffer)

Получите содержимое поверхности из данного буфера. Базовое реализация требует, чтобы контекст OpenGL был привязан к текущему потоку для работы. Если это невозможно, переопределите эту функцию в вашем подклассе композитора, чтобы реализовать пользовательскую логику. Базовая реализация захватывает только общую память и буферы OpenGL, переопределите её в вашем подклассе композитора для обработки других типов буферов.

Примечание: Не следует вызывать эту функцию вручную, а следует использовать QWaylandSurfaceGrabber (grabber).

QWaylandOutput *QWaylandCompositor::outputFor(QWindow *window) const

Возвращает QWaylandOutput, подключенный к данному окну.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qwaylandcompositor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API