Just like an RAction, but it has N action helpers and N previous nodes (N is the number of variations).
Definition at line 40 of file RVariedAction.hxx.
Public Member Functions | |
| RVariedAction (const RVariedAction &)=delete | |
| RVariedAction (std::vector< Helper > &&helpers, const ColumnNames_t &columns, std::shared_ptr< PrevNode > prevNode, const RColumnRegister &colRegister) | |
| ~RVariedAction () | |
| template<typename... ColTypes, std::size_t... ReaderIdxs> | |
| void | CallExec (unsigned int slot, unsigned int varIdx, Long64_t entry, TypeList< ColTypes... >, std::index_sequence< ReaderIdxs... >) |
| std::unique_ptr< RActionBase > | CloneAction (void *typeErasedResults) final |
| void | Finalize () final |
| Clean-up and finalize the action result (e.g. | |
| void | FinalizeSlot (unsigned int slot) final |
| Clean-up operations to be performed at the end of a task. | |
| RColumnRegister & | GetColRegister () |
| const ColumnNames_t & | GetColumnNames () const |
| std::shared_ptr< RDFGraphDrawing::GraphNode > | GetGraph (std::unordered_map< void *, std::shared_ptr< RDFGraphDrawing::GraphNode > > &visitedMap) final |
| RLoopManager * | GetLoopManager () |
| std::unique_ptr< RMergeableValueBase > | GetMergeableValue () const final |
| Retrieve a container holding the names and values of the variations. | |
| unsigned int | GetNSlots () const |
| ROOT::RDF::SampleCallback_t | GetSampleCallback () final |
| Return a callback that in turn runs the callbacks of each variation's helper. | |
| template<typename ColType > | |
| auto | GetValueChecked (unsigned int slot, unsigned int varIdx, std::size_t readerIdx, Long64_t entry) -> ColType & |
| const std::vector< std::string > & | GetVariations () const |
| virtual bool | HasRun () const |
| void | Initialize () final |
| void | InitSlot (TTreeReader *r, unsigned int slot) final |
| std::unique_ptr< RActionBase > | MakeVariedAction (std::vector< void * > &&) final |
| RVariedAction & | operator= (const RVariedAction &)=delete |
| void * | PartialUpdate (unsigned int slot) final |
| Return the partially-updated value connected to the first variation. | |
| void | Run (unsigned int slot, Long64_t entry) final |
| virtual void | SetHasRun () |
| void | TriggerChildrenCount () final |
Protected Attributes | |
| const ColumnNames_t | fColumnNames |
| RLoopManager * | fLoopManager |
| A raw pointer to the RLoopManager at the root of this functional graph. | |
Private Types | |
| using | PrevNodeType = std::conditional_t<std::is_same<PrevNode, RJittedFilter>::value, RFilterBase, PrevNode> |
| using | TypeInd_t = std::make_index_sequence<ColumnTypes_t::list_size> |
Private Member Functions | |
| RVariedAction (std::vector< Helper > &&helpers, const ColumnNames_t &columns, const std::vector< std::shared_ptr< PrevNodeType > > &prevNodes, const RColumnRegister &colRegister) | |
| This constructor takes in input a vector of previous nodes, motivated by the CloneAction logic. | |
| std::vector< std::shared_ptr< PrevNodeType > > | MakePrevFilters (std::shared_ptr< PrevNode > nominal) const |
| Creates new filter nodes, one per variation, from the upstream nominal one. | |
| void * | PartialUpdateImpl (...) |
| template<typename H = Helper> | |
| auto | PartialUpdateImpl (unsigned int slot) -> decltype(std::declval< H >().PartialUpdate(slot),(void *)(nullptr)) |
| void | SetupClass () |
Private Attributes | |
| RColumnRegister | fColRegister |
| bool | fHasRun = false |
| std::vector< Helper > | fHelpers |
| Action helpers per variation. | |
| std::vector< std::vector< std::array< RColumnReaderBase *, ColumnTypes_t::list_size > > > | fInputValues |
| Column readers per slot (outer dimension), per variation and per input column (inner dimension, std::array). | |
| std::array< bool, ColumnTypes_t::list_size > | fIsDefine |
| The nth flag signals whether the nth input column is a custom column or not. | |
| const unsigned int | fNSlots |
| Number of thread slots used by this node. | |
| std::vector< std::shared_ptr< PrevNodeType > > | fPrevNodes |
| Owning pointers to upstream nodes for each systematic variation. | |
| std::vector< std::string > | fVariations |
| List of systematic variations that affect the result of this action ("nominal" excluded). | |
#include <ROOT/RDF/RVariedAction.hxx>
|
private |
Definition at line 44 of file RVariedAction.hxx.
|
private |
Definition at line 41 of file RVariedAction.hxx.
|
inlineprivate |
This constructor takes in input a vector of previous nodes, motivated by the CloneAction logic.
Definition at line 101 of file RVariedAction.hxx.
|
inline |
Definition at line 112 of file RVariedAction.hxx.
|
delete |
|
inline |
Definition at line 125 of file RVariedAction.hxx.
|
inline |
Definition at line 157 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 254 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Clean-up and finalize the action result (e.g.
merging slot-local results). It invokes the helper's Finalize method.
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 186 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Clean-up operations to be performed at the end of a task.
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 178 of file RVariedAction.hxx.
|
inlineinherited |
Definition at line 63 of file RActionBase.hxx.
|
inlineinherited |
Definition at line 62 of file RActionBase.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 215 of file RVariedAction.hxx.
|
inlineinherited |
Definition at line 64 of file RActionBase.hxx.
|
inlinefinalvirtual |
Retrieve a container holding the names and values of the variations.
It knows how to merge with others of the same type.
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 237 of file RVariedAction.hxx.
|
inlineinherited |
Definition at line 65 of file RActionBase.hxx.
|
inlinefinalvirtual |
Return a callback that in turn runs the callbacks of each variation's helper.
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 196 of file RVariedAction.hxx.
|
inline |
Definition at line 144 of file RVariedAction.hxx.
|
inlineinherited |
Definition at line 91 of file RActionBase.hxx.
Reimplemented in ROOT::Internal::RDF::RJittedAction.
Definition at line 77 of file RActionBase.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 127 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 132 of file RVariedAction.hxx.
|
inlineprivate |
Creates new filter nodes, one per variation, from the upstream nominal one.
| nominal | The nominal filter |
The nominal filter is not included in the return value.
Definition at line 61 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 249 of file RVariedAction.hxx.
|
delete |
|
inlinefinalvirtual |
Return the partially-updated value connected to the first variation.
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 193 of file RVariedAction.hxx.
|
inlineprivate |
Definition at line 280 of file RVariedAction.hxx.
|
inlineprivate |
Definition at line 274 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 164 of file RVariedAction.hxx.
|
inlinevirtualinherited |
Reimplemented in ROOT::Internal::RDF::RJittedAction.
Definition at line 78 of file RActionBase.hxx.
|
inlineprivate |
Definition at line 84 of file RVariedAction.hxx.
|
inlinefinalvirtual |
Implements ROOT::Internal::RDF::RActionBase.
Definition at line 172 of file RVariedAction.hxx.
|
privateinherited |
Definition at line 53 of file RActionBase.hxx.
|
protectedinherited |
Definition at line 45 of file RActionBase.hxx.
Definition at line 49 of file RActionBase.hxx.
|
private |
Action helpers per variation.
Definition at line 46 of file RVariedAction.hxx.
|
private |
Column readers per slot (outer dimension), per variation and per input column (inner dimension, std::array).
Definition at line 51 of file RVariedAction.hxx.
|
private |
The nth flag signals whether the nth input column is a custom column or not.
Definition at line 54 of file RVariedAction.hxx.
|
protectedinherited |
A raw pointer to the RLoopManager at the root of this functional graph.
Never null: children nodes have shared ownership of parent nodes in the graph.
Definition at line 44 of file RActionBase.hxx.
Number of thread slots used by this node.
Definition at line 48 of file RActionBase.hxx.
|
private |
Owning pointers to upstream nodes for each systematic variation.
Definition at line 48 of file RVariedAction.hxx.
|
privateinherited |
List of systematic variations that affect the result of this action ("nominal" excluded).
Definition at line 51 of file RActionBase.hxx.