Mercurial > hg > orthanc
diff Plugins/Engine/PluginsManager.h @ 1630:ffd23c0104af
"/system" URI gives information about the plugins used for storage area and DB back-end
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 21 Sep 2015 13:26:45 +0200 |
parents | 357c4bb15701 |
children | eb8fbcf008b5 |
line wrap: on
line diff
--- a/Plugins/Engine/PluginsManager.h Fri Sep 18 17:45:59 2015 +0200 +++ b/Plugins/Engine/PluginsManager.h Mon Sep 21 13:26:45 2015 +0200 @@ -40,21 +40,22 @@ namespace Orthanc { - class PluginsManager : boost::noncopyable + class PluginsManager : public boost::noncopyable { private: - class Plugin + class Plugin : public boost::noncopyable { private: - SharedLibrary library_; - std::string version_; + OrthancPluginContext context_; + SharedLibrary library_; + std::string version_; + PluginsManager& pluginManager_; public: - Plugin(const std::string& path) : library_(path) - { - } + Plugin(PluginsManager& pluginManager, + const std::string& path); - SharedLibrary& GetLibrary() + SharedLibrary& GetSharedLibrary() { return library_; } @@ -68,11 +69,20 @@ { return version_; } + + PluginsManager& GetPluginManager() + { + return pluginManager_; + } + + OrthancPluginContext& GetContext() + { + return context_; + } }; typedef std::map<std::string, Plugin*> Plugins; - OrthancPluginContext context_; Plugins plugins_; std::list<IPluginServiceProvider*> serviceProviders_;