]> git.uio.no Git - u/mrichter/AliRoot.git/blob - JETAN/AliJet.h
Clean-up mainly in includes.
[u/mrichter/AliRoot.git] / JETAN / AliJet.h
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                               */
6  
7  
8 //---------------------------------------------------------------------
9 // Jet class 
10 // Stores the output of a jet algorithm
11 // Author: jgcn@mda.cinvestav.mx
12 //---------------------------------------------------------------------
13  
14 #include <TObject.h>
15 #include <TArrayI.h>
16 #include <TArrayF.h>
17
18 class TClonesArray;
19 class TLorentzVector;
20  
21 class AliJet : public TObject
22 {
23  public:
24  
25   AliJet();
26   ~AliJet();
27
28   // Getters
29   Int_t GetNinput() const {return fNInput;}
30   Int_t GetNJets() const {return fNJets;}
31   TClonesArray* GetJets() const {return fJets;}
32   TArrayI GetInJet() const {return fInJet;}
33   TArrayI GetMultiplicities() const {return fMultiplicities;}
34   TArrayI GetNCells() const {return fNCells;}
35   TArrayF GetPtFromSignal() const {return fPtFromSignal;}
36   TArrayF GetEtaIn() const {return fEtaIn;}
37   TArrayF GetPhiIn() const {return fPhiIn;}
38   TArrayF GetPtIn() const {return fPtIn;}
39   Double_t GetEtAvg() const {return fEtAvg;}
40
41   TLorentzVector* GetJet(Int_t i);
42   Int_t GetMultiplicity(Int_t i) const;
43   Int_t GetNCell(Int_t i) const;
44   Double_t GetPx(Int_t i);
45   Double_t GetPy(Int_t i);
46   Double_t GetPz(Int_t i);
47   Double_t GetP(Int_t i);
48   Double_t GetE(Int_t i);
49   Double_t GetPt(Int_t i);
50   Double_t GetEta(Int_t i);
51   Double_t GetPhi(Int_t i);
52   Double_t GetTheta(Int_t i);
53   Double_t GetMass(Int_t i);
54    
55   // Setters
56   void SetNinput(Int_t i) {fNInput = i;}
57   void AddJet(Double_t px, Double_t py, Double_t pz, Double_t e);
58   void SetMultiplicities(Int_t* m);
59   void SetNCells(Int_t* n);
60   void SetPtFromSignal(Float_t* p);
61   void SetEtaIn(Float_t* eta);
62   void SetPhiIn(Float_t* phi);
63   void SetPtIn(Float_t* pt);
64   void SetInJet(Int_t* idx);
65   void SetEtAvg(Double_t et) { fEtAvg = et; }
66   
67   // others
68   Bool_t OutOfRange(Int_t i, const char *s) const;
69   void ClearJets(Option_t *option="");
70   void PrintJets();
71
72  protected:
73
74   AliJet(const AliJet& rJet);
75   AliJet& operator = (const AliJet& rhs);
76
77   Int_t fNInput;               // number of input objects
78   Int_t fNJets;                // number of jets found
79   Double_t fEtAvg;             // average background et per cell
80
81   TArrayI fInJet;              // i-input object belongs to k-jet 
82   TArrayI fMultiplicities;     // Multiplicity of each jet
83   TArrayI fNCells;             // Number of cells in jet
84   TArrayF fPtFromSignal;       // percentage of pt from signal
85   TClonesArray* fJets;         // 4-momenta of jets
86
87   TArrayF fEtaIn;              // Arrays of input particles kine:Eta
88   TArrayF fPhiIn;              // Arrays of input particles kine:Phi
89   TArrayF fPtIn;               // Arrays of input particles kine:Pt
90   
91   ClassDef(AliJet,1)
92 };
93  
94 #endif