9#ifndef ROOT_RDF_DETAIL_RACTIONIMPL 
   10#define ROOT_RDF_DETAIL_RACTIONIMPL 
   22   static std::true_type 
Test(
int);
 
   24   static std::false_type 
Test(...);
 
 
   35class RMergeableValueBase;
 
   38template <
typename Helper>
 
   43   template <
typename T = Helper>
 
   46      static_cast<Helper *
>(
this)->FinalizeTask(
slot);
 
 
   49   template <
typename... Args>
 
   52   template <
typename H = Helper>
 
   55      return &
static_cast<Helper *
>(
this)->PartialUpdate(
slot);
 
 
   58   template <
typename... Args>
 
   61      throw std::logic_error(
"This action does not support callbacks!");
 
 
   72         const auto &
actionName = 
static_cast<Helper *
>(
this)->GetActionName();
 
   73         throw std::logic_error(
"The MakeNew method is not implemented for this action helper (" + 
actionName +
 
   74                                "). Cannot Vary its result.");
 
 
   81      throw std::logic_error(
"`GetMergeableValue` is not implemented for this type of action.");
 
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Base class for action helpers, see RInterface::Book() for more information.
auto CallFinalizeTask(unsigned int slot) -> decltype(std::declval< T >().FinalizeTask(slot))
virtual ~RActionImpl()=default
void * CallPartialUpdate(...)
virtual ROOT::RDF::SampleCallback_t GetSampleCallback()
Override this method to register a callback that is executed before the processing a new data sample ...
auto CallPartialUpdate(unsigned int slot) -> decltype(std::declval< H >().PartialUpdate(slot),(void *)(nullptr))
virtual std::unique_ptr< RMergeableValueBase > GetMergeableValue() const
Helper CallMakeNew(void *typeErasedResSharedPtr, std::string_view variation="nominal")
void CallFinalizeTask(unsigned int, Args...)
static constexpr bool value
static std::false_type Test(...)
static std::true_type Test(int)
std::function< void(unsigned int, const ROOT::RDF::RSampleInfo &)> SampleCallback_t
The type of a data-block callback, registered with an RDataFrame computation graph via e....