/[projects]/smsdaemon/PluginManager.h
ViewVC logotype

Contents of /smsdaemon/PluginManager.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 217 - (show annotations) (download)
Tue Dec 23 14:20:43 2008 UTC (15 years, 4 months ago) by torben
File MIME type: text/plain
File size: 693 byte(s)
Solved ToDo item:
'- Create a filtering method:
-  Incoming: which phonenumbers are allowed to invoke which plugins
-  Incoming could be solved with a PluginProxy() which intercepts the ExecutePlugin calls (only 
PluginManager needs to know about this one)'

Move the Access related items to AccessManager.*


1 #ifndef __PLUGINMANAGER_H__
2 #define __PLUGINMANAGER_H__
3
4 #include <string>
5 #include <map>
6 #include <vector>
7
8 class Plugin;
9
10 class PluginManager
11 {
12 public:
13 PluginManager();
14 ~PluginManager();
15
16 void LoadPlugins();
17 void DestroyPlugins();
18 void AddPlugin(Plugin* plugin);
19
20 Plugin* GetPlugin(const std::string& pluginname);
21
22 std::vector<Plugin*> GetPluginList();
23
24 private:
25
26 Plugin* CreatePlugin(const std::string& pluginName, const std::map<std::string,std::string>& arguments);
27 void ParseCommonOptions(const std::string& pluginName, std::map<std::string,std::string>& args);
28 std::map<std::string, Plugin*> _plugins;
29 std::vector<Plugin*> _helper_plugins;
30 };
31
32 #endif //__PLUGINMANAGER_H__

  ViewVC Help
Powered by ViewVC 1.1.20