| The Gaudi Framework v28r2p1 (f1a77ff4)

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Private Member Functions | List of all members
Gaudi::Functional::Transformer< Out(const In &...), Traits_ > Class Template Referenceabstract

`#include <GaudiAlg/Transformer.h>`

Inheritance diagram for Gaudi::Functional::Transformer< Out(const In &...), Traits_ >:
[legend]
Collaboration diagram for Gaudi::Functional::Transformer< Out(const In &...), Traits_ >:
[legend]

## Public Member Functions
StatusCode | execute () override final
virtual Out | operator() (const In &...) const =0

## Private Member Functions
template<std::size_t... I>
StatusCode | invoke (std::index_sequence< I... >)

## Detailed Description

### template<typename Out, typename... In, typename Traits_>
class Gaudi::Functional::Transformer< Out(const In &...), Traits_ >

Definition at line 22 of file Transformer.h.

## Member Function Documentation

template<typename Out , typename... In, typename Traits_ >

StatusCode Gaudi::Functional::Transformer< Out(const In &...), Traits_ >::execute | ( |  | ) |
| inline final override

Definition at line 29 of file Transformer.h.

30 { return invoke(std::index_sequence_for<In...>{}); }
Gaudi::Functional::Transformer< Out(const In &...), Traits_ >::invoke
StatusCode invoke(std::index_sequence< I... >)
Definition: Transformer.h:37
template<typename Out , typename... In, typename Traits_ >
template<std::size_t... I>

StatusCode Gaudi::Functional::Transformer< Out(const In &...), Traits_ >::invoke | ( | std::index_sequence< I... > |  | ) |
| inline private

Definition at line 37 of file Transformer.h.

37 {
38 using details::as_const; using details::put;
39 try {
40 put( std::get<0>(this->m_outputs), as_const(*this)( as_const(*std::get<I>(this->m_inputs).get())... ) );
41 } catch ( GaudiException& e ) {
42 (e.code() ? this->warning() : this->error() )
43 << e.message() << endmsg;
44 return e.code();
45 }
46 return StatusCode::SUCCESS;
47 }
StatusCode::SUCCESS
Definition: StatusCode.h:30
Gaudi::Functional::details::as_const
constexpr std::add_const< T >::type & as_const(T &t) noexcept
Definition: FunctionalDetails.h:77
GaudiException
Define general base for Gaudi exception.
Definition: GaudiException.h:23
GaudiException::code
virtual const StatusCode & code() const
StatusCode for Exception.
Definition: GaudiException.h:127
Gaudi::Functional::m_inputs
std::vector< InputHandle_t< In > > m_inputs
Definition: MergingTransformer.h:39
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:244
Gaudi::Functional::details::put
Out1 * put(DataObjectHandle< Out1 > &out_handle, Out2 &&out)
Definition: FunctionalDetails.h:87
template<typename Out , typename... In, typename Traits_ >

virtual Out Gaudi::Functional::Transformer< Out(const In &...), Traits_ >::operator() | ( | const In & | ... | ) | const
| pure virtual

The documentation for this class was generated from the following file:

- GaudiAlg/GaudiAlg/Transformer.h