39 lines
964 B
C
39 lines
964 B
C
|
#ifndef PS2FILESYSTEMFACTORY_H_
|
||
|
#define PS2FILESYSTEMFACTORY_H_
|
||
|
|
||
|
#include "backends/fs/AbstractFilesystemFactory.h"
|
||
|
|
||
|
/**
|
||
|
* Creates PS2FilesystemNode objects.
|
||
|
*
|
||
|
* Parts of this class are documented in the base interface class, AbstractFilesystemFactory.
|
||
|
*/
|
||
|
class Ps2FilesystemFactory : public AbstractFilesystemFactory {
|
||
|
public:
|
||
|
typedef Common::String String;
|
||
|
|
||
|
/**
|
||
|
* Creates an instance of Ps2FilesystemFactory using the Singleton pattern.
|
||
|
*
|
||
|
* @return A unique instance of Ps2FilesytemFactory.
|
||
|
*/
|
||
|
static Ps2FilesystemFactory *instance();
|
||
|
|
||
|
/**
|
||
|
* Destructor.
|
||
|
*/
|
||
|
virtual ~Ps2FilesystemFactory() {};
|
||
|
|
||
|
virtual AbstractFilesystemNode *makeRootFileNode() const;
|
||
|
virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
|
||
|
virtual AbstractFilesystemNode *makeFileNodePath(const String &path) const;
|
||
|
|
||
|
protected:
|
||
|
Ps2FilesystemFactory() {};
|
||
|
|
||
|
private:
|
||
|
static Ps2FilesystemFactory *_instance;
|
||
|
};
|
||
|
|
||
|
#endif /*PS2FILESYSTEMFACTORY_H_*/
|