diff options
Diffstat (limited to 'backends/plugins/ds/ds-provider.h')
-rw-r--r-- | backends/plugins/ds/ds-provider.h | 15 |
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__) |