diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2008-12-08 22:03:45 +0100 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2008-12-08 22:03:45 +0100 |
commit | 60f1e0a3942adba1505a8d56064b3cc53834045d (patch) | |
tree | ad144073779b0143e54fc1ea642b17be074a8547 /src/Common/ModuleManager.h | |
parent | ad7ee8df8ac73ef7754ccf1d5fb442ec23c879f1 (diff) | |
download | mad-60f1e0a3942adba1505a8d56064b3cc53834045d.tar mad-60f1e0a3942adba1505a8d56064b3cc53834045d.zip |
Kann jetzt mit preopen ge?ffnete Module laden
Diffstat (limited to 'src/Common/ModuleManager.h')
-rw-r--r-- | src/Common/ModuleManager.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Common/ModuleManager.h b/src/Common/ModuleManager.h index e327f28..fa7316f 100644 --- a/src/Common/ModuleManager.h +++ b/src/Common/ModuleManager.h @@ -36,9 +36,11 @@ class ModuleManager : public Configurable, public Initializable { private: static ModuleManager moduleManager; - std::map<std::string, lt_dlhandle> modules; + std::map<std::string, std::pair<lt_dlhandle, bool> > modules; std::stack<std::string> moduleOrder; + static int preopenCallback(lt_dlhandle handle); + void unloadModule(const std::string &name); protected: @@ -48,7 +50,7 @@ class ModuleManager : public Configurable, public Initializable { virtual bool handleConfigEntry(const ConfigEntry &entry, bool handled); public: - bool loadModule(const std::string &name); + lt_dlhandle loadModule(const std::string &name); static ModuleManager* get() { if(!moduleManager.isInitialized()) |