quagzipfile.h

    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