aboutsummaryrefslogtreecommitdiff
path: root/backends/fs/ds
diff options
context:
space:
mode:
authorDavid Corrales2007-05-12 20:00:52 +0000
committerDavid Corrales2007-05-12 20:00:52 +0000
commitd1f56d93f934150f4b579c2e90564e2bf035f113 (patch)
tree09aae1d4077c8e1c933fdca88d34d890a46f8a6a /backends/fs/ds
parent86324f00bc561c03b281170125ef2fde14cae132 (diff)
downloadscummvm-rg350-d1f56d93f934150f4b579c2e90564e2bf035f113.tar.gz
scummvm-rg350-d1f56d93f934150f4b579c2e90564e2bf035f113.tar.bz2
scummvm-rg350-d1f56d93f934150f4b579c2e90564e2bf035f113.zip
Use common/singleton.h in the concrete fs factories.
svn-id: r26814
Diffstat (limited to 'backends/fs/ds')
-rw-r--r--backends/fs/ds/ds-fs-factory.cpp9
-rw-r--r--backends/fs/ds/ds-fs-factory.h11
2 files changed, 3 insertions, 17 deletions
diff --git a/backends/fs/ds/ds-fs-factory.cpp b/backends/fs/ds/ds-fs-factory.cpp
index 1855fbc40d..7e64b37411 100644
--- a/backends/fs/ds/ds-fs-factory.cpp
+++ b/backends/fs/ds/ds-fs-factory.cpp
@@ -2,14 +2,7 @@
#include "backends/fs/ds/ds-fs.cpp"
#include "dsmain.h" //for the isGBAMPAvailable() function
-DSFilesystemFactory *DSFilesystemFactory::_instance = 0;
-
-DSFilesystemFactory *DSFilesystemFactory::instance(){
- if(_instance == 0){
- _instance = new DSFilesystemFactory();
- }
- return _instance;
-}
+DECLARE_SINGLETON(DSFilesystemFactory);
AbstractFilesystemNode *DSFilesystemFactory::makeRootFileNode() const {
if (DS::isGBAMPAvailable()) {
diff --git a/backends/fs/ds/ds-fs-factory.h b/backends/fs/ds/ds-fs-factory.h
index 5e96edc390..5bc847a7b2 100644
--- a/backends/fs/ds/ds-fs-factory.h
+++ b/backends/fs/ds/ds-fs-factory.h
@@ -8,16 +8,9 @@
*
* Parts of this class are documented in the base interface class, AbstractFilesystemFactory.
*/
-class DSFilesystemFactory : public AbstractFilesystemFactory {
+class DSFilesystemFactory : public AbstractFilesystemFactory, public Common::Singleton<DSFilesystemFactory> {
public:
typedef Common::String String;
-
- /**
- * Creates an instance of DSFilesystemFactory using the Singleton pattern.
- *
- * @return A unique instance of DSFilesytemFactory.
- */
- static DSFilesystemFactory *instance();
virtual AbstractFilesystemNode *makeRootFileNode() const;
virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
@@ -27,7 +20,7 @@ protected:
DSFilesystemFactory() {};
private:
- static DSFilesystemFactory *_instance;
+ friend class Common::Singleton<SingletonBaseType>;
};
#endif /*DS_FILESYSTEM_FACTORY_H*/