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 */
6 /* $Id: AliAODPWG4ParticleCorrelation.h $ */
8 //-------------------------------------------------------------------------
9 // Copy of AOD photon class, adapted for particle identification
10 // and correlations analysis
11 // Author: Yves Schutz, CERN, Gustavo Conesa, INFN
12 //-------------------------------------------------------------------------
18 #include "AliAODJet.h"
19 #include "AliAODPWG4Particle.h"
21 class AliAODPWG4ParticleCorrelation : public AliAODPWG4Particle {
24 AliAODPWG4ParticleCorrelation();
25 AliAODPWG4ParticleCorrelation(Double_t px, Double_t py, Double_t pz, Double_t e);
26 AliAODPWG4ParticleCorrelation(TLorentzVector & p);
27 AliAODPWG4ParticleCorrelation(AliAODPWG4Particle & p);
29 virtual ~AliAODPWG4ParticleCorrelation();
30 AliAODPWG4ParticleCorrelation(const AliAODPWG4ParticleCorrelation& photon);
32 AliAODPWG4ParticleCorrelation& operator=(const AliAODPWG4ParticleCorrelation& photon);
35 virtual TObjArray* GetObjArray(TString refname) const { return (TObjArray*) fListOfObjArrays->FindObject(refname); }
36 virtual TList* GetObjArrayList() const { return fListOfObjArrays; }
37 virtual void AddObjArray(TObjArray * refarray) { fListOfObjArrays->Add(refarray); }
39 virtual TString GetLeadingDetector() const {return fLeadingDetector ; }
40 virtual void SetLeadingDetector(TString d) {fLeadingDetector = d ; }
42 virtual TLorentzVector GetLeading() const { return fLeading;}
43 virtual void SetLeading(TLorentzVector lead) {fLeading = lead;}
45 virtual TLorentzVector GetCorrelatedJet() const { return fCorrJet;}
46 virtual void SetCorrelatedJet(TLorentzVector jet) {fCorrJet = jet;}
48 virtual TLorentzVector GetCorrelatedBackground() const { return fCorrBkg;}
49 virtual void SetCorrelatedBackground(TLorentzVector bkg) {fCorrBkg = bkg;}
51 virtual void SetRefJet(AliAODJet* jet) { fRefJet = jet;}
52 virtual AliAODJet* GetJet() const {return ((AliAODJet*) fRefJet.GetObject());}
53 virtual TRef GetRefJet() const {return fRefJet;}
55 virtual Bool_t IsIsolated() const { return fIsolated ; }
56 virtual void SetIsolated(Bool_t iso) { fIsolated = iso ; }
58 virtual void Print(Option_t* /*option*/) const;
61 Bool_t fIsolated ; //Particle is isolated or not
62 TString fLeadingDetector; // Detector where leading particle was measured.
63 TLorentzVector fLeading; // Leading Particle 4-momentum vector
64 TLorentzVector fCorrJet; // Jet 4-momentum vector
65 TLorentzVector fCorrBkg; // Background 4-momentum vector
66 TRef fRefJet; // Reference to jet found with JETAN and correlated with particle
67 TList * fListOfObjArrays ; // List with correlation reference arrays
69 ClassDef(AliAODPWG4ParticleCorrelation, 3);
73 #endif //ALIAODPWG4PARTICLECORRELATION_H