2007-05-12 18:17:40 +00:00
|
|
|
#ifndef DS_FILESYSTEM_FACTORY_H
|
|
|
|
#define DS_FILESYSTEM_FACTORY_H
|
2007-05-03 02:39:33 +00:00
|
|
|
|
2007-05-12 18:17:40 +00:00
|
|
|
#include "backends/fs/abstract-fs-factory.h"
|
2007-05-03 02:39:33 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Creates DSFilesystemNode objects.
|
|
|
|
*
|
|
|
|
* Parts of this class are documented in the base interface class, AbstractFilesystemFactory.
|
|
|
|
*/
|
2007-05-12 20:00:52 +00:00
|
|
|
class DSFilesystemFactory : public AbstractFilesystemFactory, public Common::Singleton<DSFilesystemFactory> {
|
2007-05-03 02:39:33 +00:00
|
|
|
public:
|
|
|
|
typedef Common::String String;
|
|
|
|
|
|
|
|
virtual AbstractFilesystemNode *makeRootFileNode() const;
|
|
|
|
virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
|
|
|
|
virtual AbstractFilesystemNode *makeFileNodePath(const String &path) const;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
DSFilesystemFactory() {};
|
|
|
|
|
|
|
|
private:
|
2007-05-12 20:00:52 +00:00
|
|
|
friend class Common::Singleton<SingletonBaseType>;
|
2007-05-03 02:39:33 +00:00
|
|
|
};
|
|
|
|
|
2007-05-12 18:17:40 +00:00
|
|
|
#endif /*DS_FILESYSTEM_FACTORY_H*/
|