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/RMakeUnique.hxx"
16#include "ROOT/RDataFrame.hxx"
17
18namespace ROOT {
19
20namespace RDF {
21
22// clang-format off
23////////////////////////////////////////////////////////////////////////////////////////////////
24/// \brief Factory method to create a Lazy RDataFrame.
25/// \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.
26// clang-format on
27template <typename... ColumnTypes>
28RDataFrame MakeLazyDataFrame(std::pair<std::string, RResultPtr<std::vector<ColumnTypes>>> &&... colNameProxyPairs)
29{
30 RDataFrame tdf(std::make_unique<RLazyDS<ColumnTypes...>>(
31 std::forward<std::pair<std::string, RResultPtr<std::vector<ColumnTypes>>>>(colNameProxyPairs)...));
32 return tdf;
33}
34
35} // ns RDF
36
37} // ns ROOT
38
39#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 high level interface for analyses of data stored in TTrees,...
RDataFrame MakeLazyDataFrame(std::pair< std::string, RResultPtr< std::vector< ColumnTypes > > > &&... colNameProxyPairs)
Factory method to create a Lazy RDataFrame.
Definition RLazyDS.hxx:28
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...