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 | RNumpyDS |
A RDataSource implementation which takes a collection of RVecs, which are able to adopt data from Numpy arrays. More... | |
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) |
std::shared_ptr< RJittedCustomColumn > | BookDefineJit (std::string_view name, std::string_view expression, RLoopManager &lm, RDataSource *ds, const RDFInternal::RBookedCustomColumns &customCols, const ColumnNames_t &branches, std::shared_ptr< RNodeBase > *upcastNodeOnHeap) |
void | BookFilterJit (const std::shared_ptr< RJittedFilter > &jittedFilter, std::shared_ptr< RDFDetail::RNodeBase > *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) |
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, TTree *tree, RDataSource *ds, RCustomColumnBase *customColumn, bool vector2rvec) |
Return a string containing the type of the given branch. More... | |
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 | CreateSnapshotRDF (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) |
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::vector< std::string > | GetValidatedArgTypes (const ColumnNames_t &colNames, const RBookedCustomColumns &customColumns, TTree *tree, RDataSource *ds, const std::string &context, bool vector2rvec) |
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) |
std::string | JitBuildAction (const ColumnNames_t &bl, std::shared_ptr< RDFDetail::RNodeBase > *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::weak_ptr< RJittedAction > *jittedActionOnHeap) |
template<typename... ColumnTypes> | |
RDataFrame * | MakeNumpyDataFrame (PyObject *pyRVecs, std::pair< std::string, ROOT::RVec< ColumnTypes > * > &&... colNameProxyPairs) |
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) |
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... | |
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< RNodeBase > | UpcastNode (std::shared_ptr< RNodeBase > ptr) |
void | ValidateSnapshotOutput (const RSnapshotOptions &opts, const std::string &treeName, const std::string &fileName) |
using ROOT::Internal::RDF::RDFValueTuple_t = typedef typename TRDFValueTuple<BranchType>::type |
Definition at line 317 of file RColumnValue.hxx.
using ROOT::Internal::RDF::ReaderValueOrArray_t = typedef typename TReaderValueOrArray<T>::Proxy_t |
Definition at line 47 of file NodesUtils.hxx.
bool ROOT::Internal::RDF::AtLeastOneEmptyString | ( | const std::vector< std::string_view > | strings | ) |
Definition at line 675 of file RDFInterfaceUtils.cxx.
std::shared_ptr< RJittedCustomColumn > ROOT::Internal::RDF::BookDefineJit | ( | std::string_view | name, |
std::string_view | expression, | ||
RLoopManager & | lm, | ||
RDataSource * | ds, | ||
const RDFInternal::RBookedCustomColumns & | customCols, | ||
const ColumnNames_t & | branches, | ||
std::shared_ptr< RNodeBase > * | upcastNodeOnHeap | ||
) |
Definition at line 582 of file RDFInterfaceUtils.cxx.
void ROOT::Internal::RDF::BookFilterJit | ( | const std::shared_ptr< RJittedFilter > & | jittedFilter, |
std::shared_ptr< RDFDetail::RNodeBase > * | 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 | ||
) |
Definition at line 536 of file RDFInterfaceUtils.cxx.
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 414 of file RDFInterfaceUtils.cxx.
void ROOT::Internal::RDF::CheckTypesAndPars | ( | unsigned int | nTemplateParams, |
unsigned int | nColumnNames | ||
) |
Definition at line 455 of file RDFInterfaceUtils.cxx.
std::string ROOT::Internal::RDF::ColumnName2ColumnTypeName | ( | const std::string & | colName, |
TTree * | tree, | ||
RDataSource * | ds, | ||
RCustomColumnBase * | customColumn, | ||
bool | vector2rvec | ||
) |
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 211 of file RDFUtils.cxx.
std::string ROOT::Internal::RDF::ComposeRVecTypeName | ( | const std::string & | valueType | ) |
Definition at line 118 of file RDFUtils.cxx.
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 354 of file RDFInterfaceUtils.cxx.
HeadNode_t ROOT::Internal::RDF::CreateSnapshotRDF | ( | 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 330 of file RDFInterfaceUtils.cxx.
std::string ROOT::Internal::RDF::DemangleTypeIdName | ( | const std::type_info & | typeInfo | ) |
Definition at line 348 of file RDFInterfaceUtils.cxx.
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 755 of file RDFInterfaceUtils.cxx.
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 494 of file RDFInterfaceUtils.cxx.
|
inline |
Definition at line 30 of file PyROOTHelpers.hxx.
Definition at line 34 of file PyROOTHelpers.hxx.
Get all the branches names, including the ones of the friend trees.
Definition at line 232 of file RLoopManager.cxx.
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:
Definition at line 149 of file RDFUtils.cxx.
std::vector< std::string > ROOT::Internal::RDF::GetFilterNames | ( | const std::shared_ptr< RLoopManager > & | loopManager | ) |
Definition at line 523 of file RDFInterfaceUtils.cxx.
std::string ROOT::Internal::RDF::GetLeafTypeName | ( | TLeaf * | leaf, |
const std::string & | colName | ||
) |
Definition at line 123 of file RDFUtils.cxx.
unsigned int ROOT::Internal::RDF::GetNSlots | ( | ) |
Definition at line 270 of file RDFUtils.cxx.
std::vector< std::string > ROOT::Internal::RDF::GetValidatedArgTypes | ( | const ColumnNames_t & | colNames, |
const RBookedCustomColumns & | customColumns, | ||
TTree * | tree, | ||
RDataSource * | ds, | ||
const std::string & | context, | ||
bool | vector2rvec | ||
) |
Definition at line 729 of file RDFInterfaceUtils.cxx.
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:
Definition at line 694 of file RDFInterfaceUtils.cxx.
ULong64_t ROOT::Internal::RDF::GetVectorAddress | ( | std::vector< dtype > & | p | ) |
Definition at line 25 of file PyROOTHelpers.hxx.
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.
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.
Long64_t ROOT::Internal::RDF::InterpreterCalc | ( | const std::string & | code, |
const std::string & | context | ||
) |
Definition at line 312 of file RDFUtils.cxx.
void ROOT::Internal::RDF::InterpreterDeclare | ( | const std::string & | code | ) |
Definition at line 302 of file RDFUtils.cxx.
bool ROOT::Internal::RDF::IsInternalColumn | ( | std::string_view | colName | ) |
Definition at line 514 of file RDFInterfaceUtils.cxx.
std::string ROOT::Internal::RDF::JitBuildAction | ( | const ColumnNames_t & | bl, |
std::shared_ptr< RDFDetail::RNodeBase > * | 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::weak_ptr< RJittedAction > * | jittedActionOnHeap | ||
) |
Definition at line 627 of file RDFInterfaceUtils.cxx.
RDataFrame * ROOT::Internal::RDF::MakeNumpyDataFrame | ( | PyObject * | pyRVecs, |
std::pair< std::string, ROOT::RVec< ColumnTypes > * > &&... | colNameProxyPairs | ||
) |
Definition at line 225 of file RNumpyDS.hxx.
std::function< bool(ArgTypes...)> ROOT::Internal::RDF::NotHelper | ( | ROOT::TypeTraits::TypeList< ArgTypes... > | , |
F && | f | ||
) |
Definition at line 33 of file RDFHelpers.hxx.
std::function< bool(ArgTypes...)> ROOT::Internal::RDF::NotHelper | ( | ROOT::TypeTraits::TypeList< ArgTypes... > | , |
Ret(*)(Args...) | f | ||
) |
Definition at line 39 of file RDFHelpers.hxx.
auto ROOT::Internal::RDF::PassAsVec | ( | F && | f | ) | -> PassAsVecHelper<std::make_index_sequence<N>, T, F> |
Definition at line 59 of file RDFHelpers.hxx.
std::string ROOT::Internal::RDF::PrettyPrintAddr | ( | const void *const | addr | ) |
Definition at line 528 of file RDFInterfaceUtils.cxx.
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.
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 283 of file RDFUtils.cxx.
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 88 of file RAction.hxx.
void ROOT::Internal::RDF::ResetRDFValueTuple | ( | ValueTuple & | values, |
std::index_sequence< S... > | |||
) |
Clear the proxies of a tuple of RColumnValues.
Definition at line 321 of file RColumnValue.hxx.
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 469 of file RDFInterfaceUtils.cxx.
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.
void ROOT::Internal::RDF::TTreeAsFlatMatrixHelper | ( | TTree & | tree, |
std::vector< BufType > & | matrix, | ||
std::vector< std::string > & | columns | ||
) |
Definition at line 58 of file PyROOTHelpers.hxx.
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 84 of file RDFUtils.cxx.
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 243 of file RDFUtils.cxx.
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 42 of file RDFUtils.cxx.
Definition at line 684 of file RDFInterfaceUtils.cxx.
void ROOT::Internal::RDF::ValidateSnapshotOutput | ( | const RSnapshotOptions & | opts, |
const std::string & | treeName, | ||
const std::string & | fileName | ||
) |
Definition at line 236 of file RDFActionHelpers.cxx.