]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALJetMicroDst.h
fgMCEvGen changed to fMCEvGen.
[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>
12#include <TFile.h>
13#include <TTree.h>
14#include <TH1.h>
15#include <TH2.h>
16
17class AliGenHijingEventHeader;
18class AliRun;
19class AliEMCALJetFinder;
20class TVector3;
21class TBrowser;
22
23class AliEMCALJetMicroDst: public TNamed {
24
25 private:
6ec7dfce 26 Int_t fDebug;
e8f1e037 27
6ec7dfce 28 public:
e8f1e037 29 TFile* fFile;
30 TTree* fTree;
31 TString fName;
32 TList* fListHist; //!
6ec7dfce 33 TString fFileName; // for convenience
e8f1e037 34
6ec7dfce 35 Float_t decone; //! for EMCAL
36 Float_t ptcone; //! for ch.particles
e8f1e037 37 // For partons after hard scattering
6ec7dfce 38 Int_t npart;
39 Float_t xpt[4]; //[npart]
40 Float_t xeta[4]; //[npart]
41 Float_t xphi[4]; //[npart]
e8f1e037 42 // Jet
6ec7dfce 43 Int_t njet;
44 Float_t jet[10]; //[njet]
45 Float_t jetal[10]; //[njet]
46 Float_t jphil[10]; //[njet]
47 Float_t jetaw[10]; //[njet]
48 Float_t jphiw[10]; //[njet]
e8f1e037 49 // Charge particle in jet ??
6ec7dfce 50 // eT in EMCAL itself - 24-jan-2003
51 Int_t ncell; // 96*144 =13824
52 Int_t idcell[13824]; //[ncell]
53 Float_t etcell[13824]; //[ncell] : de = det*sf
54 // eT in EMCAL grid for jet finder
55 Int_t ngrid; // 96*144 =13824
56 Int_t idgrid[13824]; //[ngrid]
57 Float_t etgrid[13824]; //[ngrid]
58 // charge particle which hit to EMCAL - 28-jan-2003
59 Int_t nchp;
60 Int_t pid[20000]; //[nchp]
61 Float_t ppt[20000]; //[nchp]
62 Float_t peta[20000]; //[nchp]
63 Float_t pphi[20000]; //[nchp]
e8f1e037 64
65 public:
66 AliEMCALJetMicroDst(char *name="jetMicroDst",
67 char *tit="jet Micro Dst for preparation of proposal");
68 virtual ~AliEMCALJetMicroDst();
6ec7dfce 69 Bool_t Create(TFile *file);
70 Bool_t Create(const char *fname);
71 void Fill(AliRun *run=0, AliEMCALJetFinder* jetFinder=0, Int_t modeFilling=0);
72 void FillPartons(AliGenHijingEventHeader *header);
73 void FillPartons();
74 void FillJets(AliEMCALJetFinder* jetFinder);
75 void FillEtForEMCAL(AliEMCALJetFinder* jetFinder);
76 void FillEtForGrid(AliEMCALJetFinder* jetFinder);
77 void FillArrays(TH2* hid, Int_t &n, Int_t *id, Float_t *et);
78 void FillChargeParticles(AliEMCALJetFinder* jetFinder);
79
80 void FillJetsControl(); // 18-jan-2003
e8f1e037 81
6ec7dfce 82 Bool_t Open(const Int_t mode=1) {return Open(DefineName(mode));} // *MENU*
83 Bool_t Open(const char *fname); // *MENU*
84 const Char_t* DefineName(const Int_t mode=1); // *MENU*
85 Bool_t Initialize(TFile *file);
86 void Print(Option_t* option="") const; // *MENU*
87 Int_t GetEntry(Int_t entry);
88 void Test();
89 Int_t GetNpart() {return npart;}
e8f1e037 90 Bool_t GetParton(Int_t i, Float_t& pt, Float_t& eta, Float_t& phi);
91 Bool_t GetParton(Int_t i, TVector3& vec);
6ec7dfce 92 Int_t GetNjet() {return njet;}
e8f1e037 93 Bool_t GetJet(Int_t i,Int_t mode, Float_t& pt,Float_t& eta,Float_t& phi);
94 Bool_t GetJet(Int_t i,Int_t mode, TVector3& vec);
95 static void FillVector(Float_t pt, Float_t eta, Float_t phi, TVector3& vec);
6ec7dfce 96 void GetEtaPhi(Int_t id, Double_t &eta, Double_t &phi);
97 TVector3& GetCellVector(Int_t i);
98 TVector3& GetGridVector(Int_t i);
99 // 13-apr-2003
100 Double_t GetSumInCone(TVector3 &jet, Int_t nc, Float_t *et,Float_t *eta,Float_t *phi, Double_t cellEtCut, Double_t rJet);
101 Double_t GetEmcalEtInCone(TVector3 &jet, Double_t cellEtCut=0.0, Double_t rJet=0.5);
102 Double_t GetTpcPtInCone(TVector3 &jet, Double_t cellEtCut=0.0, Double_t rJet=0.5);
103 Double_t GetSum(Int_t n, Float_t *ar, Double_t cut=0.0);
104 Double_t GetSumEmcal(Double_t cut=0.0) {return GetSum(ncell, etcell, cut);}
105 Double_t GetSumTpc(Double_t cut=0.0) {return GetSum(nchp, ppt, cut);}
e8f1e037 106
107 void SetDebug(Int_t flag) {fDebug = flag;}
108 Float_t GetDebug() const {return fDebug;}
109
110 TTree* GetTree() {return fTree;}
111 TFile* GetFile() {return fFile;}
112 void Close();
113
6ec7dfce 114 Bool_t IsPythiaDst();
e8f1e037 115 virtual Bool_t IsFolder() const;
116 virtual void Browse(TBrowser* b);
117
118 static TList *MoveHistsToList(char* name="List of Hist", Bool_t putToBrowser=kTRUE);
119
120 ClassDef(AliEMCALJetMicroDst,1) // Micro Dst for jet analysis
121};
122
123#endif // AliEMCALJETMICRODST_H
6ec7dfce 124/*
125What to do
1261. Common info about event
127 */