15 #ifndef VIRTUALFILEMOUNTMULTIFILE_H 16 #define VIRTUALFILEMOUNTMULTIFILE_H 18 #include "pandabase.h" 20 #include "virtualFileMount.h" 21 #include "multifile.h" 22 #include "pointerTo.h" 32 virtual ~VirtualFileMountMultifile();
37 virtual bool has_file(
const Filename &file)
const;
38 virtual bool is_directory(
const Filename &file)
const;
39 virtual bool is_regular_file(
const Filename &file)
const;
44 virtual istream *open_read_file(
const Filename &file)
const;
45 virtual streamsize get_file_size(
const Filename &file, istream *stream)
const;
46 virtual streamsize get_file_size(
const Filename &file)
const;
47 virtual time_t get_timestamp(
const Filename &file)
const;
50 virtual bool scan_directory(vector_string &contents,
53 virtual void output(ostream &out)
const;
61 return get_class_type();
63 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
67 static void init_type() {
68 VirtualFileMount::init_type();
69 register_type(_type_handle,
"VirtualFileMountMultifile",
70 VirtualFileMount::get_class_type());
77 #include "virtualFileMountMultifile.I" virtual bool read_file(const Filename &file, bool do_uncompress, pvector< unsigned char > &result) const
Fills up the indicated pvector with the contents of the file, if it is a regular file.
The name of a file, such as a texture file or an Egg file.
virtual bool get_system_info(const Filename &file, SubfileInfo &info)
Populates the SubfileInfo structure with the data representing where the file actually resides on dis...
The abstract base class for a mount definition used within a VirtualFileSystem.
A file that contains a set of files.
This class records a particular byte sub-range within an existing file on disk.
TypeHandle is the identifier used to differentiate C++ class types.
Maps a Multifile's contents into the VirtualFileSystem.