summaryrefslogtreecommitdiffstats
path: root/kioslave/iso/kisofile.h
blob: a30fc758ca4da2447ca9beb1026755c5ba8eda94 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/***************************************************************************
                          kisofile.h  -  description
                             -------------------
    begin                : Wed Oct 30 2002
    copyright            : (C) 2002 by Szombathelyi Gy�gy
    email                : gyurco@users.sourceforge.net
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef KISOFILE_H
#define KISOFILE_H

#include <qstring.h>
#include <karchive.h>

/**
  *@author Szombathelyi Gy�gy
  */

class KIsoFile : public KArchiveFile  {
public: 
    KIsoFile( KArchive* archive, const QString& name, int access, int date,
                    int adate,int cdate, const QString& user, const QString& group,
                   const QString& symlink, int pos, int size);
    ~KIsoFile();
    void setZF(char algo[2],char parms[2],int realsize);
    int adate() const { return m_adate; }
    int cdate() const { return m_cdate; }
    long long realsize() const { return m_realsize; }

    virtual QByteArray data(long long pos, int count) const;
private:
    /* hide this member function, it's broken by design, because the full
    data often requires too much memory */
    char m_algo[2],m_parms[2];
    long long m_realsize;
    int m_adate, m_cdate;
    long long m_curpos;
};

#endif