31 explicit QRandomAccessAsyncFile(QObject *parent =
nullptr);
32 ~QRandomAccessAsyncFile() override;
38 [[nodiscard]] QIOOperation *open(
const QString &filePath, QIODeviceBase::OpenMode mode);
39 [[nodiscard]] QIOOperation *flush();
42 [[nodiscard]] QIOReadOperation *read(qint64 offset, qint64 maxSize);
43 [[nodiscard]] QIOWriteOperation *write(qint64 offset,
const QByteArray &data);
44 [[nodiscard]] QIOWriteOperation *write(qint64 offset, QByteArray &&data);
47 [[nodiscard]] QIOVectoredReadOperation *
48 readInto(qint64 offset, QSpan<std::byte> buffer);
49 [[nodiscard]] QIOVectoredWriteOperation *
50 writeFrom(qint64 offset, QSpan<
const std::byte> buffer);
53 [[nodiscard]] QIOVectoredReadOperation *
54 readInto(qint64 offset, QSpan<
const QSpan<std::byte>> buffers);
55 [[nodiscard]] QIOVectoredWriteOperation *
56 writeFrom(qint64 offset, QSpan<
const QSpan<
const std::byte>> buffers);
61 Q_DECLARE_PRIVATE(QRandomAccessAsyncFile)
62 Q_DISABLE_COPY_MOVE(QRandomAccessAsyncFile)