29 template <
typename T,
T... params>
30 struct initialize_parset;
33 template <
typename T,
T first,
T... others>
34 struct initialize_parset<
T, first, others...> {
35 template <
typename ParSetType,
typename first_value_type,
36 typename... other_value_types>
37 static void init(ParSetType& parSet,
const first_value_type&
v1,
38 const other_value_types&...
values) {
39 parSet.template setParameter<first>(
v1);
43 template <
typename ParSetType>
44 static void init(ParSetType& parSet,
45 const typename ParSetType::ParVector_t&
values,
46 const unsigned int&
pos = 0) {
47 parSet.template setParameter<first>(
values(
pos));
52 template <
typename T, T last>
53 struct initialize_parset<
T, last> {
54 template <
typename ParSet_tType,
typename last_value_type>
55 static void init(ParSet_tType& ParSet_t,
const last_value_type&
v1) {
56 ParSet_t.template setParameter<last>(
v1);
59 template <
typename ParSetType>
60 static void init(ParSetType& parSet,
61 const typename ParSetType::ParVector_t&
values,
62 const unsigned int&
pos = 0) {
63 parSet.template setParameter<last>(
values(
pos));