File indexing completed on 2025-12-15 10:18:20
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #ifndef FWCORE_PRODUCER_H
0020 #define FWCORE_PRODUCER_H
0021
0022 #include "k4FWCore/Transformer.h"
0023
0024 #include <tuple>
0025
0026 namespace k4FWCore {
0027
0028 namespace details {
0029
0030 template <typename Signature, typename Traits_>
0031 struct Producer;
0032
0033 template <typename... Out, typename Traits_>
0034 struct Producer<std::tuple<Out...>(), Traits_> : MultiTransformer<std::tuple<Out...>(), Traits_> {
0035 using MultiTransformer<std::tuple<Out...>(), Traits_>::MultiTransformer;
0036 };
0037
0038 template <typename Out, typename Traits_>
0039 struct Producer<Out(), Traits_> : Transformer<Out(), Traits_> {
0040 using Transformer<Out(), Traits_>::Transformer;
0041 };
0042
0043 }
0044
0045 template <typename Signature, typename Traits_ = Gaudi::Functional::Traits::useDefaults>
0046 using Producer = details::Producer<Signature, Traits_>;
0047
0048 }
0049
0050 #endif