aboutsummaryrefslogtreecommitdiff
path: root/base/plugins.cpp
diff options
context:
space:
mode:
authorMax Horn2003-09-17 23:05:07 +0000
committerMax Horn2003-09-17 23:05:07 +0000
commit3c55fd316fb1e9203744fd520c9553eedb15a348 (patch)
tree74e7e8116bea977320c1b999b85df2e2ba0cc26d /base/plugins.cpp
parent0eea7999ebbb7b2f580870f538dc7842c1a8d644 (diff)
downloadscummvm-rg350-3c55fd316fb1e9203744fd520c9553eedb15a348.tar.gz
scummvm-rg350-3c55fd316fb1e9203744fd520c9553eedb15a348.tar.bz2
scummvm-rg350-3c55fd316fb1e9203744fd520c9553eedb15a348.zip
cleanup
svn-id: r10284
Diffstat (limited to 'base/plugins.cpp')
-rw-r--r--base/plugins.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/base/plugins.cpp b/base/plugins.cpp
index 174a097b4d..0b5b909558 100644
--- a/base/plugins.cpp
+++ b/base/plugins.cpp
@@ -25,6 +25,34 @@
#include "common/engine.h"
+// Factory functions => no need to include the specific classes
+// in this header. This serves two purposes:
+// 1) Clean seperation from the game modules (scumm, simon) and the generic code
+// 2) Faster (compiler doesn't have to parse lengthy header files)
+#ifndef DISABLE_SCUMM
+extern const TargetSettings *Engine_SCUMM_targetList();
+extern Engine *Engine_SCUMM_create(GameDetector *detector, OSystem *syst);
+#endif
+
+#ifndef DISABLE_SIMON
+extern Engine *Engine_SIMON_create(GameDetector *detector, OSystem *syst);
+extern const TargetSettings *Engine_SIMON_targetList();
+#endif
+
+#ifndef DISABLE_SKY
+extern const TargetSettings *Engine_SKY_targetList();
+extern Engine *Engine_SKY_create(GameDetector *detector, OSystem *syst);
+#endif
+
+#ifndef DISABLE_SWORD2
+extern const TargetSettings *Engine_SWORD2_targetList();
+extern Engine *Engine_SWORD2_create(GameDetector *detector, OSystem *syst);
+#endif
+
+
+#pragma mark -
+
+
PluginManager *g_pluginManager = 0;