File indexing completed on 2024-12-01 05:20:02
0001 /* 0002 SPDX-FileCopyrightText: 2002 Szombathelyi György <gyurco@users.sourceforge.net> 0003 SPDX-FileCopyrightText: 2004-2022 Krusader Krew <https://krusader.org> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #ifndef KISOFILE_H 0009 #define KISOFILE_H 0010 0011 // QtCore 0012 #include <QString> 0013 0014 #include <KArchive/KArchive> 0015 0016 class KIsoFile : public KArchiveFile 0017 { 0018 public: 0019 KIsoFile(KArchive *archive, 0020 const QString &name, 0021 int access, 0022 time_t date, 0023 time_t adate, 0024 time_t cdate, 0025 const QString &user, 0026 const QString &group, 0027 const QString &symlink, 0028 long long pos, 0029 long long size); 0030 ~KIsoFile(); 0031 void setZF(char algo[2], char parms[2], long long realsize); 0032 time_t adate() const 0033 { 0034 return m_adate; 0035 } 0036 time_t cdate() const 0037 { 0038 return m_cdate; 0039 } 0040 long long realsize() const 0041 { 0042 return m_realsize; 0043 } 0044 0045 virtual QByteArray dataAt(long long pos, long long count) const; 0046 0047 private: 0048 /* hide this member function, it's broken by design, because the full 0049 data often requires too much memory */ 0050 char m_algo[2], m_parms[2]; 0051 long long m_realsize; 0052 time_t m_adate, m_cdate; 0053 }; 0054 0055 #endif