8 Vector3() : fX(0),fY(0),fZ(0) {}
10 Double_t x() {
return fX; }
11 Double_t y() {
return fY; }
12 Double_t z() {
return fZ; }
14 void SetXYZ(Double_t x, Double_t y, Double_t z) {
23 Vector3 *v =
new Vector3();
24 TFile *f =
new TFile(
"v3.root",
"recreate");
25 TTree *T =
new TTree(
"T",
"v3 Tree");
26 T->Branch(
"v3",&v,32000,1);
28 for (Int_t i=0;i<10000;i++) {
29 v->SetXYZ(r.Gaus(0,1),r.Landau(0,1),r.Gaus(100,10));
39 TFile *f =
new TFile(
"v3.root");
40 TTree *T = (TTree*)f->Get(
"T");
41 T->SetBranchAddress(
"v3",&v);
42 TH1F *h1 =
new TH1F(
"x",
"x component of Vector3",100,-3,3);
43 Long64_t nentries = T->GetEntries();
44 for (Long64_t i=0;i<nentries;i++) {
54 TFile *f =
new TFile(
"v3.root");
55 TTree *T = (TTree*)f->Get(
"T");
56 T->SetBranchAddress(
"v3",&v);
57 TBranch *by = T->GetBranch(
"fY");
58 TH1F *h2 =
new TH1F(
"y",
"y component of Vector3",100,-5,20);
59 Long64_t nentries = T->GetEntries();
60 for (Long64_t i=0;i<nentries;i++) {
68 TCanvas *c1 =
new TCanvas(
"c1",
"demo of Trees",10,10,600,800);