tweaking the SignalProxy resulted in some casualties... fixed.\nUpdated and distclean...
[quassel.git] / src / common / signalproxy.h
index 04ff7a5..e5bd0f6 100644 (file)
@@ -28,6 +28,7 @@
 #include <QPair>
 #include <QString>
 #include <QByteArray>
+#include <QTimer>
 
 class SignalRelay;
 class SyncableObject;
@@ -43,9 +44,11 @@ public:
   };
 
   enum RequestType {
-    Sync = 0,
+    Sync = 1,
+    RpcCall,
     InitRequest,
-    InitData
+    InitData,
+    HeartBeat
   };
 
   SignalProxy(QObject *parent);
@@ -112,6 +115,7 @@ private slots:
   void removePeerBySender();
   void objectRenamed(QString oldname, QString newname);
   void objectRenamed(QByteArray classname, QString oldname, QString newname);
+  void sendHeartBeat();
 
 signals:
   void peerRemoved(QIODevice *obj);
@@ -132,8 +136,8 @@ private:
 
   bool methodsMatch(const QMetaMethod &signal, const QMetaMethod &slot) const;
 
-  void dispatchSignal(QIODevice *receiver, const QVariant &identifier, const QVariantList &params);
-  void dispatchSignal(const QVariant &identifier, const QVariantList &params);
+  void dispatchSignal(QIODevice *receiver, const RequestType &requestType, const QVariantList &params);
+  void dispatchSignal(const RequestType &requestType, const QVariantList &params);
   
   void receivePeerSignal(QIODevice *sender, const QVariant &packedFunc);
   void handleSync(QVariantList params);
@@ -170,6 +174,7 @@ private:
 
 
   ProxyMode _proxyMode;
+  QTimer _heartBeatTimer;
   
   friend class SignalRelay;
 };