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;
75 friend class QRandomAccessAsyncFileBackend;
76 friend class QRandomAccessAsyncFileNativeBackend;
77 friend class QRandomAccessAsyncFileThreadPoolBackend;
83 ~QIOReadWriteOperationBase() override;
85 qint64 offset()
const;
86 qint64 numBytesProcessed()
const;
89 QIOReadWriteOperationBase() =
delete;
90 Q_DISABLE_COPY_MOVE(QIOReadWriteOperationBase)
91 explicit QIOReadWriteOperationBase(QIOOperationPrivate &dd, QObject *parent =
nullptr);
93 friend class QRandomAccessAsyncFilePrivate;
94 friend class QRandomAccessAsyncFileBackend;
95 friend class QRandomAccessAsyncFileNativeBackend;
96 friend class QRandomAccessAsyncFileThreadPoolBackend;
102 ~QIOReadOperation() override;
104 QByteArray data()
const;
107 QIOReadOperation() =
delete;
108 Q_DISABLE_COPY_MOVE(QIOReadOperation)
109 explicit QIOReadOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
111 friend class QRandomAccessAsyncFilePrivate;
112 friend class QRandomAccessAsyncFileBackend;
113 friend class QRandomAccessAsyncFileNativeBackend;
114 friend class QRandomAccessAsyncFileThreadPoolBackend;
120 ~QIOWriteOperation() override;
122 QByteArray data()
const;
125 QIOWriteOperation() =
delete;
126 Q_DISABLE_COPY_MOVE(QIOWriteOperation)
127 explicit QIOWriteOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
129 friend class QRandomAccessAsyncFilePrivate;
130 friend class QRandomAccessAsyncFileBackend;
131 friend class QRandomAccessAsyncFileNativeBackend;
132 friend class QRandomAccessAsyncFileThreadPoolBackend;
138 ~QIOVectoredReadOperation() override;
140 QSpan<
const QSpan<std::byte>> data()
const;
143 QIOVectoredReadOperation() =
delete;
144 Q_DISABLE_COPY_MOVE(QIOVectoredReadOperation)
145 explicit QIOVectoredReadOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
147 friend class QRandomAccessAsyncFilePrivate;
148 friend class QRandomAccessAsyncFileBackend;
149 friend class QRandomAccessAsyncFileNativeBackend;
150 friend class QRandomAccessAsyncFileThreadPoolBackend;
156 ~QIOVectoredWriteOperation() override;
158 QSpan<
const QSpan<
const std::byte>> data()
const;
161 QIOVectoredWriteOperation() =
delete;
162 Q_DISABLE_COPY_MOVE(QIOVectoredWriteOperation)
163 explicit QIOVectoredWriteOperation(QIOOperationPrivate &dd, QObject *parent =
nullptr);
165 friend class QRandomAccessAsyncFilePrivate;
166 friend class QRandomAccessAsyncFileBackend;
167 friend class QRandomAccessAsyncFileNativeBackend;
168 friend class QRandomAccessAsyncFileThreadPoolBackend;