File indexing completed on 2024-04-21 04:57:27
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Kai Uwe Broulik <kde@broulik.de> 0003 * SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 #pragma once 0007 0008 #include <KIO/Global> 0009 #include <KIO/WorkerBase> 0010 0011 #include "afcclient.h" 0012 0013 class AfcFile; 0014 0015 class AfcFileReader 0016 { 0017 public: 0018 KIO::filesize_t size() const; 0019 void setSize(KIO::filesize_t size); 0020 0021 KIO::WorkerResult read(); 0022 bool hasMore() const; 0023 QByteArray data() const; 0024 0025 private: 0026 friend class AfcFile; 0027 AfcFileReader(const AfcClient::Ptr &client, uint64_t handle); 0028 0029 AfcClient::Ptr m_client; 0030 uint64_t m_handle; 0031 KIO::filesize_t m_size = 0; 0032 KIO::filesize_t m_remainingSize = 0; 0033 0034 QByteArray m_data; 0035 };