Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RLazyDS.hxx
Go to the documentation of this file.
1// Author: Enrico Guiraud, Danilo Piparo CERN 02/2018
2
3/*************************************************************************
4 * Copyright (C) 1995-2018, Rene Brun and Fons Rademakers. *
5 * All rights reserved. *
6 * *
7 * For the licensing terms see $ROOTSYS/LICENSE. *
8 * For the list of contributors see $ROOTSYS/README/CREDITS. *
9 *************************************************************************/
10
11#ifndef ROOT_RLAZYDS
12#define ROOT_RLAZYDS
13
15#include "ROOT/RDataFrame.hxx"
16
17#include <memory>
18
19namespace ROOT {
20
21namespace RDF {
22
23// clang-format off
24////////////////////////////////////////////////////////////////////////////////////////////////
25/// \brief Factory method to create a Lazy RDataFrame.
26/// \param[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.
27// clang-format on
28template <typename... ColumnTypes>
29RDataFrame MakeLazyDataFrame(std::pair<std::string, RResultPtr<std::vector<ColumnTypes>>> &&... colNameProxyPairs)
30{
31 RDataFrame tdf(std::make_unique<RLazyDS<ColumnTypes...>>(
32 std::forward<std::pair<std::string, RResultPtr<std::vector<ColumnTypes>>>>(colNameProxyPairs)...));
33 return tdf;
34}
35
36} // ns RDF
37
38} // ns ROOT
39
40#endif
A RDataSource implementation which is built on top of result proxies.
Smart pointer for the return type of actions.
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...
RDataFrame MakeLazyDataFrame(std::pair< std::string, RResultPtr< std::vector< ColumnTypes > > > &&... colNameProxyPairs)
Factory method to create a Lazy RDataFrame.
Definition RLazyDS.hxx:29
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...