//-------------------------------------------------------------------------
//-- ROOT system --
+#include "TList.h"
//-- Analysis system
-#include "AliAODJet.h"
+#include "AliAODJet.h"
#include "AliAODPWG4Particle.h"
class AliAODPWG4ParticleCorrelation : public AliAODPWG4Particle {
public:
- AliAODPWG4ParticleCorrelation();
- AliAODPWG4ParticleCorrelation(Double_t px, Double_t py, Double_t pz, Double_t e);
- AliAODPWG4ParticleCorrelation(TLorentzVector & p);
- AliAODPWG4ParticleCorrelation(AliAODPWG4Particle & p);
-
- virtual ~AliAODPWG4ParticleCorrelation();
- AliAODPWG4ParticleCorrelation(const AliAODPWG4ParticleCorrelation& photon);
- AliAODPWG4ParticleCorrelation& operator=(const AliAODPWG4ParticleCorrelation& photon);
-
- virtual Float_t IsIsolated() const { return fIsolated ;}
- virtual void SetIsolated(Bool_t iso) {fIsolated = iso ;}
-
- virtual TRefArray* GetRefTracks() const { return fRefTracks;}
- virtual void AddTrack(TObject *tr) {fRefTracks->Add(tr);}
- virtual TObject* GetTrack(Int_t i) const { return fRefTracks->At(i);}
-
- virtual TRefArray* GetRefClusters() const { return fRefClusters;}
- virtual void AddCluster(TObject *tr) {fRefClusters->Add(tr);}
- virtual TObject* GetCluster(Int_t i) const { return fRefClusters->At(i);}
-
- virtual TRefArray* GetRefIsolationConeTracks() const { return fRefIsolationConeTracks;}
- virtual void AddIsolationConeTrack(TObject *tr) {fRefIsolationConeTracks->Add(tr);}
- virtual TObject* GetIsolationConeTrack(Int_t i) const { return fRefIsolationConeTracks->At(i);}
-
- virtual TRefArray* GetRefIsolationConeClusters() const { return fRefIsolationConeClusters;}
- virtual void AddIsolationConeCluster(TObject *tr) {fRefIsolationConeClusters->Add(tr);}
- virtual TObject* GetIsolationConeCluster(Int_t i) const { return fRefIsolationConeClusters->At(i);}
-
- virtual TRefArray* GetRefBackgroundTracks() const { return fRefBackgroundTracks;}
- virtual void AddBackgroundTrack(TObject *tr) {fRefBackgroundTracks->Add(tr);}
- virtual TObject* GetBackgroundTrack(Int_t i) const { return fRefBackgroundTracks->At(i);}
-
- virtual TRefArray* GetRefBackgroundClusters() const { return fRefBackgroundClusters;}
- virtual void AddBackgroundCluster(TObject *tr) {fRefBackgroundClusters->Add(tr);}
- virtual TObject* GetBackgroundCluster(Int_t i) const { return fRefBackgroundClusters->At(i);}
-
- virtual TString GetLeadingDetector() const {return fLeadingDetector ; }
- virtual void SetLeadingDetector(TString d) {fLeadingDetector = d ; }
-
- virtual TLorentzVector GetLeading() const { return fLeading;}
- virtual void SetLeading(TLorentzVector lead) {fLeading = lead;}
-
- virtual TLorentzVector GetCorrelatedJet() const { return fCorrJet;}
- virtual void SetCorrelatedJet(TLorentzVector jet) {fCorrJet = jet;}
-
- virtual TLorentzVector GetCorrelatedBackground() const { return fCorrBkg;}
- virtual void SetCorrelatedBackground(TLorentzVector bkg) {fCorrBkg = bkg;}
-
- virtual void SetRefJet(AliAODJet* jet) { fRefJet = jet;}
- virtual AliAODJet* GetJet() const {return ((AliAODJet*) fRefJet.GetObject());}
- virtual TRef GetRefJet() const {return fRefJet;}
-
- virtual void Print(Option_t* /*option*/) const;
-
+ AliAODPWG4ParticleCorrelation();
+ AliAODPWG4ParticleCorrelation(Double_t px, Double_t py, Double_t pz, Double_t e);
+ AliAODPWG4ParticleCorrelation(TLorentzVector & p);
+ AliAODPWG4ParticleCorrelation(AliAODPWG4Particle & p);
+
+ virtual ~AliAODPWG4ParticleCorrelation();
+ AliAODPWG4ParticleCorrelation(const AliAODPWG4ParticleCorrelation& photon);
+ AliAODPWG4ParticleCorrelation& operator=(const AliAODPWG4ParticleCorrelation& photon);
+
+ virtual TRefArray* GetRefArray(TString refname) const { return (TRefArray*) fListOfRefArrays->FindObject(refname); }
+ virtual TList* GetRefArrayList() const { return fListOfRefArrays; }
+ virtual void AddRefArray(TRefArray * refarray) { fListOfRefArrays->Add(refarray); }
+
+ virtual TString GetLeadingDetector() const {return fLeadingDetector ; }
+ virtual void SetLeadingDetector(TString d) {fLeadingDetector = d ; }
+
+ virtual TLorentzVector GetLeading() const { return fLeading;}
+ virtual void SetLeading(TLorentzVector lead) {fLeading = lead;}
+
+ virtual TLorentzVector GetCorrelatedJet() const { return fCorrJet;}
+ virtual void SetCorrelatedJet(TLorentzVector jet) {fCorrJet = jet;}
+
+ virtual TLorentzVector GetCorrelatedBackground() const { return fCorrBkg;}
+ virtual void SetCorrelatedBackground(TLorentzVector bkg) {fCorrBkg = bkg;}
+
+ virtual void SetRefJet(AliAODJet* jet) { fRefJet = jet;}
+ virtual AliAODJet* GetJet() const {return ((AliAODJet*) fRefJet.GetObject());}
+ virtual TRef GetRefJet() const {return fRefJet;}
+
+ virtual Bool_t IsIsolated() const { return fIsolated ; }
+ virtual void SetIsolated(Bool_t iso) { fIsolated = iso ; }
+
+ virtual void Print(Option_t* /*option*/) const;
+
private:
-
- Float_t fIsolated ; //Particle is isolated or not
-
- TRefArray* fRefTracks; // array of references to the tracks belonging to the jet / all selected hadrons
- TRefArray* fRefClusters; // array of references to the clusters belonging to the jet / all selected hadrons
-
- TRefArray* fRefIsolationConeTracks; // array of references to the tracks belonging to the cone around direct particle candidate
- TRefArray* fRefIsolationConeClusters; // array of references to the clusters belonging to the cone around direct particle candidate
-
- TRefArray* fRefBackgroundTracks; // array of references to the tracks for background stimation
- TRefArray* fRefBackgroundClusters; // array of references to the clusters for background stimation
-
- TString fLeadingDetector; // Detector where leading particle was measured.
- TLorentzVector fLeading; // Leading Particle 4-momentum vector
-
- TLorentzVector fCorrJet; // Jet 4-momentum vector
- TLorentzVector fCorrBkg; // Background 4-momentum vector
-
- TRef fRefJet; // Rerence to jet found with JETAN and correlated with particle
-
- ClassDef(AliAODPWG4ParticleCorrelation,1);
+ Bool_t fIsolated ; //Particle is isolated or not
+ TString fLeadingDetector; // Detector where leading particle was measured.
+ TLorentzVector fLeading; // Leading Particle 4-momentum vector
+ TLorentzVector fCorrJet; // Jet 4-momentum vector
+ TLorentzVector fCorrBkg; // Background 4-momentum vector
+ TRef fRefJet; // Reference to jet found with JETAN and correlated with particle
+ TList * fListOfRefArrays ; // List with correlation reference arrays
+
+ ClassDef(AliAODPWG4ParticleCorrelation, 2);
};