]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALJetMicroDst.h
Fixing violations
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALJetMicroDst.h
CommitLineData
e8f1e037 1#ifndef ALIEMCALJETMICRODST_H
2#define ALIEMCALJETMICRODST_H
3/* Copyright(c) 1998-2002, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8//_________________________________________________________________________
9//
10//*-- Author: Aleksei Pavlinov (WSU)
11#include <TNamed.h>
2f2f4d2b 12class TFile;
13class TTree;
14class TH1;
15class TH1F;
16class TH2F;
17class TH2;
e8f1e037 18
19class AliGenHijingEventHeader;
20class AliRun;
21class AliEMCALJetFinder;
22class TVector3;
23class TBrowser;
24
25class AliEMCALJetMicroDst: public TNamed {
26
e8f1e037 27
28 public:
29 AliEMCALJetMicroDst(char *name="jetMicroDst",
30 char *tit="jet Micro Dst for preparation of proposal");
31 virtual ~AliEMCALJetMicroDst();
6ec7dfce 32 Bool_t Create(TFile *file);
33 Bool_t Create(const char *fname);
34 void Fill(AliRun *run=0, AliEMCALJetFinder* jetFinder=0, Int_t modeFilling=0);
35 void FillPartons(AliGenHijingEventHeader *header);
36 void FillPartons();
37 void FillJets(AliEMCALJetFinder* jetFinder);
38 void FillEtForEMCAL(AliEMCALJetFinder* jetFinder);
39 void FillEtForGrid(AliEMCALJetFinder* jetFinder);
40 void FillArrays(TH2* hid, Int_t &n, Int_t *id, Float_t *et);
41 void FillChargeParticles(AliEMCALJetFinder* jetFinder);
42
43 void FillJetsControl(); // 18-jan-2003
e8f1e037 44
6ec7dfce 45 Bool_t Open(const Int_t mode=1) {return Open(DefineName(mode));} // *MENU*
46 Bool_t Open(const char *fname); // *MENU*
47 const Char_t* DefineName(const Int_t mode=1); // *MENU*
48 Bool_t Initialize(TFile *file);
49 void Print(Option_t* option="") const; // *MENU*
50 Int_t GetEntry(Int_t entry);
51 void Test();
2f2f4d2b 52 Int_t GetNpart() {return fnpart;}
e8f1e037 53 Bool_t GetParton(Int_t i, Float_t& pt, Float_t& eta, Float_t& phi);
54 Bool_t GetParton(Int_t i, TVector3& vec);
2f2f4d2b 55 Int_t GetNjet() {return fnjet;}
e8f1e037 56 Bool_t GetJet(Int_t i,Int_t mode, Float_t& pt,Float_t& eta,Float_t& phi);
57 Bool_t GetJet(Int_t i,Int_t mode, TVector3& vec);
58 static void FillVector(Float_t pt, Float_t eta, Float_t phi, TVector3& vec);
6ec7dfce 59 void GetEtaPhi(Int_t id, Double_t &eta, Double_t &phi);
60 TVector3& GetCellVector(Int_t i);
61 TVector3& GetGridVector(Int_t i);
62 // 13-apr-2003
63 Double_t GetSumInCone(TVector3 &jet, Int_t nc, Float_t *et,Float_t *eta,Float_t *phi, Double_t cellEtCut, Double_t rJet);
64 Double_t GetEmcalEtInCone(TVector3 &jet, Double_t cellEtCut=0.0, Double_t rJet=0.5);
65 Double_t GetTpcPtInCone(TVector3 &jet, Double_t cellEtCut=0.0, Double_t rJet=0.5);
66 Double_t GetSum(Int_t n, Float_t *ar, Double_t cut=0.0);
2f2f4d2b 67 Double_t GetSumEmcal(Double_t cut=0.0) {return GetSum(fncell, fetcell, cut);}
68 Double_t GetSumTpc(Double_t cut=0.0) {return GetSum(fnchp, fppt, cut);}
e8f1e037 69
70 void SetDebug(Int_t flag) {fDebug = flag;}
71 Float_t GetDebug() const {return fDebug;}
72
73 TTree* GetTree() {return fTree;}
74 TFile* GetFile() {return fFile;}
75 void Close();
76
6ec7dfce 77 Bool_t IsPythiaDst();
e8f1e037 78 virtual Bool_t IsFolder() const;
79 virtual void Browse(TBrowser* b);
80
81 static TList *MoveHistsToList(char* name="List of Hist", Bool_t putToBrowser=kTRUE);
2f2f4d2b 82 private:
83
84 Float_t fpphi[20000]; //[nchp]
85 Int_t fDebug; // debug flag
86 TFile* fFile; // filename
87 TTree* fTree; // Tree pointer
88 TString fName; // name
89 TList* fListHist; //!
90 TString fFileName; // for convenience
91
92 Float_t fdecone; //! for EMCAL
93 Float_t fptcone; //! for ch.particles
94 // For partons after hard scattering
95 Int_t fnpart; //npartons
96 Float_t fxpt[4]; //[npart]
97 Float_t fxeta[4]; //[npart]
98 Float_t fxphi[4]; //[npart]
99 // Jet
100 Int_t fnjet; // number of jets
101 Float_t fjet[10]; //[njet]
102 Float_t fjetal[10]; //[njet]
103 Float_t fjphil[10]; //[njet]
104 Float_t fjetaw[10]; //[njet]
105 Float_t fjphiw[10]; //[njet]
106 // Charge particle in jet ??
107 // eT in EMCAL itself - 24-jan-2003
108 Int_t fncell; // 96*144 =13824
109 Int_t fidcell[13824]; //[ncell]
110 Float_t fetcell[13824]; //[ncell] : de = det*sf
111 // eT in EMCAL grid for jet finder
112 Int_t fngrid; // 96*144 =13824
113 Int_t fidgrid[13824]; //[ngrid]
114 Float_t fetgrid[13824]; //[ngrid]
115 // charge particle which hit to EMCAL - 28-jan-2003
116 Int_t fnchp; //number of charged particles
117 Int_t fpid[20000]; //[nchp]
118 Float_t fppt[20000]; //[nchp]
119 Float_t fpeta[20000]; //[nchp]
120 TH1F* hPtPart; //hist
121 TH1F* hNJet; //hist
122 TH1F* hPtJet; //hist
123 TH2F* hEtaPhiPart; //hist
124 TH2F* hEtaPhiJet; //hist
125 TH1F* hNcell; //hist
126 TH1F* hCellId; //hist
127 TH1F* hCellEt; //hist
128
129 TH1F* hSumEt; //hist
130 TH1F* hNgrid; //hist
131 TH1F* hGridId; //hist
132 TH1F* hGridEt; //hist
133 TH1F* hSumEtGrForJF; //hist
134
e8f1e037 135
2f2f4d2b 136 ClassDef(AliEMCALJetMicroDst,2) // Micro Dst for jet analysis
e8f1e037 137};
138
139#endif // AliEMCALJETMICRODST_H
6ec7dfce 140/*
141What to do
1421. Common info about event
143 */