00001
00002
00003
00004
00005
00006 #ifndef SLAVE_RECEIVER_H
00007 #define SLAVE_RECEIVER_H
00008
00013 #include <iface/slaveiface.h>
00014
00015 #include <qobject.h>
00016 #include <qdatastream.h>
00017 #include <qstringlist.h>
00018 #include <qvaluelist.h>
00019 #include <qpixmap.h>
00020
00021
00022
00023 typedef QValueList<PixmapInfo> PixmapList;
00024 typedef QValueList<ImageInfo> StringList;
00025
00026 class QTimer;
00027 class QSocket;
00028 class SlaveReciever : public QObject {
00029 Q_OBJECT
00030
00031 friend QDataStream &operator<<( QDataStream&, const PixmapInfo& );
00032 friend QDataStream &operator>>( QDataStream&, PixmapInfo& );
00033 friend QDataStream &operator<<( QDataStream&, const ImageInfo& );
00034 friend QDataStream &operator>>( QDataStream&, ImageInfo );
00035 public:
00036
00037 enum Job { ImageInfoJob, FullImageInfoJob, ThumbNailJob };
00038 SlaveReciever( QObject* parent );
00039 ~SlaveReciever();
00040
00041 public slots:
00042 void recieveAnswer( const QCString&, const QByteArray& );
00043 public:
00044 PixmapList outPix()const;
00045 StringList outInf()const;
00046
00047 private slots:
00048 void slotSend();
00049 void slotImageInfo();
00050 void slotThumbNail();
00051 private:
00052 QTimer *m_inf, *m_pix, *m_out;
00053 StringList m_inList, m_outList;
00054 PixmapList m_inPix, m_outPix;
00055 private:
00056 int m_refs;
00057 };
00058
00059
00060 #endif