ScummVM
FilesystemFactory Class Referenceabstract

Creates concrete FSNode objects depending on the current architecture. More...

#include <fs-factory.h>

Inheritance diagram for FilesystemFactory:

Public Member Functions

virtual ~FilesystemFactory ()
 Destructor. More...
 
virtual AbstractFSNodemakeCurrentDirectoryFileNode () const =0
 Returns a node representing the "current directory". More...
 
virtual AbstractFSNodemakeFileNodePath (const Common::String &path) const =0
 Construct a node based on a path; the path is in the same format as it would be for calls to fopen(). More...
 
virtual AbstractFSNodemakeRootFileNode () const =0
 Returns a special node representing the filesystem root. More...
 

Detailed Description

Creates concrete FSNode objects depending on the current architecture.

Definition at line 32 of file fs-factory.h.

Constructor & Destructor Documentation

◆ ~FilesystemFactory()

virtual FilesystemFactory::~FilesystemFactory ( )
inlinevirtual

Destructor.

Definition at line 37 of file fs-factory.h.

Member Function Documentation

◆ makeCurrentDirectoryFileNode()

virtual AbstractFSNode* FilesystemFactory::makeCurrentDirectoryFileNode ( ) const
pure virtual

Returns a node representing the "current directory".

If your system does not support this concept, you can either try to emulate it or simply return some "sensible" default directory node, e.g. the same value as getRoot() returns.

Implemented in OSystem_Dreamcast, TizenFilesystemFactory, DrivesPOSIXFilesystemFactory, WiiFilesystemFactory, ChRootFilesystemFactory, DSFilesystemFactory, Ps2FilesystemFactory, PSPFilesystemFactory, PSP2FilesystemFactory, AmigaOSFilesystemFactory, POSIXFilesystemFactory, RISCOSFilesystemFactory, SymbianFilesystemFactory, WindowsFilesystemFactory, N64FilesystemFactory, and PS3FilesystemFactory.

◆ makeFileNodePath()

virtual AbstractFSNode* FilesystemFactory::makeFileNodePath ( const Common::String path) const
pure virtual

Construct a node based on a path; the path is in the same format as it would be for calls to fopen().

Furthermore getNodeForPath(oldNode.path()) should create a new node identical to oldNode. Hence, we can use the "path" value for persistent storage e.g. in the config file.

Parameters
pathThe path string to create a FSNode for.

Implemented in OSystem_Dreamcast, TizenFilesystemFactory, DrivesPOSIXFilesystemFactory, WiiFilesystemFactory, ChRootFilesystemFactory, DSFilesystemFactory, Ps2FilesystemFactory, PSPFilesystemFactory, PSP2FilesystemFactory, AmigaOSFilesystemFactory, POSIXFilesystemFactory, RISCOSFilesystemFactory, SymbianFilesystemFactory, WindowsFilesystemFactory, and N64FilesystemFactory.

◆ makeRootFileNode()

virtual AbstractFSNode* FilesystemFactory::makeRootFileNode ( ) const
pure virtual

Returns a special node representing the filesystem root.

The starting point for any file system browsing.

On Unix, this will be simply the node for / (the root directory). On Windows, it will be a special node which "contains" all drives (C:, D:, E:).

Implemented in OSystem_Dreamcast, TizenFilesystemFactory, DrivesPOSIXFilesystemFactory, WiiFilesystemFactory, ChRootFilesystemFactory, DSFilesystemFactory, Ps2FilesystemFactory, PSPFilesystemFactory, PSP2FilesystemFactory, AmigaOSFilesystemFactory, POSIXFilesystemFactory, RISCOSFilesystemFactory, SymbianFilesystemFactory, WindowsFilesystemFactory, and N64FilesystemFactory.


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