21 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
25 template <
typename Out,
typename... In,
typename Traits_>
36 virtual Out
operator()(
const In&... )
const = 0;
45 put( std::get<0>( this->m_outputs ),
58 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
61 template <
typename... Out,
typename... In,
typename Traits_>
71 return invoke( std::index_sequence_for<In...>{}, std::index_sequence_for<Out...>{} );
86 (
put( std::get<O>( this->m_outputs ),
std::move( std::get<O>( out ) ) ), 0 )...};
98 template <
typename Signature,
typename Traits_ = Traits::useDefaults>
101 template <
typename... Out,
typename... In,
typename Traits_>
111 return invoke( std::index_sequence_for<In...>{}, std::index_sequence_for<Out...>{} );
125 this->setFilterPassed( std::get<0>( out ) );
127 (
put( std::get<O>( this->m_outputs ),
std::move( std::get<O + 1>( out ) ) ), 0 )...};
virtual const std::string & message() const
error message to be printed
constexpr std::add_const< T >::type & as_const(T &t) noexcept
Define general base for Gaudi exception.
class MergingTransformer< Out(const vector_of_const_< In > void
virtual const StatusCode & code() const
StatusCode for Exception.
This class is used for returning status codes from appropriate routines.
std::vector< InputHandle_t< In > > m_inputs
virtual Out operator()(const vector_of_const_< In > &inputs) const =0
struct[[deprecated("use MergingTransformer instead")]] Traits_
auto invoke(F &&f, ArgTypes &&...args) noexcept(noexcept(detail2::INVOKE(std::forward< F >(f), std::forward< ArgTypes >(args)...))) -> decltype(detail2::INVOKE(std::forward< F >(f), std::forward< ArgTypes >(args)...))
Helper functions to set/get the application return code.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Out1 * put(DataObjectHandle< Out1 > &out_handle, Out2 &&out)