Logo Search packages:      
Sourcecode: scummvm version File versions  Download package

Public Types | Public Member Functions | Private Member Functions | Private Attributes

Common::FSNode Class Reference

#include <fs.h>

Inheritance diagram for Common::FSNode:
Inheritance graph
[legend]
Collaboration diagram for Common::FSNode:
Collaboration graph
[legend]

List of all members.

Public Types

enum  ListMode { kListFilesOnly = 1, kListDirectoriesOnly = 2, kListAll = 3 }

Public Member Functions

virtual SeekableReadStreamcreateReadStream () const
virtual WriteStreamcreateWriteStream () const
virtual bool exists () const
 FSNode ()
 FSNode (const String &path)
FSNode getChild (const String &name) const
virtual bool getChildren (FSList &fslist, ListMode mode=kListDirectoriesOnly, bool hidden=false) const
virtual String getDisplayName () const
virtual String getName () const
FSNode getParent () const
virtual String getPath () const
virtual bool isDirectory () const
virtual bool isReadable () const
virtual bool isWritable () const
bool operator< (const FSNode &node) const

Private Member Functions

 FSNode (AbstractFSNode *realNode)

Private Attributes

SharedPtr< AbstractFSNode_realNode

Detailed Description

FSNode, short for "File System Node", provides an abstraction for file paths, allowing for portable file system browsing. This means for example, that multiple or single roots have to be supported (compare Unix with a single root, Windows with multiple roots C:, D:, ...).

To this end, we abstract away from paths; implementations can be based on paths (and it's left to them whether / or \ or : is the path separator :-); but it is also possible to use inodes or vrefs (MacOS 9) or anything else.

Definition at line 58 of file fs.h.


The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index