Logo ROOT  
Reference Guide
ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame > Class Template Referencefinal

template<typename FilterF, typename PrevDataFrame>
class ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >

Definition at line 54 of file RFilter.hxx.

Public Member Functions

 RFilter (const RFilter &)=delete
 
 RFilter (FilterF f, const ROOT::RDF::ColumnNames_t &columns, std::shared_ptr< PrevDataFrame > pd, const RDFInternal::RBookedDefines &defines, std::string_view name="")
 
 ~RFilter ()
 
void AddFilterName (std::vector< std::string > &filters)
 
template<typename... ColTypes, std::size_t... S>
bool CheckFilterHelper (unsigned int slot, Long64_t entry, TypeList< ColTypes... >, std::index_sequence< S... >)
 
bool CheckFilters (unsigned int slot, Long64_t entry) final
 
virtual void FinaliseSlot (unsigned int slot) final
 Clean-up operations to be performed at the end of a task. More...
 
std::shared_ptr< RDFGraphDrawing::GraphNodeGetGraph ()
 
void IncrChildrenCount () final
 
void InitSlot (TTreeReader *r, unsigned int slot) final
 
RFilteroperator= (const RFilter &)=delete
 
void PartialReport (ROOT::RDF::RCutFlowReport &rep) const final
 
void Report (ROOT::RDF::RCutFlowReport &rep) const final
 
void StopProcessing () final
 
void TriggerChildrenCount () final
 
- Public Member Functions inherited from ROOT::Detail::RDF::RFilterBase
 RFilterBase (RLoopManager *df, std::string_view name, const unsigned int nSlots, const RDFInternal::RBookedDefines &defines, const ColumnNames_t &columns)
 
virtual ~RFilterBase ()
 
virtual void AddFilterName (std::vector< std::string > &filters)=0
 
virtual void FillReport (ROOT::RDF::RCutFlowReport &) const
 
virtual void FinaliseSlot (unsigned int slot)=0
 Clean-up operations to be performed at the end of a task. More...
 
std::string GetName () const
 
bool HasName () const
 
virtual void InitNode ()
 
virtual void InitSlot (TTreeReader *r, unsigned int slot)=0
 
RFilterBaseoperator= (const RFilterBase &)=delete
 
virtual void ResetReportCount ()
 
virtual void TriggerChildrenCount ()=0
 
- Public Member Functions inherited from ROOT::Detail::RDF::RNodeBase
 RNodeBase (RLoopManager *lm=nullptr)
 
virtual ~RNodeBase ()
 
virtual void AddFilterName (std::vector< std::string > &filters)=0
 
virtual bool CheckFilters (unsigned int, Long64_t)=0
 
virtual std::shared_ptr< ROOT::Internal::RDF::GraphDrawing::GraphNodeGetGraph ()=0
 
virtual RLoopManagerGetLoopManagerUnchecked ()
 
virtual void IncrChildrenCount ()=0
 
virtual void PartialReport (ROOT::RDF::RCutFlowReport &) const =0
 
virtual void Report (ROOT::RDF::RCutFlowReport &) const =0
 
virtual void ResetChildrenCount ()
 
virtual void StopProcessing ()=0
 

Private Types

using ColumnTypes_t = typename CallableTraits< FilterF >::arg_types
 
using TypeInd_t = std::make_index_sequence< ColumnTypes_t::list_size >
 

Private Attributes

FilterF fFilter
 
PrevDataFrame & fPrevData
 
const std::shared_ptr< PrevDataFrame > fPrevDataPtr
 
std::vector< std::array< std::unique_ptr< RColumnReaderBase >, ColumnTypes_t::list_size > > fValues
 Column readers per slot and per input column. More...
 

Additional Inherited Members

- Protected Attributes inherited from ROOT::Detail::RDF::RFilterBase
std::vector< ULong64_tfAccepted = {0}
 
const ROOT::RDF::ColumnNames_t fColumnNames
 
RDFInternal::RBookedDefines fDefines
 
ROOT::RVecB fIsDefine
 The nth flag signals whether the nth input column is a custom column or not. More...
 
std::vector< Long64_tfLastCheckedEntry
 
std::vector< int > fLastResult = {true}
 
const std::string fName
 
std::vector< ULong64_tfRejected = {0}
 
- Protected Attributes inherited from ROOT::Detail::RDF::RNodeBase
RLoopManagerfLoopManager
 
unsigned int fNChildren {0}
 Number of nodes of the functional graph hanging from this object. More...
 
unsigned int fNStopsReceived {0}
 Number of times that a children node signaled to stop processing entries. More...
 

#include <ROOT/RDF/RFilter.hxx>

Inheritance diagram for ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >:
[legend]

Member Typedef Documentation

◆ ColumnTypes_t

template<typename FilterF , typename PrevDataFrame >
using ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::ColumnTypes_t = typename CallableTraits<FilterF>::arg_types
private

Definition at line 55 of file RFilter.hxx.

◆ TypeInd_t

template<typename FilterF , typename PrevDataFrame >
using ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::TypeInd_t = std::make_index_sequence<ColumnTypes_t::list_size>
private

Definition at line 56 of file RFilter.hxx.

Constructor & Destructor Documentation

◆ RFilter() [1/2]

template<typename FilterF , typename PrevDataFrame >
ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::RFilter ( FilterF  f,
const ROOT::RDF::ColumnNames_t columns,
std::shared_ptr< PrevDataFrame >  pd,
const RDFInternal::RBookedDefines defines,
std::string_view  name = "" 
)
inline

Definition at line 65 of file RFilter.hxx.

◆ RFilter() [2/2]

template<typename FilterF , typename PrevDataFrame >
ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::RFilter ( const RFilter< FilterF, PrevDataFrame > &  )
delete

◆ ~RFilter()

template<typename FilterF , typename PrevDataFrame >
ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::~RFilter ( )
inline

Definition at line 77 of file RFilter.hxx.

Member Function Documentation

◆ AddFilterName()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::AddFilterName ( std::vector< std::string > &  filters)
inlinevirtual

Implements ROOT::Detail::RDF::RFilterBase.

Definition at line 146 of file RFilter.hxx.

◆ CheckFilterHelper()

template<typename FilterF , typename PrevDataFrame >
template<typename... ColTypes, std::size_t... S>
bool ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::CheckFilterHelper ( unsigned int  slot,
Long64_t  entry,
TypeList< ColTypes... >  ,
std::index_sequence< S... >   
)
inline

Definition at line 98 of file RFilter.hxx.

◆ CheckFilters()

template<typename FilterF , typename PrevDataFrame >
bool ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::CheckFilters ( unsigned int  slot,
Long64_t  entry 
)
inlinefinalvirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 79 of file RFilter.hxx.

◆ FinaliseSlot()

template<typename FilterF , typename PrevDataFrame >
virtual void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::FinaliseSlot ( unsigned int  slot)
inlinefinalvirtual

Clean-up operations to be performed at the end of a task.

Implements ROOT::Detail::RDF::RFilterBase.

Definition at line 154 of file RFilter.hxx.

◆ GetGraph()

template<typename FilterF , typename PrevDataFrame >
std::shared_ptr< RDFGraphDrawing::GraphNode > ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::GetGraph ( )
inlinevirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 163 of file RFilter.hxx.

◆ IncrChildrenCount()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::IncrChildrenCount ( )
inlinefinalvirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 132 of file RFilter.hxx.

◆ InitSlot()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::InitSlot ( TTreeReader r,
unsigned int  slot 
)
inlinefinalvirtual

Implements ROOT::Detail::RDF::RFilterBase.

Definition at line 106 of file RFilter.hxx.

◆ operator=()

template<typename FilterF , typename PrevDataFrame >
RFilter & ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::operator= ( const RFilter< FilterF, PrevDataFrame > &  )
delete

◆ PartialReport()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::PartialReport ( ROOT::RDF::RCutFlowReport rep) const
inlinefinalvirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 119 of file RFilter.hxx.

◆ Report()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::Report ( ROOT::RDF::RCutFlowReport rep) const
inlinefinalvirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 117 of file RFilter.hxx.

◆ StopProcessing()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::StopProcessing ( )
inlinefinalvirtual

Implements ROOT::Detail::RDF::RNodeBase.

Definition at line 125 of file RFilter.hxx.

◆ TriggerChildrenCount()

template<typename FilterF , typename PrevDataFrame >
void ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::TriggerChildrenCount ( )
inlinefinalvirtual

Implements ROOT::Detail::RDF::RFilterBase.

Definition at line 140 of file RFilter.hxx.

Member Data Documentation

◆ fFilter

template<typename FilterF , typename PrevDataFrame >
FilterF ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::fFilter
private

Definition at line 58 of file RFilter.hxx.

◆ fPrevData

template<typename FilterF , typename PrevDataFrame >
PrevDataFrame& ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::fPrevData
private

Definition at line 62 of file RFilter.hxx.

◆ fPrevDataPtr

template<typename FilterF , typename PrevDataFrame >
const std::shared_ptr<PrevDataFrame> ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::fPrevDataPtr
private

Definition at line 61 of file RFilter.hxx.

◆ fValues

template<typename FilterF , typename PrevDataFrame >
std::vector<std::array<std::unique_ptr<RColumnReaderBase>, ColumnTypes_t::list_size> > ROOT::Detail::RDF::RFilter< FilterF, PrevDataFrame >::fValues
private

Column readers per slot and per input column.

Definition at line 60 of file RFilter.hxx.


The documentation for this class was generated from the following file: