This example is the same as tree105_tree.C, but uses a class instead of a C-struct.
In this example, we are mapping a class to one of the Geant3 common blocks /gctrak/. In the real life, this common will be filled by Geant3 at each step and only the Tree Fill function should be called. The example emulates the Geant3 step routines.
to run the example, do to execute with native compiler:
Note that since IO is involved, ACLiC has to be invoked to create the dictionary of class Gctrak.
public:
}
};
{
}
{
TFile f(
"tree106.root",
"recreate");
TTree t2(
"t2",
"a Tree with data from a fake Geant3");
t2.Branch(
"track", &
gstep, 8000, 1);
for (
Int_t i=0;i <10000; i++) {
}
}
if (
gstep->gekin < 0.001)
}
}
{
t2->SetBranchAddress(
"track", &
gstep);
auto hdestep =
new TH1F(
"hdestep",
"destep in Mev", 100, 1
e-5, 3
e-5);
}
t2->Draw(
"vect[0]:vect[1]:vect[2]");
return;
gPad->GetViewer3D(
"ogl");
}
{
}
#define ClassDefOverride(name, id)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
winID h TVirtualViewer3D TVirtualGLPainter p
R__EXTERN TRandom * gRandom
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault, Int_t netopt=0)
Create / open a file.
1-D histogram with a float per channel (see TH1 documentation)
Mother of all ROOT objects.
virtual Double_t Gaus(Double_t mean=0, Double_t sigma=1)
Samples a random number from the standard Normal (Gaussian) Distribution with the given mean and sigm...
Double_t Rndm() override
Machine independent random number generator.
A TTree represents a columnar dataset.
Double_t Sqrt(Double_t x)
Returns the square root of x.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.
- Author
- Rene Brun
Definition in file tree106_tree.C.