이 페이지에서

QDBusAbstractAdaptor Class

QDBusAbstractAdaptor 클래스는 D-Bus 어댑터 클래스의 기본 클래스입니다. 더 보기...

헤더: #include <QDBusAbstractAdaptor>
CMake: find_package(Qt6 REQUIRED COMPONENTS DBus)
target_link_libraries(mytarget PRIVATE Qt6::DBus)
qmake: QT += dbus
상속: QObject

공개 함수

보호된 함수

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

매크로

상세 설명

QDBusAbstractAdaptor 클래스는 D-Bus를 사용하여 외부 세계에 인터페이스를 제공하려는 모든 객체의 출발점입니다. 이는 QDBusAbstractAdaptor에서 파생된 하나 이상의 클래스를 일반 QObject 에 연결한 다음, 해당 QObject 를 QDBusConnection::registerObject 에 등록함으로써 이루어집니다. QDBusAbstractAdaptor 객체는 경량 래퍼로 설계되었으며, 주로 실제 객체(부모 객체)로의 호출과 그로부터 오는 신호를 단순히 중계하는 역할을 합니다.

각 QDBusAbstractAdaptor 파생 클래스는 클래스 정의에서 Q_CLASSINFO 매크로를 사용하여 구현하는 D-Bus 인터페이스를 정의해야 합니다. 이 방식으로 노출할 수 있는 인터페이스는 하나뿐이라는 점에 유의하십시오.

QDBusAbstractAdaptor는 신호, 슬롯 및 속성에 대한 표준 QObject 메커니즘을 사용하여 버스로 내보낼 신호, 메서드 및 속성을 결정합니다. QDBusAbstractAdaptor에서 파생된 클래스가 발산하는 모든 신호는 해당 객체가 등록된 모든 D-Bus 연결을 통해 자동으로 전달됩니다.

QDBusAbstractAdaptor에서 파생된 클래스는 new 연산자를 사용하여 힙에 생성되어야 하며, 사용자가 직접 삭제해서는 안 됩니다(이 클래스들은 연결된 객체가 삭제될 때 자동으로 삭제됩니다).

‘어댑터 사용 ’ 및 ‘ QDBusConnection ’항목도 참조하십시오 .

멤버 함수 문서

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

obj 를 부모 객체로 하는 QDBusAbstractAdaptor를 생성합니다.

[virtual noexcept] QDBusAbstractAdaptor::~QDBusAbstractAdaptor()

어댑터를 파기합니다.

경고: 어댑터는 참조하는 실제 객체가 소멸되면 자동으로 소멸됩니다. 어댑터를 직접 삭제하지 마십시오.

[protected] bool QDBusAbstractAdaptor::autoRelaySignals() const

실제 객체(object() 참조)의 자동 신호 전달이 활성화된 경우 true 를 반환하고, 그렇지 않은 경우 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 어댑터 사용' 항목도 참조하십시오 .

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.