]>
Commit | Line | Data |
---|---|---|
99e5fe42 | 1 | #ifndef ALIJET_H |
2 | #define ALIJET_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
8838ab7a | 6 | |
99e5fe42 | 7 | |
8 | //--------------------------------------------------------------------- | |
9 | // Jet class | |
10 | // Stores the output of a jet algorithm | |
11 | // Author: jgcn@mda.cinvestav.mx | |
12 | //--------------------------------------------------------------------- | |
8838ab7a | 13 | |
14 | #include <Riostream.h> | |
15 | #include <vector> | |
99e5fe42 | 16 | |
17 | #include <TObject.h> | |
18 | #include <TArrayI.h> | |
365b766d | 19 | #include <TArrayF.h> |
99e5fe42 | 20 | |
21 | class TClonesArray; | |
22 | class TLorentzVector; | |
23 | ||
24 | class AliJet : public TObject | |
25 | { | |
26 | public: | |
27 | ||
28 | AliJet(); | |
29 | ~AliJet(); | |
30 | ||
31 | // Getters | |
8838ab7a | 32 | Int_t GetNinput() const { return fNInput; } |
33 | Int_t GetNJets() const {return fNJets;} | |
99e5fe42 | 34 | TClonesArray* GetJets() const {return fJets;} |
8838ab7a | 35 | TArrayI GetInJet() const {return fInJet;} |
36 | TArrayI GetMultiplicities() const {return fMultiplicities;} | |
37 | TArrayI GetNCells() const {return fNCells;} | |
38 | TArrayF GetPtFromSignal() const {return fPtFromSignal;} | |
39 | TArrayF GetEtaIn() const { return fEtaIn; } | |
40 | TArrayF GetPhiIn() const { return fPhiIn; } | |
41 | TArrayF GetPtIn() const { return fPtIn; } | |
42 | TArrayF GetPtChargedPtCutIn() const { return fPtChPtCutIn; } | |
43 | TArrayF GetEnTotChargedPtCutIn() const {return fEnTotChPtCutIn; } | |
44 | TArrayI GetVectorSizeIn() const { return fVectorSizeIn; } | |
45 | vector< vector<Float_t> > GetVectorPxIn() const { return fVPx; } | |
46 | vector< vector<Float_t> > GetVectorPyIn() const { return fVPy; } | |
47 | vector< vector<Float_t> > GetVectorPzIn() const { return fVPz; } | |
48 | TArrayI GetDetectorFlagIn() const { return fDetIn; } | |
49 | Double_t GetEtAvg() const { return fEtAvg; } | |
99e5fe42 | 50 | |
51 | TLorentzVector* GetJet(Int_t i); | |
8838ab7a | 52 | Int_t GetMultiplicity(Int_t i) const; |
53 | Int_t GetNCell(Int_t i) const; | |
99e5fe42 | 54 | Double_t GetPx(Int_t i); |
55 | Double_t GetPy(Int_t i); | |
56 | Double_t GetPz(Int_t i); | |
57 | Double_t GetP(Int_t i); | |
58 | Double_t GetE(Int_t i); | |
59 | Double_t GetPt(Int_t i); | |
60 | Double_t GetEta(Int_t i); | |
61 | Double_t GetPhi(Int_t i); | |
62 | Double_t GetTheta(Int_t i); | |
63 | Double_t GetMass(Int_t i); | |
64 | ||
65 | // Setters | |
66 | void SetNinput(Int_t i) {fNInput = i;} | |
67 | void AddJet(Double_t px, Double_t py, Double_t pz, Double_t e); | |
99e5fe42 | 68 | void SetMultiplicities(Int_t* m); |
83a444b1 | 69 | void SetNCells(Int_t* n); |
365b766d | 70 | void SetPtFromSignal(Float_t* p); |
83a444b1 | 71 | void SetEtaIn(Float_t* eta); |
72 | void SetPhiIn(Float_t* phi); | |
73 | void SetPtIn(Float_t* pt); | |
74 | void SetInJet(Int_t* idx); | |
8838ab7a | 75 | void SetPtChargedPtCutIn(Float_t* pt2T); |
76 | void SetEnTotChargedPtCutIn(Float_t* en2T); | |
77 | void SetVectorSizeIn(Int_t* vectT); | |
78 | void SetVectorPxIn(vector< vector<Float_t> > pxT); | |
79 | void SetVectorPyIn(vector< vector<Float_t> > pyT); | |
80 | void SetVectorPzIn(vector< vector<Float_t> > pzT); | |
81 | void SetDetectorFlagIn(Int_t* detT); | |
83a444b1 | 82 | void SetEtAvg(Double_t et) { fEtAvg = et; } |
99e5fe42 | 83 | // others |
84 | Bool_t OutOfRange(Int_t i, const char *s) const; | |
85 | void ClearJets(Option_t *option=""); | |
86 | void PrintJets(); | |
87 | ||
88 | protected: | |
89 | ||
1b7d5d7e | 90 | AliJet(const AliJet& rJet); |
91 | AliJet& operator = (const AliJet& rhs); | |
92 | ||
8838ab7a | 93 | Int_t fNInput; // number of input objects |
94 | Int_t fNJets; // number of jets found | |
95 | Double_t fEtAvg; // average background et per cell | |
96 | ||
97 | TArrayI fInJet; // i-input object belongs to k-jet | |
98 | TArrayI fMultiplicities; // Multiplicity of each jet | |
99 | TArrayI fNCells; // Number of cells in jet | |
100 | TArrayF fPtFromSignal; // percentage of pt from signal | |
101 | TClonesArray* fJets; // 4-momenta of jets | |
83a444b1 | 102 | |
8838ab7a | 103 | TArrayF fEtaIn; // Arrays of input particles kine:Eta |
104 | TArrayF fPhiIn; // Arrays of input particles kine:Phi | |
105 | TArrayF fPtIn; // Arrays of input particles kine:Pt | |
106 | TArrayF fPtChPtCutIn; // Arrays of input particles kin:Pt Charged with pt cut | |
107 | TArrayF fEnTotChPtCutIn; // Arrays of total energy with pt cut on charged + cut min on cell | |
108 | TArrayI fVectorSizeIn; // Arrays of number of charged tracks in each unitArray | |
109 | TArrayI fDetIn; // Arrays of detector type of each UnitArray | |
110 | vector< vector<Float_t> > fVPx; //|| | |
111 | vector< vector<Float_t> > fVPy; //|| | |
112 | vector< vector<Float_t> > fVPz; //|| | |
99e5fe42 | 113 | |
8838ab7a | 114 | ClassDef(AliJet,2) |
99e5fe42 | 115 | }; |
116 | ||
117 | #endif |