Namespaces | |
namespace | Internal |
Classes | |
class | RArrowDS |
RDataFrame data source class to interface with Apache Arrow. More... | |
class | RCsvDS |
RDataFrame data source class for reading CSV files. More... | |
class | RCutFlowReport |
class | RDataSource |
RDataSource defines an API that RDataFrame can use to read arbitrary data formats. More... | |
class | RDisplay |
This class is the textual representation of the content of a columnar dataset. More... | |
class | RInterface |
The public interface to the RDataFrame federation of classes. More... | |
class | RLazyDS |
A RDataSource implementation which is built on top of result proxies. More... | |
class | RResultHandle |
class | RResultPtr |
Smart pointer for the return type of actions. More... | |
struct | RSnapshotOptions |
A collection of options to steer the creation of the dataset on file. More... | |
class | RSqliteDS |
RSqliteDS is an RDF data source implementation for SQL result sets from sqlite3 files. More... | |
class | RTrivialDS |
class | TCutInfo |
class | TH1DModel |
A struct which stores the parameters of a TH1D. More... | |
class | TH2DModel |
A struct which stores the parameters of a TH2D. More... | |
class | TH3DModel |
A struct which stores the parameters of a TH3D. More... | |
class | TProfile1DModel |
A struct which stores the parameters of a TProfile. More... | |
class | TProfile2DModel |
A struct which stores the parameters of a TProfile2D. More... | |
Typedefs | |
using | RNode = RInterface<::ROOT::Detail::RDF::RNodeBase, void > |
template<typename T > | |
using | TResultProxy = RResultPtr< T > |
Functions | |
template<typename NodeType > | |
RNode | AsRNode (NodeType node) |
Cast a RDataFrame node to the common type ROOT::RDF::RNode. | |
template<typename T > | |
std::shared_ptr< arrow::ChunkedArray > | getData (T p) |
int | getNRecords (std::shared_ptr< arrow::Table > &table, std::vector< std::string > &columnNames) |
RDataFrame | MakeArrowDataFrame (std::shared_ptr< arrow::Table > table, std::vector< std::string > const &columns) |
Factory method to create a Apache Arrow RDataFrame. | |
RDataFrame | MakeCsvDataFrame (std::string_view fileName, bool readHeaders=true, char delimiter=',', Long64_t linesChunkSize=-1LL) |
Factory method to create a CSV RDataFrame. | |
template<typename... ColumnTypes> | |
RDataFrame | MakeLazyDataFrame (std::pair< std::string, RResultPtr< std::vector< ColumnTypes > > > &&... colNameProxyPairs) |
Factory method to create a Lazy RDataFrame. | |
RDataFrame | MakeSqliteDataFrame (std::string_view fileName, std::string_view query) |
Factory method to create a SQlite RDataFrame. | |
RInterface< RDFDetail::RLoopManager, RTrivialDS > | MakeTrivialDataFrame () |
RInterface< RDFDetail::RLoopManager, RTrivialDS > | MakeTrivialDataFrame (ULong64_t size, bool skipEvenEntries=false) |
template<typename F , typename Args = typename ROOT::TypeTraits::CallableTraits<typename std::decay<F>::type>::arg_types_nodecay, typename Ret = typename ROOT::TypeTraits::CallableTraits<typename std::decay<F>::type>::ret_type> | |
auto | Not (F &&f) -> decltype(RDFInternal::NotHelper(Args(), std::forward< F >(f))) |
Given a callable with signature bool(T1, T2, ...) return a callable with same signature that returns the negated result. | |
template<class T1 , class T2 > | |
bool | operator!= (const RResultPtr< T1 > &lhs, const RResultPtr< T2 > &rhs) |
template<class T1 > | |
bool | operator!= (const RResultPtr< T1 > &lhs, std::nullptr_t rhs) |
template<class T1 > | |
bool | operator!= (std::nullptr_t lhs, const RResultPtr< T1 > &rhs) |
template<class T1 , class T2 > | |
bool | operator== (const RResultPtr< T1 > &lhs, const RResultPtr< T2 > &rhs) |
template<class T1 > | |
bool | operator== (const RResultPtr< T1 > &lhs, std::nullptr_t rhs) |
template<class T1 > | |
bool | operator== (std::nullptr_t lhs, const RResultPtr< T1 > &rhs) |
template<std::size_t N, typename T , typename F > | |
auto | PassAsVec (F &&f) -> RDFInternal::PassAsVecHelper< std::make_index_sequence< N >, T, F > |
PassAsVec is a callable generator that allows passing N variables of type T to a function as a single collection. | |
void | RunGraphs (std::vector< RResultHandle > handles) |
Trigger the event loop of multiple RDataFrames concurrently. | |
template<typename NodeType > | |
std::string | SaveGraph (NodeType node) |
Create a graphviz representation of the dataframe computation graph, return it as a string. | |
template<typename NodeType > | |
void | SaveGraph (NodeType node, const std::string &outputFile) |
Create a graphviz representation of the dataframe computation graph, write it to the specified file. | |
void | splitInEqualRanges (std::vector< std::pair< ULong64_t, ULong64_t > > &ranges, int nRecords, unsigned int nSlots) |
Definition at line 55 of file InterfaceUtils.hxx.
using ROOT::RDF::TResultProxy = typedef RResultPtr<T> |
Definition at line 18 of file TResultProxy.hxx.
RNode ROOT::RDF::AsRNode | ( | NodeType | node | ) |
Cast a RDataFrame node to the common type ROOT::RDF::RNode.
[in] | node | Any node of a RDataFrame graph |
Definition at line 156 of file RDFHelpers.hxx.
std::shared_ptr< arrow::ChunkedArray > ROOT::RDF::getData | ( | T | p | ) |
Definition at line 542 of file RArrowDS.cxx.
int ROOT::RDF::getNRecords | ( | std::shared_ptr< arrow::Table > & | table, |
std::vector< std::string > & | columnNames | ||
) |
Definition at line 535 of file RArrowDS.cxx.
RDataFrame ROOT::RDF::MakeArrowDataFrame | ( | std::shared_ptr< arrow::Table > | table, |
std::vector< std::string > const & | columnNames | ||
) |
Factory method to create a Apache Arrow RDataFrame.
Creates a RDataFrame using an arrow::Table as input.
[in] | table | an apache::arrow table to use as a source. |
[in] | table | the arrow Table to observe. |
[in] | columnNames | the name of the columns to use In case columnNames is empty, we use all the columns found in the table |
Definition at line 604 of file RArrowDS.cxx.
RDataFrame ROOT::RDF::MakeCsvDataFrame | ( | std::string_view | fileName, |
bool | readHeaders = true , |
||
char | delimiter = ',' , |
||
Long64_t | linesChunkSize = -1LL |
||
) |
Factory method to create a CSV RDataFrame.
[in] | fileName | Path of the CSV file. |
[in] | readHeaders | true if the CSV file contains headers as first row, false otherwise (default true ). |
[in] | delimiter | Delimiter character (default ','). |
Definition at line 475 of file RCsvDS.cxx.
RDataFrame ROOT::RDF::MakeLazyDataFrame | ( | std::pair< std::string, RResultPtr< std::vector< ColumnTypes > > > &&... | colNameProxyPairs | ) |
Factory method to create a Lazy RDataFrame.
[in] | colNameProxyPairs | the series of pairs to describe the columns of the data source, first element of the pair is the name of the column and the second is the RResultPtr to the column in the parent data frame. |
Definition at line 28 of file RLazyDS.hxx.
RDataFrame ROOT::RDF::MakeSqliteDataFrame | ( | std::string_view | fileName, |
std::string_view | query | ||
) |
Factory method to create a SQlite RDataFrame.
[in] | fileName | Path of the sqlite file. |
[in] | query | SQL query that defines the data set. |
Definition at line 545 of file RSqliteDS.cxx.
RInterface< RDFDetail::RLoopManager, RTrivialDS > ROOT::RDF::MakeTrivialDataFrame | ( | ) |
Definition at line 123 of file RTrivialDS.cxx.
RInterface< RDFDetail::RLoopManager, RTrivialDS > ROOT::RDF::MakeTrivialDataFrame | ( | ULong64_t | size, |
bool | skipEvenEntries = false |
||
) |
Definition at line 116 of file RTrivialDS.cxx.
auto ROOT::RDF::Not | ( | F && | f | ) | -> decltype(RDFInternal::NotHelper(Args(), std::forward<F>(f))) |
Given a callable with signature bool(T1, T2, ...) return a callable with same signature that returns the negated result.
The callable must have one single non-template definition of operator(). This is a limitation with respect to std::not_fn, required for interoperability with RDataFrame.
Definition at line 81 of file RDFHelpers.hxx.
bool ROOT::RDF::operator!= | ( | const RResultPtr< T1 > & | lhs, |
const RResultPtr< T2 > & | rhs | ||
) |
Definition at line 376 of file RResultPtr.hxx.
bool ROOT::RDF::operator!= | ( | const RResultPtr< T1 > & | lhs, |
std::nullptr_t | rhs | ||
) |
Definition at line 394 of file RResultPtr.hxx.
bool ROOT::RDF::operator!= | ( | std::nullptr_t | lhs, |
const RResultPtr< T1 > & | rhs | ||
) |
Definition at line 400 of file RResultPtr.hxx.
bool ROOT::RDF::operator== | ( | const RResultPtr< T1 > & | lhs, |
const RResultPtr< T2 > & | rhs | ||
) |
Definition at line 370 of file RResultPtr.hxx.
bool ROOT::RDF::operator== | ( | const RResultPtr< T1 > & | lhs, |
std::nullptr_t | rhs | ||
) |
Definition at line 382 of file RResultPtr.hxx.
bool ROOT::RDF::operator== | ( | std::nullptr_t | lhs, |
const RResultPtr< T1 > & | rhs | ||
) |
Definition at line 388 of file RResultPtr.hxx.
auto ROOT::RDF::PassAsVec | ( | F && | f | ) | -> RDFInternal::PassAsVecHelper<std::make_index_sequence<N>, T, F> |
PassAsVec is a callable generator that allows passing N variables of type T to a function as a single collection.
PassAsVec<N, T>(func) returns a callable that takes N arguments of type T, passes them down to function func
as an initializer list {t1, t2, t3,..., tN}
and returns whatever f({t1, t2, t3, ..., tN}) returns.
Note that for this to work with RDataFrame the type of all columns that the callable is applied to must be exactly T. Example usage together with RDataFrame ("varX" columns must all be float
variables):
Definition at line 101 of file RDFHelpers.hxx.
void ROOT::RDF::RunGraphs | ( | std::vector< RResultHandle > | handles | ) |
Trigger the event loop of multiple RDataFrames concurrently.
[in] | handles | A vector of RResultHandles |
This function triggers the event loop of all computation graphs which relate to the given RResultHandles. The advantage compared to running the event loop implicitly by accessing the RResultPtr is that the event loops will run concurrently. Therefore, the overall computation of all results is generally more efficient. It should be noted that user-defined operations (e.g., Filters and Defines) of the different RDataFrame graphs are assumed to be safe to call concurrently.
Definition at line 23 of file RDFHelpers.cxx.
std::string ROOT::RDF::SaveGraph | ( | NodeType | node | ) |
Create a graphviz representation of the dataframe computation graph, return it as a string.
[in] | node | any node of the graph. Called on the head (first) node, it prints the entire graph. Otherwise, only the branch the node belongs to. |
The output can be displayed with a command akin to dot -Tpng output.dot > output.png && open output.png
.
Note that "hanging" Defines, i.e. Defines without downstream nodes, will not be displayed by SaveGraph as they are effectively optimized away from the computation graph.
Note that SaveGraph is not thread-safe and must not be called concurrently from different threads.
Definition at line 118 of file RDFHelpers.hxx.
void ROOT::RDF::SaveGraph | ( | NodeType | node, |
const std::string & | outputFile | ||
) |
Create a graphviz representation of the dataframe computation graph, write it to the specified file.
[in] | node | any node of the graph. Called on the head (first) node, it prints the entire graph. Otherwise, only the branch the node belongs to. |
[in] | outputFile | file where to save the representation. |
The output can be displayed with a command akin to dot -Tpng output.dot > output.png && open output.png
.
Note that "hanging" Defines, i.e. Defines without downstream nodes, will not be displayed by SaveGraph as they are effectively optimized away from the computation graph.
Note that SaveGraph is not thread-safe and must not be called concurrently from different threads.
Definition at line 137 of file RDFHelpers.hxx.