retdec
plugin_mgr.h
Go to the documentation of this file.
1 
7 #ifndef UNPACKERTOOL_PLUGIN_MGR_H
8 #define UNPACKERTOOL_PLUGIN_MGR_H
9 
10 #include <cctype>
11 #include <map>
12 #include <memory>
13 #include <string>
14 #include <vector>
15 
16 namespace retdec {
17 namespace unpackertool {
18 
19 #define WILDCARD_ALL_VERSIONS ""
20 
21 class Plugin;
22 
23 using PluginList = std::vector<Plugin*>;
24 
36 class PluginMgr
37 {
38 public:
39  PluginMgr(const PluginMgr&) = delete;
40 
41  static const PluginList plugins;
42 
43  static PluginList matchingPlugins(const std::string& packerName, const std::string& packerVersion);
44 
45 private:
46  PluginMgr() = default;
47 };
48 
49 } // namespace unpackertool
50 } // namespace retdec
51 
52 #endif
The manager of unpacking plugins.
Definition: plugin_mgr.h:37
static const PluginList plugins
Definition: plugin_mgr.h:41
PluginMgr(const PluginMgr &)=delete
static PluginList matchingPlugins(const std::string &packerName, const std::string &packerVersion)
Definition: plugin_mgr.cpp:35
std::vector< Plugin * > PluginList
Type for list of plugins.
Definition: plugin_mgr.h:23
Definition: archive_wrapper.h:19