ktar.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __ktar_h
00019 #define __ktar_h
00020
00021 #include <sys/stat.h>
00022 #include <sys/types.h>
00023
00024 #include <qdatetime.h>
00025 #include <qstring.h>
00026 #include <qstringlist.h>
00027 #include <qdict.h>
00028
00029 #include <karchive.h>
00030
00035 class KTar : public KArchive
00036 {
00037 public:
00047 KTar( const QString& filename, const QString & mimetype = QString::null );
00048
00055 KTar( QIODevice * dev );
00056
00061 virtual ~KTar();
00062
00067 QString fileName() { return m_filename; }
00068
00074 void setOrigFileName( const QCString & fileName );
00075
00076 virtual bool writeDir( const QString& name, const QString& user, const QString& group );
00077 virtual bool prepareWriting( const QString& name, const QString& user, const QString& group, uint size );
00078 virtual bool doneWriting( uint size );
00079
00080 protected:
00087 virtual bool openArchive( int mode );
00088 virtual bool closeArchive();
00089
00090 private:
00094 void prepareDevice( const QString & filename, const QString & mimetype, bool forced = false );
00095
00103 void fillBuffer( char * buffer, const char * mode, int size, char typeflag, const char * uname, const char * gname );
00104
00105 QString m_filename;
00106 protected:
00107 virtual void virtual_hook( int id, void* data );
00108 private:
00109 class KTarPrivate;
00110 KTarPrivate * d;
00111 };
00112
00116 #define KTarGz KTar
00117 #define KTarEntry KArchiveEntry
00118 #define KTarFile KArchiveFile
00119 #define KTarDirectory KArchiveDirectory
00120
00121 #endif
This file is part of the documentation for kdelibs Version 3.1.0.