| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Classes | Typedefs | Functions
Gaudi::Functional::details::details2 Namespace Reference

## Classes
struct | get_from_handle
struct | remove_optional
struct | remove_optional< boost::optional< T > >

## Typedefs
template<std::size_t N, typename Tuple >
using | element_t = typename std::tuple_element< N, Tuple >::type

## Functions
template<typename Container , typename Value >
void | push_back (Container &c, const Value &v, std::true_type)
template<typename Container , typename Value >
void | push_back (Container &c, const Value &v, std::false_type)
template<typename T >
T * | deref_if (T *const t, std::false_type)
template<typename T >
T & | deref_if (T *const t, std::true_type)
template<typename Tuple , typename KeyValues , std::size_t... I>
Tuple | make_tuple_of_handles_helper (IDataHandleHolder *o, const KeyValues &initvalue, Gaudi::DataHandle::Mode m, std::index_sequence< I... >)
template<typename KeyValues , typename Properties , std::size_t... I>
void | declare_tuple_of_properties_helper (Algorithm &owner, const KeyValues &inputs, Properties &props, std::index_sequence< I... >)

## Typedef Documentation

template<std::size_t N, typename Tuple >

using Gaudi::Functional::details::details2::element_t = typedef typename std::tuple_element<N, Tuple>::type

Definition at line 390 of file FunctionalDetails.h.

## Function Documentation

template<typename KeyValues , typename Properties , std::size_t... I>

void Gaudi::Functional::details::details2::declare_tuple_of_properties_helper | ( | Algorithm & | owner,
|  | const KeyValues & | inputs,
|  | Properties & | props,
|  | std::index_sequence< I... > |
| ) |  |

Definition at line 399 of file FunctionalDetails.h.

401 {
402 (void)std::initializer_list<int>{
403 ( owner.declareProperty( std::get<I>( inputs ).first, std::get<I>( props ) ), 0 )...};
404 }
Gaudi::Functional::void
class MergingTransformer< Out(const vector_of_const_< In > void
Definition: MergingTransformer.h:23
BrunelScenarioForwardScheduler.inputs
inputs
Definition: BrunelScenarioForwardScheduler.py:133
Algorithm::declareProperty
Gaudi::Details::PropertyBase * declareProperty(const std::string &name, ToolHandle< T > &hndl, const std::string &doc="none")
Definition: Algorithm.h:370
std::initializer_list
template<typename T >

T* Gaudi::Functional::details::details2::deref_if | ( | T *const | t,
|  | std::false_type |
| ) |  |

Definition at line 244 of file FunctionalDetails.h.

245 {
246 return t;
247 }
template<typename T >

T& Gaudi::Functional::details::details2::deref_if | ( | T *const | t,
|  | std::true_type |
| ) |  |

Definition at line 249 of file FunctionalDetails.h.

250 {
251 return *t;
252 }
template<typename Tuple , typename KeyValues , std::size_t... I>

Tuple Gaudi::Functional::details::details2::make_tuple_of_handles_helper | ( | IDataHandleHolder * | o,
|  | const KeyValues & | initvalue,
|  | Gaudi::DataHandle::Mode | m,
|  | std::index_sequence< I... > |
| ) |  |

Definition at line 393 of file FunctionalDetails.h.

395 {
396 return std::make_tuple( element_t<I, Tuple>{std::get<I>( initvalue ).second, m, o}... );
397 }
std::make_tuple
T make_tuple(T...args)
Gaudi::Units::second
constexpr double second
Definition: SystemOfUnits.h:123
Gaudi::Units::m
constexpr double m
Definition: SystemOfUnits.h:94
template<typename Container , typename Value >

void Gaudi::Functional::details::details2::push_back | ( | Container & | c,
|  | const Value & | v,
|  | std::true_type |
| ) |  |

Definition at line 217 of file FunctionalDetails.h.

218 {
219 c.push_back( v );
220 }
gaudirun.c
c
Definition: gaudirun.py:407
template<typename Container , typename Value >

void Gaudi::Functional::details::details2::push_back | ( | Container & | c,
|  | const Value & | v,
|  | std::false_type |
| ) |  |

Definition at line 222 of file FunctionalDetails.h.

223 {
224 c.push_back( &v );
225 }
gaudirun.c
c
Definition: gaudirun.py:407