Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
RDefineBase Class Referenceabstract

Definition at line 39 of file RDefineBase.hxx.

Public Member Functions

 RDefineBase (std::string_view name, std::string_view type, const RDFInternal::RColumnRegister &colRegister, RLoopManager &lm, const ColumnNames_t &columnNames, const std::string &variationName="nominal")
virtual ~RDefineBase ()
virtual void FinalizeSlot (unsigned int slot)=0
 Clean-up operations to be performed at the end of a task.
std::string GetName () const
virtual const std::type_info & GetTypeId () const=0
std::string GetTypeName () const
virtual void * GetValuePtr (unsigned int slot)=0
 Return the (type-erased) address of the Define'd value for the given processing slot.
const std::vector< std::string > & GetVariations () const
virtual RDefineBaseGetVariedDefine (const std::string &variationName)=0
 Return a clone of this Define that works with values in the variationName "universe".
virtual void InitSlot (TTreeReader *r, unsigned int slot)=0
virtual void MakeVariations (const std::vector< std::string > &variations)=0
 Create clones of this Define that work with values in varied "universes".
RDefineBaseoperator= (const RDefineBase &)=delete
RDefineBaseoperator= (RDefineBase &&)=delete
virtual void Update (unsigned int slot, Long64_t entry)=0
 Update the value at the address returned by GetValuePtr with the content corresponding to the given entry.
virtual void Update (unsigned int, const ROOT::RDF::RSampleInfo &)
 Update function to be called once per sample, used if the derived type is a RDefinePerSample.

Protected Attributes

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
RLoopManagerfLoopManager
const std::string fName
 The name of the custom column.
const std::string fType
 The type of the custom column as a text string.
std::string fVariation
 This indicates for what variation this define evaluates values.
std::vector< std::string > fVariationDeps
 List of systematic variations that affect the value of this define.
Inheritance diagram for RDefineBase:
ROOT::Detail::RDF::RDefaultValueFor< T > ROOT::Detail::RDF::RDefine< F, ExtraArgsTag > ROOT::Detail::RDF::RDefinePerSample< F > ROOT::Detail::RDF::RJittedDefine

Constructor & Destructor Documentation

◆ RDefineBase()

RDefineBase::RDefineBase ( std::string_view name,
std::string_view type,
const RDFInternal::RColumnRegister & colRegister,
RLoopManager & lm,
const ColumnNames_t & columnNames,
const std::string & variationName = "nominal" )

Definition at line 24 of file RDefineBase.cxx.

◆ ~RDefineBase()

RDefineBase::~RDefineBase ( )
virtualdefault

Member Function Documentation

◆ FinalizeSlot()

virtual void ROOT::Detail::RDF::RDefineBase::FinalizeSlot ( unsigned int slot)
pure virtual

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

◆ GetName()

std::string RDefineBase::GetName ( ) const

Definition at line 42 of file RDefineBase.cxx.

◆ GetTypeId()

virtual const std::type_info & ROOT::Detail::RDF::RDefineBase::GetTypeId ( ) const
pure virtual

◆ GetTypeName()

std::string RDefineBase::GetTypeName ( ) const

Definition at line 47 of file RDefineBase.cxx.

◆ GetValuePtr()

virtual void * ROOT::Detail::RDF::RDefineBase::GetValuePtr ( unsigned int slot)
pure virtual

Return the (type-erased) address of the Define'd value for the given processing slot.

◆ GetVariations()

const std::vector< std::string > & ROOT::Detail::RDF::RDefineBase::GetVariations ( ) const
inline

Definition at line 72 of file RDefineBase.hxx.

◆ GetVariedDefine()

virtual RDefineBase & ROOT::Detail::RDF::RDefineBase::GetVariedDefine ( const std::string & variationName)
pure virtual

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

◆ InitSlot()

virtual void ROOT::Detail::RDF::RDefineBase::InitSlot ( TTreeReader * r,
unsigned int slot )
pure virtual

◆ MakeVariations()

virtual void ROOT::Detail::RDF::RDefineBase::MakeVariations ( const std::vector< std::string > & variations)
pure virtual

Create clones of this Define that work with values in varied "universes".

◆ operator=() [1/2]

RDefineBase & ROOT::Detail::RDF::RDefineBase::operator= ( const RDefineBase & )
delete

◆ operator=() [2/2]

RDefineBase & ROOT::Detail::RDF::RDefineBase::operator= ( RDefineBase && )
delete

◆ Update() [1/2]

virtual void ROOT::Detail::RDF::RDefineBase::Update ( unsigned int slot,
Long64_t entry )
pure virtual

Update the value at the address returned by GetValuePtr with the content corresponding to the given entry.

◆ Update() [2/2]

virtual void ROOT::Detail::RDF::RDefineBase::Update ( unsigned int ,
const ROOT::RDF::RSampleInfo &  )
inlinevirtual

Update function to be called once per sample, used if the derived type is a RDefinePerSample.

Definition at line 68 of file RDefineBase.hxx.

Member Data Documentation

◆ fColRegister

◆ fColumnNames

◆ fIsDefine

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

Definition at line 48 of file RDefineBase.hxx.

◆ fLastCheckedEntry

Definition at line 43 of file RDefineBase.hxx.

◆ fLoopManager

◆ fName

const std::string ROOT::Detail::RDF::RDefineBase::fName
protected

The name of the custom column.

Definition at line 41 of file RDefineBase.hxx.

◆ fType

const std::string ROOT::Detail::RDF::RDefineBase::fType
protected

The type of the custom column as a text string.

Definition at line 42 of file RDefineBase.hxx.

◆ fVariation

This indicates for what variation this define evaluates values.

Definition at line 50 of file RDefineBase.hxx.

◆ fVariationDeps

std::vector<std::string> ROOT::Detail::RDF::RDefineBase::fVariationDeps
protected

List of systematic variations that affect the value of this define.

Definition at line 49 of file RDefineBase.hxx.