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

template<typename F>
class ROOT::Detail::RDF::RDefinePerSample< F >

Definition at line 30 of file RDefinePerSample.hxx.

Public Member Functions

 RDefinePerSample (const RDefinePerSample &)=delete
 RDefinePerSample (std::string_view name, std::string_view type, F expression, RLoopManager &lm)
 ~RDefinePerSample ()
void FinalizeSlot (unsigned int) final
 Clean-up operations to be performed at the end of a task.
std::string GetName () const
const std::type_info & GetTypeId () const final
std::string GetTypeName () const
void * GetValuePtr (unsigned int slot) final
 Return the (type-erased) address of the Define'd value for the given processing slot.
const std::vector< std::string > & GetVariations () const
RDefineBaseGetVariedDefine (const std::string &) final
 Return a clone of this Define that works with values in the variationName "universe".
void InitSlot (TTreeReader *, unsigned int) final
void MakeVariations (const std::vector< std::string > &) final
 Create clones of this Define that work with values in varied "universes".
RDefinePerSampleoperator= (const RDefinePerSample &)=delete
void Update (unsigned int slot, const ROOT::RDF::RSampleInfo &id) final
 Update the value at the address returned by GetValuePtr with the content corresponding to the given entry.
void Update (unsigned int, Long64_t) final
 Update the value at the address returned by GetValuePtr with the content corresponding to the given entry.

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.

Private Types

using RetType_t = typename CallableTraits<F>::ret_type
using ValuesPerSlot_t

Private Attributes

F fExpression
ValuesPerSlot_t fLastResults

#include <ROOT/RDF/RDefinePerSample.hxx>

Inheritance diagram for ROOT::Detail::RDF::RDefinePerSample< F >:
ROOT::Detail::RDF::RDefineBase

Member Typedef Documentation

◆ RetType_t

template<typename F>
using ROOT::Detail::RDF::RDefinePerSample< F >::RetType_t = typename CallableTraits<F>::ret_type
private

Definition at line 31 of file RDefinePerSample.hxx.

◆ ValuesPerSlot_t

template<typename F>
using ROOT::Detail::RDF::RDefinePerSample< F >::ValuesPerSlot_t
private
Initial value:
std::conditional_t<std::is_same<RetType_t, bool>::value, std::deque<RetType_t>, std::vector<RetType_t>>

Definition at line 34 of file RDefinePerSample.hxx.

Constructor & Destructor Documentation

◆ RDefinePerSample() [1/2]

template<typename F>
ROOT::Detail::RDF::RDefinePerSample< F >::RDefinePerSample ( std::string_view name,
std::string_view type,
F expression,
RLoopManager & lm )
inline

Definition at line 41 of file RDefinePerSample.hxx.

◆ RDefinePerSample() [2/2]

template<typename F>
ROOT::Detail::RDF::RDefinePerSample< F >::RDefinePerSample ( const RDefinePerSample< F > & )
delete

◆ ~RDefinePerSample()

template<typename F>
ROOT::Detail::RDF::RDefinePerSample< F >::~RDefinePerSample ( )
inline

Definition at line 54 of file RDefinePerSample.hxx.

Member Function Documentation

◆ FinalizeSlot()

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

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

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 77 of file RDefinePerSample.hxx.

◆ GetName()

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

Definition at line 42 of file RDefineBase.cxx.

◆ GetTypeId()

template<typename F>
const std::type_info & ROOT::Detail::RDF::RDefinePerSample< F >::GetTypeId ( ) const
inlinefinalvirtual

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 73 of file RDefinePerSample.hxx.

◆ GetTypeName()

std::string RDefineBase::GetTypeName ( ) const
inherited

Definition at line 47 of file RDefineBase.cxx.

◆ GetValuePtr()

template<typename F>
void * ROOT::Detail::RDF::RDefinePerSample< F >::GetValuePtr ( unsigned int slot)
inlinefinalvirtual

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

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 57 of file RDefinePerSample.hxx.

◆ GetVariations()

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

Definition at line 72 of file RDefineBase.hxx.

◆ GetVariedDefine()

template<typename F>
RDefineBase & ROOT::Detail::RDF::RDefinePerSample< F >::GetVariedDefine ( const std::string & variationName)
inlinefinalvirtual

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

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 82 of file RDefinePerSample.hxx.

◆ InitSlot()

template<typename F>
void ROOT::Detail::RDF::RDefinePerSample< F >::InitSlot ( TTreeReader * ,
unsigned int  )
inlinefinalvirtual

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 75 of file RDefinePerSample.hxx.

◆ MakeVariations()

template<typename F>
void ROOT::Detail::RDF::RDefinePerSample< F >::MakeVariations ( const std::vector< std::string > & variations)
inlinefinalvirtual

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

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 80 of file RDefinePerSample.hxx.

◆ operator=()

template<typename F>
RDefinePerSample & ROOT::Detail::RDF::RDefinePerSample< F >::operator= ( const RDefinePerSample< F > & )
delete

◆ Update() [1/2]

template<typename F>
void ROOT::Detail::RDF::RDefinePerSample< F >::Update ( unsigned int slot,
const ROOT::RDF::RSampleInfo & id )
inlinefinalvirtual

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

Reimplemented from ROOT::Detail::RDF::RDefineBase.

Definition at line 68 of file RDefinePerSample.hxx.

◆ Update() [2/2]

template<typename F>
void ROOT::Detail::RDF::RDefinePerSample< F >::Update ( unsigned int slot,
Long64_t entry )
inlinefinalvirtual

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

Implements ROOT::Detail::RDF::RDefineBase.

Definition at line 62 of file RDefinePerSample.hxx.

Member Data Documentation

◆ fColRegister

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

Definition at line 44 of file RDefineBase.hxx.

◆ fColumnNames

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

Definition at line 46 of file RDefineBase.hxx.

◆ fExpression

template<typename F>
F ROOT::Detail::RDF::RDefinePerSample< F >::fExpression
private

Definition at line 37 of file RDefinePerSample.hxx.

◆ fIsDefine

ROOT::RVecB ROOT::Detail::RDF::RDefineBase::fIsDefine
protectedinherited

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

Definition at line 48 of file RDefineBase.hxx.

◆ fLastCheckedEntry

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

Definition at line 43 of file RDefineBase.hxx.

◆ fLastResults

template<typename F>
ValuesPerSlot_t ROOT::Detail::RDF::RDefinePerSample< F >::fLastResults
private

Definition at line 38 of file RDefinePerSample.hxx.

◆ fLoopManager

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

Definition at line 45 of file RDefineBase.hxx.

◆ fName

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

The name of the custom column.

Definition at line 41 of file RDefineBase.hxx.

◆ fType

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

The type of the custom column as a text string.

Definition at line 42 of file RDefineBase.hxx.

◆ fVariation

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

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
protectedinherited

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

Definition at line 49 of file RDefineBase.hxx.


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