20 std::pair<ULong64_t, ULong64_t> &&
newRange)
28 R__ASSERT(end >= begin &&
"end is less than begin in the passed entry range!");
52std::vector<std::pair<std::uint64_t, std::uint64_t>>
55 std::vector<std::pair<std::uint64_t, std::uint64_t>> boundaries{};
58 auto *
ds =
lm->GetDataSource();
61 throw std::runtime_error(
"Cannot retrieve cluster boundaries: no data source available.");
69 auto *tree =
ttreeds->GetTree();
70 assert(tree &&
"The internal TTree is not available, something went wrong.");
79 throw std::runtime_error(
"Cannot retrieve cluster boundaries: unsupported data source type.");
89 using FileResult = std::pair<std::vector<std::pair<std::uint64_t, std::uint64_t>>, std::uint64_t>;
94 std::vector<std::pair<std::uint64_t, std::uint64_t>>
clusters;
127 for (std::size_t idx = 0; idx <
nFiles; ++idx) {
135 for (
const auto &[start, end] :
clusters) {
159 return ds->GetLabel();
long long Long64_t
Portable signed long integer 8 bytes.
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
#define R__ASSERT(e)
Checks condition e and reports a fatal error if it's false.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
void SetEmptyEntryRange(std::pair< ULong64_t, ULong64_t > &&newRange)
void ChangeSpec(ROOT::RDF::Experimental::RDatasetSpec &&spec)
Changes the internal TTree held by the RLoopManager.
void ChangeBeginAndEndEntries(Long64_t begin, Long64_t end)
void SetTTreeLifeline(std::any lifeline)
The dataset specification for RDataFrame.
std::shared_ptr< ROOT::Detail::RDF::RLoopManager > fLoopManager
< The RLoopManager at the root of this computation graph. Never null.
RDataSource * GetDataSource() const
RDFDetail::RLoopManager * GetLoopManager() const
The public interface to the RDataFrame federation of classes.
The RDataSource implementation for RNTuple.
A pseudo container class which is a generator of indices.
This class provides a simple interface to execute the same task multiple times in parallel threads,...
void ChangeEmptyEntryRange(const ROOT::RDF::RNode &node, std::pair< ULong64_t, ULong64_t > &&newRange)
void ChangeSpec(const ROOT::RDF::RNode &node, ROOT::RDF::Experimental::RDatasetSpec &&spec)
Changes the input dataset specification of an RDataFrame.
std::string GetDataSourceLabel(const ROOT::RDF::RNode &node)
void TriggerRun(ROOT::RDF::RNode node)
Trigger the execution of an RDataFrame computation graph.
std::pair< std::vector< ROOT::Internal::RNTupleClusterBoundaries >, ROOT::NTupleSize_t > GetClustersAndEntries(std::string_view ntupleName, std::string_view location)
Retrieves the cluster boundaries and the number of entries for the input RNTuple.
void SetTTreeLifeline(ROOT::RDF::RNode &node, std::any lifeline)
std::vector< std::pair< std::uint64_t, std::uint64_t > > GetDatasetGlobalClusterBoundaries(const RNode &node)
Retrieve the cluster boundaries for each cluster in the dataset, across files, with a global offset.
void ChangeBeginAndEndEntries(const RNode &node, Long64_t begin, Long64_t end)
std::pair< std::vector< Long64_t >, Long64_t > GetClustersAndEntries(std::string_view treename, std::string_view path)
Returns the cluster boundaries and number of entries of the input tree.
std::vector< std::string > GetFileNamesFromTree(const TTree &tree)