17#ifndef QDBUSCONNECTION_P_H
18#define QDBUSCONNECTION_P_H
20#include <QtDBus/private/qtdbusglobal_p.h>
24#include <QtCore/qatomic.h>
25#include <QtCore/qhash.h>
26#include <QtCore/qlist.h>
27#include <QtCore/qobject.h>
28#include <QtCore/qpointer.h>
29#include <QtCore/qreadwritelock.h>
30#include <QtCore/qstringlist.h>
31#include <QtCore/qvarlengtharray.h>
46class QDBusObjectPrivate;
57#ifndef QT_BOOTSTRAPPED
94 arg0namespace ==
other.arg0namespace;
111 VirtualObject = 0x01000000
126 {
return obj || !children.isEmpty(); }
153 : owner(owner), refcount(refcount)
165 void createBusService();
169 void closeConnection();
173 bool shouldWatchService(
const QString &service);
174 void watchService(
const QString &service, QDBusServiceWatcher::WatchMode
mode,
176 void unwatchService(
const QString &service, QDBusServiceWatcher::WatchMode
mode,
183 const char *returnMethod,
const char *errorMethod,
int timeout = -1);
187 QObject *receiver,
const char *slot);
190 QObject *receiver,
const char *slot);
193 QObject *receiver,
const char *slot);
196 QObject *receiver,
const char *slot);
199 void connectRelay(
const QString &service,
202 void disconnectRelay(
const QString &service,
205 void registerService(
const QString &serviceName);
206 void unregisterService(
const QString &serviceName);
235 SignalHookHash::Iterator removeSignalHookNoLock(SignalHookHash::Iterator
it);
238 bool isServiceRegisteredByThread(
const QString &serviceName);
242 void watchForDBusDisconnection();
246 void handleAuthentication();
253 void setDispatchEnabled(
bool enable);
264 void registerServiceNoLock(
const QString &serviceName);
265 void unregisterServiceNoLock(
const QString &serviceName);
266 void handleDBusDisconnection();
283 return (QDBusConnection::ConnectionCapabilities)capabilities.
loadRelaxed();
328 bool buildSignature);
349#ifndef QT_BOOTSTRAPPED
Connects to the accessibility dbus.
T loadRelaxed() const noexcept
static QDBusConnectionPrivate * d(const QDBusConnection &q)
bool signalNeedsDisconnecting(const QString &key, const QDBusConnectionPrivate::SignalHook &hook)
PendingMessageList pendingMessages
WatchedServicesHash watchedServices
bool anonymousAuthenticationAllowed
QMultiHash< qintptr, Watcher > WatcherHash
MatchRefCountHash matchRefCounts
QStringList serverConnectionNames
bool signalNeedsConnecting(const QString &key, const QDBusConnectionPrivate::SignalHook &hook)
QHash< QByteArray, int > MatchRefCountHash
static QDBusConnection q(QDBusConnectionPrivate *connection)
QList< QDBusPendingCallPrivate * > PendingCallList
void serviceOwnerChanged(const QString &name, const QString &oldOwner, const QString &newOwner)
QHash< int, DBusTimeout * > TimeoutHash
QDBusConnection::ConnectionCapabilities connectionCapabilities() const
PendingCallList pendingCalls
SignalHookHash signalHooks
void messageNeedsSending(QDBusPendingCallPrivate *pcall, void *msg, int timeout=-1)
QDBusConnectionInterface * busService
void spyHooksFinished(const QDBusMessage &msg)
QMultiHash< QString, SignalHook > SignalHookHash
void dispatchStatusChanged()
static DBusHandlerResult messageFilter(DBusConnection *, DBusMessage *, void *)
QHash< QString, WatchedServiceData > WatchedServicesHash
MetaObjectHash cachedMetaObjects
void newServerConnection(QDBusConnectionPrivate *newConnection)
QHash< QString, QDBusMetaObject * > MetaObjectHash
QList< QDBusMessage > PendingMessageList
DBusConnection * connection
QDBusServer * serverObject
void callWithCallbackFailed(const QDBusError &error, const QDBusMessage &message)
UnregisterMode
The mode for unregistering an object path:
ErrorType
In order to facilitate verification of the most common D-Bus errors generated by the D-Bus implementa...
virtual void timerEvent(QTimerEvent *event)
This event handler can be reimplemented in a subclass to receive timer events for the object.
\macro QT_RESTRICTED_CAST_FROM_ASCII
QSet< QString >::iterator it
CallMode
This enum describes the various ways of placing a function call.
Combined button and popup list for selecting options.
AudioChannelLayoutTag tag
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch * watch
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage return DBusPendingCall DBusPendingCall return DBusPendingCall return dbus_int32_t return DBusServer * server
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char * interface
DBusConnection const char DBusError * error
DBusConnection * connection
bool qDBusInterfaceInObject(QObject *obj, const QString &interface_name)
QString qDBusIntrospectObject(const QDBusConnectionPrivate::ObjectTreeNode &node, const QString &path)
QString qDBusInterfaceFromMetaObject(const QMetaObject *mo)
QDBusMessage qDBusPropertyGetAll(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
QDBusMessage qDBusPropertyGet(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
int qDBusParametersForMethod(const QMetaMethod &mm, QList< QMetaType > &metaTypes, QString &errorMsg)
Q_DBUS_EXPORT bool qDBusCheckAsyncTag(const char *tag)
QDBusMessage qDBusPropertySet(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
static int findSlot(const QMetaObject *mo, const QByteArray &name, int flags, const QString &signature_, QList< QMetaType > &metaTypes)
GLbitfield GLuint64 timeout
[4]
GLuint GLsizei const GLchar * message
GLdouble GLdouble GLdouble GLdouble q
GLsizei const GLchar *const * path
#define Q_AUTOTEST_EXPORT
ReturnedValue read(const char *data)
QFuture< QSet< QChar > > set
[10]
gzip write("uncompressed data")
clientDtls setPeer(address, port, peerName)
bool operator==(const ArgMatchRules &other) const
QDBusVirtualObject * treeNode
bool operator<(const QString &other) const
QList< ObjectTreeNode > DataList
bool operator<(QStringView other) const
ObjectTreeNode(const QString &n)
ArgMatchRules argumentMatch
QList< QMetaType > params
WatchedServiceData(const QString &owner, int refcount=0)
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent