305 lines
11 KiB
C++
305 lines
11 KiB
C++
//////////////////////////////////////////////////////////
|
|
// This class has been automatically generated on
|
|
// Fri Oct 26 16:55:39 2007 by ROOT version 5.08/00
|
|
// from TTree t1/a simple Tree with simple variables
|
|
// found on file: musr_200003.root
|
|
//////////////////////////////////////////////////////////
|
|
|
|
#ifndef BeamEnv_h
|
|
#define BeamEnv_h
|
|
|
|
#include <TROOT.h>
|
|
#include <TChain.h>
|
|
#include <TFile.h>
|
|
|
|
class BeamEnv {
|
|
public :
|
|
TTree *fChain; //!pointer to the analyzed TTree or TChain
|
|
Int_t fCurrent; //!current Tree number in a TChain
|
|
|
|
// Declaration of leave types
|
|
Int_t runID;
|
|
Int_t eventID;
|
|
Double_t BFieldAtDecay_Bx;
|
|
Double_t BFieldAtDecay_By;
|
|
Double_t BFieldAtDecay_Bz;
|
|
Double_t BFieldAtDecay_B3;
|
|
Double_t BFieldAtDecay_B4;
|
|
Double_t BFieldAtDecay_B5;
|
|
Double_t muIniPosX;
|
|
Double_t muIniPosY;
|
|
Double_t muIniPosZ;
|
|
Double_t muIniMomX;
|
|
Double_t muIniMomY;
|
|
Double_t muIniMomZ;
|
|
Double_t muIniPolX;
|
|
Double_t muIniPolY;
|
|
Double_t muIniPolZ;
|
|
Int_t muDecayDetID;
|
|
Double_t muDecayPosX;
|
|
Double_t muDecayPosY;
|
|
Double_t muDecayPosZ;
|
|
Double_t muDecayTime;
|
|
Double_t muDecayPolX;
|
|
Double_t muDecayPolY;
|
|
Double_t muDecayPolZ;
|
|
Double_t muTargetTime;
|
|
Double_t muTargetPolX;
|
|
Double_t muTargetPolY;
|
|
Double_t muTargetPolZ;
|
|
Double_t fieldValue;
|
|
Int_t det_n;
|
|
Int_t det_ID[50]; //[det_n]
|
|
Double_t det_edep[50]; //[det_n]
|
|
Int_t det_nsteps[50]; //[det_n]
|
|
Double_t det_length[50]; //[det_n]
|
|
Double_t det_time_start[50]; //[det_n]
|
|
Double_t det_time_end[50]; //[det_n]
|
|
Double_t det_x[50]; //[det_n]
|
|
Double_t det_y[50]; //[det_n]
|
|
Double_t det_z[50]; //[det_n]
|
|
Int_t save_n;
|
|
Int_t save_detID[10]; //[save_n]
|
|
Int_t save_particleID[10]; //[save_n]
|
|
Double_t save_ke[10]; //[save_n]
|
|
Double_t save_x[10]; //[save_n]
|
|
Double_t save_y[10]; //[save_n]
|
|
Double_t save_z[10]; //[save_n]
|
|
Double_t save_px[10]; //[save_n]
|
|
Double_t save_py[10]; //[save_n]
|
|
Double_t save_pz[10]; //[save_n]
|
|
|
|
|
|
// List of branches
|
|
TBranch *b_runID; //!
|
|
TBranch *b_eventID; //!
|
|
TBranch *b_BFieldAtDecay; //!
|
|
TBranch *b_muIniPosX; //!
|
|
TBranch *b_muIniPosY; //!
|
|
TBranch *b_muIniPosZ; //!
|
|
TBranch *b_muIniMomX; //!
|
|
TBranch *b_muIniMomY; //!
|
|
TBranch *b_muIniMomZ; //!
|
|
TBranch *b_muIniPolX; //!
|
|
TBranch *b_muIniPolY; //!
|
|
TBranch *b_muIniPolZ; //!
|
|
TBranch *b_muDecayDetID; //!
|
|
TBranch *b_muDecayPosX; //!
|
|
TBranch *b_muDecayPosY; //!
|
|
TBranch *b_muDecayPosZ; //!
|
|
TBranch *b_muDecayTime; //!
|
|
TBranch *b_muDecayPolX; //!
|
|
TBranch *b_muDecayPolY; //!
|
|
TBranch *b_muDecayPolZ; //!
|
|
TBranch *b_muTargetTime; //!
|
|
TBranch *b_muTargetPolX; //!
|
|
TBranch *b_muTargetPolY; //!
|
|
TBranch *b_muTargetPolZ; //!
|
|
TBranch *b_fieldValue; //!
|
|
TBranch *b_det_n; //!
|
|
TBranch *b_det_ID; //!
|
|
TBranch *b_det_edep; //!
|
|
TBranch *b_det_nsteps; //!
|
|
TBranch *b_det_length; //!
|
|
TBranch *b_det_time_start; //!
|
|
TBranch *b_det_time_end; //!
|
|
TBranch *b_det_x; //!
|
|
TBranch *b_det_y; //!
|
|
TBranch *b_det_z; //!
|
|
TBranch *b_save_n; //!
|
|
TBranch *b_save_detID; //!
|
|
TBranch *b_save_particleID; //!
|
|
TBranch *b_save_ke; //!
|
|
TBranch *b_save_x; //!
|
|
TBranch *b_save_y; //!
|
|
TBranch *b_save_z; //!
|
|
TBranch *b_save_px; //!
|
|
TBranch *b_save_py; //!
|
|
TBranch *b_save_pz; //!
|
|
|
|
|
|
BeamEnv(TTree *tree=0);
|
|
virtual ~BeamEnv();
|
|
virtual Int_t Cut(Long64_t entry);
|
|
virtual Int_t GetEntry(Long64_t entry);
|
|
virtual Long64_t LoadTree(Long64_t entry);
|
|
virtual void Init(TTree *tree);
|
|
virtual void Loop();
|
|
virtual Bool_t Notify();
|
|
virtual void Show(Long64_t entry = -1);
|
|
};
|
|
|
|
#endif
|
|
|
|
#ifdef BeamEnv_cxx
|
|
BeamEnv::BeamEnv(TTree *tree)
|
|
{
|
|
// if parameter tree is not specified (or zero), connect the file
|
|
// used to generate this class and read the Tree.
|
|
if (tree == 0) {
|
|
//TFile *f = (TFile*)gROOT->GetListOfFiles()->FindObject("data/lem4_1049.root");
|
|
//if (!f) {
|
|
//f = new TFile("musr_200003.root");
|
|
// f = new TFile("data/lem4_1051.root"); //1049
|
|
//}
|
|
tree = (TTree*)gDirectory->Get("t1");
|
|
|
|
}
|
|
Init(tree);
|
|
}
|
|
|
|
BeamEnv::~BeamEnv()
|
|
{
|
|
if (!fChain) return;
|
|
delete fChain->GetCurrentFile();
|
|
}
|
|
|
|
Int_t BeamEnv::GetEntry(Long64_t entry)
|
|
{
|
|
// Read contents of entry.
|
|
if (!fChain) return 0;
|
|
return fChain->GetEntry(entry);
|
|
}
|
|
Long64_t BeamEnv::LoadTree(Long64_t entry)
|
|
{
|
|
// Set the environment to read one entry
|
|
if (!fChain) return -5;
|
|
Long64_t centry = fChain->LoadTree(entry);
|
|
if (centry < 0) return centry;
|
|
if (fChain->IsA() != TChain::Class()) return centry;
|
|
TChain *chain = (TChain*)fChain;
|
|
if (chain->GetTreeNumber() != fCurrent) {
|
|
fCurrent = chain->GetTreeNumber();
|
|
Notify();
|
|
}
|
|
return centry;
|
|
}
|
|
|
|
void BeamEnv::Init(TTree *tree)
|
|
{
|
|
// The Init() function is called when the selector needs to initialize
|
|
// a new tree or chain. Typically here the branch addresses of the tree
|
|
// will be set. It is normaly not necessary to make changes to the
|
|
// generated code, but the routine can be extended by the user if needed.
|
|
// Init() will be called many times when running with PROOF.
|
|
|
|
// Set branch addresses
|
|
if (tree == 0) return;
|
|
fChain = tree;
|
|
fCurrent = -1;
|
|
fChain->SetMakeClass(1);
|
|
|
|
fChain->SetBranchAddress("runID",&runID);
|
|
fChain->SetBranchAddress("eventID",&eventID);
|
|
fChain->SetBranchAddress("BFieldAtDecay",&BFieldAtDecay_Bx);
|
|
fChain->SetBranchAddress("muIniPosX",&muIniPosX);
|
|
fChain->SetBranchAddress("muIniPosY",&muIniPosY);
|
|
fChain->SetBranchAddress("muIniPosZ",&muIniPosZ);
|
|
fChain->SetBranchAddress("muIniMomX",&muIniMomX);
|
|
fChain->SetBranchAddress("muIniMomY",&muIniMomY);
|
|
fChain->SetBranchAddress("muIniMomZ",&muIniMomZ);
|
|
fChain->SetBranchAddress("muIniPolX",&muIniPolX);
|
|
fChain->SetBranchAddress("muIniPolY",&muIniPolY);
|
|
fChain->SetBranchAddress("muIniPolZ",&muIniPolZ);
|
|
fChain->SetBranchAddress("muDecayDetID",&muDecayDetID);
|
|
fChain->SetBranchAddress("muDecayPosX",&muDecayPosX);
|
|
fChain->SetBranchAddress("muDecayPosY",&muDecayPosY);
|
|
fChain->SetBranchAddress("muDecayPosZ",&muDecayPosZ);
|
|
fChain->SetBranchAddress("muDecayTime",&muDecayTime);
|
|
fChain->SetBranchAddress("muDecayPolX",&muDecayPolX);
|
|
fChain->SetBranchAddress("muDecayPolY",&muDecayPolY);
|
|
fChain->SetBranchAddress("muDecayPolZ",&muDecayPolZ);
|
|
fChain->SetBranchAddress("muTargetTime",&muTargetTime);
|
|
fChain->SetBranchAddress("muTargetPolX",&muTargetPolX);
|
|
fChain->SetBranchAddress("muTargetPolY",&muTargetPolY);
|
|
fChain->SetBranchAddress("muTargetPolZ",&muTargetPolZ);
|
|
fChain->SetBranchAddress("fieldValue",&fieldValue);
|
|
fChain->SetBranchAddress("det_n",&det_n);
|
|
fChain->SetBranchAddress("det_ID",det_ID);
|
|
fChain->SetBranchAddress("det_edep",det_edep);
|
|
fChain->SetBranchAddress("det_nsteps",det_nsteps);
|
|
fChain->SetBranchAddress("det_length",det_length);
|
|
fChain->SetBranchAddress("det_time_start",det_time_start);
|
|
fChain->SetBranchAddress("det_time_end",det_time_end);
|
|
fChain->SetBranchAddress("det_x",det_x);
|
|
fChain->SetBranchAddress("det_y",det_y);
|
|
fChain->SetBranchAddress("det_z",det_z);
|
|
fChain->SetBranchAddress("save_n", &save_n, &b_save_n);
|
|
fChain->SetBranchAddress("save_detID", save_detID, &b_save_detID);
|
|
fChain->SetBranchAddress("save_particleID", save_particleID, &b_save_particleID);
|
|
fChain->SetBranchAddress("save_ke", save_ke, &b_save_ke);
|
|
fChain->SetBranchAddress("save_x", save_x, &b_save_x);
|
|
fChain->SetBranchAddress("save_y", save_y, &b_save_y);
|
|
fChain->SetBranchAddress("save_z", save_z, &b_save_z);
|
|
fChain->SetBranchAddress("save_px", save_px, &b_save_px);
|
|
fChain->SetBranchAddress("save_py", save_py, &b_save_py);
|
|
fChain->SetBranchAddress("save_pz", save_pz, &b_save_pz);
|
|
|
|
Notify();
|
|
}
|
|
|
|
Bool_t BeamEnv::Notify()
|
|
{
|
|
// The Notify() function is called when a new file is opened. This
|
|
// can be either for a new TTree in a TChain or when when a new TTree
|
|
// is started when using PROOF. Typically here the branch pointers
|
|
// will be retrieved. It is normaly not necessary to make changes
|
|
// to the generated code, but the routine can be extended by the
|
|
// user if needed.
|
|
|
|
// Get branch pointers
|
|
b_runID = fChain->GetBranch("runID");
|
|
b_eventID = fChain->GetBranch("eventID");
|
|
b_BFieldAtDecay = fChain->GetBranch("BFieldAtDecay");
|
|
b_muIniPosX = fChain->GetBranch("muIniPosX");
|
|
b_muIniPosY = fChain->GetBranch("muIniPosY");
|
|
b_muIniPosZ = fChain->GetBranch("muIniPosZ");
|
|
b_muIniMomX = fChain->GetBranch("muIniMomX");
|
|
b_muIniMomY = fChain->GetBranch("muIniMomY");
|
|
b_muIniMomZ = fChain->GetBranch("muIniMomZ");
|
|
b_muIniPolX = fChain->GetBranch("muIniPolX");
|
|
b_muIniPolY = fChain->GetBranch("muIniPolY");
|
|
b_muIniPolZ = fChain->GetBranch("muIniPolZ");
|
|
b_muDecayDetID = fChain->GetBranch("muDecayDetID");
|
|
b_muDecayPosX = fChain->GetBranch("muDecayPosX");
|
|
b_muDecayPosY = fChain->GetBranch("muDecayPosY");
|
|
b_muDecayPosZ = fChain->GetBranch("muDecayPosZ");
|
|
b_muDecayTime = fChain->GetBranch("muDecayTime");
|
|
b_muDecayPolX = fChain->GetBranch("muDecayPolX");
|
|
b_muDecayPolY = fChain->GetBranch("muDecayPolY");
|
|
b_muDecayPolZ = fChain->GetBranch("muDecayPolZ");
|
|
b_muTargetTime = fChain->GetBranch("muTargetTime");
|
|
b_muTargetPolX = fChain->GetBranch("muTargetPolX");
|
|
b_muTargetPolY = fChain->GetBranch("muTargetPolY");
|
|
b_muTargetPolZ = fChain->GetBranch("muTargetPolZ");
|
|
b_fieldValue = fChain->GetBranch("fieldValue");
|
|
b_det_n = fChain->GetBranch("det_n");
|
|
b_det_ID = fChain->GetBranch("det_ID");
|
|
b_det_edep = fChain->GetBranch("det_edep");
|
|
b_det_nsteps = fChain->GetBranch("det_nsteps");
|
|
b_det_length = fChain->GetBranch("det_length");
|
|
b_det_time_start = fChain->GetBranch("det_time_start");
|
|
b_det_time_end = fChain->GetBranch("det_time_end");
|
|
b_det_x = fChain->GetBranch("det_x");
|
|
b_det_y = fChain->GetBranch("det_y");
|
|
b_det_z = fChain->GetBranch("det_z");
|
|
|
|
return kTRUE;
|
|
}
|
|
|
|
void BeamEnv::Show(Long64_t entry)
|
|
{
|
|
// Print contents of entry.
|
|
// If entry is not specified, print current entry
|
|
if (!fChain) return;
|
|
fChain->Show(entry);
|
|
}
|
|
Int_t BeamEnv::Cut(Long64_t entry)
|
|
{
|
|
// This function may be called from Loop.
|
|
// returns 1 if entry is accepted.
|
|
// returns -1 otherwise.
|
|
return 1;
|
|
}
|
|
#endif // #ifdef BeamEnv_cxx
|