Logo ROOT   6.18/05
Reference Guide
List of all members | Public Member Functions | Private Attributes | List of all members
ROOT::Detail::RDF::RJittedCustomColumn Class Reference

A wrapper around a concrete RCustomColumn, which forwards all calls to it RJittedCustomColumn is a placeholder that is put in the collection of custom columns in place of a RCustomColumn that will be just-in-time compiled.

Jitted code will assign the concrete RCustomColumn to this RJittedCustomColumn before the event-loop starts.

Definition at line 33 of file RJittedCustomColumn.hxx.

Public Member Functions

 RJittedCustomColumn (RLoopManager *lm, std::string_view name, unsigned int nSlots)
 
void ClearValueReaders (unsigned int slot) final
 
const std::type_info & GetTypeId () const final
 
voidGetValuePtr (unsigned int slot) final
 
void InitNode () final
 
void InitSlot (TTreeReader *r, unsigned int slot) final
 
void SetCustomColumn (std::unique_ptr< RCustomColumnBase > c)
 
void Update (unsigned int slot, Long64_t entry) final
 
- Public Member Functions inherited from ROOT::Detail::RDF::RCustomColumnBase
 RCustomColumnBase (RLoopManager *lm, std::string_view name, const unsigned int nSlots, const bool isDSColumn, const RDFInternal::RBookedCustomColumns &customColumns)
 
virtual ~RCustomColumnBase ()
 
virtual void ClearValueReaders (unsigned int slot)=0
 
unsigned int GetID () const
 Return the unique identifier of this RCustomColumnBase. More...
 
RLoopManagerGetLoopManagerUnchecked () const
 
std::string GetName () const
 
virtual const std::type_info & GetTypeId () const =0
 
virtual voidGetValuePtr (unsigned int slot)=0
 
virtual void InitNode ()
 
virtual void InitSlot (TTreeReader *r, unsigned int slot)=0
 
bool IsDataSourceColumn () const
 
RCustomColumnBaseoperator= (const RCustomColumnBase &)=delete
 
virtual void Update (unsigned int slot, Long64_t entry)=0
 

Private Attributes

std::unique_ptr< RCustomColumnBasefConcreteCustomColumn = nullptr
 

Additional Inherited Members

- Static Protected Member Functions inherited from ROOT::Detail::RDF::RCustomColumnBase
static unsigned int GetNextID ()
 
- Protected Attributes inherited from ROOT::Detail::RDF::RCustomColumnBase
RDFInternal::RBookedCustomColumns fCustomColumns
 
const unsigned int fID = GetNextID()
 A unique ID that identifies this custom column. More...
 
const bool fIsDataSourceColumn
 does the custom column refer to a data-source column? (or a user-define column?) More...
 
std::deque< bool > fIsInitialized
 
std::vector< Long64_tfLastCheckedEntry
 
RLoopManagerfLoopManager
 A raw pointer to the RLoopManager at the root of this functional graph. More...
 
const std::string fName
 
unsigned int fNChildren {0}
 number of nodes of the functional graph hanging from this object More...
 
const unsigned int fNSlots
 number of thread slots used by this node, inherited from parent node. More...
 
unsigned int fNStopsReceived {0}
 number of times that a children node signaled to stop processing entries. More...
 

#include <ROOT/RDF/RJittedCustomColumn.hxx>

Inheritance diagram for ROOT::Detail::RDF::RJittedCustomColumn:
[legend]

Constructor & Destructor Documentation

◆ RJittedCustomColumn()

ROOT::Detail::RDF::RJittedCustomColumn::RJittedCustomColumn ( RLoopManager lm,
std::string_view  name,
unsigned int  nSlots 
)
inline

Definition at line 37 of file RJittedCustomColumn.hxx.

Member Function Documentation

◆ ClearValueReaders()

void RJittedCustomColumn::ClearValueReaders ( unsigned int  slot)
finalvirtual

Implements ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 40 of file RJittedCustomColumn.cxx.

◆ GetTypeId()

const std::type_info & RJittedCustomColumn::GetTypeId ( ) const
finalvirtual

Implements ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 28 of file RJittedCustomColumn.cxx.

◆ GetValuePtr()

void * RJittedCustomColumn::GetValuePtr ( unsigned int  slot)
finalvirtual

Implements ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 22 of file RJittedCustomColumn.cxx.

◆ InitNode()

void RJittedCustomColumn::InitNode ( )
finalvirtual

Reimplemented from ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 46 of file RJittedCustomColumn.cxx.

◆ InitSlot()

void RJittedCustomColumn::InitSlot ( TTreeReader r,
unsigned int  slot 
)
finalvirtual

Implements ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 16 of file RJittedCustomColumn.cxx.

◆ SetCustomColumn()

void ROOT::Detail::RDF::RJittedCustomColumn::SetCustomColumn ( std::unique_ptr< RCustomColumnBase c)
inline

Definition at line 42 of file RJittedCustomColumn.hxx.

◆ Update()

void RJittedCustomColumn::Update ( unsigned int  slot,
Long64_t  entry 
)
finalvirtual

Implements ROOT::Detail::RDF::RCustomColumnBase.

Definition at line 34 of file RJittedCustomColumn.cxx.

Member Data Documentation

◆ fConcreteCustomColumn

std::unique_ptr<RCustomColumnBase> ROOT::Detail::RDF::RJittedCustomColumn::fConcreteCustomColumn = nullptr
private

Definition at line 34 of file RJittedCustomColumn.hxx.

Libraries for ROOT::Detail::RDF::RJittedCustomColumn:
[legend]

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