X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.h;h=18038093edc0f9db64a8cc600929af5667c5daaf;hb=8ff5e8deb3662e1b540574e8f7a07d39edcf737e;hp=557e8dd3203fb10e531c089c7ab4b1f9b8f87679;hpb=68cbd5e48cb870f641e538aa69f46f4c9e31f3ae;p=quassel.git diff --git a/src/common/signalproxy.h b/src/common/signalproxy.h index 557e8dd3..18038093 100644 --- a/src/common/signalproxy.h +++ b/src/common/signalproxy.h @@ -48,7 +48,8 @@ public: RpcCall, InitRequest, InitData, - HeartBeat + HeartBeat, + HeartBeatReply }; SignalProxy(QObject *parent); @@ -57,7 +58,7 @@ public: virtual ~SignalProxy(); void setProxyMode(ProxyMode mode); - ProxyMode proxyMode() const; + inline ProxyMode proxyMode() const { return _proxyMode; } bool addPeer(QIODevice *iodev); void removePeer(QIODevice *iodev = 0); @@ -120,13 +121,15 @@ private slots: void objectRenamed(const QString &newname, const QString &oldname); void objectRenamed(const QByteArray &classname, const QString &newname, const QString &oldname); void sendHeartBeat(); - void receiveHeartBeat(QIODevice *dev); - + void receiveHeartBeat(QIODevice *dev, const QVariantList ¶ms); + void receiveHeartBeatReply(QIODevice *dev, const QVariantList ¶ms); + signals: void peerRemoved(QIODevice *dev); void connected(); void disconnected(); void objectInitialized(SyncableObject *); + void lagUpdated(int lag); private: void init(); @@ -160,6 +163,8 @@ private: QVariantMap initData(SyncableObject *obj) const; void setInitData(SyncableObject *obj, const QVariantMap &properties); + void updateLag(QIODevice *dev, int lag); + public: void dumpSyncMap(SyncableObject *object); inline int peerCount() const { return _peers.size(); } @@ -170,6 +175,7 @@ private: quint32 byteCount; bool usesCompression; int sentHeartBeats; + int lag; peerInfo() : byteCount(0), usesCompression(false), sentHeartBeats(0) {} }; //QHash _peerByteCount;