#ifndef QABSTRACTFILEENGINE_H
#define QABSTRACTFILEENGINE_H
#include <QtCore/qdir.h>
typedef enum QtValidLicenseForCoreModule QtCoreModule;
struct QFileExtension;
struct QFileExtensionResult;
struct QAbstractFileEngineIterator;
struct QAbstractFileEnginePrivate;
class QAbstractFileEngine{
public: enum FileFlag{
ReadOwnerPerm = 16384,
WriteOwnerPerm = 8192,
ExeOwnerPerm = 4096,
ReadUserPerm = 1024,
WriteUserPerm = 512,
ExeUserPerm = 256,
ReadGroupPerm = 64,
WriteGroupPerm = 32,
ExeGroupPerm = 16,
ReadOtherPerm = 4,
WriteOtherPerm = 2,
ExeOtherPerm = 1,
LinkType = 65536,
FileType = 131072,
DirectoryType = 262144,
HiddenFlag = 1048576,
LocalDiskFlag = 2097152,
ExistsFlag = 4194304,
RootFlag = 8388608,
PermsMask = 65535,
TypesMask = 983040,
FlagsMask = 267386880,
FileInfoAll = 268435455,
};
public: typedef class QFlags < enum QAbstractFileEngine::FileFlag > FileFlags;
public: enum FileName{
DefaultName = 0,
BaseName = 1,
PathName = 2,
AbsoluteName = 3,
AbsolutePathName = 4,
LinkName = 5,
CanonicalName = 6,
CanonicalPathName = 7,
};
public: enum FileOwner{
OwnerUser = 0,
OwnerGroup = 1,
};
public: enum FileTime{
CreationTime = 0,
ModificationTime = 1,
AccessTime = 2,
};
public: virtual ~QAbstractFileEngine();
public: virtual bool open(class QFlags < enum QIODevice::OpenModeFlag > openMode);
public: virtual bool close();
public: virtual bool flush();
public: virtual qint64 size() const
public: virtual qint64 pos() const
public: virtual bool seek(qint64 pos);
public: virtual bool isSequential() const
public: virtual bool remove();
public: virtual bool copy(class QString const & newName);
public: virtual bool rename(class QString const & newName);
public: virtual bool link(class QString const & newName);
public: virtual bool mkdir(class QString const & dirName, bool createParentDirectories) const
public: virtual bool rmdir(class QString const & dirName, bool recurseParentDirectories) const
public: virtual bool setSize(qint64 size);
public: virtual bool caseSensitive() const
public: virtual bool isRelativePath() const
public: virtual class QStringList entryList(class QFlags < enum QDir::Filter > filters, class QStringList const & filterNames) const
public: virtual class QFlags < enum QAbstractFileEngine::FileFlag > fileFlags(class QFlags < enum QAbstractFileEngine::FileFlag > type = QAbstractFileEngine::FileInfoAll) const
public: virtual bool setPermissions(uint perms);
public: virtual class QString fileName(enum QAbstractFileEngine::FileName file = QAbstractFileEngine::DefaultName) const
public: virtual uint ownerId(enum QAbstractFileEngine::FileOwner) const
public: virtual class QString owner(enum QAbstractFileEngine::FileOwner) const
public: virtual struct QDateTime fileTime(enum QAbstractFileEngine::FileTime time) const
public: virtual void setFileName(class QString const & file);
public: virtual int handle() const
public: typedef struct QAbstractFileEngineIterator Iterator;
public: virtual struct QAbstractFileEngineIterator* beginEntryList(class QFlags < enum QDir::Filter > filters, class QStringList const & filterNames);
public: virtual struct QAbstractFileEngineIterator* endEntryList();
public: virtual qint64 read(char* data, qint64 maxlen);
public: virtual qint64 readLine(char* data, qint64 maxlen);
public: virtual qint64 write(char const * data, qint64 len);
public: enum QFile::FileError error() const
public: class QString errorString() const
public: enum Extension{
};
public: class ExtensionOption{
};
public: class ExtensionReturn{
};
public: virtual bool extension(enum QAbstractFileEngine::Extension extension, class QAbstractFileEngine::ExtensionOption const * option = 0, class QAbstractFileEngine::ExtensionReturn* output = 0);
public: virtual bool supportsExtension(enum QAbstractFileEngine::Extension extension) const
public: static class QAbstractFileEngine* create(class QString const & fileName);
protected: void setError(enum QFile::FileError error, class QString const & str);
protected: QAbstractFileEngine();
protected: QAbstractFileEngine(struct QAbstractFileEnginePrivate&);
protected: struct QAbstractFileEnginePrivate* d_ptr;
private: inline struct QAbstractFileEnginePrivate* d_func();
private: inline struct QAbstractFileEnginePrivate const * d_func() const
private: QAbstractFileEngine(class QAbstractFileEngine const &);
private: class QAbstractFileEngine& operator =(class QAbstractFileEngine const &);
friend struct QAbstractFileEnginePrivate;
};
inline class QFlags < enum QAbstractFileEngine::FileFlag > operator |(enum QAbstractFileEngine::FileFlag f1, class QFlags < enum QAbstractFileEngine::FileFlag > f2);
inline class QFlags < enum QAbstractFileEngine::FileFlag > operator |(enum QAbstractFileEngine::FileFlag f1, enum QAbstractFileEngine::FileFlag f2);
class QAbstractFileEngineHandler{
public: QAbstractFileEngineHandler();
public: virtual ~QAbstractFileEngineHandler();
public: virtual class QAbstractFileEngine* create(class QString const & fileName) const = 0;
};
#endif // QABSTRACTFILEENGINE_H