45 enum class Type : quint8
55 ~QIOOperation() override;
59 bool isFinished()
const;
63 void errorOccurred(Error err);
66 QIOOperation() =
delete;
67 Q_DISABLE_COPY_MOVE(QIOOperation)
68 explicit QIOOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
70 void ensureCompleteOrCanceled();
72 Q_DECLARE_PRIVATE(QIOOperation)
74 friend class QRandomAccessAsyncFilePrivate;
80 ~QIOReadWriteOperationBase() override;
82 qint64 offset()
const;
83 qint64 numBytesProcessed()
const;
86 QIOReadWriteOperationBase() =
delete;
87 Q_DISABLE_COPY_MOVE(QIOReadWriteOperationBase)
88 explicit QIOReadWriteOperationBase(QIOOperationPrivate &dd, QObject *parent =
nullptr);
94 ~QIOReadOperation() override;
96 QByteArray data()
const;
99 QIOReadOperation() =
delete;
100 Q_DISABLE_COPY_MOVE(QIOReadOperation)
101 explicit QIOReadOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
103 friend class QRandomAccessAsyncFilePrivate;
109 ~QIOWriteOperation() override;
111 QByteArray data()
const;
114 QIOWriteOperation() =
delete;
115 Q_DISABLE_COPY_MOVE(QIOWriteOperation)
116 explicit QIOWriteOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
118 friend class QRandomAccessAsyncFilePrivate;
124 ~QIOVectoredReadOperation() override;
126 QSpan<
const QSpan<std::byte>> data()
const;
129 QIOVectoredReadOperation() =
delete;
130 Q_DISABLE_COPY_MOVE(QIOVectoredReadOperation)
131 explicit QIOVectoredReadOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
133 friend class QRandomAccessAsyncFilePrivate;
139 ~QIOVectoredWriteOperation() override;
141 QSpan<
const QSpan<
const std::byte>> data()
const;
144 QIOVectoredWriteOperation() =
delete;
145 Q_DISABLE_COPY_MOVE(QIOVectoredWriteOperation)
146 explicit QIOVectoredWriteOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
148 friend class QRandomAccessAsyncFilePrivate;