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

Annotation of /smsdaemon/PluginManager.h

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.20