1 #ifndef TMVA_RINFERENCEUTILS
2 #define TMVA_RINFERENCEUTILS
8 namespace Experimental {
13 template <
typename I,
typename T,
typename F>
16 template <std::size_t... N,
typename T,
typename F>
17 class ComputeHelper<std::index_sequence<N...>, T, F> {
18 template <std::
size_t Idx>
23 ComputeHelper(F &&f) : fFunc(std::forward<F>(f)) {}
24 auto operator()(AlwaysT<N>... args) -> decltype(fFunc.Compute({args...})) {
return fFunc.Compute({args...}); }
30 template <std::
size_t N,
typename T,
typename F>
31 auto Compute(F &&f) -> Internal::ComputeHelper<std::make_index_sequence<N>, T, F>
33 return Internal::ComputeHelper<std::make_index_sequence<N>, T, F>(std::forward<F>(f));
39 #endif // TMVA_RINFERENCEUTILS