comparison Plugins/Engine/PluginsManager.h @ 888:d44b845c1c89 plugins

recursive scan for plugins
author Sebastien Jodogne <s.jodogne@gmail.com>
date Sat, 14 Jun 2014 19:47:51 +0200
parents 4066e6f2d134
children 690aeb4cb899
comparison
equal deleted inserted replaced
887:4066e6f2d134 888:d44b845c1c89
33 #pragma once 33 #pragma once
34 34
35 #include "SharedLibrary.h" 35 #include "SharedLibrary.h"
36 #include "../OrthancCPlugin/OrthancCPlugin.h" 36 #include "../OrthancCPlugin/OrthancCPlugin.h"
37 37
38 #include <list> 38 #include <map>
39 39
40 namespace Orthanc 40 namespace Orthanc
41 { 41 {
42 class PluginsManager : boost::noncopyable 42 class PluginsManager : boost::noncopyable
43 { 43 {
44 private: 44 private:
45 typedef std::list<SharedLibrary*> Plugins; 45 typedef std::map<std::string, SharedLibrary*> Plugins;
46 46
47 OrthancPluginContext context_; 47 OrthancPluginContext context_;
48 Plugins plugins_; 48 Plugins plugins_;
49 49
50 public: 50 public:
51 PluginsManager(); 51 PluginsManager();
52 52
53 ~PluginsManager(); 53 ~PluginsManager();
54 54
55 void RegisterPlugin(const std::string& path); 55 void RegisterPlugin(const std::string& path);
56
57 void ScanFolderForPlugins(const std::string& path,
58 bool isRecursive);
56 }; 59 };
57 } 60 }