#include "AliAODPWG4Particle.h"
ClassImp(AliAODPWG4Particle)
AliAODPWG4Particle::AliAODPWG4Particle() :
AliVParticle(),
fMomentum(0),fPdg(-1), fTag(0), fLabel(-1),
fCaloLabel(), fTrackLabel(), fDetectorTag(-1),
fBadDist(0), fNLM(0), fM02(0),
fTime(0),fNCells(0),fSuperModule(0),
fDecayTag(0),fIsolated(0), fLeadingParticle(0),
fDisp(0), fTof(0), fCharged(0),
fTagged(0), fFidArea(0), fInputFileIndex(0),fBtag(0)
{
fCaloLabel [0] = -1;
fCaloLabel [1] = -1;
fTrackLabel[0] = -1;
fTrackLabel[1] = -1;
fTrackLabel[2] = -1;
fTrackLabel[3] = -1;
}
AliAODPWG4Particle::AliAODPWG4Particle(Double_t px, Double_t py, Double_t pz, Double_t e):
AliVParticle(),
fMomentum(0),fPdg(-1), fTag(0), fLabel(-1),
fCaloLabel(), fTrackLabel(), fDetectorTag(-1),
fBadDist(0), fNLM(0), fM02(0),
fTime(0),fNCells(0),fSuperModule(0),
fDecayTag(0),fIsolated(0), fLeadingParticle(0),
fDisp(0), fTof(0), fCharged(0),
fTagged(0), fFidArea(0), fInputFileIndex(0),fBtag(0)
{
fMomentum = new TLorentzVector(px, py, pz, e);
fCaloLabel [0] = -1;
fCaloLabel [1] = -1;
fTrackLabel[0] = -1;
fTrackLabel[1] = -1;
fTrackLabel[2] = -1;
fTrackLabel[3] = -1;
}
AliAODPWG4Particle::AliAODPWG4Particle(TLorentzVector & p):
AliVParticle(),
fMomentum(0),fPdg(-1), fTag(0), fLabel(-1),
fCaloLabel(), fTrackLabel(),fDetectorTag(-1),
fBadDist(0), fNLM(0), fM02(0),
fTime(0),fNCells(0),fSuperModule(0),
fDecayTag(0),fIsolated(0), fLeadingParticle(0),
fDisp(0), fTof(0), fCharged(0),
fTagged(0), fFidArea(0), fInputFileIndex(0),fBtag(0)
{
fMomentum = new TLorentzVector(p);
fCaloLabel [0] = -1;
fCaloLabel [1] = -1;
fTrackLabel[0] = -1;
fTrackLabel[1] = -1;
fTrackLabel[2] = -1;
fTrackLabel[3] = -1;
}
AliAODPWG4Particle::~AliAODPWG4Particle()
{
delete fMomentum;
}
void AliAODPWG4Particle::Clear(const Option_t* )
{
delete fMomentum;
}
AliAODPWG4Particle::AliAODPWG4Particle(const AliAODPWG4Particle& part) :
AliVParticle(part),
fMomentum(0), fPdg(part.fPdg), fTag(part.fTag), fLabel(part.fLabel),
fCaloLabel(), fTrackLabel(), fDetectorTag(part.fDetectorTag),
fBadDist(part.fBadDist),fNLM(part.fNLM), fM02(part.fM02),
fTime(part.fTime),fNCells(part.fNCells),fSuperModule(part.fSuperModule),
fDecayTag(part.fDecayTag),fIsolated(part.fIsolated), fLeadingParticle(part.fLeadingParticle),
fDisp(part.fDisp), fTof(part.fTof), fCharged(part.fCharged),
fTagged(part.fTagged), fFidArea(part.fFidArea), fInputFileIndex(part.fInputFileIndex),fBtag(part.fBtag)
{
fMomentum = new TLorentzVector(*part.fMomentum);
fCaloLabel [0] = part.fCaloLabel[0];
fCaloLabel [1] = part.fCaloLabel[1];
fTrackLabel[0] = part.fTrackLabel[0];
fTrackLabel[1] = part.fTrackLabel[1];
fTrackLabel[2] = part.fTrackLabel[2];
fTrackLabel[3] = part.fTrackLabel[3];
}
AliAODPWG4Particle& AliAODPWG4Particle::operator=(const AliAODPWG4Particle & part)
{
if(this!=&part)
{
fPdg = part.fPdg;
fTag = part.fTag;
fLabel = part.fLabel;
fCaloLabel [0] = part.fCaloLabel[0];
fCaloLabel [1] = part.fCaloLabel[1];
fTrackLabel[0] = part.fTrackLabel[0];
fTrackLabel[1] = part.fTrackLabel[1];
fDetectorTag = part.fDetectorTag;
fDisp = part.fDisp;
fTof = part.fTof;
fCharged = part.fCharged;
fBadDist = part.fBadDist;
fDecayTag = part.fDecayTag;
fNLM = part.fNLM;
fM02 = part.fM02;
fIsolated = part.fIsolated;
fLeadingParticle =part.fLeadingParticle;
fBtag = part.fBtag;
fFidArea = part.fFidArea;
fTagged = part.fTagged;
fInputFileIndex = part.fInputFileIndex;
if (fMomentum ) delete fMomentum;
fMomentum = new TLorentzVector(*part.fMomentum);
}
return *this;
}
Bool_t AliAODPWG4Particle::IsPIDOK(const Int_t ipid, const Int_t pdgwanted) const{
switch(ipid){
case 0: return kTRUE ;
case 1:
{
if (fPdg == pdgwanted) return kTRUE;
else return kFALSE;
}
case 2: return fDisp ;
case 3: return fTof ;
case 4: return fCharged ;
case 5: return fDisp && fTof ;
case 6: return fDisp && fCharged ;
case 7: return fTof && fCharged ;
case 8: return fDisp && fTof && fCharged ;
default: return kFALSE ;
}
}
void AliAODPWG4Particle::Print(Option_t* ) const
{
printf("Particle 4-vector:\n");
printf(" E = %13.3f", E() );
printf(" Px = %13.3f", Px());
printf(" Py = %13.3f", Py());
printf(" Pz = %13.3f\n", Pz());
printf("Id PDG : %d\n",fPdg);
printf("MC Tag : %d\n",fTag);
printf("Dist. to bad channel : %d\n",fBadDist);
printf("Detector : %d, Labels:\n",fDetectorTag);
printf(" Calo: %d, %d \n",fCaloLabel[0],fCaloLabel[1]);
printf(" Track: %d, %d, %d, %d \n",fTrackLabel[0],fTrackLabel[1],fTrackLabel[2],fTrackLabel[3]);
if(fDetectorTag!=2)
{
printf("Calo param: \n");
printf(" M02: %2.3f\n",fM02);
printf(" NCell: %d\n",fNCells);
printf(" Time: %2.3f\n",fTime);
printf(" SModule: %d\n",fSuperModule);
}
printf("Tags: \n");
printf(" Pi0 Tag : %d\n",fDecayTag);
if(fIsolated) printf(" Isolated! \n");
if(fLeadingParticle) printf(" Leading! \n");
printf("PID bits :\n");
printf(" TOF : %d",fTof);
printf(" Charged : %d",fCharged);
printf(" Dispersion : %d\n",fDisp);
}
AliAODPWG4Particle.cxx:10 AliAODPWG4Particle.cxx:11 AliAODPWG4Particle.cxx:12 AliAODPWG4Particle.cxx:13 AliAODPWG4Particle.cxx:14 AliAODPWG4Particle.cxx:15 AliAODPWG4Particle.cxx:16 AliAODPWG4Particle.cxx:17 AliAODPWG4Particle.cxx:18 AliAODPWG4Particle.cxx:19 AliAODPWG4Particle.cxx:20 AliAODPWG4Particle.cxx:21 AliAODPWG4Particle.cxx:22 AliAODPWG4Particle.cxx:23 AliAODPWG4Particle.cxx:24 AliAODPWG4Particle.cxx:25 AliAODPWG4Particle.cxx:26 AliAODPWG4Particle.cxx:27 AliAODPWG4Particle.cxx:28 AliAODPWG4Particle.cxx:29 AliAODPWG4Particle.cxx:30 AliAODPWG4Particle.cxx:31 AliAODPWG4Particle.cxx:32 AliAODPWG4Particle.cxx:33 AliAODPWG4Particle.cxx:34 AliAODPWG4Particle.cxx:35 AliAODPWG4Particle.cxx:36 AliAODPWG4Particle.cxx:37 AliAODPWG4Particle.cxx:38 AliAODPWG4Particle.cxx:39 AliAODPWG4Particle.cxx:40 AliAODPWG4Particle.cxx:41 AliAODPWG4Particle.cxx:42 AliAODPWG4Particle.cxx:43 AliAODPWG4Particle.cxx:44 AliAODPWG4Particle.cxx:45 AliAODPWG4Particle.cxx:46 AliAODPWG4Particle.cxx:47 AliAODPWG4Particle.cxx:48 AliAODPWG4Particle.cxx:49 AliAODPWG4Particle.cxx:50 AliAODPWG4Particle.cxx:51 AliAODPWG4Particle.cxx:52 AliAODPWG4Particle.cxx:53 AliAODPWG4Particle.cxx:54 AliAODPWG4Particle.cxx:55 AliAODPWG4Particle.cxx:56 AliAODPWG4Particle.cxx:57 AliAODPWG4Particle.cxx:58 AliAODPWG4Particle.cxx:59 AliAODPWG4Particle.cxx:60 AliAODPWG4Particle.cxx:61 AliAODPWG4Particle.cxx:62 AliAODPWG4Particle.cxx:63 AliAODPWG4Particle.cxx:64 AliAODPWG4Particle.cxx:65 AliAODPWG4Particle.cxx:66 AliAODPWG4Particle.cxx:67 AliAODPWG4Particle.cxx:68 AliAODPWG4Particle.cxx:69 AliAODPWG4Particle.cxx:70 AliAODPWG4Particle.cxx:71 AliAODPWG4Particle.cxx:72 AliAODPWG4Particle.cxx:73 AliAODPWG4Particle.cxx:74 AliAODPWG4Particle.cxx:75 AliAODPWG4Particle.cxx:76 AliAODPWG4Particle.cxx:77 AliAODPWG4Particle.cxx:78 AliAODPWG4Particle.cxx:79 AliAODPWG4Particle.cxx:80 AliAODPWG4Particle.cxx:81 AliAODPWG4Particle.cxx:82 AliAODPWG4Particle.cxx:83 AliAODPWG4Particle.cxx:84 AliAODPWG4Particle.cxx:85 AliAODPWG4Particle.cxx:86 AliAODPWG4Particle.cxx:87 AliAODPWG4Particle.cxx:88 AliAODPWG4Particle.cxx:89 AliAODPWG4Particle.cxx:90 AliAODPWG4Particle.cxx:91 AliAODPWG4Particle.cxx:92 AliAODPWG4Particle.cxx:93 AliAODPWG4Particle.cxx:94 AliAODPWG4Particle.cxx:95 AliAODPWG4Particle.cxx:96 AliAODPWG4Particle.cxx:97 AliAODPWG4Particle.cxx:98 AliAODPWG4Particle.cxx:99 AliAODPWG4Particle.cxx:100 AliAODPWG4Particle.cxx:101 AliAODPWG4Particle.cxx:102 AliAODPWG4Particle.cxx:103 AliAODPWG4Particle.cxx:104 AliAODPWG4Particle.cxx:105 AliAODPWG4Particle.cxx:106 AliAODPWG4Particle.cxx:107 AliAODPWG4Particle.cxx:108 AliAODPWG4Particle.cxx:109 AliAODPWG4Particle.cxx:110 AliAODPWG4Particle.cxx:111 AliAODPWG4Particle.cxx:112 AliAODPWG4Particle.cxx:113 AliAODPWG4Particle.cxx:114 AliAODPWG4Particle.cxx:115 AliAODPWG4Particle.cxx:116 AliAODPWG4Particle.cxx:117 AliAODPWG4Particle.cxx:118 AliAODPWG4Particle.cxx:119 AliAODPWG4Particle.cxx:120 AliAODPWG4Particle.cxx:121 AliAODPWG4Particle.cxx:122 AliAODPWG4Particle.cxx:123 AliAODPWG4Particle.cxx:124 AliAODPWG4Particle.cxx:125 AliAODPWG4Particle.cxx:126 AliAODPWG4Particle.cxx:127 AliAODPWG4Particle.cxx:128 AliAODPWG4Particle.cxx:129 AliAODPWG4Particle.cxx:130 AliAODPWG4Particle.cxx:131 AliAODPWG4Particle.cxx:132 AliAODPWG4Particle.cxx:133 AliAODPWG4Particle.cxx:134 AliAODPWG4Particle.cxx:135 AliAODPWG4Particle.cxx:136 AliAODPWG4Particle.cxx:137 AliAODPWG4Particle.cxx:138 AliAODPWG4Particle.cxx:139 AliAODPWG4Particle.cxx:140 AliAODPWG4Particle.cxx:141 AliAODPWG4Particle.cxx:142 AliAODPWG4Particle.cxx:143 AliAODPWG4Particle.cxx:144 AliAODPWG4Particle.cxx:145 AliAODPWG4Particle.cxx:146 AliAODPWG4Particle.cxx:147 AliAODPWG4Particle.cxx:148 AliAODPWG4Particle.cxx:149 AliAODPWG4Particle.cxx:150 AliAODPWG4Particle.cxx:151 AliAODPWG4Particle.cxx:152 AliAODPWG4Particle.cxx:153 AliAODPWG4Particle.cxx:154 AliAODPWG4Particle.cxx:155 AliAODPWG4Particle.cxx:156 AliAODPWG4Particle.cxx:157 AliAODPWG4Particle.cxx:158 AliAODPWG4Particle.cxx:159 AliAODPWG4Particle.cxx:160 AliAODPWG4Particle.cxx:161 AliAODPWG4Particle.cxx:162 AliAODPWG4Particle.cxx:163 AliAODPWG4Particle.cxx:164 AliAODPWG4Particle.cxx:165 AliAODPWG4Particle.cxx:166 AliAODPWG4Particle.cxx:167 AliAODPWG4Particle.cxx:168 AliAODPWG4Particle.cxx:169 AliAODPWG4Particle.cxx:170 AliAODPWG4Particle.cxx:171 AliAODPWG4Particle.cxx:172 AliAODPWG4Particle.cxx:173 AliAODPWG4Particle.cxx:174 AliAODPWG4Particle.cxx:175 AliAODPWG4Particle.cxx:176 AliAODPWG4Particle.cxx:177 AliAODPWG4Particle.cxx:178 AliAODPWG4Particle.cxx:179 AliAODPWG4Particle.cxx:180 AliAODPWG4Particle.cxx:181 AliAODPWG4Particle.cxx:182 AliAODPWG4Particle.cxx:183 AliAODPWG4Particle.cxx:184 AliAODPWG4Particle.cxx:185 AliAODPWG4Particle.cxx:186 AliAODPWG4Particle.cxx:187 AliAODPWG4Particle.cxx:188 AliAODPWG4Particle.cxx:189 AliAODPWG4Particle.cxx:190 AliAODPWG4Particle.cxx:191 AliAODPWG4Particle.cxx:192 AliAODPWG4Particle.cxx:193 AliAODPWG4Particle.cxx:194 AliAODPWG4Particle.cxx:195 AliAODPWG4Particle.cxx:196 AliAODPWG4Particle.cxx:197 AliAODPWG4Particle.cxx:198 AliAODPWG4Particle.cxx:199 AliAODPWG4Particle.cxx:200 AliAODPWG4Particle.cxx:201 AliAODPWG4Particle.cxx:202 AliAODPWG4Particle.cxx:203 AliAODPWG4Particle.cxx:204 AliAODPWG4Particle.cxx:205 AliAODPWG4Particle.cxx:206 AliAODPWG4Particle.cxx:207 AliAODPWG4Particle.cxx:208 AliAODPWG4Particle.cxx:209 AliAODPWG4Particle.cxx:210 AliAODPWG4Particle.cxx:211 AliAODPWG4Particle.cxx:212 AliAODPWG4Particle.cxx:213 AliAODPWG4Particle.cxx:214 AliAODPWG4Particle.cxx:215 AliAODPWG4Particle.cxx:216 AliAODPWG4Particle.cxx:217 AliAODPWG4Particle.cxx:218 AliAODPWG4Particle.cxx:219 AliAODPWG4Particle.cxx:220 AliAODPWG4Particle.cxx:221 AliAODPWG4Particle.cxx:222 AliAODPWG4Particle.cxx:223 AliAODPWG4Particle.cxx:224 AliAODPWG4Particle.cxx:225 AliAODPWG4Particle.cxx:226 AliAODPWG4Particle.cxx:227 AliAODPWG4Particle.cxx:228 AliAODPWG4Particle.cxx:229 AliAODPWG4Particle.cxx:230 AliAODPWG4Particle.cxx:231 AliAODPWG4Particle.cxx:232 AliAODPWG4Particle.cxx:233 AliAODPWG4Particle.cxx:234 AliAODPWG4Particle.cxx:235