X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.h;h=e6288977585613d7c8b60adbb25748a75dca7783;hp=a98e62dd922024ce262ce7e88c557b5b87bbbe17;hb=6efa7d5a4cd38bc21ecfafd04d25a6c952d1e097;hpb=efe20e20080a0c22e1a7b8b84ef622130dbf116e diff --git a/src/common/signalproxy.h b/src/common/signalproxy.h index a98e62dd..e6288977 100644 --- a/src/common/signalproxy.h +++ b/src/common/signalproxy.h @@ -55,6 +55,11 @@ public: HeartBeatReply }; + enum ClientConnectionType { + SignalProxyConnection, + IODeviceConnection + }; + SignalProxy(QObject *parent); SignalProxy(ProxyMode mode, QObject *parent); SignalProxy(ProxyMode mode, QIODevice *device, QObject *parent); @@ -201,8 +206,9 @@ private: IODevicePeer(QIODevice *device, bool compress) : AbstractPeer(AbstractPeer::IODevicePeer), _device(device), byteCount(0), usesCompression(compress), sentHeartBeats(0), lag(0) {} virtual void dispatchSignal(const RequestType &requestType, const QVariantList ¶ms); inline void dispatchPackedFunc(const QVariant &packedFunc) { SignalProxy::writeDataToDevice(_device, packedFunc, usesCompression); } - inline QIODevice *device() const { return _device; } + QString address() const; inline bool isOpen() const { return _device->isOpen(); } + inline void close() const { _device->close(); } inline bool readData(QVariant &item) { return SignalProxy::readDataFromDevice(_device, byteCount, item, usesCompression); } private: QIODevice *_device; @@ -226,16 +232,6 @@ private: // currently a communication object can either be an arbitrary QIODevice or another SignalProxy typedef QHash PeerHash; PeerHash _peers; - -// // Hash of used QIODevices -// struct peerInfo { -// quint32 byteCount; -// bool usesCompression; -// int sentHeartBeats; -// int lag; -// peerInfo() : byteCount(0), usesCompression(false), sentHeartBeats(0) {} -// }; -// QHash _peers; // containg a list of argtypes for fast access QHash _classInfo;