aboutsummaryrefslogtreecommitdiff
path: root/base/plugins.h
diff options
context:
space:
mode:
authorJordi Vilalta Prat2008-05-02 14:30:06 +0000
committerJordi Vilalta Prat2008-05-02 14:30:06 +0000
commit3f44977885d33ea694df399a83cf198dd85b5fed (patch)
treec081843c9cd64d3e077482fbc7f43bbf3b39d087 /base/plugins.h
parent6a98108eac1203eaf1058fa24ad9c80fc9ba45a8 (diff)
downloadscummvm-rg350-3f44977885d33ea694df399a83cf198dd85b5fed.tar.gz
scummvm-rg350-3f44977885d33ea694df399a83cf198dd85b5fed.tar.bz2
scummvm-rg350-3f44977885d33ea694df399a83cf198dd85b5fed.zip
Added support to load plugins from different directories and the ability to specify the default directory from configure.
svn-id: r31816
Diffstat (limited to 'base/plugins.h')
-rw-r--r--base/plugins.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/base/plugins.h b/base/plugins.h
index da48a7c22a..f317a533ae 100644
--- a/base/plugins.h
+++ b/base/plugins.h
@@ -147,6 +147,19 @@ public:
virtual PluginList getPlugins() = 0;
};
+class FilePluginProvider : public PluginProvider {
+public:
+ virtual PluginList getPlugins();
+
+protected:
+ virtual Plugin* createPlugin(const Common::String &filename) const = 0;
+
+ virtual const char* getPrefix() const;
+ virtual const char* getSuffix() const;
+
+ virtual void addCustomDirectories(Common::StringList &dirs) const;
+};
+
/**
* Instances of this class manage all plugins, including loading them,
* making wrapper objects of class Plugin available, and unloading them.