Loading [MathJax]/extensions/tex2jax.js
Logo ROOT  
Reference Guide
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
circular.C File Reference

Detailed Description

View in nbviewer Open in SWAN Example of a circular Tree

Circular Trees are interesting in online real time environments to store the results of the last maxEntries events. for more info, see TTree::SetCircular. Circular trees must be memory resident.

void circular() {
auto T = new TTree("T","test circular buffers");
Float_t px,py,pz;
Double_t randomNum;
T->Branch("px",&px,"px/F");
T->Branch("py",&py,"px/F");
T->Branch("pz",&pz,"px/F");
T->Branch("random",&randomNum,"random/D");
T->Branch("i",&i,"i/s");
T->SetCircular(20000); //keep a maximum of 20000 entries in memory
for (i = 0; i < 65000; i++) {
r.Rannor(px,py);
pz = px*px + py*py;
randomNum = r.Rndm();
T->Fill();
}
T->Print();
}
ROOT::R::TRInterface & r
Definition: Object.C:4
unsigned short UShort_t
Definition: RtypesCore.h:38
double Double_t
Definition: RtypesCore.h:57
float Float_t
Definition: RtypesCore.h:55
This is the base class for the ROOT Random number generators.
Definition: TRandom.h:27
A TTree represents a columnar dataset.
Definition: TTree.h:78
double T(double x)
Definition: ChebyshevPol.h:34
Author
Rene Brun

Definition in file circular.C.