Spec-Zone.ru › Qt 6.0

Класс QDBusAbstractAdaptor

Класс QDBusAbstractAdaptor является базовым классом для классов адаптеров D-Bus. Подробнее...

Заголовок: #include <QDBusAbstractAdaptor>
CMake: find_package(Qt6 COMPONENTS Dbus REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Dbus)
qmake: QT += dbus
Наследуется от: QObject
  • Список всех членов, включая унаследованные

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

virtual ~QDBusAbstractAdaptor()

Защищенные функции

QDBusAbstractAdaptor(QObject *obj)
bool autoRelaySignals() const
void setAutoRelaySignals(bool enable)

Макросы

Q_NOREPLY

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

Класс QDBusAbstractAdaptor — это отправная точка для всех объектов, предназначенных для предоставления интерфейсов внешнему миру с использованием D-Bus. Это достигается путем подключения одного или нескольких классов, производных от QDBusAbstractAdaptor, к обычному объекту QObject, а затем регистрации этого QObject с помощью QDBusConnection::registerObject. Объекты QDBusAbstractAdaptor предназначены для создания лёгких оболочек, в основном просто передающих вызовы в реальный объект (родительский) и сигналы из него.

Каждый класс, производный от QDBusAbstractAdaptor, должен определять реализуемый интерфейс D-Bus, используя макрос Q_CLASSINFO в определении класса. Обратите внимание, что таким образом может быть экспортирован только один интерфейс.

QDBusAbstractAdaptor использует стандартный механизм QObject сигналов, слотов и свойств для определения сигналов, методов и свойств, которые нужно экспортировать на шину. Любой сигнал, испущенный классами, производными от QDBusAbstractAdaptor, будет автоматически перенаправлен через любые подключения D-Bus, на которых зарегистрирован объект.

Классы, производные от QDBusAbstractAdaptor, должны создаваться в куче с использованием оператора new и не должны удаляться пользователем (они будут удалены автоматически, когда объект, к которому они подключены, также будет удален).

См. также Использование адаптеров и QDBusConnection.

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

[protected] QDBusAbstractAdaptor::QDBusAbstractAdaptor(QObject *obj)

Создаёт QDBusAbstractAdaptor с объектом obj в качестве родительского объекта.

[virtual] QDBusAbstractAdaptor::~QDBusAbstractAdaptor()

Удаляет адаптер.

Предупреждение: Адаптеры удаляются автоматически, когда удаляется реальный объект, на который они ссылаются. Не удаляйте адаптеры самостоятельно.

[protected] bool QDBusAbstractAdaptor::autoRelaySignals() const

Возвращает true, если автоматическая передача сигналов от реального объекта (см. object()) включена, в противном случае возвращает false.

См. также setAutoRelaySignals().

[protected] void QDBusAbstractAdaptor::setAutoRelaySignals(bool enable)

Включает или выключает автоматическую передачу сигналов от реального объекта (см. object()).

Автоматическая передача сигналов состоит из соединения сигналов родительского объекта с сигналами дочернего объекта, имеющими одинаковую сигнатуру метода в обоих классах.

Если enable установлено в true, соединить сигналы; если установлено в false, отключить все сигналы.

См. также autoRelaySignals().

Документация по макросам

Q_NOREPLY

Макрос Q_NOREPLY может использоваться для обозначения метода, который должен вызываться, но не ожидать его завершения обработки перед возвращением из QDBusInterface::call(). Вызываемый метод не может возвращать какие-либо выходные аргументы, и если он это делает, все такие аргументы будут проигнорированы.

Вы можете использовать этот макрос в собственных адаптерах, поместив его перед значением возврата вашего метода (которое должно быть "void") в объявлении класса, как показано в примере:

Q_NOREPLY void myMethod();

Его присутствие в реализации метода (вне объявления класса) необязательно.

См. также Использование адаптеров Qt D-Bus.

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

Spec-Zone.ru

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