////////////////////////////////////////////////////////// // This class has been automatically generated on // Wed Jan 20 09:11:51 2010 by ROOT version 4.00/08 // from TTree JPsiTree/JPsi Tree // found on file: example.root ////////////////////////////////////////////////////////// #ifndef ExampleAna_h #define ExampleAna_h #include #include #include const Int_t kMaxtrig = 5; class ExampleAna { 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 run; Int_t evt; Int_t trig_; UInt_t trig_fUniqueID[kMaxtrig]; //[trig_] UInt_t trig_fBits[kMaxtrig]; //[trig_] Int_t trig_l3num[kMaxtrig]; //[trig_] TObjString trig_name[kMaxtrig]; Double_t m_jpsi; Double_t lxy_jpsi; Double_t dlxy_jpsi; Double_t d0_jpsi; Double_t chisq_jpsi; Double_t vx_jpsi; Double_t vy_jpsi; Double_t vz_jpsi; Int_t mu_hasCMU[2]; Int_t mu_hasCMX[2]; Int_t mu_hasCMP[2]; Int_t mu_nSVX[2]; Int_t mu_q[2]; Double_t mu_z0[2]; Double_t mu_d0[2]; Double_t mu_chi2[2]; Double_t mu_iso[2]; Double_t mu_pt[2]; Double_t mu_eta[2]; Double_t mu_phi[2]; Double_t mu_EM[2]; Double_t mu_HAD[2]; Double_t mu_CMUdx[2]; Double_t mu_CMUdphi[2]; Double_t mu_CMUdz[2]; Double_t mu_CMPdx[2]; Double_t mu_CMPdphi[2]; Double_t mu_CMXdx[2]; Double_t mu_CMXdphi[2]; Double_t mu_CMXdz[2]; Int_t mu_fiducial[2]; Int_t mu_taggable[2]; Int_t mu_tagged[2]; Int_t mu_nUsedVar[2]; Int_t mu_usedVar[2]; Double_t mu_like[2]; Double_t mu_pullCMUdx[2]; Double_t mu_pullCMUdz[2]; Double_t mu_pullCMUdphi[2]; Int_t mu_CMUhits[2]; Double_t mu_pullCMPdx[2]; Double_t mu_pullCMPdphi[2]; Double_t mu_pullCMXdx[2]; Double_t mu_pullCMXdz[2]; Double_t mu_pullCMXdphi[2]; // List of branches TBranch *b_run; //! TBranch *b_evt; //! TBranch *b_trig_; //! TBranch *b_trig_fUniqueID; //! TBranch *b_trig_fBits; //! TBranch *b_trig_l3num; //! TBranch *b_trig_name; //! TBranch *b_m_jpsi; //! TBranch *b_lxy_jpsi; //! TBranch *b_dlxy_jpsi; //! TBranch *b_d0_jpsi; //! TBranch *b_chisq_jpsi; //! TBranch *b_vx_jpsi; //! TBranch *b_vy_jpsi; //! TBranch *b_vz_jpsi; //! TBranch *b_mu_hasCMU; //! TBranch *b_mu_hasCMX; //! TBranch *b_mu_hasCMP; //! TBranch *b_mu_nSVX; //! TBranch *b_mu_q; //! TBranch *b_mu_z0; //! TBranch *b_mu_d0; //! TBranch *b_mu_chi2; //! TBranch *b_mu_iso; //! TBranch *b_mu_pt; //! TBranch *b_mu_eta; //! TBranch *b_mu_phi; //! TBranch *b_mu_EM; //! TBranch *b_mu_HAD; //! TBranch *b_mu_CMUdx; //! TBranch *b_mu_CMUdphi; //! TBranch *b_mu_CMUdz; //! TBranch *b_mu_CMPdx; //! TBranch *b_mu_CMPdphi; //! TBranch *b_mu_CMXdx; //! TBranch *b_mu_CMXdphi; //! TBranch *b_mu_CMXdz; //! TBranch *b_mu_fiducial; //! TBranch *b_mu_taggable; //! TBranch *b_mu_tagged; //! TBranch *b_mu_nUsedVar; //! TBranch *b_mu_usedVar; //! TBranch *b_mu_like; //! TBranch *b_mu_pullCMUdx; //! TBranch *b_mu_pullCMUdz; //! TBranch *b_mu_pullCMUdphi; //! TBranch *b_mu_CMUhits; //! TBranch *b_mu_pullCMPdx; //! TBranch *b_mu_pullCMPdphi; //! TBranch *b_mu_pullCMXdx; //! TBranch *b_mu_pullCMXdz; //! TBranch *b_mu_pullCMXdphi; //! ExampleAna(TTree *tree=0); ~ExampleAna(); Int_t Cut(Int_t entry); Int_t GetEntry(Int_t entry); Int_t LoadTree(Int_t entry); void Init(TTree *tree); void Loop(); Bool_t Notify(); void Show(Int_t entry = -1); }; #endif #ifdef ExampleAna_cxx ExampleAna::ExampleAna(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("example.root"); if (!f) { f = new TFile("example.root"); } tree = (TTree*)gDirectory->Get("JPsiTree"); } Init(tree); } ExampleAna::~ExampleAna() { if (!fChain) return; delete fChain->GetCurrentFile(); } Int_t ExampleAna::GetEntry(Int_t entry) { // Read contents of entry. if (!fChain) return 0; return fChain->GetEntry(entry); } Int_t ExampleAna::LoadTree(Int_t entry) { // Set the environment to read one entry if (!fChain) return -5; Int_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 ExampleAna::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("run",&run); fChain->SetBranchAddress("evt",&evt); fChain->SetBranchAddress("trig",&trig_); fChain->SetBranchAddress("trig.fUniqueID",trig_fUniqueID); fChain->SetBranchAddress("trig.fBits",trig_fBits); fChain->SetBranchAddress("trig.l3num",trig_l3num); fChain->SetBranchAddress("trig.name",trig_name); fChain->SetBranchAddress("m_jpsi",&m_jpsi); fChain->SetBranchAddress("lxy_jpsi",&lxy_jpsi); fChain->SetBranchAddress("dlxy_jpsi",&dlxy_jpsi); fChain->SetBranchAddress("d0_jpsi",&d0_jpsi); fChain->SetBranchAddress("chisq_jpsi",&chisq_jpsi); fChain->SetBranchAddress("vx_jpsi",&vx_jpsi); fChain->SetBranchAddress("vy_jpsi",&vy_jpsi); fChain->SetBranchAddress("vz_jpsi",&vz_jpsi); fChain->SetBranchAddress("mu_hasCMU",mu_hasCMU); fChain->SetBranchAddress("mu_hasCMX",mu_hasCMX); fChain->SetBranchAddress("mu_hasCMP",mu_hasCMP); fChain->SetBranchAddress("mu_nSVX",mu_nSVX); fChain->SetBranchAddress("mu_q",mu_q); fChain->SetBranchAddress("mu_z0",mu_z0); fChain->SetBranchAddress("mu_d0",mu_d0); fChain->SetBranchAddress("mu_chi2",mu_chi2); fChain->SetBranchAddress("mu_iso",mu_iso); fChain->SetBranchAddress("mu_pt",mu_pt); fChain->SetBranchAddress("mu_eta",mu_eta); fChain->SetBranchAddress("mu_phi",mu_phi); fChain->SetBranchAddress("mu_EM",mu_EM); fChain->SetBranchAddress("mu_HAD",mu_HAD); fChain->SetBranchAddress("mu_CMUdx",mu_CMUdx); fChain->SetBranchAddress("mu_CMUdphi",mu_CMUdphi); fChain->SetBranchAddress("mu_CMUdz",mu_CMUdz); fChain->SetBranchAddress("mu_CMPdx",mu_CMPdx); fChain->SetBranchAddress("mu_CMPdphi",mu_CMPdphi); fChain->SetBranchAddress("mu_CMXdx",mu_CMXdx); fChain->SetBranchAddress("mu_CMXdphi",mu_CMXdphi); fChain->SetBranchAddress("mu_CMXdz",mu_CMXdz); fChain->SetBranchAddress("mu_fiducial",mu_fiducial); fChain->SetBranchAddress("mu_taggable",mu_taggable); fChain->SetBranchAddress("mu_tagged",mu_tagged); fChain->SetBranchAddress("mu_nUsedVar",mu_nUsedVar); fChain->SetBranchAddress("mu_usedVar",mu_usedVar); fChain->SetBranchAddress("mu_like",mu_like); fChain->SetBranchAddress("mu_pullCMUdx",mu_pullCMUdx); fChain->SetBranchAddress("mu_pullCMUdz",mu_pullCMUdz); fChain->SetBranchAddress("mu_pullCMUdphi",mu_pullCMUdphi); fChain->SetBranchAddress("mu_CMUhits",mu_CMUhits); fChain->SetBranchAddress("mu_pullCMPdx",mu_pullCMPdx); fChain->SetBranchAddress("mu_pullCMPdphi",mu_pullCMPdphi); fChain->SetBranchAddress("mu_pullCMXdx",mu_pullCMXdx); fChain->SetBranchAddress("mu_pullCMXdz",mu_pullCMXdz); fChain->SetBranchAddress("mu_pullCMXdphi",mu_pullCMXdphi); Notify(); } Bool_t ExampleAna::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_run = fChain->GetBranch("run"); b_evt = fChain->GetBranch("evt"); b_trig_ = fChain->GetBranch("trig"); b_trig_fUniqueID = fChain->GetBranch("trig.fUniqueID"); b_trig_fBits = fChain->GetBranch("trig.fBits"); b_trig_l3num = fChain->GetBranch("trig.l3num"); b_trig_name = fChain->GetBranch("trig.name"); b_m_jpsi = fChain->GetBranch("m_jpsi"); b_lxy_jpsi = fChain->GetBranch("lxy_jpsi"); b_dlxy_jpsi = fChain->GetBranch("dlxy_jpsi"); b_d0_jpsi = fChain->GetBranch("d0_jpsi"); b_chisq_jpsi = fChain->GetBranch("chisq_jpsi"); b_vx_jpsi = fChain->GetBranch("vx_jpsi"); b_vy_jpsi = fChain->GetBranch("vy_jpsi"); b_vz_jpsi = fChain->GetBranch("vz_jpsi"); b_mu_hasCMU = fChain->GetBranch("mu_hasCMU"); b_mu_hasCMX = fChain->GetBranch("mu_hasCMX"); b_mu_hasCMP = fChain->GetBranch("mu_hasCMP"); b_mu_nSVX = fChain->GetBranch("mu_nSVX"); b_mu_q = fChain->GetBranch("mu_q"); b_mu_z0 = fChain->GetBranch("mu_z0"); b_mu_d0 = fChain->GetBranch("mu_d0"); b_mu_chi2 = fChain->GetBranch("mu_chi2"); b_mu_iso = fChain->GetBranch("mu_iso"); b_mu_pt = fChain->GetBranch("mu_pt"); b_mu_eta = fChain->GetBranch("mu_eta"); b_mu_phi = fChain->GetBranch("mu_phi"); b_mu_EM = fChain->GetBranch("mu_EM"); b_mu_HAD = fChain->GetBranch("mu_HAD"); b_mu_CMUdx = fChain->GetBranch("mu_CMUdx"); b_mu_CMUdphi = fChain->GetBranch("mu_CMUdphi"); b_mu_CMUdz = fChain->GetBranch("mu_CMUdz"); b_mu_CMPdx = fChain->GetBranch("mu_CMPdx"); b_mu_CMPdphi = fChain->GetBranch("mu_CMPdphi"); b_mu_CMXdx = fChain->GetBranch("mu_CMXdx"); b_mu_CMXdphi = fChain->GetBranch("mu_CMXdphi"); b_mu_CMXdz = fChain->GetBranch("mu_CMXdz"); b_mu_fiducial = fChain->GetBranch("mu_fiducial"); b_mu_taggable = fChain->GetBranch("mu_taggable"); b_mu_tagged = fChain->GetBranch("mu_tagged"); b_mu_nUsedVar = fChain->GetBranch("mu_nUsedVar"); b_mu_usedVar = fChain->GetBranch("mu_usedVar"); b_mu_like = fChain->GetBranch("mu_like"); b_mu_pullCMUdx = fChain->GetBranch("mu_pullCMUdx"); b_mu_pullCMUdz = fChain->GetBranch("mu_pullCMUdz"); b_mu_pullCMUdphi = fChain->GetBranch("mu_pullCMUdphi"); b_mu_CMUhits = fChain->GetBranch("mu_CMUhits"); b_mu_pullCMPdx = fChain->GetBranch("mu_pullCMPdx"); b_mu_pullCMPdphi = fChain->GetBranch("mu_pullCMPdphi"); b_mu_pullCMXdx = fChain->GetBranch("mu_pullCMXdx"); b_mu_pullCMXdz = fChain->GetBranch("mu_pullCMXdz"); b_mu_pullCMXdphi = fChain->GetBranch("mu_pullCMXdphi"); return kTRUE; } void ExampleAna::Show(Int_t entry) { // Print contents of entry. // If entry is not specified, print current entry if (!fChain) return; fChain->Show(entry); } Int_t ExampleAna::Cut(Int_t entry) { // This function may be called from Loop. // returns 1 if entry is accepted. // returns -1 otherwise. return 1; } #endif // #ifdef ExampleAna_cxx