FairMQ: Add static plugin mechanism

* Add skeleton for Take/ReleaseControl API
* Add skeleton for control_static builtin plugin
This commit is contained in:
Dennis Klein
2017-09-12 19:25:36 +02:00
committed by Mohammad Al-Turany
parent 17d7cd8ce4
commit 052ac8487d
11 changed files with 181 additions and 11 deletions

View File

@@ -11,6 +11,7 @@
#include <fairmq/Plugin.h>
#include <fairmq/PluginServices.h>
#include <fairmq/plugins/Builtin.h>
#include <fairmq/Tools.h>
#include <FairMQDevice.h>
#define BOOST_FILESYSTEM_VERSION 3
@@ -27,7 +28,6 @@
#include <stdexcept>
#include <string>
#include <tuple>
#include <tuple>
#include <vector>
namespace fair
@@ -43,6 +43,7 @@ namespace mq
* facilitates two plugin mechanisms:
* A prelinked dynamic plugins (shared libraries)
* B dynamic plugins (shared libraries)
* C static plugins (builtin)
*/
class PluginManager
{
@@ -82,6 +83,7 @@ class PluginManager
auto LoadPluginPrelinkedDynamic(const std::string& pluginName) -> void;
auto LoadPluginDynamic(const std::string& pluginName) -> void;
auto LoadPluginStatic(const std::string& pluginName) -> void;
template<typename... Args>
auto LoadSymbols(const std::string& pluginName, Args&&... args) -> void
{