| 71 | static PluginRegistry& Instance() { return instance; } |
| 72 | void Register(const string& name, Factory factory) { plugins.emplace_back(name, factory); } |
| 73 | void Print(ostream& out) const |
| 74 | { |
| 75 | for (auto& p: plugins) |
| 76 | out << " - " << p.first << endl; |
| 77 | } |
| 78 | unique_ptr<Plugin> Create(const string& name, Menu* menu) const |
| 79 | { |
| 80 | for (auto& p: plugins) |