Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

VirtualFileSystem Class Reference

#include <virtualFileSystem.h>

List of all members.

Public Member Functions

INLINE bool read_file (const Filename &filename, string &result) const
void scan_mount_points (vector_string &names, const Filename &path) const

Private Types

typedef pvector< VirtualFileMount * > Mounts
enum  MountFlags { MF_owns_pointer = 0x0001, MF_read_only = 0x0002 }

Private Member Functions

 ~VirtualFileSystem ()
bool mount (Multifile *multifile, const string &mount_point, int flags)
bool mount (const Filename &physical_filename, const string &mount_point, int flags)
int unmount (Multifile *multifile)
int unmount (const Filename &physical_filename)
int unmount_point (const string &mount_point)
int unmount_all ()
bool chdir (const string &new_directory)
const Filename & get_cwd () const
 PT (VirtualFile) get_file(const Filename &filename) const
 PT (VirtualFile) find_file(const Filename &filename
bool resolve_filename (Filename &filename, const DSearchPath &searchpath, const string &default_extension=string()) const
int find_all_files (const Filename &filename, const DSearchPath &searchpath, DSearchPath::Results &results) const
INLINE bool exists (const Filename &filename) const
INLINE bool is_directory (const Filename &filename) const
INLINE bool is_regular_file (const Filename &filename) const
INLINE void ls (const string &filename) const
INLINE void ls_all (const string &filename) const
void write (ostream &out) const
INLINE string read_file (const Filename &filename) const
INLINE istream * open_read_file (const Filename &filename) const
Filename normalize_mount_point (const string &mount_point) const
bool found_match (PT(VirtualFile)&found_file, VirtualFileComposite *&composite_file, VirtualFileMount *mount, const string &local_filename) const

Static Private Member Functions

VirtualFileSystem * get_global_ptr ()

Private Attributes

PUBLISHED __pad0__: VirtualFileSystem()
const DSearchPath &searchpath const
Mounts _mounts
Filename _cwd

Static Private Attributes

VirtualFileSystem * _global_ptr = NULL


Member Typedef Documentation

typedef pvector<VirtualFileMount *> VirtualFileSystem::Mounts [private]
 

Definition at line 98 of file virtualFileSystem.h.


Member Enumeration Documentation

enum VirtualFileSystem::MountFlags [private]
 

Enumeration values:
MF_owns_pointer 
MF_read_only 

Definition at line 51 of file virtualFileSystem.h.


Constructor & Destructor Documentation

VirtualFileSystem::~VirtualFileSystem  )  [private]
 

Definition at line 48 of file virtualFileSystem.cxx.

References unmount_all().


Member Function Documentation

bool VirtualFileSystem::chdir const string &  new_directory  )  [private]
 

Definition at line 250 of file virtualFileSystem.cxx.

References _cwd, NULL, and PT().

Referenced by get_global_ptr().

INLINE bool VirtualFileSystem::exists const Filename &  filename  )  const [private]
 

Referenced by find_all_files(), Loader::find_all_files(), load_egg_file(), BamFile::open_read(), EggData::resolve_egg_filename(), and resolve_filename().

int VirtualFileSystem::find_all_files const Filename &  filename,
const DSearchPath &  searchpath,
DSearchPath::Results &  results
const [private]
 

Definition at line 433 of file virtualFileSystem.cxx.

References exists().

Referenced by Loader::find_all_files().

bool VirtualFileSystem::found_match PT(VirtualFile)&  found_file,
VirtualFileComposite *&  composite_file,
VirtualFileMount mount,
const string &  local_filename
const [private]
 

Definition at line 638 of file virtualFileSystem.cxx.

References VirtualFileComposite::add_component(), VirtualFile::get_filename(), VirtualFileMount::is_directory(), and NULL.

const Filename & VirtualFileSystem::get_cwd  )  const [private]
 

Definition at line 271 of file virtualFileSystem.cxx.

References _cwd.

VirtualFileSystem * VirtualFileSystem::get_global_ptr  )  [static, private]
 

Definition at line 491 of file virtualFileSystem.cxx.

References _global_ptr, chdir(), mount(), and NULL.

Referenced by Loader::find_all_files(), load_chancfg_database(), load_egg_file(), FontPool::lookup_filename(), PNMImageHeader::make_reader(), TexturePool::ns_has_texture(), TexturePool::ns_load_texture(), DatagramInputFile::open(), BamFile::open_read(), EggData::read(), and EggData::resolve_egg_filename().

INLINE bool VirtualFileSystem::is_directory const Filename &  filename  )  const [private]
 

INLINE bool VirtualFileSystem::is_regular_file const Filename &  filename  )  const [private]
 

INLINE void VirtualFileSystem::ls const string &  filename  )  const [private]
 

INLINE void VirtualFileSystem::ls_all const string &  filename  )  const [private]
 

bool VirtualFileSystem::mount const Filename &  physical_filename,
const string &  mount_point,
int  flags
[private]
 

Definition at line 85 of file virtualFileSystem.cxx.

References _mounts, MF_owns_pointer, MF_read_only, mount(), normalize_mount_point(), and Multifile::open_read().

bool VirtualFileSystem::mount Multifile multifile,
const string &  mount_point,
int  flags
[private]
 

Definition at line 61 of file virtualFileSystem.cxx.

References _mounts, mount(), and normalize_mount_point().

Referenced by get_global_ptr(), mount(), scan_mount_points(), unmount(), unmount_all(), unmount_point(), and write().

Filename VirtualFileSystem::normalize_mount_point const string &  mount_point  )  const [private]
 

Definition at line 615 of file virtualFileSystem.cxx.

References _cwd.

Referenced by mount(), and unmount_point().

INLINE istream* VirtualFileSystem::open_read_file const Filename &  filename  )  const [private]
 

Referenced by load_chancfg_database(), load_egg_file(), PNMImageHeader::make_reader(), and EggData::read().

VirtualFileSystem::PT VirtualFile   )  const [private]
 

VirtualFileSystem::PT VirtualFile   )  const [private]
 

Referenced by chdir(), and resolve_filename().

INLINE bool VirtualFileSystem::read_file const Filename &  filename,
string &  result
const
 

INLINE string VirtualFileSystem::read_file const Filename &  filename  )  const [private]
 

bool VirtualFileSystem::resolve_filename Filename &  filename,
const DSearchPath &  searchpath,
const string &  default_extension = string()
const [private]
 

Definition at line 378 of file virtualFileSystem.cxx.

References exists(), and PT().

Referenced by load_chancfg_database(), FontPool::lookup_filename(), TexturePool::ns_has_texture(), TexturePool::ns_load_texture(), and EggData::resolve_egg_filename().

void VirtualFileSystem::scan_mount_points vector_string &  names,
const Filename &  path
const
 

Definition at line 574 of file virtualFileSystem.cxx.

References _mounts, VirtualFileMount::get_mount_point(), and mount().

Referenced by PT().

int VirtualFileSystem::unmount const Filename &  physical_filename  )  [private]
 

Definition at line 166 of file virtualFileSystem.cxx.

References _mounts, and mount().

int VirtualFileSystem::unmount Multifile multifile  )  [private]
 

Definition at line 128 of file virtualFileSystem.cxx.

References _mounts, DCAST, VirtualFileMountMultifile::get_class_type(), VirtualFileMountMultifile::get_multifile(), and mount().

int VirtualFileSystem::unmount_all  )  [private]
 

Definition at line 226 of file virtualFileSystem.cxx.

References _mounts, and mount().

Referenced by ~VirtualFileSystem().

int VirtualFileSystem::unmount_point const string &  mount_point  )  [private]
 

Definition at line 196 of file virtualFileSystem.cxx.

References _mounts, mount(), and normalize_mount_point().

void VirtualFileSystem::write ostream &  out  )  const [private]
 

Definition at line 467 of file virtualFileSystem.cxx.

References _mounts, mount(), and VirtualFileMount::write().


Member Data Documentation

PUBLISHED VirtualFileSystem::__pad0__ [private]
 

Definition at line 48 of file virtualFileSystem.h.

Filename VirtualFileSystem::_cwd [private]
 

Definition at line 100 of file virtualFileSystem.h.

Referenced by chdir(), get_cwd(), and normalize_mount_point().

VirtualFileSystem * VirtualFileSystem::_global_ptr = NULL [static, private]
 

Definition at line 29 of file virtualFileSystem.cxx.

Referenced by get_global_ptr().

Mounts VirtualFileSystem::_mounts [private]
 

Definition at line 99 of file virtualFileSystem.h.

Referenced by mount(), scan_mount_points(), unmount(), unmount_all(), unmount_point(), and write().

const DSearchPath& searchpath VirtualFileSystem::const [private]
 

Definition at line 68 of file virtualFileSystem.h.


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:14:00 2003 for Panda by doxygen1.3