The head node of a RDF computation graph.
This class is responsible of running the event loop.
Definition at line 117 of file RLoopManager.hxx.
Classes | |
| struct | DeferredJitCall |
Public Member Functions | |
| RLoopManager (const ColumnNames_t &defaultColumns={}) | |
| RLoopManager (const RLoopManager &)=delete | |
| RLoopManager (RLoopManager &&)=delete | |
| RLoopManager (ROOT::RDF::Experimental::RDatasetSpec &&spec) | |
| RLoopManager (std::unique_ptr< RDataSource > ds, const ColumnNames_t &defaultBranches) | |
| RLoopManager (TTree *tree, const ColumnNames_t &defaultBranches) | |
| RLoopManager (ULong64_t nEmptyEntries) | |
| ~RLoopManager () override | |
| RColumnReaderBase * | AddDataSourceColumnReader (unsigned int slot, std::string_view col, const std::type_info &ti, TTreeReader *treeReader) |
| void | AddDataSourceColumnReaders (std::string_view col, std::vector< std::unique_ptr< RColumnReaderBase > > &&readers, const std::type_info &ti) |
| void | AddFilterName (std::vector< std::string > &) final |
| End of recursive chain of calls, does nothing. | |
| void | AddSampleCallback (void *nodePtr, ROOT::RDF::SampleCallback_t &&callback) |
| void | ChangeBeginAndEndEntries (Long64_t begin, Long64_t end) |
| void | ChangeSpec (ROOT::RDF::Experimental::RDatasetSpec &&spec) |
| Changes the internal TTree held by the RLoopManager. | |
| bool | CheckFilters (unsigned int, Long64_t) final |
| void | DataSourceThreadTask (const std::pair< ULong64_t, ULong64_t > &entryRange, ROOT::Internal::RSlotStack &slotStack, std::atomic< ULong64_t > &entryCount) |
| The task run by every thread on the input entry range, for the generic RDataSource. | |
| void | Deregister (RDefineBase *definePtr) |
| void | Deregister (RDFInternal::RActionBase *actionPtr) |
| void | Deregister (RDFInternal::RVariationBase *varPtr) |
| void | Deregister (RFilterBase *filterPtr) |
| void | Deregister (RRangeBase *rangePtr) |
| void | EraseSuppressErrorsForMissingBranch (const std::string &branchName) |
| std::vector< RDFInternal::RActionBase * > | GetAllActions () const |
| Return all actions, either booked or already run. | |
| ROOT::Internal::RDF::RStringCache & | GetColumnNamesCache () |
| RColumnReaderBase * | GetDatasetColumnReader (unsigned int slot, std::string_view col, const std::type_info &ti) const |
| RDataSource * | GetDataSource () const |
| const ColumnNames_t & | GetDefaultColumnNames () const |
| Return the list of default columns – empty if none was provided when constructing the RDataFrame. | |
| std::vector< std::string > | GetFiltersNames () |
| For each booked filter, returns either the name or "Unnamed Filter". | |
| std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNode > | GetGraph (std::unordered_map< void *, std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNode > > &visitedMap) final |
| std::vector< RNodeBase * > | GetGraphEdges () const |
| Return all graph edges known to RLoopManager This includes Filters and Ranges but not Defines. | |
| RLoopManager * | GetLoopManagerUnchecked () final |
| ULong64_t | GetNEmptyEntries () const |
| unsigned int | GetNRuns () const |
| unsigned int | GetNSlots () const |
| const std::set< std::string > & | GetSuppressErrorsForMissingBranches () const |
| std::set< std::pair< std::string_view, std::unique_ptr< ROOT::Internal::RDF::RDefinesWithReaders > > > & | GetUniqueDefinesWithReaders () |
| std::set< std::pair< std::string_view, std::unique_ptr< ROOT::Internal::RDF::RVariationsWithReaders > > > & | GetUniqueVariationsWithReaders () |
| const std::vector< std::string > & | GetVariations () const |
| virtual std::shared_ptr< RNodeBase > | GetVariedFilter (const std::string &) |
| Return a clone of this node that acts as a Filter working with values in the variationName "universe". | |
| bool | HasDataSourceColumnReaders (std::string_view col, const std::type_info &ti) const |
| Return true if AddDataSourceColumnReaders was called for column name col. | |
| void | IncrChildrenCount () final |
| void | InsertSuppressErrorsForMissingBranch (const std::string &branchName) |
| void | Jit () |
| Add RDF nodes that require just-in-time compilation to the computation graph. | |
| RLoopManager & | operator= (const RLoopManager &)=delete |
| RLoopManager & | operator= (RLoopManager &&)=delete |
| void | PartialReport (ROOT::RDF::RCutFlowReport &) const final |
| End of recursive chain of calls, does nothing. | |
| void | Register (RDefineBase *definePtr) |
| void | Register (RDFInternal::RActionBase *actionPtr) |
| void | Register (RDFInternal::RVariationBase *varPtr) |
| void | Register (RFilterBase *filterPtr) |
| void | Register (RRangeBase *rangePtr) |
| void | RegisterCallback (ULong64_t everyNEvents, std::function< void(unsigned int)> &&f) |
| void | RegisterJitHelperCall (const std::string &funcBody, std::unique_ptr< ROOT::Internal::RDF::RColumnRegister > colRegister, const std::vector< std::string > &colnames, std::shared_ptr< void > jittedNode, std::shared_ptr< void > argument=nullptr) |
| void | Report (ROOT::RDF::RCutFlowReport &rep) const final |
| Call FillReport on all booked filters. | |
| virtual void | ResetChildrenCount () |
| void | Run (bool jit=true) |
| Start the event loop with a different mechanism depending on IMT/no IMT, data source/no data source. | |
| void | RunDeferredCalls () |
| void | SetDataSource (std::unique_ptr< ROOT::RDF::RDataSource > dataSource) |
| void | SetEmptyEntryRange (std::pair< ULong64_t, ULong64_t > &&newRange) |
| void | SetSlotStack (const std::shared_ptr< ROOT::Internal::RSlotStack > &slotStack) |
| Register a slot stack to be used by this RLoopManager. | |
| void | SetTTreeLifeline (std::any lifeline) |
| void | StopProcessing () final |
| void | ToJitExec (const std::string &) const |
| void | TTreeThreadTask (TTreeReader &treeReader, ROOT::Internal::RSlotStack &slotStack, std::atomic< ULong64_t > &entryCount) |
| The task run by every thread on an entry range (known by the input TTreeReader), for the TTree data source. | |
Protected Attributes | |
| RLoopManager * | fLoopManager |
| unsigned int | fNChildren {0} |
| Number of nodes of the functional graph hanging from this object. | |
| unsigned int | fNStopsReceived {0} |
| Number of times that a children node signaled to stop processing entries. | |
| std::vector< std::string > | fVariations |
| List of systematic variations that affect this node. | |
Private Types | |
| using | ColumnNames_t = std::vector<std::string> |
| enum class | ELoopType { kInvalid , kNoFiles , kNoFilesMT , kDataSource , kDataSourceMT } |
Private Member Functions | |
| void | CleanUpNodes () |
| Perform clean-up operations. To be called at the end of each event loop. | |
| void | CleanUpTask (TTreeReader *r, unsigned int slot) |
| Perform clean-up operations. To be called at the end of each task execution. | |
| void | EvalChildrenCounts () |
| Trigger counting of number of children nodes for each node of the functional graph. | |
| void | InitNodes () |
| Initialize all nodes of the functional graph before running the event loop. | |
| void | InitNodeSlots (TTreeReader *r, unsigned int slot) |
| Build TTreeReaderValues for all nodes This method loops over all filters, actions and other booked objects and calls their InitSlot method, to get them ready for running a task. | |
| void | RunAndCheckFilters (unsigned int slot, Long64_t entry) |
| Execute actions and make sure named filters are called for each event. | |
| void | RunDataSource () |
| Run event loop over data accessed through a DataSource, in sequence. | |
| void | RunDataSourceMT () |
| Run event loop over data accessed through a DataSource, in parallel. | |
| void | RunEmptySource () |
| Run event loop with no source files, in sequence. | |
| void | RunEmptySourceMT () |
| Run event loop with no source files, in parallel. | |
| void | SetupSampleCallbacks (TTreeReader *r, unsigned int slot) |
| std::shared_ptr< ROOT::Internal::RSlotStack > | SlotStack () const |
| Create a slot stack with the desired number of slots or reuse a shared instance. | |
| void | UpdateSampleInfo (unsigned int slot, const std::pair< ULong64_t, ULong64_t > &range) |
| void | UpdateSampleInfo (unsigned int slot, TTreeReader &r) |
Private Attributes | |
| Long64_t | fBeginEntry {0} |
| std::vector< RDFInternal::RActionBase * > | fBookedActions |
| Non-owning pointers to actions to be run. | |
| std::vector< RDefineBase * > | fBookedDefines |
| std::vector< RFilterBase * > | fBookedFilters |
| std::vector< RFilterBase * > | fBookedNamedFilters |
| Contains a subset of fBookedFilters, i.e. only the named filters. | |
| std::vector< RRangeBase * > | fBookedRanges |
| std::vector< RDFInternal::RVariationBase * > | fBookedVariations |
| ROOT::Internal::RDF::RStringCache | fCachedColNames |
| std::vector< RDFInternal::RCallback > | fCallbacksEveryNEvents |
| Registered callbacks to be executed every N events. | |
| std::vector< RDFInternal::ROneTimeCallback > | fCallbacksOnce |
| Registered callbacks to invoke just once before running the loop. | |
| std::vector< std::unordered_map< std::string, std::unique_ptr< RColumnReaderBase > > > | fDatasetColumnReaders |
| Readers for TTree/RDataSource columns (one per slot), shared by all nodes in the computation graph. | |
| std::unique_ptr< RDataSource > | fDataSource {} |
| Owning pointer to a data-source object. | |
| ColumnNames_t | fDefaultColumns |
| std::pair< ULong64_t, ULong64_t > | fEmptyEntryRange {} |
| Range of entries created when no data source is specified. | |
| Long64_t | fEndEntry {std::numeric_limits<Long64_t>::max()} |
| std::vector< DeferredJitCall > | fJitHelperCalls {} |
| ELoopType | fLoopType {ELoopType::kInvalid} |
| The kind of event loop that is going to be run (e.g. on ROOT files, on no files). | |
| bool | fMustRunNamedFilters {true} |
| RDFInternal::RNewSampleNotifier | fNewSampleNotifier |
| unsigned int | fNRuns {0} |
| Number of event loops run. | |
| unsigned int | fNSlots {1} |
| std::vector< RDFInternal::RActionBase * > | fRunActions |
| Non-owning pointers to actions already run. | |
| std::unordered_map< void *, ROOT::RDF::SampleCallback_t > | fSampleCallbacks |
| Registered callbacks to call at the beginning of each "data block". | |
| std::vector< ROOT::RDF::RSampleInfo > | fSampleInfos |
| std::unordered_map< std::string, ROOT::RDF::Experimental::RSample * > | fSampleMap |
| Keys are fname + "/" + treename as RSampleInfo::fID; Values are pointers to the corresponding sample. | |
| std::vector< ROOT::RDF::Experimental::RSample > | fSamples |
| Samples need to survive throughout the whole event loop, hence stored as an attribute. | |
| std::weak_ptr< ROOT::Internal::RSlotStack > | fSlotStack |
| Pointer to a shared slot stack in case this instance runs concurrently with others: | |
| std::hash< std::string > | fStringHasher {} |
| std::set< std::string > | fSuppressErrorsForMissingBranches {} |
| std::any | fTTreeLifeline {} |
| std::set< std::pair< std::string_view, std::unique_ptr< ROOT::Internal::RDF::RDefinesWithReaders > > > | fUniqueDefinesWithReaders |
| std::set< std::pair< std::string_view, std::unique_ptr< ROOT::Internal::RDF::RVariationsWithReaders > > > | fUniqueVariationsWithReaders |
Friends | |
| struct | RCallCleanUpTask |
| struct | ROOT::Internal::RDF::RDSRangeRAII |
#include <ROOT/RDF/RLoopManager.hxx>
|
private |
Definition at line 118 of file RLoopManager.hxx.
|
strongprivate |
| Enumerator | |
|---|---|
| kInvalid | |
| kNoFiles | |
| kNoFilesMT | |
| kDataSource | |
| kDataSourceMT | |
Definition at line 119 of file RLoopManager.hxx.
| ROOT::Detail::RDF::RLoopManager::RLoopManager | ( | const ColumnNames_t & | defaultColumns = {} | ) |
Definition at line 320 of file RLoopManager.cxx.
| RLoopManager::RLoopManager | ( | TTree * | tree, |
| const ColumnNames_t & | defaultBranches ) |
Definition at line 329 of file RLoopManager.cxx.
| RLoopManager::RLoopManager | ( | ULong64_t | nEmptyEntries | ) |
Definition at line 341 of file RLoopManager.cxx.
| RLoopManager::RLoopManager | ( | std::unique_ptr< RDataSource > | ds, |
| const ColumnNames_t & | defaultBranches ) |
Definition at line 351 of file RLoopManager.cxx.
| RLoopManager::RLoopManager | ( | ROOT::RDF::Experimental::RDatasetSpec && | spec | ) |
Definition at line 363 of file RLoopManager.cxx.
|
delete |
|
delete |
|
overridedefault |
| RColumnReaderBase * RLoopManager::AddDataSourceColumnReader | ( | unsigned int | slot, |
| std::string_view | col, | ||
| const std::type_info & | ti, | ||
| TTreeReader * | treeReader ) |
Definition at line 1191 of file RLoopManager.cxx.
| void RLoopManager::AddDataSourceColumnReaders | ( | std::string_view | col, |
| std::vector< std::unique_ptr< RColumnReaderBase > > && | readers, | ||
| const std::type_info & | ti ) |
Definition at line 1178 of file RLoopManager.cxx.
|
inlinefinalvirtual |
End of recursive chain of calls, does nothing.
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 281 of file RLoopManager.hxx.
| void RLoopManager::AddSampleCallback | ( | void * | nodePtr, |
| ROOT::RDF::SampleCallback_t && | callback ) |
Definition at line 1215 of file RLoopManager.cxx.
Definition at line 1226 of file RLoopManager.cxx.
| void RLoopManager::ChangeSpec | ( | ROOT::RDF::Experimental::RDatasetSpec && | spec | ) |
Changes the internal TTree held by the RLoopManager.
| spec | The specification of the dataset to be adopted. |
Definition at line 418 of file RLoopManager.cxx.
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 1061 of file RLoopManager.cxx.
|
private |
Perform clean-up operations. To be called at the end of each event loop.
Definition at line 825 of file RLoopManager.cxx.
|
private |
Perform clean-up operations. To be called at the end of each task execution.
Definition at line 849 of file RLoopManager.cxx.
| void ROOT::Detail::RDF::RLoopManager::DataSourceThreadTask | ( | const std::pair< ULong64_t, ULong64_t > & | entryRange, |
| ROOT::Internal::RSlotStack & | slotStack, | ||
| std::atomic< ULong64_t > & | entryCount ) |
The task run by every thread on the input entry range, for the generic RDataSource.
Definition at line 1341 of file RLoopManager.cxx.
| void RLoopManager::Deregister | ( | RDefineBase * | definePtr | ) |
Definition at line 1044 of file RLoopManager.cxx.
| void RLoopManager::Deregister | ( | RDFInternal::RActionBase * | actionPtr | ) |
Definition at line 1007 of file RLoopManager.cxx.
| void RLoopManager::Deregister | ( | RDFInternal::RVariationBase * | varPtr | ) |
Definition at line 1055 of file RLoopManager.cxx.
| void RLoopManager::Deregister | ( | RFilterBase * | filterPtr | ) |
Definition at line 1023 of file RLoopManager.cxx.
| void RLoopManager::Deregister | ( | RRangeBase * | rangePtr | ) |
Definition at line 1034 of file RLoopManager.cxx.
|
inline |
Definition at line 324 of file RLoopManager.hxx.
|
private |
Trigger counting of number of children nodes for each node of the functional graph.
This is done once before starting the event loop. Each action sends an increase children count signal upstream, which is propagated until RLoopManager. Each time a node receives the signal, in increments its children counter. Each node only propagates the signal once, even if it receives it multiple times. Named filters also send an increase children count signal, just like actions, as they always execute during the event loop so the graph branch they belong to must count as active even if it does not end in an action.
Definition at line 933 of file RLoopManager.cxx.
| std::vector< RDFInternal::RActionBase * > RLoopManager::GetAllActions | ( | ) | const |
Return all actions, either booked or already run.
Definition at line 1139 of file RLoopManager.cxx.
|
inline |
Definition at line 301 of file RLoopManager.hxx.
| RColumnReaderBase * RLoopManager::GetDatasetColumnReader | ( | unsigned int | slot, |
| std::string_view | col, | ||
| const std::type_info & | ti ) const |
Definition at line 1206 of file RLoopManager.cxx.
|
inline |
Definition at line 248 of file RLoopManager.hxx.
| const ColumnNames_t & RLoopManager::GetDefaultColumnNames | ( | ) | const |
Return the list of default columns – empty if none was provided when constructing the RDataFrame.
Definition at line 996 of file RLoopManager.cxx.
| std::vector< std::string > RLoopManager::GetFiltersNames | ( | ) |
For each booked filter, returns either the name or "Unnamed Filter".
Definition at line 1121 of file RLoopManager.cxx.
|
finalvirtual |
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 1147 of file RLoopManager.cxx.
| std::vector< RNodeBase * > RLoopManager::GetGraphEdges | ( | ) | const |
Return all graph edges known to RLoopManager This includes Filters and Ranges but not Defines.
Definition at line 1131 of file RLoopManager.cxx.
|
inlinefinalvirtual |
Reimplemented from ROOT::Detail::RDF::RNodeBase.
Definition at line 244 of file RLoopManager.hxx.
|
inline |
Definition at line 247 of file RLoopManager.hxx.
|
inline |
Definition at line 272 of file RLoopManager.hxx.
|
inline |
Definition at line 260 of file RLoopManager.hxx.
|
inline |
Definition at line 328 of file RLoopManager.hxx.
|
inline |
Definition at line 303 of file RLoopManager.hxx.
|
inline |
Definition at line 308 of file RLoopManager.hxx.
|
inlineinherited |
Definition at line 81 of file RNodeBase.hxx.
|
inlinevirtualinherited |
Return a clone of this node that acts as a Filter working with values in the variationName "universe".
Reimplemented in ROOT::Detail::RDF::RFilter< FilterF, PrevNodeRaw >, ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >, ROOT::Detail::RDF::RJittedFilter, and ROOT::Detail::RDF::RRange< PrevNodeRaw >.
Definition at line 84 of file RNodeBase.hxx.
| bool RLoopManager::HasDataSourceColumnReaders | ( | std::string_view | col, |
| const std::type_info & | ti ) const |
Return true if AddDataSourceColumnReaders was called for column name col.
Definition at line 1168 of file RLoopManager.cxx.
|
inlinefinalvirtual |
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 264 of file RLoopManager.hxx.
|
private |
Initialize all nodes of the functional graph before running the event loop.
This method is called once per event-loop and performs generic initialization operations that do not depend on the specific processing slot (i.e. operations that are common for all threads).
Definition at line 813 of file RLoopManager.cxx.
|
private |
Build TTreeReaderValues for all nodes This method loops over all filters, actions and other booked objects and calls their InitSlot method, to get them ready for running a task.
Definition at line 732 of file RLoopManager.cxx.
|
inline |
Definition at line 320 of file RLoopManager.hxx.
| void RLoopManager::Jit | ( | ) |
Add RDF nodes that require just-in-time compilation to the computation graph.
This method also clears the contents of GetCodeToJit().
Definition at line 870 of file RLoopManager.cxx.
|
delete |
|
delete |
|
inlinefinalvirtual |
End of recursive chain of calls, does nothing.
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 263 of file RLoopManager.hxx.
| void RLoopManager::Register | ( | RDefineBase * | definePtr | ) |
Definition at line 1039 of file RLoopManager.cxx.
| void RLoopManager::Register | ( | RDFInternal::RActionBase * | actionPtr | ) |
Definition at line 1001 of file RLoopManager.cxx.
| void RLoopManager::Register | ( | RDFInternal::RVariationBase * | varPtr | ) |
Definition at line 1050 of file RLoopManager.cxx.
| void RLoopManager::Register | ( | RFilterBase * | filterPtr | ) |
Definition at line 1014 of file RLoopManager.cxx.
| void RLoopManager::Register | ( | RRangeBase * | rangePtr | ) |
Definition at line 1029 of file RLoopManager.cxx.
| void RLoopManager::RegisterCallback | ( | ULong64_t | everyNEvents, |
| std::function< void(unsigned int)> && | f ) |
Definition at line 1113 of file RLoopManager.cxx.
| void RLoopManager::RegisterJitHelperCall | ( | const std::string & | funcBody, |
| std::unique_ptr< ROOT::Internal::RDF::RColumnRegister > | colRegister, | ||
| const std::vector< std::string > & | colnames, | ||
| std::shared_ptr< void > | jittedNode, | ||
| std::shared_ptr< void > | argument = nullptr ) |
Definition at line 1079 of file RLoopManager.cxx.
|
finalvirtual |
Call FillReport on all booked filters.
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 1067 of file RLoopManager.cxx.
|
inlinevirtualinherited |
Reimplemented in ROOT::Detail::RDF::RJittedFilter.
Definition at line 73 of file RNodeBase.hxx.
| void RLoopManager::Run | ( | bool | jit = true | ) |
Start the event loop with a different mechanism depending on IMT/no IMT, data source/no data source.
Also perform a few setup and clean-up operations (jit actions if necessary, clear booked actions after the loop...). The jitting phase is skipped if the jit parameter is false (unsafe, use with care).
Definition at line 944 of file RLoopManager.cxx.
Execute actions and make sure named filters are called for each event.
Named filters must be called even if the analysis logic would not require it, lest they report confusing results.
Definition at line 712 of file RLoopManager.cxx.
|
private |
Run event loop over data accessed through a DataSource, in sequence.
Definition at line 626 of file RLoopManager.cxx.
|
private |
Run event loop over data accessed through a DataSource, in parallel.
Definition at line 692 of file RLoopManager.cxx.
| void RLoopManager::RunDeferredCalls | ( | ) |
Definition at line 904 of file RLoopManager.cxx.
|
private |
Run event loop with no source files, in sequence.
Definition at line 555 of file RLoopManager.cxx.
|
private |
Run event loop with no source files, in parallel.
Definition at line 508 of file RLoopManager.cxx.
| void ROOT::Detail::RDF::RLoopManager::SetDataSource | ( | std::unique_ptr< ROOT::RDF::RDataSource > | dataSource | ) |
Definition at line 1332 of file RLoopManager.cxx.
Definition at line 1221 of file RLoopManager.cxx.
|
inline |
Register a slot stack to be used by this RLoopManager.
This allows for sharing RDataFrame helpers safely in the context of RunGraphs(). Note that the loop manager only stores a weak_ptr, in between runs.
Definition at line 316 of file RLoopManager.hxx.
| void ROOT::Detail::RDF::RLoopManager::SetTTreeLifeline | ( | std::any | lifeline | ) |
Definition at line 1232 of file RLoopManager.cxx.
|
private |
Definition at line 748 of file RLoopManager.cxx.
|
private |
Create a slot stack with the desired number of slots or reuse a shared instance.
When a LoopManager runs in isolation, it will create its own slot stack from the number of slots. When it runs as part of RunGraphs(), each loop manager will be assigned a shared slot stack, so dataframe helpers can be shared in a thread-safe manner.
Definition at line 796 of file RLoopManager.cxx.
|
inlinefinalvirtual |
Implements ROOT::Detail::RDF::RNodeBase.
Definition at line 265 of file RLoopManager.hxx.
| void RLoopManager::ToJitExec | ( | const std::string & | code | ) | const |
Definition at line 1073 of file RLoopManager.cxx.
| void ROOT::Detail::RDF::RLoopManager::TTreeThreadTask | ( | TTreeReader & | treeReader, |
| ROOT::Internal::RSlotStack & | slotStack, | ||
| std::atomic< ULong64_t > & | entryCount ) |
The task run by every thread on an entry range (known by the input TTreeReader), for the TTree data source.
Definition at line 1377 of file RLoopManager.cxx.
|
private |
Definition at line 762 of file RLoopManager.cxx.
|
private |
Definition at line 767 of file RLoopManager.cxx.
|
friend |
Definition at line 127 of file RLoopManager.hxx.
|
friend |
Definition at line 128 of file RLoopManager.hxx.
|
private |
Definition at line 145 of file RLoopManager.hxx.
|
private |
Non-owning pointers to actions to be run.
Definition at line 137 of file RLoopManager.hxx.
|
private |
Definition at line 142 of file RLoopManager.hxx.
|
private |
Definition at line 139 of file RLoopManager.hxx.
|
private |
Contains a subset of fBookedFilters, i.e. only the named filters.
Definition at line 140 of file RLoopManager.hxx.
|
private |
Definition at line 141 of file RLoopManager.hxx.
|
private |
Definition at line 143 of file RLoopManager.hxx.
|
private |
Definition at line 199 of file RLoopManager.hxx.
|
private |
Registered callbacks to be executed every N events.
The registration happens via the RegisterCallback method.
Definition at line 163 of file RLoopManager.hxx.
|
private |
Registered callbacks to invoke just once before running the loop.
The registration happens via the RegisterCallback method.
Definition at line 166 of file RLoopManager.hxx.
|
private |
Readers for TTree/RDataSource columns (one per slot), shared by all nodes in the computation graph.
Definition at line 175 of file RLoopManager.hxx.
|
private |
Owning pointer to a data-source object.
Null if no data-source
Definition at line 160 of file RLoopManager.hxx.
|
private |
Definition at line 153 of file RLoopManager.hxx.
Range of entries created when no data source is specified.
Definition at line 155 of file RLoopManager.hxx.
Definition at line 146 of file RLoopManager.hxx.
|
private |
Definition at line 224 of file RLoopManager.hxx.
|
protectedinherited |
Definition at line 45 of file RNodeBase.hxx.
|
private |
The kind of event loop that is going to be run (e.g. on ROOT files, on no files).
Definition at line 159 of file RLoopManager.hxx.
|
private |
Definition at line 157 of file RLoopManager.hxx.
|
protectedinherited |
Number of nodes of the functional graph hanging from this object.
Definition at line 46 of file RNodeBase.hxx.
|
private |
Definition at line 170 of file RLoopManager.hxx.
|
private |
Number of event loops run.
Definition at line 172 of file RLoopManager.hxx.
|
private |
Definition at line 156 of file RLoopManager.hxx.
|
protectedinherited |
Number of times that a children node signaled to stop processing entries.
Definition at line 47 of file RNodeBase.hxx.
|
private |
Non-owning pointers to actions already run.
Definition at line 138 of file RLoopManager.hxx.
|
private |
Registered callbacks to call at the beginning of each "data block".
The key is the pointer of the corresponding node in the computation graph (a RDefinePerSample or a RAction).
Definition at line 169 of file RLoopManager.hxx.
|
private |
Definition at line 171 of file RLoopManager.hxx.
|
private |
Keys are fname + "/" + treename as RSampleInfo::fID; Values are pointers to the corresponding sample.
Definition at line 149 of file RLoopManager.hxx.
|
private |
Samples need to survive throughout the whole event loop, hence stored as an attribute.
Definition at line 151 of file RLoopManager.hxx.
|
private |
Pointer to a shared slot stack in case this instance runs concurrently with others:
Definition at line 178 of file RLoopManager.hxx.
|
private |
Definition at line 225 of file RLoopManager.hxx.
|
private |
Definition at line 198 of file RLoopManager.hxx.
|
private |
Definition at line 135 of file RLoopManager.hxx.
|
private |
Definition at line 201 of file RLoopManager.hxx.
|
private |
Definition at line 203 of file RLoopManager.hxx.
|
protectedinherited |
List of systematic variations that affect this node.
Definition at line 48 of file RNodeBase.hxx.