Line data Source code
1 : #include "artdaq/RoutingPolicies/makeRoutingManagerPolicy.hh"
2 :
3 : #include "artdaq/RoutingPolicies/RoutingManagerPolicy.hh"
4 :
5 : #include "cetlib/BasicPluginFactory.h"
6 :
7 : namespace fhicl {
8 : class ParameterSet;
9 : }
10 :
11 : std::shared_ptr<artdaq::RoutingManagerPolicy>
12 21 : artdaq::makeRoutingManagerPolicy(std::string const& policy_plugin_spec,
13 : fhicl::ParameterSet const& ps)
14 : {
15 45 : static cet::BasicPluginFactory bpf("policy", "make");
16 :
17 : std::unique_ptr<artdaq::RoutingManagerPolicy> uptr =
18 : bpf.makePlugin<std::unique_ptr<artdaq::RoutingManagerPolicy>,
19 21 : fhicl::ParameterSet const&>(policy_plugin_spec, ps);
20 21 : std::shared_ptr<artdaq::RoutingManagerPolicy> sptr(std::move(uptr));
21 42 : return sptr;
22 21 : }
|