diff options
author | David Corrales | 2007-05-12 20:00:52 +0000 |
---|---|---|
committer | David Corrales | 2007-05-12 20:00:52 +0000 |
commit | d1f56d93f934150f4b579c2e90564e2bf035f113 (patch) | |
tree | 09aae1d4077c8e1c933fdca88d34d890a46f8a6a /backends/fs/ds | |
parent | 86324f00bc561c03b281170125ef2fde14cae132 (diff) | |
download | scummvm-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.cpp | 9 | ||||
-rw-r--r-- | backends/fs/ds/ds-fs-factory.h | 11 |
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*/ |