aboutsummaryrefslogtreecommitdiff
path: root/backends/fs/windows
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/windows
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/windows')
-rw-r--r--backends/fs/windows/windows-fs-factory.cpp9
-rw-r--r--backends/fs/windows/windows-fs-factory.h11
2 files changed, 3 insertions, 17 deletions
diff --git a/backends/fs/windows/windows-fs-factory.cpp b/backends/fs/windows/windows-fs-factory.cpp
index fb77b4ca07..76b62e5deb 100644
--- a/backends/fs/windows/windows-fs-factory.cpp
+++ b/backends/fs/windows/windows-fs-factory.cpp
@@ -1,14 +1,7 @@
#include "backends/fs/windows/windows-fs-factory.h"
#include "backends/fs/windows/windows-fs.cpp"
-WindowsFilesystemFactory *WindowsFilesystemFactory::_instance = 0;
-
-WindowsFilesystemFactory *WindowsFilesystemFactory::instance(){
- if(_instance == 0){
- _instance = new WindowsFilesystemFactory();
- }
- return _instance;
-}
+DECLARE_SINGLETON(WindowsFilesystemFactory);
AbstractFilesystemNode *WindowsFilesystemFactory::makeRootFileNode() const {
return new WindowsFilesystemNode();
diff --git a/backends/fs/windows/windows-fs-factory.h b/backends/fs/windows/windows-fs-factory.h
index a7abf390ae..b260eab65a 100644
--- a/backends/fs/windows/windows-fs-factory.h
+++ b/backends/fs/windows/windows-fs-factory.h
@@ -8,17 +8,10 @@
*
* Parts of this class are documented in the base interface class, AbstractFilesystemFactory.
*/
-class WindowsFilesystemFactory : public AbstractFilesystemFactory {
+class WindowsFilesystemFactory : public AbstractFilesystemFactory, public Common::Singleton<WindowsFilesystemFactory> {
public:
typedef Common::String String;
- /**
- * Creates an instance of WindowsFilesystemFactory using the Singleton pattern.
- *
- * @return A unique instance of WindowsFilesytemFactory.
- */
- static WindowsFilesystemFactory *instance();
-
virtual AbstractFilesystemNode *makeRootFileNode() const;
virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
virtual AbstractFilesystemNode *makeFileNodePath(const String &path) const;
@@ -27,7 +20,7 @@ protected:
WindowsFilesystemFactory() {};
private:
- static WindowsFilesystemFactory *_instance;
+ friend class Common::Singleton<SingletonBaseType>;
};
#endif /*WINDOWS_FILESYSTEM_FACTORY_H*/