36namespace GraphDrawing {
41std::shared_ptr<GraphNode>
53template <
typename FilterF,
typename PrevDataFrame>
62 std::vector<RDFInternal::RDFValueTuple_t<ColumnTypes_t>>
fValues;
80 if (!
fPrevData.CheckFilters(slot, entry)) {
94 template <std::size_t...
S>
106 bookedBranch.second->InitSlot(
r, slot);
155 column.second->ClearValueReaders(slot);
161 std::shared_ptr<RDFGraphDrawing::GraphNode>
GetGraph()
165 auto prevColumns = prevNode->GetDefinedColumns();
172 if (!thisNode->GetIsNew()) {
176 auto evaluatedNode = thisNode;
184 if (std::find(prevColumns.begin(), prevColumns.end(), column.first) == prevColumns.end()) {
186 evaluatedNode->SetPrevNode(defineNode);
187 evaluatedNode = defineNode;
194 evaluatedNode->SetPrevNode(prevNode);
typedef void((*Func_t)())
const unsigned int fNSlots
Number of thread slots used by this node, inherited from parent node.
RDFInternal::RBookedCustomColumns fCustomColumns
std::vector< ULong64_t > fRejected
virtual void FillReport(ROOT::RDF::RCutFlowReport &) const
std::vector< int > fLastResult
std::vector< ULong64_t > fAccepted
std::vector< Long64_t > fLastCheckedEntry
const ColumnNames_t fBranches
void StopProcessing() final
virtual void ClearTask(unsigned int slot) final
void PartialReport(ROOT::RDF::RCutFlowReport &rep) const final
bool CheckFilterHelper(unsigned int slot, Long64_t entry, std::index_sequence< S... >)
void Report(ROOT::RDF::RCutFlowReport &rep) const final
const std::shared_ptr< PrevDataFrame > fPrevDataPtr
void AddFilterName(std::vector< std::string > &filters)
virtual void ClearValueReaders(unsigned int slot) final
void IncrChildrenCount() final
void InitSlot(TTreeReader *r, unsigned int slot) final
RFilter & operator=(const RFilter &)=delete
RFilter(FilterF &&f, const ColumnNames_t &bl, std::shared_ptr< PrevDataFrame > pd, const RDFInternal::RBookedCustomColumns &customColumns, std::string_view name="")
void TriggerChildrenCount() final
typename CallableTraits< FilterF >::arg_types ColumnTypes_t
bool CheckFilters(unsigned int slot, Long64_t entry) final
RFilter(const RFilter &)=delete
std::make_index_sequence< ColumnTypes_t::list_size > TypeInd_t
std::vector< RDFInternal::RDFValueTuple_t< ColumnTypes_t > > fValues
PrevDataFrame & fPrevData
std::shared_ptr< RDFGraphDrawing::GraphNode > GetGraph()
void Deregister(RDFInternal::RActionBase *actionPtr)
virtual RLoopManager * GetLoopManagerUnchecked()
unsigned int fNStopsReceived
Number of times that a children node signaled to stop processing entries.
unsigned int fNChildren
Number of nodes of the functional graph hanging from this object.
RLoopManager * fLoopManager
Encapsulates the columns defined by the user.
ColumnNames_t GetNames() const
Returns the list of the names of the defined columns.
RCustomColumnBasePtrMap_t GetColumns() const
Returns the list of the pointers to the defined columns.
A simple, robust and fast interface to read values from ROOT colmnar datasets such as TTree,...
bool CheckIfDefaultOrDSColumn(const std::string &name, const std::shared_ptr< ROOT::Detail::RDF::RCustomColumnBase > &column)
std::shared_ptr< GraphNode > CreateDefineNode(const std::string &columnName, const ROOT::Detail::RDF::RCustomColumnBase *columnPtr)
std::shared_ptr< GraphNode > CreateFilterNode(const ROOT::Detail::RDF::RFilterBase *filterPtr)
void InitRDFValues(unsigned int slot, RDFValueTuple &valueTuple, TTreeReader *r, const ColumnNames_t &bn, const RBookedCustomColumns &customCols, std::index_sequence< S... >)
Initialize a tuple of RColumnValues.
void ResetRDFValueTuple(std::vector< RTypeErasedColumnValue > &values, std::index_sequence< S... >, ROOT::TypeTraits::TypeList< ColTypes... >)
This overload is specialized to act on RTypeErasedColumnValues instead of RColumnValues.
ROOT type_traits extensions.
Namespace for new ROOT classes and functions.
ROOT::Detail::RDF::ColumnNames_t ColumnNames_t
RooArgSet S(const RooAbsArg &v1)
void forward(const LAYERDATA &prevLayerData, LAYERDATA &currLayerData)
apply the weights (and functions) in forward direction of the DNN
basic_string_view< char > string_view
make_integer_sequence< size_t, _Np > make_index_sequence