Logo ROOT   6.18/05
Reference Guide
hsimpleReader.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_tree
3/// \notebook
4/// TTreeReader simplest example.
5///
6/// Read data from hsimple.root (written by hsimple.C)
7///
8/// \macro_code
9///
10/// \author Anders Eie, 2013
11
12#include "TFile.h"
13#include "TH1F.h"
14#include "TTreeReader.h"
15#include "TTreeReaderValue.h"
16
17void hsimpleReader() {
18 // Create a histogram for the values we read.
19 auto myHist = new TH1F("h1","ntuple",100,-4,4);
20
21 // Open the file containing the tree.
22 auto myFile = TFile::Open("hsimple.root");
23 if (!myFile || myFile->IsZombie()) {
24 return;
25 }
26 // Create a TTreeReader for the tree, for instance by passing the
27 // TTree's name and the TDirectory / TFile it is in.
28 TTreeReader myReader("ntuple", myFile);
29
30 // The branch "px" contains floats; access them as myPx.
31 TTreeReaderValue<Float_t> myPx(myReader, "px");
32 // The branch "py" contains floats, too; access those as myPy.
33 TTreeReaderValue<Float_t> myPy(myReader, "py");
34
35 // Loop over all entries of the TTree or TChain.
36 while (myReader.Next()) {
37 // Just access the data as if myPx and myPy were iterators (note the '*'
38 // in front of them):
39 myHist->Fill(*myPx + *myPy);
40 }
41
42 myHist->Draw();
43}
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseGeneralPurpose, Int_t netopt=0)
Create / open a file.
Definition: TFile.cxx:3980
1-D histogram with a float per channel (see TH1 documentation)}
Definition: TH1.h:571
A simple, robust and fast interface to read values from ROOT columnar datasets such as TTree,...
Definition: TTreeReader.h:44