69 Q_DECLARE_PRIVATE(QFileDevice)
86 PermissionsError = 13,
93 FileMetadataChangeTime,
98 ReadOwner = 0x4000, WriteOwner = 0x2000, ExeOwner = 0x1000,
99 ReadUser = 0x0400, WriteUser = 0x0200, ExeUser = 0x0100,
100 ReadGroup = 0x0040, WriteGroup = 0x0020, ExeGroup = 0x0010,
101 ReadOther = 0x0004, WriteOther = 0x0002, ExeOther = 0x0001
103 Q_DECLARE_FLAGS(Permissions, Permission)
105 enum FileHandleFlag {
106 AutoCloseHandle = 0x0001,
109 Q_DECLARE_FLAGS(FileHandleFlags, FileHandleFlag)
113 FileError error()
const;
116 void close() override;
118 bool isSequential()
const override;
121 virtual QString fileName()
const;
123 qint64 pos()
const override;
124 bool seek(qint64 offset) override;
125 bool atEnd()
const override;
128 qint64 size()
const override;
130 virtual bool resize(qint64 sz);
131 virtual Permissions permissions()
const;
132 virtual bool setPermissions(Permissions permissionSpec);
136 MapPrivateOption = 0x0001
138 Q_DECLARE_FLAGS(MemoryMapFlags, MemoryMapFlag)
140 uchar *map(qint64 offset, qint64 size, MemoryMapFlags flags = NoOptions);
141 bool unmap(uchar *address);
143 QDateTime fileTime(QFileDevice::FileTime time)
const;
144 bool setFileTime(
const QDateTime &newDate, QFileDevice::FileTime fileTime);
149 QFileDevice(QFileDevicePrivate &dd);
151 explicit QFileDevice(QObject *parent);
152 QFileDevice(QFileDevicePrivate &dd, QObject *parent =
nullptr);
155 qint64 readData(
char *data, qint64 maxlen) override;
156 qint64 writeData(
const char *data, qint64 len) override;
157 qint64 readLineData(
char *data, qint64 maxlen) override;
160 Q_DISABLE_COPY(QFileDevice)