00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef QTEMPORARYFILE_H
00025 #define QTEMPORARYFILE_H
00026
00027 #include <QtCore/qiodevice.h>
00028 #include <QtCore/qfile.h>
00029
00030 #ifdef open
00031 #error qtemporaryfile.h must be included before any header file that defines open
00032 #endif
00033
00034 QT_BEGIN_HEADER
00035
00036 QT_MODULE(Core)
00037
00038 class QTemporaryFilePrivate;
00039
00040 class Q_CORE_EXPORT QTemporaryFile : public QFile
00041 {
00042 #ifndef QT_NO_QOBJECT
00043 Q_OBJECT
00044 #endif
00045 Q_DECLARE_PRIVATE(QTemporaryFile)
00046
00047 public:
00048 QTemporaryFile();
00049 explicit QTemporaryFile(const QString &templateName);
00050 #ifndef QT_NO_QOBJECT
00051 explicit QTemporaryFile(QObject *parent);
00052 QTemporaryFile(const QString &templateName, QObject *parent);
00053 #endif
00054 ~QTemporaryFile();
00055
00056 bool autoRemove() const;
00057 void setAutoRemove(bool b);
00058
00059
00060 bool open() { return open(QIODevice::ReadWrite); }
00061
00062 QString fileName() const;
00063 QString fileTemplate() const;
00064 void setFileTemplate(const QString &name);
00065
00066 inline static QTemporaryFile *createLocalFile(const QString &fileName)
00067 { QFile file(fileName); return createLocalFile(file); }
00068 static QTemporaryFile *createLocalFile(QFile &file);
00069
00070 virtual QAbstractFileEngine *fileEngine() const;
00071
00072 protected:
00073 bool open(OpenMode flags);
00074
00075 private:
00076 Q_DISABLE_COPY(QTemporaryFile)
00077 };
00078
00079 QT_END_HEADER
00080
00081 #endif // QTEMPORARYFILE_H