X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.h;h=4cbaf22021977a5811ef4bd874adc45b7a39cfd8;hp=bac48db83fcea1d9dd86ff57bf2c108fa7d3b2b5;hb=e89cfe68c0b4d117ce79d0d38fcc085de77a3083;hpb=dfac7b1b66005a76a10a2aa2d64d551d4e11ae94 diff --git a/src/common/signalproxy.h b/src/common/signalproxy.h index bac48db8..4cbaf220 100644 --- a/src/common/signalproxy.h +++ b/src/common/signalproxy.h @@ -118,6 +118,7 @@ public slots: protected: void customEvent(QEvent *event); + void syncCall(const SyncableObject *obj, ProxyMode modeType, const char *funcname, va_list ap); private slots: void dataAvailable(); @@ -202,6 +203,7 @@ private: bool _secure; // determines if all connections are in a secured state (using ssl or internal connections) friend class SignalRelay; + friend class SyncableObject; }; @@ -213,9 +215,10 @@ public: ExtendedMetaObject(const QMetaObject *meta); const QList &argTypes(int methodId); - const int &returnType(int methodId); - const int &minArgCount(int methodId); + int returnType(int methodId); + int minArgCount(int methodId); const QByteArray &methodName(int methodId); + int methodId(const QByteArray &methodName); const QHash &syncMap(); const QHash &receiveMap(); int updatedRemotelyId(); @@ -229,12 +232,14 @@ public: private: typedef QHash > ArgHash; typedef QHash MethodNameHash; + typedef QHash MethodIdHash; const QMetaObject *_meta; ArgHash _argTypes; QHash _returnType; QHash _minArgCount; MethodNameHash _methodNames; + MethodIdHash _methodIds; int _updatedRemotelyId; // id of the updatedRemotely() signal - makes things faster QHash _syncMap; QHash _receiveMap;