4 #include "zipios++/zipios-config.h"
6 #include "zipios++/meta-iostreams.h"
9 #include "zipios++/fcollexceptions.h"
10 #include "zipios++/fileentry.h"
11 #include "zipios++/filepath.h"
12 #include "zipios++/zipios_defs.h"
16 /** BasicEntry is a FileEntry that is suitable as a base class for
17 basic entries, that e.g. do not support any form of compression */
18 class BasicEntry : public FileEntry {
21 @param filename the filename of the entry.
22 @param comment a comment for the entry.
24 explicit BasicEntry( const string &filename, const string &comment,
25 const FilePath &basepath = FilePath() ) ;
26 virtual string getComment() const ;
27 virtual uint32 getCompressedSize() const ;
28 virtual uint32 getCrc() const ;
29 virtual vector< unsigned char > getExtra() const ;
30 virtual StorageMethod getMethod() const ;
31 virtual string getName() const ;
32 virtual string getFileName() const ;
33 virtual uint32 getSize() const ;
34 virtual int getTime() const ;
35 virtual bool isValid() const ;
37 // virtual int hashCode() const ;
38 virtual bool isDirectory() const ;
40 virtual void setComment( const string &comment ) ;
41 virtual void setCompressedSize( uint32 size ) ;
42 virtual void setCrc( uint32 crc ) ;
43 virtual void setExtra( const vector< unsigned char > &extra ) ;
44 virtual void setMethod( StorageMethod method ) ;
45 virtual void setName( const string &name ) ;
46 virtual void setSize( uint32 size ) ;
47 virtual void setTime( int time ) ;
49 virtual string toString() const ;
51 virtual FileEntry *clone() const ;
53 virtual ~BasicEntry() ;
67 Header file that defines BasicEntry.
71 Zipios++ - a small C++ library that provides easy access to .zip files.
72 Copyright (C) 2000 Thomas Søndergaard
74 This library is free software; you can redistribute it and/or
75 modify it under the terms of the GNU Lesser General Public
76 License as published by the Free Software Foundation; either
77 version 2 of the License, or (at your option) any later version.
79 This library is distributed in the hope that it will be useful,
80 but WITHOUT ANY WARRANTY; without even the implied warranty of
81 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
82 Lesser General Public License for more details.
84 You should have received a copy of the GNU Lesser General Public
85 License along with this library; if not, write to the Free Software
86 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA