QuaZIP quazip-0-5-1
|
00001 #ifndef QUAZIP_QUAGZIPFILE_H 00002 #define QUAZIP_QUAGZIPFILE_H 00003 00004 #include <QIODevice> 00005 #include "quazip_global.h" 00006 00007 #include <zlib.h> 00008 00009 class QuaGzipFilePrivate; 00010 00012 00015 class QUAZIP_EXPORT QuaGzipFile: public QIODevice { 00016 Q_OBJECT 00017 public: 00019 00022 QuaGzipFile(); 00024 00028 QuaGzipFile(QObject *parent); 00030 00034 QuaGzipFile(const QString &fileName, QObject *parent = NULL); 00036 virtual ~QuaGzipFile(); 00038 void setFileName(const QString& fileName); 00040 QString getFileName() const; 00042 00049 virtual bool isSequential() const; 00051 00055 virtual bool open(QIODevice::OpenMode mode); 00057 00063 virtual bool open(int fd, QIODevice::OpenMode mode); 00065 00069 virtual bool flush(); 00071 virtual void close(); 00072 protected: 00074 virtual qint64 readData(char *data, qint64 maxSize); 00076 virtual qint64 writeData(const char *data, qint64 maxSize); 00077 private: 00078 // not implemented by design to disable copy 00079 QuaGzipFile(const QuaGzipFile &that); 00080 QuaGzipFile& operator=(const QuaGzipFile &that); 00081 QuaGzipFilePrivate *d; 00082 }; 00083 00084 #endif // QUAZIP_QUAGZIPFILE_H