1 /**************************************************************************
2 * Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
16 /* $Id: AliAODPWG4ParticleCorrelation.h $ */
18 //-------------------------------------------------------------------------
19 // AOD class for photon and other particles storage and
20 // correlation studies
21 // Author: Yves Schutz, CERN, Gustavo Conesa, INFN
22 //-------------------------------------------------------------------------
27 #include "AliAODPWG4ParticleCorrelation.h"
28 #include "AliAODJet.h"
30 ClassImp(AliAODPWG4ParticleCorrelation)
33 //______________________________________________________________________________
34 AliAODPWG4ParticleCorrelation::AliAODPWG4ParticleCorrelation() :
35 AliAODPWG4Particle(), fIsolated(kFALSE),
36 fLeadingParticle(kTRUE),
37 fLeadingDetector(""), fLeading(), fCorrJet(), fCorrBkg(), fRefJet(0),
43 //______________________________________________________________________________
44 AliAODPWG4ParticleCorrelation::AliAODPWG4ParticleCorrelation(Double_t px, Double_t py, Double_t pz, Double_t e):
45 AliAODPWG4Particle(), fIsolated(kFALSE),
46 fLeadingParticle(kTRUE),
47 fLeadingDetector(""), fLeading(), fCorrJet(),
48 fCorrBkg(), fRefJet(0), fListOfObjArrays(new TList)
51 SetMomentum(new TLorentzVector(px, py, pz, e));
52 fListOfObjArrays->SetOwner(kTRUE);
56 //______________________________________________________________________________
57 AliAODPWG4ParticleCorrelation::AliAODPWG4ParticleCorrelation(TLorentzVector & p):
58 AliAODPWG4Particle(p), fIsolated(kFALSE),
59 fLeadingParticle(kTRUE),
60 fLeadingDetector(""), fLeading(), fCorrJet(), fCorrBkg(), fRefJet(0), fListOfObjArrays(new TList)
63 fListOfObjArrays->SetOwner(kTRUE);
67 //______________________________________________________________________________
68 AliAODPWG4ParticleCorrelation::AliAODPWG4ParticleCorrelation(AliAODPWG4Particle & p):
69 AliAODPWG4Particle(p), fIsolated(kFALSE),
70 fLeadingParticle(kTRUE),
71 fLeadingDetector(""), fLeading(), fCorrJet(), fCorrBkg(),fRefJet(0), fListOfObjArrays(new TList)
74 fListOfObjArrays->SetOwner(kTRUE);
78 //______________________________________________________________________________
79 AliAODPWG4ParticleCorrelation::~AliAODPWG4ParticleCorrelation()
83 fListOfObjArrays->Clear();
84 delete fListOfObjArrays ;
88 //______________________________________________________________________________
89 void AliAODPWG4ParticleCorrelation::Clear(const Option_t* /*opt*/)
93 AliAODPWG4Particle::Clear(""); //delete fMomentum
96 fListOfObjArrays->Clear();
97 delete fListOfObjArrays ;
102 //______________________________________________________________________________
103 AliAODPWG4ParticleCorrelation::AliAODPWG4ParticleCorrelation(const AliAODPWG4ParticleCorrelation& part) :
104 AliAODPWG4Particle(part), fIsolated(part.fIsolated),
105 fLeadingParticle(part.fLeadingParticle),
106 fLeadingDetector(part.fLeadingDetector), fLeading(part.fLeading),
107 fCorrJet(part.fCorrJet), fCorrBkg(part.fCorrBkg), fRefJet(part.fRefJet),
108 fListOfObjArrays(new TList)
114 //______________________________________________________________________________
115 //AliAODPWG4ParticleCorrelation& AliAODPWG4ParticleCorrelation::operator=(const AliAODPWG4ParticleCorrelation& part)
117 // // Assignment operator
120 // fIsolated = part.fIsolated;
121 // fRefJet = part.fRefJet ;
122 // fLeadingDetector =part.fLeadingDetector;
123 // fLeading = part.fLeading;
124 // fCorrJet = part.fCorrJet ;
125 // fCorrBkg = part.fCorrBkg;
126 // fListOfObjArrays = fListOfObjArrays;
133 //______________________________________________________________________________
134 void AliAODPWG4ParticleCorrelation::Print(Option_t* /*option*/) const
136 // Print information of all data members
137 AliAODPWG4Particle::Print("");
139 if(fIsolated) printf("Isolated! \n");
141 if(GetJet()) GetJet()->Print("");
143 printf("Leading Detector : %s\n",fLeadingDetector.Data());
144 printf("Leading Particle 4-vector:\n");
145 printf(" E = %13.3f", fLeading.E() );
146 printf(" Px = %13.3f", fLeading.Px());
147 printf(" Py = %13.3f", fLeading.Py());
148 printf(" Pz = %13.3f\n", fLeading.Pz());
150 if( fListOfObjArrays) fListOfObjArrays->Print("");