Logo ROOT   6.18/05
Reference Guide
Namespaces | Classes | Typedefs | Functions
ROOT::Internal::RDF Namespace Reference

Namespaces

namespace  GraphDrawing
 

Classes

class  DisplayHelper
 
class  PassAsVecHelper
 
class  PassAsVecHelper< std::index_sequence< N... >, T, F >
 
class  RAction
 An action node in a RDF computation graph. More...
 
class  RAction< SnapshotHelper< ColTypes... >, PrevDataFrame, ROOT::TypeTraits::TypeList< ColTypes... > >
 
class  RAction< SnapshotHelperMT< ColTypes... >, PrevDataFrame, ROOT::TypeTraits::TypeList< ColTypes... > >
 
class  RActionBase
 
class  RActionCRTP
 Unused, not instantiatable. Only the partial specialization RActionCRTP<RAction<...>> can be used. More...
 
class  RActionCRTP< RAction< Helper, PrevDataFrame, ColumnTypes_t > >
 A common template base class for all RActions. More...
 
class  RBookedCustomColumns
 Encapsulates the columns defined by the user. More...
 
class  RColumnValue
 Helper class that updates and returns TTree branches as well as RDataFrame temporary columns. More...
 
class  RDisplayElement
 Helper class to let Display print compact tabular representations of the events. More...
 
class  RJittedAction
 
class  RSlotStack
 This is an helper class to allow to pick a slot resorting to a map indexed by thread ids. More...
 
class  RTypeErasedColumnValue
 A type-erasing wrapper around RColumnValue. More...
 
class  SnapshotHelper
 
class  SnapshotHelperMT
 
struct  TRDFValueTuple
 
struct  TRDFValueTuple< TypeList< BranchTypes... > >
 
struct  TReaderValueOrArray
 Choose between TTreeReader{Array,Value} depending on whether the branch type T is a RVec<T> or any other type (respectively). More...
 
struct  TReaderValueOrArray< RVec< T > >
 

Typedefs

template<typename BranchType >
using RDFValueTuple_t = typename TRDFValueTuple< BranchType >::type
 
template<typename T >
using ReaderValueOrArray_t = typename TReaderValueOrArray< T >::Proxy_t
 

Functions

bool AtLeastOneEmptyString (const std::vector< std::string_view > strings)
 
void BookDefineJit (std::string_view name, std::string_view expression, RLoopManager &lm, RDataSource *ds, const std::shared_ptr< RJittedCustomColumn > &jittedCustomColumn, const RDFInternal::RBookedCustomColumns &customCols, const ColumnNames_t &branches)
 
void BookFilterJit (RJittedFilter *jittedFilter, void *prevNodeOnHeap, std::string_view name, std::string_view expression, const std::map< std::string, std::string > &aliasMap, const ColumnNames_t &branches, const RDFInternal::RBookedCustomColumns &customCols, TTree *tree, RDataSource *ds, unsigned int namespaceID)
 
std::string BuildLambdaString (const std::string &expr, const ColumnNames_t &vars, const ColumnNames_t &varTypes, bool hasReturnStmt)
 
void CheckCustomColumn (std::string_view definedCol, TTree *treePtr, const ColumnNames_t &customCols, const std::map< std::string, std::string > &aliasMap, const ColumnNames_t &dataSourceColumns)
 
void CheckTypesAndPars (unsigned int nTemplateParams, unsigned int nColumnNames)
 
std::string ColumnName2ColumnTypeName (const std::string &colName, unsigned int namespaceID, TTree *tree, RDataSource *ds, bool isCustomColumn, bool vector2rvec, unsigned int customColID)
 Return a string containing the type of the given branch. More...
 
std::vector< std::string > ColumnTypesAsString (ColumnNames_t &colNames, ColumnNames_t &varNames, const std::map< std::string, std::string > &aliasMap, TTree *tree, RDataSource *ds, std::string &expr, unsigned int namespaceID, const RDFInternal::RBookedCustomColumns &customCols)
 
std::string ComposeRVecTypeName (const std::string &valueType)
 
ColumnNames_t ConvertRegexToColumns (const RDFInternal::RBookedCustomColumns &customColumns, TTree *tree, ROOT::RDF::RDataSource *dataSource, std::string_view columnNameRegexp, std::string_view callerName)
 
HeadNode_t CreateSnaphotRDF (const ColumnNames_t &validCols, std::string_view treeName, std::string_view fileName, bool isLazy, RLoopManager &loopManager, std::unique_ptr< RDFInternal::RActionBase > actionPtr)
 
std::string DemangleTypeIdName (const std::type_info &typeInfo)
 
std::vector< bool > FindUndefinedDSColumns (const ColumnNames_t &requestedCols, const ColumnNames_t &definedCols)
 Return a bitset each element of which indicates whether the corresponding element in selectedColumns is the name of a column that must be defined via datasource. More...
 
ColumnNames_t FindUnknownColumns (const ColumnNames_t &requiredCols, const ColumnNames_t &datasetColumns, const ColumnNames_t &definedCols, const ColumnNames_t &dataSourceColumns)
 
std::vector< std::string > FindUsedColumnNames (std::string_view expression, ColumnNames_t branches, const ColumnNames_t &customColumns, const ColumnNames_t &dsColumns, const std::map< std::string, std::string > &aliasMap)
 
ULong64_t GetAddress (std::vector< std::string > &p)
 
ULong64_t GetAddress (TTree &p)
 
ColumnNames_t GetBranchNames (TTree &t, bool allowDuplicates=true)
 Get all the branches names, including the ones of the friend trees. More...
 
std::string GetBranchOrLeafTypeName (TTree &t, const std::string &colName)
 Return the typename of object colName stored in t, if any. More...
 
std::vector< std::string > GetFilterNames (const std::shared_ptr< RLoopManager > &loopManager)
 
std::string GetLeafTypeName (TLeaf *leaf, const std::string &colName)
 
unsigned int GetNSlots ()
 
std::set< std::string > GetPotentialColumnNames (const std::string &expr)
 A tokeniser for the expression which is in C++ The goal is to extract all names which are potentially columns. More...
 
ColumnNames_t GetTopLevelBranchNames (TTree &t)
 Get all the top-level branches names, including the ones of the friend trees. More...
 
void GetTopLevelBranchNamesImpl (TTree &t, std::set< std::string > &bNamesReg, ColumnNames_t &bNames, std::set< TTree * > &analysedTrees)
 
ColumnNames_t GetValidatedColumnNames (RLoopManager &lm, const unsigned int nColumns, const ColumnNames_t &columns, const ColumnNames_t &validCustomColumns, RDataSource *ds)
 Given the desired number of columns and the user-provided list of columns: More...
 
template<typename dtype >
ULong64_t GetVectorAddress (std::vector< dtype > &p)
 
template<typename RDFValueTuple , std::size_t... S>
void InitRDFValues (unsigned int slot, RDFValueTuple &valueTuple, TTreeReader *r, const ColumnNames_t &bn, const RBookedCustomColumns &customCols, std::index_sequence< S... >, const std::array< bool, sizeof...(S)> &isCustomColumn)
 Initialize a tuple of RColumnValues. More...
 
template<std::size_t... S, typename... ColTypes>
void InitRDFValues (unsigned int slot, std::vector< RTypeErasedColumnValue > &values, TTreeReader *r, const ColumnNames_t &bn, const RBookedCustomColumns &customCols, std::index_sequence< S... >, ROOT::TypeTraits::TypeList< ColTypes... >, const std::array< bool, sizeof...(S)> &isTmpColumn)
 This overload is specialized to act on RTypeErasedColumnValues instead of RColumnValues. More...
 
Long64_t InterpreterCalc (const std::string &code, const std::string &context)
 
void InterpreterDeclare (const std::string &code)
 
bool IsInternalColumn (std::string_view colName)
 
bool IsValidCppVarName (const std::string &var)
 
std::string JitBuildAction (const ColumnNames_t &bl, void *prevNode, const std::type_info &art, const std::type_info &at, void *rOnHeap, TTree *tree, const unsigned int nSlots, const RDFInternal::RBookedCustomColumns &customCols, RDataSource *ds, std::shared_ptr< RJittedAction > *jittedActionOnHeap, unsigned int namespaceID)
 
template<typename... ArgTypes, typename F >
std::function< bool(ArgTypes...)> NotHelper (ROOT::TypeTraits::TypeList< ArgTypes... >, F &&f)
 
template<typename... ArgTypes, typename Ret , typename... Args>
std::function< bool(ArgTypes...)> NotHelper (ROOT::TypeTraits::TypeList< ArgTypes... >, Ret(*f)(Args...))
 
template<std::size_t N, typename T , typename F >
auto PassAsVec (F &&f) -> PassAsVecHelper< std::make_index_sequence< N >, T, F >
 
std::string PrettyPrintAddr (const void *const addr)
 
template<typename T >
ROOT::RDF::RResultPtr< std::vector< T > > RDataFrameTake (ROOT::RDF::RNode df, std::string_view column)
 
unsigned int Replace (std::string &s, const std::string what, const std::string withWhat)
 
std::vector< std::string > ReplaceDots (const ColumnNames_t &colNames)
 
std::vector< std::string > ReplaceDotWithUnderscore (const std::vector< std::string > &columnNames)
 Replace occurrences of '. More...
 
template<std::size_t... S, typename... ColTypes>
void ResetRDFValueTuple (std::vector< RTypeErasedColumnValue > &values, std::index_sequence< S... >, ROOT::TypeTraits::TypeList< ColTypes... >)
 This overload is specialized to act on RTypeErasedColumnValues instead of RColumnValues. More...
 
template<typename ValueTuple , std::size_t... S>
void ResetRDFValueTuple (ValueTuple &values, std::index_sequence< S... >)
 Clear the proxies of a tuple of RColumnValues. More...
 
const ColumnNames_t SelectColumns (unsigned int nRequiredNames, const ColumnNames_t &names, const ColumnNames_t &defaultNames)
 Choose between local column names or default column names, throw in case of errors. More...
 
void TryToJitExpression (const std::string &expression, const ColumnNames_t &colNames, const std::vector< std::string > &colTypes, bool hasReturnStmt)
 
template<typename BufType , typename... ColTypes, std::size_t... Idx>
void TTreeAsFlatMatrix (std::index_sequence< Idx... >, TTree &tree, std::vector< BufType > &matrix, std::vector< std::string > &columns)
 
template<typename BufType , typename... ColTypes>
void TTreeAsFlatMatrixHelper (TTree &tree, std::vector< BufType > &matrix, std::vector< std::string > &columns)
 
std::string TypeID2TypeName (const std::type_info &id)
 Returns the name of a type starting from its type_info An empty string is returned in case of failure References and pointers are not supported since those cannot be stored in columns. More...
 
char TypeName2ROOTTypeName (const std::string &b)
 Convert type name (e.g. More...
 
const std::type_info & TypeName2TypeID (const std::string &name)
 Return the type_info associated to a name. More...
 
std::shared_ptr< RNodeBaseUpcastNode (std::shared_ptr< RNodeBase > ptr)
 

Typedef Documentation

◆ RDFValueTuple_t

template<typename BranchType >
using ROOT::Internal::RDF::RDFValueTuple_t = typedef typename TRDFValueTuple<BranchType>::type

Definition at line 311 of file RColumnValue.hxx.

◆ ReaderValueOrArray_t

template<typename T >
using ROOT::Internal::RDF::ReaderValueOrArray_t = typedef typename TReaderValueOrArray<T>::Proxy_t

Definition at line 47 of file NodesUtils.hxx.

Function Documentation

◆ AtLeastOneEmptyString()

bool ROOT::Internal::RDF::AtLeastOneEmptyString ( const std::vector< std::string_view strings)

Definition at line 779 of file RDFInterfaceUtils.cxx.

◆ BookDefineJit()

void ROOT::Internal::RDF::BookDefineJit ( std::string_view  name,
std::string_view  expression,
RLoopManager lm,
RDataSource ds,
const std::shared_ptr< RJittedCustomColumn > &  jittedCustomColumn,
const RDFInternal::RBookedCustomColumns customCols,
const ColumnNames_t branches 
)

Definition at line 652 of file RDFInterfaceUtils.cxx.

◆ BookFilterJit()

void ROOT::Internal::RDF::BookFilterJit ( RJittedFilter jittedFilter,
void prevNodeOnHeap,
std::string_view  name,
std::string_view  expression,
const std::map< std::string, std::string > &  aliasMap,
const ColumnNames_t branches,
const RDFInternal::RBookedCustomColumns customCols,
TTree tree,
RDataSource ds,
unsigned int  namespaceID 
)

Definition at line 599 of file RDFInterfaceUtils.cxx.

◆ BuildLambdaString()

std::string ROOT::Internal::RDF::BuildLambdaString ( const std::string &  expr,
const ColumnNames_t vars,
const ColumnNames_t varTypes,
bool  hasReturnStmt 
)

Definition at line 565 of file RDFInterfaceUtils.cxx.

◆ CheckCustomColumn()

void ROOT::Internal::RDF::CheckCustomColumn ( std::string_view  definedCol,
TTree treePtr,
const ColumnNames_t customCols,
const std::map< std::string, std::string > &  aliasMap,
const ColumnNames_t dataSourceColumns 
)

Definition at line 267 of file RDFInterfaceUtils.cxx.

◆ CheckTypesAndPars()

void ROOT::Internal::RDF::CheckTypesAndPars ( unsigned int  nTemplateParams,
unsigned int  nColumnNames 
)

Definition at line 308 of file RDFInterfaceUtils.cxx.

◆ ColumnName2ColumnTypeName()

std::string ROOT::Internal::RDF::ColumnName2ColumnTypeName ( const std::string &  colName,
unsigned int  namespaceID,
TTree tree,
RDataSource ds,
bool  isCustomColumn,
bool  vector2rvec,
unsigned int  customColID 
)

Return a string containing the type of the given branch.

Works both with real TTree branches and with temporary column created by Define. Throws if type name deduction fails. Note that for fixed- or variable-sized c-style arrays the returned type name will be RVec<T>. vector2rvec specifies whether typename 'std::vector<T>' should be converted to 'RVec<T>' or returned as is customColID is only used if isCustomColumn is true, and must correspond to the custom column's unique identifier returned by its GetID() method.

Definition at line 197 of file RDFUtils.cxx.

◆ ColumnTypesAsString()

std::vector< std::string > ROOT::Internal::RDF::ColumnTypesAsString ( ColumnNames_t colNames,
ColumnNames_t varNames,
const std::map< std::string, std::string > &  aliasMap,
TTree tree,
RDataSource ds,
std::string &  expr,
unsigned int  namespaceID,
const RDFInternal::RBookedCustomColumns customCols 
)

Definition at line 479 of file RDFInterfaceUtils.cxx.

◆ ComposeRVecTypeName()

std::string ROOT::Internal::RDF::ComposeRVecTypeName ( const std::string &  valueType)

Definition at line 117 of file RDFUtils.cxx.

◆ ConvertRegexToColumns()

ColumnNames_t ROOT::Internal::RDF::ConvertRegexToColumns ( const RDFInternal::RBookedCustomColumns customColumns,
TTree tree,
ROOT::RDF::RDataSource dataSource,
std::string_view  columnNameRegexp,
std::string_view  callerName 
)

Definition at line 145 of file RDFInterfaceUtils.cxx.

◆ CreateSnaphotRDF()

HeadNode_t ROOT::Internal::RDF::CreateSnaphotRDF ( const ColumnNames_t validCols,
std::string_view  treeName,
std::string_view  fileName,
bool  isLazy,
RLoopManager loopManager,
std::unique_ptr< RDFInternal::RActionBase actionPtr 
)

Definition at line 121 of file RDFInterfaceUtils.cxx.

◆ DemangleTypeIdName()

std::string ROOT::Internal::RDF::DemangleTypeIdName ( const std::type_info &  typeInfo)

Definition at line 139 of file RDFInterfaceUtils.cxx.

◆ FindUndefinedDSColumns()

std::vector< bool > ROOT::Internal::RDF::FindUndefinedDSColumns ( const ColumnNames_t requestedCols,
const ColumnNames_t definedCols 
)

Return a bitset each element of which indicates whether the corresponding element in selectedColumns is the name of a column that must be defined via datasource.

All elements of the returned vector are false if no data-source is present.

Definition at line 835 of file RDFInterfaceUtils.cxx.

◆ FindUnknownColumns()

ColumnNames_t ROOT::Internal::RDF::FindUnknownColumns ( const ColumnNames_t requiredCols,
const ColumnNames_t datasetColumns,
const ColumnNames_t definedCols,
const ColumnNames_t dataSourceColumns 
)

Definition at line 347 of file RDFInterfaceUtils.cxx.

◆ FindUsedColumnNames()

std::vector< std::string > ROOT::Internal::RDF::FindUsedColumnNames ( std::string_view  expression,
ColumnNames_t  branches,
const ColumnNames_t customColumns,
const ColumnNames_t dsColumns,
const std::map< std::string, std::string > &  aliasMap 
)

Definition at line 396 of file RDFInterfaceUtils.cxx.

◆ GetAddress() [1/2]

ULong64_t ROOT::Internal::RDF::GetAddress ( std::vector< std::string > &  p)
inline

Definition at line 30 of file PyROOTHelpers.hxx.

◆ GetAddress() [2/2]

ULong64_t ROOT::Internal::RDF::GetAddress ( TTree p)
inline

Definition at line 34 of file PyROOTHelpers.hxx.

◆ GetBranchNames()

ColumnNames_t ROOT::Internal::RDF::GetBranchNames ( TTree t,
bool  allowDuplicates = true 
)

Get all the branches names, including the ones of the friend trees.

Definition at line 178 of file RLoopManager.cxx.

◆ GetBranchOrLeafTypeName()

std::string ROOT::Internal::RDF::GetBranchOrLeafTypeName ( TTree t,
const std::string &  colName 
)

Return the typename of object colName stored in t, if any.

Return an empty string if colName is not in t. Supported cases:

  • leaves corresponding to single values, variable- and fixed-length arrays, with following syntax:
  • TBranchElements, as long as TTree::GetBranch resolves their names

Definition at line 148 of file RDFUtils.cxx.

◆ GetFilterNames()

std::vector< std::string > ROOT::Internal::RDF::GetFilterNames ( const std::shared_ptr< RLoopManager > &  loopManager)

Definition at line 376 of file RDFInterfaceUtils.cxx.

◆ GetLeafTypeName()

std::string ROOT::Internal::RDF::GetLeafTypeName ( TLeaf leaf,
const std::string &  colName 
)

Definition at line 122 of file RDFUtils.cxx.

◆ GetNSlots()

unsigned int ROOT::Internal::RDF::GetNSlots ( )

Definition at line 257 of file RDFUtils.cxx.

◆ GetPotentialColumnNames()

std::set< std::string > ROOT::Internal::RDF::GetPotentialColumnNames ( const std::string &  expr)

A tokeniser for the expression which is in C++ The goal is to extract all names which are potentially columns.

The difficulty is to catch also the names containing dots.

Definition at line 70 of file RDFInterfaceUtils.cxx.

◆ GetTopLevelBranchNames()

ColumnNames_t ROOT::Internal::RDF::GetTopLevelBranchNames ( TTree t)

Get all the top-level branches names, including the ones of the friend trees.

Definition at line 236 of file RDFInterfaceUtils.cxx.

◆ GetTopLevelBranchNamesImpl()

void ROOT::Internal::RDF::GetTopLevelBranchNamesImpl ( TTree t,
std::set< std::string > &  bNamesReg,
ColumnNames_t bNames,
std::set< TTree * > &  analysedTrees 
)

Definition at line 205 of file RDFInterfaceUtils.cxx.

◆ GetValidatedColumnNames()

ColumnNames_t ROOT::Internal::RDF::GetValidatedColumnNames ( RLoopManager lm,
const unsigned int  nColumns,
const ColumnNames_t columns,
const ColumnNames_t validCustomColumns,
RDataSource ds 
)

Given the desired number of columns and the user-provided list of columns:

  • fallback to using the first nColumns default columns if needed (or throw if nColumns > nDefaultColumns)
  • check that selected column names refer to valid branches, custom columns or datasource columns (throw if not) Return the list of selected column names.

Definition at line 797 of file RDFInterfaceUtils.cxx.

◆ GetVectorAddress()

template<typename dtype >
ULong64_t ROOT::Internal::RDF::GetVectorAddress ( std::vector< dtype > &  p)

Definition at line 25 of file PyROOTHelpers.hxx.

◆ InitRDFValues() [1/2]

template<typename RDFValueTuple , std::size_t... S>
void ROOT::Internal::RDF::InitRDFValues ( unsigned int  slot,
RDFValueTuple &  valueTuple,
TTreeReader r,
const ColumnNames_t bn,
const RBookedCustomColumns customCols,
std::index_sequence< S... >  ,
const std::array< bool, sizeof...(S)> &  isCustomColumn 
)

Initialize a tuple of RColumnValues.

For real TTree branches a TTreeReader{Array,Value} is built and passed to the RColumnValue. For temporary columns a pointer to the corresponding variable is passed instead.

Definition at line 54 of file NodesUtils.hxx.

◆ InitRDFValues() [2/2]

template<std::size_t... S, typename... ColTypes>
void ROOT::Internal::RDF::InitRDFValues ( unsigned int  slot,
std::vector< RTypeErasedColumnValue > &  values,
TTreeReader r,
const ColumnNames_t bn,
const RBookedCustomColumns customCols,
std::index_sequence< S... >  ,
ROOT::TypeTraits::TypeList< ColTypes... >  ,
const std::array< bool, sizeof...(S)> &  isTmpColumn 
)

This overload is specialized to act on RTypeErasedColumnValues instead of RColumnValues.

Definition at line 71 of file RAction.hxx.

◆ InterpreterCalc()

Long64_t ROOT::Internal::RDF::InterpreterCalc ( const std::string &  code,
const std::string &  context 
)

Definition at line 297 of file RDFUtils.cxx.

◆ InterpreterDeclare()

void ROOT::Internal::RDF::InterpreterDeclare ( const std::string &  code)

Definition at line 289 of file RDFUtils.cxx.

◆ IsInternalColumn()

bool ROOT::Internal::RDF::IsInternalColumn ( std::string_view  colName)

Definition at line 367 of file RDFInterfaceUtils.cxx.

◆ IsValidCppVarName()

bool ROOT::Internal::RDF::IsValidCppVarName ( const std::string &  var)

Definition at line 245 of file RDFInterfaceUtils.cxx.

◆ JitBuildAction()

std::string ROOT::Internal::RDF::JitBuildAction ( const ColumnNames_t bl,
void prevNode,
const std::type_info &  art,
const std::type_info &  at,
void rOnHeap,
TTree tree,
const unsigned int  nSlots,
const RDFInternal::RBookedCustomColumns customCols,
RDataSource ds,
std::shared_ptr< RJittedAction > *  jittedActionOnHeap,
unsigned int  namespaceID 
)

Definition at line 712 of file RDFInterfaceUtils.cxx.

◆ NotHelper() [1/2]

template<typename... ArgTypes, typename F >
std::function< bool(ArgTypes...)> ROOT::Internal::RDF::NotHelper ( ROOT::TypeTraits::TypeList< ArgTypes... >  ,
F &&  f 
)

Definition at line 33 of file RDFHelpers.hxx.

◆ NotHelper() [2/2]

template<typename... ArgTypes, typename Ret , typename... Args>
std::function< bool(ArgTypes...)> ROOT::Internal::RDF::NotHelper ( ROOT::TypeTraits::TypeList< ArgTypes... >  ,
Ret(*)(Args...)  f 
)

Definition at line 39 of file RDFHelpers.hxx.

◆ PassAsVec()

template<std::size_t N, typename T , typename F >
auto ROOT::Internal::RDF::PassAsVec ( F &&  f) -> PassAsVecHelper<std::make_index_sequence<N>, T, F>

Definition at line 59 of file RDFHelpers.hxx.

◆ PrettyPrintAddr()

std::string ROOT::Internal::RDF::PrettyPrintAddr ( const void *const  addr)

Definition at line 588 of file RDFInterfaceUtils.cxx.

◆ RDataFrameTake()

template<typename T >
ROOT::RDF::RResultPtr< std::vector< T > > ROOT::Internal::RDF::RDataFrameTake ( ROOT::RDF::RNode  df,
std::string_view  column 
)

Definition at line 67 of file PyROOTHelpers.hxx.

◆ Replace()

unsigned int ROOT::Internal::RDF::Replace ( std::string &  s,
const std::string  what,
const std::string  withWhat 
)

Definition at line 382 of file RDFInterfaceUtils.cxx.

◆ ReplaceDots()

std::vector< std::string > ROOT::Internal::RDF::ReplaceDots ( const ColumnNames_t colNames)

Definition at line 465 of file RDFInterfaceUtils.cxx.

◆ ReplaceDotWithUnderscore()

std::vector< std::string > ROOT::Internal::RDF::ReplaceDotWithUnderscore ( const std::vector< std::string > &  columnNames)

Replace occurrences of '.

' with '_' in each string passed as argument. An Info message is printed when this happens. Dots at the end of the string are not replaced. An exception is thrown in case the resulting set of strings would contain duplicates.

Definition at line 270 of file RDFUtils.cxx.

◆ ResetRDFValueTuple() [1/2]

template<std::size_t... S, typename... ColTypes>
void ROOT::Internal::RDF::ResetRDFValueTuple ( std::vector< RTypeErasedColumnValue > &  values,
std::index_sequence< S... >  ,
ROOT::TypeTraits::TypeList< ColTypes... >   
)

This overload is specialized to act on RTypeErasedColumnValues instead of RColumnValues.

Definition at line 86 of file RAction.hxx.

◆ ResetRDFValueTuple() [2/2]

template<typename ValueTuple , std::size_t... S>
void ROOT::Internal::RDF::ResetRDFValueTuple ( ValueTuple &  values,
std::index_sequence< S... >   
)

Clear the proxies of a tuple of RColumnValues.

Definition at line 315 of file RColumnValue.hxx.

◆ SelectColumns()

const ColumnNames_t ROOT::Internal::RDF::SelectColumns ( unsigned int  nRequiredNames,
const ColumnNames_t names,
const ColumnNames_t defaultNames 
)

Choose between local column names or default column names, throw in case of errors.

Definition at line 322 of file RDFInterfaceUtils.cxx.

◆ TryToJitExpression()

void ROOT::Internal::RDF::TryToJitExpression ( const std::string &  expression,
const ColumnNames_t colNames,
const std::vector< std::string > &  colTypes,
bool  hasReturnStmt 
)

Definition at line 536 of file RDFInterfaceUtils.cxx.

◆ TTreeAsFlatMatrix()

template<typename BufType , typename... ColTypes, std::size_t... Idx>
void ROOT::Internal::RDF::TTreeAsFlatMatrix ( std::index_sequence< Idx... >  ,
TTree tree,
std::vector< BufType > &  matrix,
std::vector< std::string > &  columns 
)

Definition at line 40 of file PyROOTHelpers.hxx.

◆ TTreeAsFlatMatrixHelper()

template<typename BufType , typename... ColTypes>
void ROOT::Internal::RDF::TTreeAsFlatMatrixHelper ( TTree tree,
std::vector< BufType > &  matrix,
std::vector< std::string > &  columns 
)

Definition at line 58 of file PyROOTHelpers.hxx.

◆ TypeID2TypeName()

std::string ROOT::Internal::RDF::TypeID2TypeName ( const std::type_info &  id)

Returns the name of a type starting from its type_info An empty string is returned in case of failure References and pointers are not supported since those cannot be stored in columns.

Definition at line 83 of file RDFUtils.cxx.

◆ TypeName2ROOTTypeName()

char ROOT::Internal::RDF::TypeName2ROOTTypeName ( const std::string &  b)

Convert type name (e.g.

"Float_t") to ROOT type code (e.g. 'F') – see TBranch documentation. Return a space ' ' in case no match was found.

Definition at line 230 of file RDFUtils.cxx.

◆ TypeName2TypeID()

const std::type_info & ROOT::Internal::RDF::TypeName2TypeID ( const std::string &  name)

Return the type_info associated to a name.

If the association fails, an exception is thrown. References and pointers are not supported since those cannot be stored in columns.

Definition at line 41 of file RDFUtils.cxx.

◆ UpcastNode()

std::shared_ptr< RNodeBase > ROOT::Internal::RDF::UpcastNode ( std::shared_ptr< RNodeBase ptr)

Definition at line 788 of file RDFInterfaceUtils.cxx.