]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PHOS/AliPHOSJet.h
ACORDEv1 is now the default
[u/mrichter/AliRoot.git] / PHOS / AliPHOSJet.h
CommitLineData
0bc3b8ed 1#ifndef ALIPHOSJET_H
2#define ALIPHOSJET_H
5240525e 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
0bc3b8ed 6/* $Id$ */
7
5240525e 8//_________________________________________________________________________
9// Base Class for Jets in ALICE
10//
11//*-- Author: D.Peressounko
12
13
14// --- ROOT system ---
15#include "TObject.h"
16class TParticle ;
17#include "TArrayI.h"
18
19// --- Standard library ---
20
21// --- AliRoot header files ---
22
23class AliPHOSJet : public TObject {
24
25public:
26 AliPHOSJet() ; // ctor
3f7dbdb7 27 AliPHOSJet(const AliPHOSJet & jet);
28
5240525e 29 virtual ~AliPHOSJet() ;
30
fc7e2f43 31 void AddDigit(Double_t e, Double_t eta, Double_t phi, Int_t index) ;
32 void AddParticle(const TParticle * p, Int_t index) ;
5240525e 33 //adds particle p to jet. index: index of p in list of all particles in event
34
35 Double_t DistanceToJet(const TParticle *p)const ;
36 //calculates distance to Jet in accordance with some scheam:
37 //geometrical, inv mass, etc
38
39 void CalculateAll(void) ;
40 //calculate final Energy, Eta & phi from intermediate ones.
41
42 const Int_t * Indexs(Int_t & nIndexs)const{nIndexs = fNpart; return fList->GetArray() ;}
43
44 Bool_t IsInCone(const TParticle * p)const ;
fc7e2f43 45 Bool_t IsInCone(Double_t eta, Double_t phi)const ;
5240525e 46 Bool_t AcceptConeDeviation(const TParticle *p)const ;
fc7e2f43 47 Bool_t AcceptConeDeviation(Double_t e, Double_t eta, Double_t phi)const ;
5240525e 48
49 void SetConeRadius(Double_t r){fConeRad = r ;} ;
50 void SetMaxConeMove(Double_t max = 0.15){fMaxConeMove = max ;} ;
51 void SetMinConeMove(Double_t min = 0.05){fMinConeMove = min ;} ;
52
53 Double_t Energy(void)const{if(fEnergy) return fEnergy ;
54 else return fSumEnergy ;}
55 Double_t Eta(void)const{if(fEta) return fEta;
56 else return fSumEta/fSumEnergy ;}
57 Double_t Phi(void)const{if(fPhi) return fPhi;
58 else return fSumPhi/fSumEnergy ;}
59 Int_t GetNJetParticles(void)const{return fNpart;}
60
702ab87e 61 void Print(const Option_t * = "") const ;
8c140292 62 AliPHOSJet & operator = (const AliPHOSJet & /*rvalue*/) {
0bc3b8ed 63 // assignement operator requested by coding convention but not needed
64 Fatal("operator =", "not implemented") ; return *this ;
65 }
5240525e 66
67private:
68 Int_t fNpart ; //Number of particles in jet
69 TArrayI * fList ; //Indexes of particles in list
70
0bc3b8ed 71 Double_t fConeRad ; // Cone radius
72 Double_t fMaxConeMove ;// Maximum Cone movement
73 Double_t fMinConeMove ;// Minimum Cone movement
5240525e 74 Double_t fSumEnergy ; //! Intermediate energy
75 Double_t fSumEta ; //! Intermediate eta
76 Double_t fSumPhi ; //! Intermediate phi
77 Double_t fEnergy ; //Energy of the jet
78 Double_t fEta ; //Eta directtion of the jet
79 Double_t fPhi ; //Phi direction of the jet
80 Double_t fLEnergy ; //Energy of Leading particle of jet
81 Double_t fLEta ; //Eta directtion of Leading particle of the jet
82 Double_t fLPhi ; //Phi direction of leading particles of the jet
83
84 ClassDef(AliPHOSJet,1) // description
85
86};
87
0bc3b8ed 88//////////////////////////////////////////////////////
89
90#endif // ALIPHOSJET_H
91
92
93
94
95