00001 #ifndef OPIE_QCOP_CHANNEL_QWS_H
00002 #define OPIE_QCOP_CHANNEL_QWS_H
00003
00004 #include <qobject.h>
00005 #include <qcstring.h>
00006 #include <qlist.h>
00007 #include <qmap.h>
00008
00009 class OCOPClient;
00010 class QCopChannel : public QObject {
00011 Q_OBJECT
00012 public:
00013 QCopChannel( const QCString& channel, QObject* parent = 0,
00014 const char* name = 0);
00015 virtual ~QCopChannel();
00016
00017 QCString channel()const;
00018
00019 static bool isRegistered( const QCString& channel );
00020 static bool send( const QCString& channel, const QCString& msg );
00021 static bool send( const QCString& channel, const QCString& msg,
00022 const QByteArray& );
00023 static bool sendLocally( const QCString& chan, const QCString& msg,
00024 const QByteArray& data );
00025 void receive( const QCString& msg, const QByteArray& ar );
00026
00027 signals:
00028 void received( const QCString& msg, const QByteArray& );
00029
00030 private slots:
00031 void rev( const QCString& chan, const QCString&, const QByteArray& );
00032
00033 private:
00034 bool isRegisteredLocally( const QCString& str);
00035 static QList<QCopChannel> *m_list;
00036 static QMap<QCString, int> m_refCount;
00037
00038 QCString m_chan;
00039 class Private;
00040 Private *d;
00041
00042 };
00043
00044 #endif