aboutsummaryrefslogtreecommitdiff
path: root/backends/plugins/ds/ds-provider.h
diff options
context:
space:
mode:
Diffstat (limited to 'backends/plugins/ds/ds-provider.h')
-rw-r--r--backends/plugins/ds/ds-provider.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/backends/plugins/ds/ds-provider.h b/backends/plugins/ds/ds-provider.h
index 2a3e731d1c..0013145358 100644
--- a/backends/plugins/ds/ds-provider.h
+++ b/backends/plugins/ds/ds-provider.h
@@ -26,9 +26,20 @@
#if defined(DYNAMIC_MODULES) && defined(__DS__)
#include "backends/plugins/elf-provider.h"
+#include "backends/plugins/arm-loader.h"
class DSPluginProvider : public ELFPluginProvider {
- Plugin* createPlugin(const Common::FSNode &node) const;
+ class DSPlugin : public ELFPlugin {
+ public:
+ DSPlugin(const Common::String &filename) : ELFPlugin(filename) {}
+
+ DLObject *makeDLObject() { return new ARMDLObject(); }
+ };
+
+public:
+ Plugin* createPlugin(const Common::FSNode &node) const {
+ return new DSPlugin(node.getPath());
+ }
};
-#endif // defined(DYNAMIC_MODULES) && defined(ELF_LOADER_TARGET)
+#endif // defined(DYNAMIC_MODULES) && defined(__DS__)