4 #include "zipios++/zipios-config.h"
36 virtual void close() = 0 ;
44 virtual ConstEntries
entries()
const ;
46 enum MatchPath { IGNORE, MATCH } ;
58 virtual ConstEntryPointer
getEntry(
const string &name,
59 MatchPath matchpath = MATCH )
const ;
69 virtual istream *
getInputStream(
const ConstEntryPointer &entry ) = 0 ;
80 MatchPath matchpath = MATCH ) = 0 ;
84 virtual string getName()
const ;
88 virtual int size()
const ;
116 : _filename( src._filename ),
117 _valid ( src._valid )
119 _entries.reserve( src._entries.size() ) ;
120 Entries::const_iterator it ;
121 for ( it = src._entries.begin() ; it != src._entries.end() ; ++it )
122 _entries.push_back( (*it)->clone() ) ;
126 if (
this != &src ) {
127 _filename = src._filename ;
128 _valid = src._valid ;
130 _entries.reserve( src._entries.size() ) ;
132 Entries::const_iterator it ;
133 for ( it = src._entries.begin() ; it != src._entries.end() ; ++it )
134 _entries.push_back( (*it)->clone() ) ;
139 inline ostream & operator<< (ostream &os,
const FileCollection& collection) {
140 os <<
"collection '" << collection.
getName() <<
"' {" ;
141 ConstEntries entries = collection.
entries();
142 ConstEntries::const_iterator it;
144 for (it=entries.begin(); it != entries.end(); ++it) {
148 os << (*it)->getName();