Project
Loading...
Searching...
No Matches
o2::framework::PluginManager Struct Reference

#include <PluginManager.h>

Public Types

using WrapperProcessCallback = std::function< void(AlgorithmSpec::ProcessCallback &, ProcessingContext &)>
 

Static Public Member Functions

template<typename T >
static T * getByName (DPLPluginHandle *handle, char const *name)
 
static void load (std::vector< PluginInfo > &infos, const char *dso, std::function< void(DPLPluginHandle *)> &onSuccess)
 
static auto loadAlgorithmFromPlugin (std::string library, std::string plugin, ConfigContext const &context) -> AlgorithmSpec
 
static auto wrapAlgorithm (AlgorithmSpec const &spec, WrapperProcessCallback &&wrapper) -> AlgorithmSpec
 
static std::vector< LoadablePluginparsePluginSpecString (char const *str)
 Parse a comma separated list of <library>:<plugin-name> plugin declarations.
 
template<typename CONCRETE , typename PLUGIN >
static void loadFromPlugin (std::vector< LoadablePlugin > const &loadablePlugins, std::vector< CONCRETE > &specs)
 

Detailed Description

Definition at line 35 of file PluginManager.h.

Member Typedef Documentation

◆ WrapperProcessCallback

Member Function Documentation

◆ getByName()

template<typename T >
static T * o2::framework::PluginManager::getByName ( DPLPluginHandle handle,
char const *  name 
)
inlinestatic

Definition at line 39 of file PluginManager.h.

◆ load()

void o2::framework::PluginManager::load ( std::vector< PluginInfo > &  infos,
const char dso,
std::function< void(DPLPluginHandle *)> &  onSuccess 
)
static

Load a DSO called dso and insert its handle in infos On successfull completion onSuccess is called passing the DPLPluginHandle provided by the library.

Definition at line 69 of file PluginManager.cxx.

◆ loadAlgorithmFromPlugin()

auto o2::framework::PluginManager::loadAlgorithmFromPlugin ( std::string  library,
std::string  plugin,
ConfigContext const &  context 
) -> AlgorithmSpec
static

Load an called @plugin from a library called library and

Returns
the associated AlgorithmSpec. The config context can be used to determine the workflow options which affect such plugin.

Definition at line 104 of file PluginManager.cxx.

◆ loadFromPlugin()

template<typename CONCRETE , typename PLUGIN >
static void o2::framework::PluginManager::loadFromPlugin ( std::vector< LoadablePlugin > const &  loadablePlugins,
std::vector< CONCRETE > &  specs 
)
inlinestatic

Definition at line 65 of file PluginManager.h.

◆ parsePluginSpecString()

std::vector< LoadablePlugin > o2::framework::PluginManager::parsePluginSpecString ( char const *  str)
static

Parse a comma separated list of <library>:<plugin-name> plugin declarations.

Definition at line 19 of file PluginManager.cxx.

◆ wrapAlgorithm()

auto o2::framework::PluginManager::wrapAlgorithm ( AlgorithmSpec const &  spec,
WrapperProcessCallback &&  wrapper 
) -> AlgorithmSpec
static

Wrap an algorithm with some lambda @wrapper which will be called with the original callback and the ProcessingContext.

Definition at line 142 of file PluginManager.cxx.


The documentation for this struct was generated from the following files: