QuaZIP quazip-0-5
|
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 00011 class QUAZIP_EXPORT QuaGzipFile: public QIODevice { 00012 Q_OBJECT 00013 public: 00014 QuaGzipFile(); 00015 QuaGzipFile(QObject *parent); 00016 QuaGzipFile(const QString &fileName, QObject *parent = NULL); 00017 virtual ~QuaGzipFile(); 00018 void setFileName(const QString& fileName); 00019 QString getFileName() const; 00020 virtual bool isSequential() const; 00021 virtual bool open(QIODevice::OpenMode mode); 00022 virtual bool open(int fd, QIODevice::OpenMode mode); 00023 virtual bool flush(); 00024 virtual void close(); 00025 protected: 00026 virtual qint64 readData(char *data, qint64 maxSize); 00027 virtual qint64 writeData(const char *data, qint64 maxSize); 00028 private: 00029 // not implemented by design to disable copy 00030 QuaGzipFile(const QuaGzipFile &that); 00031 QuaGzipFile& operator=(const QuaGzipFile &that); 00032 QuaGzipFilePrivate *d; 00033 }; 00034 00035 #endif // QUAZIP_QUAGZIPFILE_H