]>
Commit | Line | Data |
---|---|---|
1c5acb87 | 1 | #ifndef ALIAODPWG4PARTICLECORRELATION_H |
2 | #define ALIAODPWG4PARTICLECORRELATION_H | |
3 | /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id: AliAODPWG4ParticleCorrelation.h $ */ | |
7 | ||
8 | //------------------------------------------------------------------------- | |
9 | // Copy of AOD photon class, adapted for particle identification | |
10 | // and correlations analysis | |
11 | // Author: Yves Schutz, CERN, Gustavo Conesa, INFN | |
12 | //------------------------------------------------------------------------- | |
13 | ||
14 | //-- ROOT system -- | |
15 | ||
16 | //-- Analysis system | |
17 | #include "AliAODJet.h" | |
18 | #include "AliAODPWG4Particle.h" | |
19 | ||
20 | class AliAODPWG4ParticleCorrelation : public AliAODPWG4Particle { | |
21 | ||
22 | public: | |
23 | AliAODPWG4ParticleCorrelation(); | |
24 | AliAODPWG4ParticleCorrelation(Double_t px, Double_t py, Double_t pz, Double_t e); | |
25 | AliAODPWG4ParticleCorrelation(TLorentzVector & p); | |
26 | AliAODPWG4ParticleCorrelation(AliAODPWG4Particle & p); | |
27 | ||
28 | virtual ~AliAODPWG4ParticleCorrelation(); | |
29 | AliAODPWG4ParticleCorrelation(const AliAODPWG4ParticleCorrelation& photon); | |
30 | AliAODPWG4ParticleCorrelation& operator=(const AliAODPWG4ParticleCorrelation& photon); | |
31 | ||
691bdd02 | 32 | virtual Bool_t IsIsolated() const { return fIsolated ;} |
1c5acb87 | 33 | virtual void SetIsolated(Bool_t iso) {fIsolated = iso ;} |
34 | ||
35 | virtual TRefArray* GetRefTracks() const { return fRefTracks;} | |
36 | virtual void AddTrack(TObject *tr) {fRefTracks->Add(tr);} | |
37 | virtual TObject* GetTrack(Int_t i) const { return fRefTracks->At(i);} | |
38 | ||
39 | virtual TRefArray* GetRefClusters() const { return fRefClusters;} | |
40 | virtual void AddCluster(TObject *tr) {fRefClusters->Add(tr);} | |
41 | virtual TObject* GetCluster(Int_t i) const { return fRefClusters->At(i);} | |
42 | ||
43 | virtual TRefArray* GetRefIsolationConeTracks() const { return fRefIsolationConeTracks;} | |
44 | virtual void AddIsolationConeTrack(TObject *tr) {fRefIsolationConeTracks->Add(tr);} | |
45 | virtual TObject* GetIsolationConeTrack(Int_t i) const { return fRefIsolationConeTracks->At(i);} | |
46 | ||
47 | virtual TRefArray* GetRefIsolationConeClusters() const { return fRefIsolationConeClusters;} | |
48 | virtual void AddIsolationConeCluster(TObject *tr) {fRefIsolationConeClusters->Add(tr);} | |
49 | virtual TObject* GetIsolationConeCluster(Int_t i) const { return fRefIsolationConeClusters->At(i);} | |
50 | ||
51 | virtual TRefArray* GetRefBackgroundTracks() const { return fRefBackgroundTracks;} | |
52 | virtual void AddBackgroundTrack(TObject *tr) {fRefBackgroundTracks->Add(tr);} | |
53 | virtual TObject* GetBackgroundTrack(Int_t i) const { return fRefBackgroundTracks->At(i);} | |
54 | ||
55 | virtual TRefArray* GetRefBackgroundClusters() const { return fRefBackgroundClusters;} | |
56 | virtual void AddBackgroundCluster(TObject *tr) {fRefBackgroundClusters->Add(tr);} | |
57 | virtual TObject* GetBackgroundCluster(Int_t i) const { return fRefBackgroundClusters->At(i);} | |
58 | ||
59 | virtual TString GetLeadingDetector() const {return fLeadingDetector ; } | |
60 | virtual void SetLeadingDetector(TString d) {fLeadingDetector = d ; } | |
61 | ||
62 | virtual TLorentzVector GetLeading() const { return fLeading;} | |
63 | virtual void SetLeading(TLorentzVector lead) {fLeading = lead;} | |
64 | ||
65 | virtual TLorentzVector GetCorrelatedJet() const { return fCorrJet;} | |
66 | virtual void SetCorrelatedJet(TLorentzVector jet) {fCorrJet = jet;} | |
67 | ||
68 | virtual TLorentzVector GetCorrelatedBackground() const { return fCorrBkg;} | |
69 | virtual void SetCorrelatedBackground(TLorentzVector bkg) {fCorrBkg = bkg;} | |
70 | ||
71 | virtual void SetRefJet(AliAODJet* jet) { fRefJet = jet;} | |
72 | virtual AliAODJet* GetJet() const {return ((AliAODJet*) fRefJet.GetObject());} | |
73 | virtual TRef GetRefJet() const {return fRefJet;} | |
74 | ||
75 | virtual void Print(Option_t* /*option*/) const; | |
76 | ||
77 | private: | |
78 | ||
691bdd02 | 79 | Bool_t fIsolated ; //Particle is isolated or not |
1c5acb87 | 80 | |
81 | TRefArray* fRefTracks; // array of references to the tracks belonging to the jet / all selected hadrons | |
82 | TRefArray* fRefClusters; // array of references to the clusters belonging to the jet / all selected hadrons | |
83 | ||
84 | TRefArray* fRefIsolationConeTracks; // array of references to the tracks belonging to the cone around direct particle candidate | |
85 | TRefArray* fRefIsolationConeClusters; // array of references to the clusters belonging to the cone around direct particle candidate | |
86 | ||
87 | TRefArray* fRefBackgroundTracks; // array of references to the tracks for background stimation | |
88 | TRefArray* fRefBackgroundClusters; // array of references to the clusters for background stimation | |
89 | ||
90 | TString fLeadingDetector; // Detector where leading particle was measured. | |
91 | TLorentzVector fLeading; // Leading Particle 4-momentum vector | |
92 | ||
93 | TLorentzVector fCorrJet; // Jet 4-momentum vector | |
94 | TLorentzVector fCorrBkg; // Background 4-momentum vector | |
95 | ||
96 | TRef fRefJet; // Rerence to jet found with JETAN and correlated with particle | |
97 | ||
98 | ClassDef(AliAODPWG4ParticleCorrelation,1); | |
99 | }; | |
100 | ||
101 | ||
102 | #endif //ALIAODPWG4PARTICLECORRELATION_H |