Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw > Class Template Referencefinal

template<typename PrevNodeRaw>
class ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >

implementation of FilterAvailable and FilterMissing operations

The filter evaluates if the entry is missing a value for the input column. Depending on which function was called by the user, the entry with the missing value:

  • will be discarded in case the user called FilterAvailable
  • will be kept in case the user called FilterMissing

Definition at line 58 of file RFilterWithMissingValues.hxx.

Public Member Functions

 RFilterWithMissingValues (bool discardEntry, std::shared_ptr< PrevNode_t > pd, const RDFInternal::RColumnRegister &colRegister, const ColumnNames_t &columns, std::string_view filterName="", const std::string &variationName="nominal")
 
 RFilterWithMissingValues (const RFilterWithMissingValues &)=delete
 
 RFilterWithMissingValues (RFilterWithMissingValues &&)=delete
 
 ~RFilterWithMissingValues () final
 
void AddFilterName (std::vector< std::string > &filters) final
 
bool CheckFilters (unsigned int slot, Long64_t entry) final
 
virtual void FillReport (ROOT::RDF::RCutFlowReport &) const
 
void FinalizeSlot (unsigned int slot) final
 Clean-up operations to be performed at the end of a task.
 
std::shared_ptr< RDFGraphDrawing::GraphNodeGetGraph (std::unordered_map< void *, std::shared_ptr< RDFGraphDrawing::GraphNode > > &visitedMap) final
 
virtual RLoopManagerGetLoopManagerUnchecked ()
 
std::string GetName () const
 
const std::vector< std::string > & GetVariations () const
 
std::shared_ptr< RNodeBaseGetVariedFilter (const std::string &variationName) final
 Return a clone of this Filter that works with values in the variationName "universe".
 
bool HasName () const
 
void IncrChildrenCount () final
 
virtual void InitNode ()
 
void InitSlot (TTreeReader *r, unsigned int slot) final
 
RFilterWithMissingValuesoperator= (const RFilterWithMissingValues &)=delete
 
RFilterWithMissingValuesoperator= (RFilterWithMissingValues &&)=delete
 
void PartialReport (ROOT::RDF::RCutFlowReport &rep) const final
 
void Report (ROOT::RDF::RCutFlowReport &rep) const final
 
virtual void ResetChildrenCount ()
 
virtual void ResetReportCount ()
 
void StopProcessing () final
 
void TriggerChildrenCount () final
 

Protected Attributes

std::vector< ULong64_tfAccepted = {0}
 
RDFInternal::RColumnRegister fColRegister
 
const ROOT::RDF::ColumnNames_t fColumnNames
 
ROOT::RVecB fIsDefine
 The nth flag signals whether the nth input column is a custom column or not.
 
std::vector< Long64_tfLastCheckedEntry
 
std::vector< intfLastResult = {true}
 
RLoopManagerfLoopManager
 
const std::string fName
 
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< ULong64_tfRejected = {0}
 
std::string fVariation
 This indicates for what variation this filter evaluates values.
 
std::vector< std::string > fVariations
 List of systematic variations that affect this node.
 
std::unordered_map< std::string, std::shared_ptr< RFilterBase > > fVariedFilters
 

Private Types

using PrevNode_t = std::conditional_t<std::is_same<PrevNodeRaw, RJittedFilter>::value, RFilterBase, PrevNodeRaw>
 

Private Attributes

bool fDiscardEntryWithMissingValue
 
const std::shared_ptr< PrevNode_tfPrevNodePtr
 
std::vector< RColumnReaderBase * > fValues
 

#include <ROOT/RDF/RFilterWithMissingValues.hxx>

Inheritance diagram for ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >:
[legend]

Member Typedef Documentation

◆ PrevNode_t

Definition at line 63 of file RFilterWithMissingValues.hxx.

Constructor & Destructor Documentation

◆ RFilterWithMissingValues() [1/3]

template<typename PrevNodeRaw >
ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::RFilterWithMissingValues ( bool discardEntry,
std::shared_ptr< PrevNode_t > pd,
const RDFInternal::RColumnRegister & colRegister,
const ColumnNames_t & columns,
std::string_view filterName = "",
const std::string & variationName = "nominal" )
inline

Definition at line 73 of file RFilterWithMissingValues.hxx.

◆ RFilterWithMissingValues() [2/3]

◆ RFilterWithMissingValues() [3/3]

◆ ~RFilterWithMissingValues()

Member Function Documentation

◆ AddFilterName()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::AddFilterName ( std::vector< std::string > & filters)
inlinefinalvirtual

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

Definition at line 163 of file RFilterWithMissingValues.hxx.

◆ CheckFilters()

template<typename PrevNodeRaw >
bool ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::CheckFilters ( unsigned int slot,
Long64_t entry )
inlinefinalvirtual

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

Definition at line 99 of file RFilterWithMissingValues.hxx.

◆ FillReport()

void RFilterBase::FillReport ( ROOT::RDF::RCutFlowReport & rep) const
virtualinherited

Reimplemented in ROOT::Detail::RDF::RJittedFilter.

Definition at line 47 of file RFilterBase.cxx.

◆ FinalizeSlot()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::FinalizeSlot ( unsigned int slot)
inlinefinalvirtual

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

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

Definition at line 171 of file RFilterWithMissingValues.hxx.

◆ GetGraph()

template<typename PrevNodeRaw >
std::shared_ptr< RDFGraphDrawing::GraphNode > ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::GetGraph ( std::unordered_map< void *, std::shared_ptr< RDFGraphDrawing::GraphNode > > & visitedMap)
inlinefinalvirtual

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

Definition at line 174 of file RFilterWithMissingValues.hxx.

◆ GetLoopManagerUnchecked()

virtual RLoopManager * ROOT::Detail::RDF::RNodeBase::GetLoopManagerUnchecked ( )
inlinevirtualinherited

Reimplemented in ROOT::Detail::RDF::RLoopManager.

Definition at line 79 of file RNodeBase.hxx.

◆ GetName()

std::string RFilterBase::GetName ( ) const
inherited

Definition at line 42 of file RFilterBase.cxx.

◆ GetVariations()

const std::vector< std::string > & ROOT::Detail::RDF::RNodeBase::GetVariations ( ) const
inlineinherited

Definition at line 81 of file RNodeBase.hxx.

◆ GetVariedFilter()

template<typename PrevNodeRaw >
std::shared_ptr< RNodeBase > ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::GetVariedFilter ( const std::string & variationName)
inlinefinalvirtual

Return a clone of this Filter that works with values in the variationName "universe".

Reimplemented from ROOT::Detail::RDF::RNodeBase.

Definition at line 199 of file RFilterWithMissingValues.hxx.

◆ HasName()

bool RFilterBase::HasName ( ) const
inherited

Definition at line 37 of file RFilterBase.cxx.

◆ IncrChildrenCount()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::IncrChildrenCount ( )
inlinefinalvirtual

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

Definition at line 149 of file RFilterWithMissingValues.hxx.

◆ InitNode()

void RFilterBase::InitNode ( )
virtualinherited

Reimplemented in ROOT::Detail::RDF::RJittedFilter.

Definition at line 56 of file RFilterBase.cxx.

◆ InitSlot()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::InitSlot ( TTreeReader * r,
unsigned int slot )
inlinefinalvirtual

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

Definition at line 125 of file RFilterWithMissingValues.hxx.

◆ operator=() [1/2]

◆ operator=() [2/2]

◆ PartialReport()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::PartialReport ( ROOT::RDF::RCutFlowReport & rep) const
inlinefinalvirtual

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

Definition at line 136 of file RFilterWithMissingValues.hxx.

◆ Report()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::Report ( ROOT::RDF::RCutFlowReport & rep) const
inlinefinalvirtual

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

Definition at line 134 of file RFilterWithMissingValues.hxx.

◆ ResetChildrenCount()

virtual void ROOT::Detail::RDF::RNodeBase::ResetChildrenCount ( )
inlinevirtualinherited

Reimplemented in ROOT::Detail::RDF::RJittedFilter.

Definition at line 73 of file RNodeBase.hxx.

◆ ResetReportCount()

virtual void ROOT::Detail::RDF::RFilterBase::ResetReportCount ( )
inlinevirtualinherited

Reimplemented in ROOT::Detail::RDF::RJittedFilter.

Definition at line 70 of file RFilterBase.hxx.

◆ StopProcessing()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::StopProcessing ( )
inlinefinalvirtual

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

Definition at line 142 of file RFilterWithMissingValues.hxx.

◆ TriggerChildrenCount()

template<typename PrevNodeRaw >
void ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::TriggerChildrenCount ( )
inlinefinalvirtual

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

Definition at line 157 of file RFilterWithMissingValues.hxx.

Member Data Documentation

◆ fAccepted

std::vector<ULong64_t> ROOT::Detail::RDF::RFilterBase::fAccepted = {0}
protectedinherited

Definition at line 42 of file RFilterBase.hxx.

◆ fColRegister

RDFInternal::RColumnRegister ROOT::Detail::RDF::RFilterBase::fColRegister
protectedinherited

Definition at line 46 of file RFilterBase.hxx.

◆ fColumnNames

const ROOT::RDF::ColumnNames_t ROOT::Detail::RDF::RFilterBase::fColumnNames
protectedinherited

Definition at line 45 of file RFilterBase.hxx.

◆ fDiscardEntryWithMissingValue

template<typename PrevNodeRaw >
bool ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::fDiscardEntryWithMissingValue
private

Definition at line 70 of file RFilterWithMissingValues.hxx.

◆ fIsDefine

ROOT::RVecB ROOT::Detail::RDF::RFilterBase::fIsDefine
protectedinherited

The nth flag signals whether the nth input column is a custom column or not.

Definition at line 48 of file RFilterBase.hxx.

◆ fLastCheckedEntry

std::vector<Long64_t> ROOT::Detail::RDF::RFilterBase::fLastCheckedEntry
protectedinherited

Definition at line 40 of file RFilterBase.hxx.

◆ fLastResult

std::vector<int> ROOT::Detail::RDF::RFilterBase::fLastResult = {true}
protectedinherited

Definition at line 41 of file RFilterBase.hxx.

◆ fLoopManager

RLoopManager* ROOT::Detail::RDF::RNodeBase::fLoopManager
protectedinherited

Definition at line 45 of file RNodeBase.hxx.

◆ fName

const std::string ROOT::Detail::RDF::RFilterBase::fName
protectedinherited

Definition at line 44 of file RFilterBase.hxx.

◆ fNChildren

unsigned int ROOT::Detail::RDF::RNodeBase::fNChildren {0}
protectedinherited

Number of nodes of the functional graph hanging from this object.

Definition at line 46 of file RNodeBase.hxx.

◆ fNStopsReceived

unsigned int ROOT::Detail::RDF::RNodeBase::fNStopsReceived {0}
protectedinherited

Number of times that a children node signaled to stop processing entries.

Definition at line 47 of file RNodeBase.hxx.

◆ fPrevNodePtr

template<typename PrevNodeRaw >
const std::shared_ptr<PrevNode_t> ROOT::Detail::RDF::RFilterWithMissingValues< PrevNodeRaw >::fPrevNodePtr
private

Definition at line 64 of file RFilterWithMissingValues.hxx.

◆ fRejected

std::vector<ULong64_t> ROOT::Detail::RDF::RFilterBase::fRejected = {0}
protectedinherited

Definition at line 43 of file RFilterBase.hxx.

◆ fValues

Definition at line 67 of file RFilterWithMissingValues.hxx.

◆ fVariation

std::string ROOT::Detail::RDF::RFilterBase::fVariation
protectedinherited

This indicates for what variation this filter evaluates values.

Definition at line 49 of file RFilterBase.hxx.

◆ fVariations

std::vector<std::string> ROOT::Detail::RDF::RNodeBase::fVariations
protectedinherited

List of systematic variations that affect this node.

Definition at line 48 of file RNodeBase.hxx.

◆ fVariedFilters

std::unordered_map<std::string, std::shared_ptr<RFilterBase> > ROOT::Detail::RDF::RFilterBase::fVariedFilters
protectedinherited

Definition at line 50 of file RFilterBase.hxx.

  • tree/dataframe/inc/ROOT/RDF/RFilterWithMissingValues.hxx