#include "AliLog.h"
#include "AliCFParticleGenCuts.h"
#include "TParticle.h"
#include "TParticlePDG.h"
#include "AliMCEvent.h"
#include "TObject.h"
#include "AliStack.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TBits.h"
#include "TList.h"
#include "TArrayF.h"
#include "TDecayChannel.h"
#include "AliAODMCParticle.h"
#include "AliAODEvent.h"
ClassImp(AliCFParticleGenCuts)
AliCFParticleGenCuts::AliCFParticleGenCuts() :
AliCFCutBase(),
fIsAODMC(0),
fMCInfo(0x0),
fRequireIsCharged(0),
fRequireIsNeutral(0),
fRequireIsPrimary(0),
fRequireIsSecondary(0),
fRequirePdgCode(0),
fRequireAbsolutePdg(0),
fProdVtxRange2D(0),
fPdgCode(0),
fProdVtxXMin (-1.e+09),
fProdVtxYMin (-1.e+09),
fProdVtxZMin (-1.e+09),
fProdVtxXMax ( 1.e+09),
fProdVtxYMax ( 1.e+09),
fProdVtxZMax ( 1.e+09),
fDecayVtxXMin(-1.e+09),
fDecayVtxYMin(-1.e+09),
fDecayVtxZMin(-1.e+09),
fDecayVtxXMax( 1.e+09),
fDecayVtxYMax( 1.e+09),
fDecayVtxZMax( 1.e+09),
fDecayLengthMin(-1.),
fDecayLengthMax(1.e+09),
fDecayRxyMin(-1),
fDecayRxyMax(1.e+09),
fDecayChannel(0x0),
fhCutStatistics(0x0),
fhCutCorrelation(0x0),
fCutValues(new TArrayF(kNCuts)),
fBitmap(new TBits(0))
{
for (int i=0; i<kNCuts; i++)
for (int j=0; j<kNStepQA; j++)
fhQA[i][j]=0x0;
for (int j=0; j<kNStepQA; j++)
fhProdVtxXY[j]=0x0;
}
AliCFParticleGenCuts::AliCFParticleGenCuts(const Char_t* name, const Char_t* title) :
AliCFCutBase(name,title),
fIsAODMC(0),
fMCInfo(0x0),
fRequireIsCharged(0),
fRequireIsNeutral(0),
fRequireIsPrimary(0),
fRequireIsSecondary(0),
fRequirePdgCode(0),
fRequireAbsolutePdg(0),
fProdVtxRange2D(0),
fPdgCode(0),
fProdVtxXMin (-1.e+09),
fProdVtxYMin (-1.e+09),
fProdVtxZMin (-1.e+09),
fProdVtxXMax ( 1.e+09),
fProdVtxYMax ( 1.e+09),
fProdVtxZMax ( 1.e+09),
fDecayVtxXMin(-1.e+09),
fDecayVtxYMin(-1.e+09),
fDecayVtxZMin(-1.e+09),
fDecayVtxXMax( 1.e+09),
fDecayVtxYMax( 1.e+09),
fDecayVtxZMax( 1.e+09),
fDecayLengthMin(-1.),
fDecayLengthMax(1.e+09),
fDecayRxyMin(-1.),
fDecayRxyMax(1.e+09),
fDecayChannel(0x0),
fhCutStatistics(0x0),
fhCutCorrelation(0x0),
fCutValues(new TArrayF(kNCuts)),
fBitmap(new TBits(0))
{
for (int i=0; i<kNCuts; i++)
for (int j=0; j<kNStepQA; j++)
fhQA[i][j]=0x0;
for (int j=0; j<kNStepQA; j++)
fhProdVtxXY[j]=0x0;
}
AliCFParticleGenCuts::AliCFParticleGenCuts(const AliCFParticleGenCuts& c) :
AliCFCutBase(c),
fIsAODMC(c.fIsAODMC),
fMCInfo(c.fMCInfo),
fRequireIsCharged(c.fRequireIsCharged),
fRequireIsNeutral(c.fRequireIsNeutral),
fRequireIsPrimary(c.fRequireIsPrimary),
fRequireIsSecondary(c.fRequireIsSecondary),
fRequirePdgCode(c.fRequirePdgCode),
fRequireAbsolutePdg(c.fRequireAbsolutePdg),
fProdVtxRange2D(c.fProdVtxRange2D),
fPdgCode(c.fPdgCode),
fProdVtxXMin (c.fProdVtxXMin),
fProdVtxYMin (c.fProdVtxYMin),
fProdVtxZMin (c.fProdVtxZMin),
fProdVtxXMax (c.fProdVtxXMax),
fProdVtxYMax (c.fProdVtxYMax),
fProdVtxZMax (c.fProdVtxZMax),
fDecayVtxXMin(c.fDecayVtxXMin),
fDecayVtxYMin(c.fDecayVtxYMin),
fDecayVtxZMin(c.fDecayVtxZMin),
fDecayVtxXMax(c.fDecayVtxXMax),
fDecayVtxYMax(c.fDecayVtxYMax),
fDecayVtxZMax(c.fDecayVtxZMax),
fDecayLengthMin(c.fDecayLengthMin),
fDecayLengthMax(c.fDecayLengthMin),
fDecayRxyMin(c.fDecayLengthMin),
fDecayRxyMax(c.fDecayLengthMin),
fDecayChannel(c.fDecayChannel),
fhCutStatistics(new TH1F(*c.fhCutStatistics)),
fhCutCorrelation(new TH2F(*c.fhCutCorrelation)),
fCutValues(new TArrayF(*c.fCutValues)),
fBitmap(new TBits(*c.fBitmap))
{
for (int i=0; i<kNCuts; i++)
for (int j=0; j<kNStepQA; j++)
fhQA[i][j]=(TH1F*)c.fhQA[i][j]->Clone();
for (int j=0; j<kNStepQA; j++)
fhProdVtxXY[j]=(TH2F*)c.fhProdVtxXY[j]->Clone();
}
AliCFParticleGenCuts& AliCFParticleGenCuts::operator=(const AliCFParticleGenCuts& c)
{
if (this != &c) {
AliCFCutBase::operator=(c) ;
fIsAODMC=c.fIsAODMC;
fMCInfo=c.fMCInfo;
fRequireIsCharged=c.fRequireIsCharged;
fRequireIsNeutral=c.fRequireIsNeutral;
fRequireIsPrimary=c.fRequireIsPrimary;
fRequireIsSecondary=c.fRequireIsSecondary;
fRequirePdgCode=c.fRequirePdgCode;
fRequireAbsolutePdg=c.fRequireAbsolutePdg;
fProdVtxRange2D=c.fProdVtxRange2D;
fPdgCode=c.fPdgCode;
fProdVtxXMin=c.fProdVtxXMin;
fProdVtxYMin=c.fProdVtxYMin;
fProdVtxZMin=c.fProdVtxZMin;
fProdVtxXMax=c.fProdVtxXMax;
fProdVtxYMax=c.fProdVtxYMax;
fProdVtxZMax=c.fProdVtxZMax;
fDecayVtxXMin=c.fDecayVtxXMin;
fDecayVtxYMin=c.fDecayVtxYMin;
fDecayVtxZMin=c.fDecayVtxZMin;
fDecayVtxXMax=c.fDecayVtxXMax;
fDecayVtxYMax=c.fDecayVtxYMax;
fDecayVtxZMax=c.fDecayVtxZMax;
fDecayLengthMin=c.fDecayVtxZMax;
fDecayLengthMax=c.fDecayLengthMax;
fDecayRxyMin=c.fDecayRxyMin;
fDecayRxyMax=c.fDecayRxyMax;
fDecayChannel=c.fDecayChannel;
fCutValues=new TArrayF(*c.fCutValues);
fBitmap=new TBits(*c.fBitmap);
if (fhCutStatistics) fhCutStatistics =new TH1F(*c.fhCutStatistics) ;
if (fhCutCorrelation) fhCutCorrelation=new TH2F(*c.fhCutCorrelation);
for (int i=0; i<kNCuts; i++)
for (int j=0; j<kNStepQA; j++)
fhQA[i][j]=(TH1F*)c.fhQA[i][j]->Clone();
for (int j=0; j<kNStepQA; j++)
fhProdVtxXY[j]=(TH2F*)c.fhProdVtxXY[j]->Clone();
}
return *this ;
}
Bool_t AliCFParticleGenCuts::IsSelected(TObject* obj) {
if (!obj) return kFALSE ;
if (!fIsAODMC) SelectionBitMap((AliMCParticle*) obj);
else SelectionBitMap((AliAODMCParticle*)obj);
if (fIsQAOn) FillHistograms(obj,0);
for (UInt_t icut=0; icut<fBitmap->GetNbits();icut++)
if (!fBitmap->TestBitNumber(icut)) return kFALSE ;
if (fIsQAOn) FillHistograms(obj,1);
return kTRUE;
}
void AliCFParticleGenCuts::SelectionBitMap(AliMCParticle* mcPart)
{
for (UInt_t i=0; i<kNCuts; i++) {
fBitmap->SetBitNumber(i,kFALSE);
fCutValues->SetAt((Double32_t)0,i) ;
}
Double32_t partVx=(Double32_t)mcPart->Xv();
Double32_t partVy=(Double32_t)mcPart->Yv();
Double32_t partVz=(Double32_t)mcPart->Zv();
Double32_t prodVtxXYmin = 0.;
if (fProdVtxXMin>0 && fProdVtxYMin>0)
prodVtxXYmin = partVx*partVx/(fProdVtxXMin*fProdVtxXMin) + partVy*partVy/(fProdVtxYMin*fProdVtxYMin);
Double32_t prodVtxXYmax = 0.;
if(fProdVtxXMax>0 && fProdVtxYMax>0)
prodVtxXYmax = partVx*partVx/(fProdVtxXMax*fProdVtxXMax) + partVy*partVy/(fProdVtxYMax*fProdVtxYMax);
Double32_t decayVx=0.;
Double32_t decayVy=0.;
Double32_t decayVz=0.;
Double32_t decayL=0.;
Double32_t decayRxy=0.;
TParticle* part = mcPart->Particle();
AliStack* stack = ((AliMCEvent*)fMCInfo)->Stack();
TParticle* daughter=0x0;
if ( part->GetNDaughters() > 0 ) {
daughter = stack->Particle(part->GetFirstDaughter()) ;
decayVx=(Double32_t)daughter->Vx();
decayVy=(Double32_t)daughter->Vy();
decayVz=(Double32_t)daughter->Vz();
decayL = TMath::Sqrt(TMath::Power(partVx-decayVx,2) +
TMath::Power(partVy-decayVy,2) +
TMath::Power(partVz-decayVz,2) ) ;
decayRxy = TMath::Sqrt(TMath::Power(decayVx,2) + TMath::Power(decayVy,2) ) ;
}
fCutValues->SetAt(partVx ,kCutProdVtxXMin) ;
fCutValues->SetAt(partVy ,kCutProdVtxYMin) ;
fCutValues->SetAt(partVz ,kCutProdVtxZMin) ;
fCutValues->SetAt(partVx ,kCutProdVtxXMax) ;
fCutValues->SetAt(partVy ,kCutProdVtxYMax) ;
fCutValues->SetAt(partVz ,kCutProdVtxZMax) ;
fCutValues->SetAt(decayVx ,kCutDecVtxXMin) ;
fCutValues->SetAt(decayVy ,kCutDecVtxYMin) ;
fCutValues->SetAt(decayVz ,kCutDecVtxZMin) ;
fCutValues->SetAt(decayVx ,kCutDecVtxXMax) ;
fCutValues->SetAt(decayVy ,kCutDecVtxYMax) ;
fCutValues->SetAt(decayVz ,kCutDecVtxZMax) ;
fCutValues->SetAt(decayL ,kCutDecLgthMin) ;
fCutValues->SetAt(decayL ,kCutDecLgthMax) ;
fCutValues->SetAt(decayRxy,kCutDecRxyMin) ;
fCutValues->SetAt(decayRxy,kCutDecRxyMax) ;
if ( fRequireIsCharged || fRequireIsNeutral ) {
if (fRequireIsCharged && IsCharged(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
if (fRequireIsNeutral && !IsCharged(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
if ( fRequireIsPrimary || fRequireIsSecondary) {
if (fRequireIsPrimary && IsPrimary(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
if (fRequireIsSecondary && !IsPrimary(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
if ( fRequirePdgCode ) {
if (IsA(mcPart,fPdgCode,fRequireAbsolutePdg)) fCutValues->SetAt((Double32_t)kTRUE,kCutPDGCode);
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutPDGCode);
if ( fDecayChannel ) {
Bool_t goodDecay = kTRUE ;
Short_t nDaughters = mcPart->Particle()->GetNDaughters() ;
if (nDaughters != fDecayChannel->NDaughters()) goodDecay = kFALSE ;
if (goodDecay) {
for (Int_t iDaughter = 0; iDaughter<nDaughters; iDaughter++) {
TParticle* daug = stack->Particle(mcPart->Particle()->GetDaughter(iDaughter)) ;
if (daug->GetPdgCode() != fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
if (!goodDecay) {
goodDecay = kTRUE ;
for (Int_t iDaughter = 0; iDaughter<nDaughters; iDaughter++) {
TParticle* daug = stack->Particle(mcPart->Particle()->GetDaughter(nDaughters-(iDaughter+1))) ;
if (daug->GetPdgCode() != fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
}
if (!goodDecay && fRequireAbsolutePdg) {
goodDecay = kTRUE ;
for (Int_t iDaughter = 0; iDaughter<nDaughters; iDaughter++) {
TParticle* daug = stack->Particle(mcPart->Particle()->GetDaughter(iDaughter)) ;
if (daug->GetPdgCode() != -fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
if (!goodDecay) {
goodDecay = kTRUE ;
for (Int_t iDaughter = 0; iDaughter<nDaughters; iDaughter++) {
TParticle* daug = stack->Particle(mcPart->Particle()->GetDaughter(nDaughters-(iDaughter+1))) ;
if (daug->GetPdgCode() != -fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
}
}
}
fCutValues->SetAt((Double32_t)goodDecay,kCutDecayChannel) ;
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutDecayChannel);
Int_t iCutBit = -1;
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) > fProdVtxXMin)
|| ( fProdVtxRange2D && (fProdVtxXMin>0 && fProdVtxYMin>0) && prodVtxXYmin >= 1)
|| ( fProdVtxRange2D && (fProdVtxXMin<=0 || fProdVtxYMin<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) < fProdVtxXMax)
|| ( fProdVtxRange2D && (fProdVtxXMax>0 && fProdVtxYMax>0) && prodVtxXYmax <= 1)
|| ( fProdVtxRange2D && (fProdVtxXMax<=0 || fProdVtxYMax<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) > fProdVtxYMin)
|| ( fProdVtxRange2D && (fProdVtxXMin>0 && fProdVtxYMin>0) && prodVtxXYmin >= 1)
|| ( fProdVtxRange2D && (fProdVtxXMin<=0 || fProdVtxYMin<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) < fProdVtxYMax)
|| ( fProdVtxRange2D && (fProdVtxXMax>0 && fProdVtxYMax>0) && prodVtxXYmax <= 1)
|| ( fProdVtxRange2D && (fProdVtxXMax<=0 || fProdVtxYMax<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fProdVtxZMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fProdVtxZMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxXMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxXMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxYMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxYMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxZMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxZMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayLengthMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayLengthMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayRxyMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayRxyMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) != 0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
}
void AliCFParticleGenCuts::SelectionBitMap(AliAODMCParticle* mcPart)
{
for (UInt_t i=0; i<kNCuts; i++) {
fBitmap->SetBitNumber(i,kFALSE);
fCutValues->SetAt((Double32_t)0,i) ;
}
Double32_t partVx=(Double32_t)mcPart->Xv();
Double32_t partVy=(Double32_t)mcPart->Yv();
Double32_t partVz=(Double32_t)mcPart->Zv();
Double32_t prodVtxXYmin = 0.;
if (fProdVtxXMin!=0 && fProdVtxYMin!=0)
prodVtxXYmin = partVx*partVx/(fProdVtxXMin*fProdVtxXMin) + partVy*partVy/(fProdVtxYMin*fProdVtxYMin);
Double32_t prodVtxXYmax = 0.;
if(fProdVtxXMax!=0 && fProdVtxYMax!=0)
prodVtxXYmax = partVx*partVx/(fProdVtxXMax*fProdVtxXMax) + partVy*partVy/(fProdVtxYMax*fProdVtxYMax);
Double32_t decayVx=0.;
Double32_t decayVy=0.;
Double32_t decayVz=0.;
Double32_t decayL=0.;
Double32_t decayRxy=0.;
AliAODEvent* aod = dynamic_cast<AliAODEvent*>(fMCInfo);
if (!aod) {
AliError("AOD event casting failed");
return;
}
TClonesArray* mcArray = dynamic_cast<TClonesArray*>(aod->FindListObject(AliAODMCParticle::StdBranchName()));
if (!mcArray) {
AliError("array casting failed");
return;
}
AliAODMCParticle* daughter = 0x0 ;
if (mcPart->GetDaughter(0)>0) {
daughter = dynamic_cast<AliAODMCParticle*>(mcArray->At(mcPart->GetDaughter(0)));
if (!daughter) {
AliError("daughter casting failed");
return;
}
decayVx=(Double32_t)daughter->Xv();
decayVy=(Double32_t)daughter->Yv();
decayVz=(Double32_t)daughter->Zv();
decayL = TMath::Sqrt(TMath::Power(partVx-decayVx,2) +
TMath::Power(partVy-decayVy,2) +
TMath::Power(partVz-decayVz,2) ) ;
decayRxy = TMath::Sqrt(TMath::Power(decayVx,2) + TMath::Power(decayVy,2) ) ;
}
fCutValues->SetAt(partVx ,kCutProdVtxXMin) ;
fCutValues->SetAt(partVy ,kCutProdVtxYMin) ;
fCutValues->SetAt(partVz ,kCutProdVtxZMin) ;
fCutValues->SetAt(partVx ,kCutProdVtxXMax) ;
fCutValues->SetAt(partVy ,kCutProdVtxYMax) ;
fCutValues->SetAt(partVz ,kCutProdVtxZMax) ;
fCutValues->SetAt(decayVx ,kCutDecVtxXMin) ;
fCutValues->SetAt(decayVy ,kCutDecVtxYMin) ;
fCutValues->SetAt(decayVz ,kCutDecVtxZMin) ;
fCutValues->SetAt(decayVx ,kCutDecVtxXMax) ;
fCutValues->SetAt(decayVy ,kCutDecVtxYMax) ;
fCutValues->SetAt(decayVz ,kCutDecVtxZMax) ;
fCutValues->SetAt(decayL ,kCutDecLgthMin) ;
fCutValues->SetAt(decayL ,kCutDecLgthMax) ;
fCutValues->SetAt(decayRxy,kCutDecRxyMin) ;
fCutValues->SetAt(decayRxy,kCutDecRxyMax) ;
if ( fRequireIsCharged || fRequireIsNeutral ) {
if (fRequireIsCharged && IsCharged(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
if (fRequireIsNeutral && !IsCharged(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutCharge) ;
if ( fRequireIsPrimary || fRequireIsSecondary) {
if (fRequireIsPrimary && IsPrimary(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
if (fRequireIsSecondary && !IsPrimary(mcPart)) fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutPrimSec);
if ( fRequirePdgCode ) {
if (IsA(mcPart,fPdgCode,fRequireAbsolutePdg)) fCutValues->SetAt((Double32_t)kTRUE,kCutPDGCode);
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutPDGCode);
if ( fDecayChannel ) {
Bool_t goodDecay = kTRUE ;
Short_t nDaughters = 0 ;
if (mcPart->GetDaughter(0) >=0) nDaughters = 1 + mcPart->GetDaughter(1) - mcPart->GetDaughter(0);
if (nDaughters != fDecayChannel->NDaughters()) goodDecay = kFALSE ;
if (goodDecay) {
for (Int_t iDaughter = 0 ; iDaughter<nDaughters; iDaughter++) {
AliAODMCParticle* daug = dynamic_cast<AliAODMCParticle*>(mcArray->At(mcPart->GetDaughter(0)+iDaughter));
if (!daug) {
AliError("daughter: casting failed");
continue;
}
if (daug->GetPdgCode() != fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
if (!goodDecay) {
goodDecay = kTRUE ;
for (Int_t iDaughter = 0 ; iDaughter<nDaughters; iDaughter++) {
AliAODMCParticle* daug = dynamic_cast<AliAODMCParticle*>(mcArray->At(mcPart->GetDaughter(1)-iDaughter));
if (!daug) {AliFatal(""); return;}
if (daug->GetPdgCode() != fDecayChannel->DaughterPdgCode(iDaughter)) {goodDecay = kFALSE; break;}
}
}
}
fCutValues->SetAt((Double32_t)goodDecay,kCutDecayChannel) ;
}
else fCutValues->SetAt((Double32_t)kTRUE,kCutDecayChannel);
Int_t iCutBit = -1;
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) !=0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) > fProdVtxXMin)
|| ( fProdVtxRange2D && (fProdVtxXMin>0 && fProdVtxYMin>0) && prodVtxXYmin >= 1)
|| ( fProdVtxRange2D && (fProdVtxXMin<=0 || fProdVtxYMin<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) < fProdVtxXMax)
|| ( fProdVtxRange2D && (fProdVtxXMax>0 && fProdVtxYMax>0) && prodVtxXYmax <= 1)
|| ( fProdVtxRange2D && (fProdVtxXMax<=0 || fProdVtxYMax<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) > fProdVtxYMin)
|| ( fProdVtxRange2D && (fProdVtxXMin>0 && fProdVtxYMin>0) && prodVtxXYmin >= 1)
|| ( fProdVtxRange2D && (fProdVtxXMin<=0 || fProdVtxYMin<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
++iCutBit;
if ( (!fProdVtxRange2D && fCutValues->At(iCutBit) < fProdVtxYMax)
|| ( fProdVtxRange2D && (fProdVtxXMax>0 && fProdVtxYMax>0) && prodVtxXYmax <= 1)
|| ( fProdVtxRange2D && (fProdVtxXMax<=0 || fProdVtxYMax<=0) ) )
fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fProdVtxZMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fProdVtxZMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxXMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxXMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxYMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxYMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayVtxZMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayVtxZMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayLengthMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayLengthMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) > fDecayRxyMin) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) < fDecayRxyMax) fBitmap->SetBitNumber(iCutBit,kTRUE);
if ( fCutValues->At(++iCutBit) != 0 ) fBitmap->SetBitNumber(iCutBit,kTRUE);
}
void AliCFParticleGenCuts::FillHistograms(TObject* , Bool_t afterCuts)
{
for (int iCutNumber = 0; iCutNumber < kNCuts; iCutNumber++)
fhQA[iCutNumber][afterCuts]->Fill(fCutValues->At(iCutNumber));
fhProdVtxXY[afterCuts]->Fill(fCutValues->At(4),fCutValues->At(5));
if (afterCuts) return;
UInt_t ncuts = fBitmap->GetNbits();
for(UInt_t bit=0; bit<ncuts;bit++) {
if (!fBitmap->TestBitNumber(bit)) {
fhCutStatistics->Fill(bit+1);
for (UInt_t bit2=bit; bit2<ncuts;bit2++) {
if (!fBitmap->TestBitNumber(bit2))
fhCutCorrelation->Fill(bit+1,bit2+1);
}
}
}
}
void AliCFParticleGenCuts::AddQAHistograms(TList *qaList) {
DefineHistograms();
qaList->Add(fhCutStatistics);
qaList->Add(fhCutCorrelation);
for (Int_t j=0; j<kNStepQA; j++) {
qaList->Add(fhProdVtxXY[j]);
for(Int_t i=0; i<kNCuts; i++)
qaList->Add(fhQA[i][j]);
}
}
void AliCFParticleGenCuts::DefineHistograms() {
Int_t color = 2;
fhCutStatistics = new TH1F(Form("%s_cut_statistics",GetName()),"",kNCuts,0.5,kNCuts+0.5);
fhCutStatistics->SetLineWidth(2);
int k = 1;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"charge") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"prim/sec") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"PDG") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"VtxXMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"VtxXMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"VtxYMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"VtxYMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"VtxZMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecZMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecXMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecXMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecYMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecYMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecZMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecZMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecLgthMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecLgthMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecRxyMin") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecRxyMax") ; k++;
fhCutStatistics->GetXaxis()->SetBinLabel(k,"DecChannel") ; k++;
fhCutCorrelation = new TH2F(Form("%s_cut_correlation",GetName()),"",kNCuts,0.5,kNCuts+0.5,kNCuts,0.5,kNCuts+0.5);
fhCutCorrelation->SetLineWidth(2);
for (k=1; k<=kNCuts; k++) {
fhCutCorrelation->GetXaxis()->SetBinLabel(k,fhCutStatistics->GetXaxis()->GetBinLabel(k));
fhCutCorrelation->GetYaxis()->SetBinLabel(k,fhCutStatistics->GetXaxis()->GetBinLabel(k));
}
Char_t str[5];
for (int i=0; i<kNStepQA; i++) {
if (i==0) snprintf(str,5," ");
else snprintf(str,5,"_cut");
fhQA[kCutCharge] [i] = new TH1F(Form("%s_charge%s" ,GetName(),str),"",2,0,2);
fhQA[kCutPrimSec] [i] = new TH1F(Form("%s_primSec%s" ,GetName(),str),"",2,0,2);
fhQA[kCutPDGCode] [i] = new TH1F(Form("%s_pdgCode%s" ,GetName(),str),"",2,0,2);
fhQA[kCutProdVtxXMin] [i] = new TH1F(Form("%s_prodVtxXMin%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutProdVtxXMax] [i] = new TH1F(Form("%s_prodVtxXMax%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutProdVtxYMin] [i] = new TH1F(Form("%s_prodVtxYMin%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutProdVtxYMax] [i] = new TH1F(Form("%s_prodVtxYMax%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutProdVtxZMin] [i] = new TH1F(Form("%s_prodVtxZMin%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutProdVtxZMax] [i] = new TH1F(Form("%s_prodVtxZMax%s" ,GetName(),str),"",100,-10,10);
fhQA[kCutDecVtxXMin] [i] = new TH1F(Form("%s_decVtxXMin%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecVtxXMax] [i] = new TH1F(Form("%s_decVtxXMax%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecVtxYMin] [i] = new TH1F(Form("%s_decVtxYMin%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecVtxYMax] [i] = new TH1F(Form("%s_decVtxYMax%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecVtxZMin] [i] = new TH1F(Form("%s_decVtxZMin%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecVtxZMax] [i] = new TH1F(Form("%s_decVtxZMax%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecLgthMin] [i] = new TH1F(Form("%s_decLengthMin%s",GetName(),str),"",100,0,10);
fhQA[kCutDecLgthMax] [i] = new TH1F(Form("%s_decLengthMax%s",GetName(),str),"",100,0,10);
fhQA[kCutDecRxyMin] [i] = new TH1F(Form("%s_decRxyMin%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecRxyMax] [i] = new TH1F(Form("%s_decRxyMax%s" ,GetName(),str),"",100,0,10);
fhQA[kCutDecayChannel][i] = new TH1F(Form("%s_decayChannel%s",GetName(),str),"",2,0,2);
fhProdVtxXY [i] = new TH2F(Form("%s_prodVtxXY%s" ,GetName(),str),"",100,0,10,100,0,10);
fhProdVtxXY [i] ->GetXaxis()->SetTitle("x_{production vertex}");
fhProdVtxXY [i] ->GetYaxis()->SetTitle("y_{production vertex}");
fhQA[kCutProdVtxXMax] [i] ->GetXaxis()->SetTitle("x_{production vertex}");
fhQA[kCutProdVtxYMax] [i] ->GetXaxis()->SetTitle("y_{production vertex}");
}
for(Int_t i=0; i<kNCuts; i++) fhQA[i][1]->SetLineColor(color);
}
Bool_t AliCFParticleGenCuts::IsCharged(AliVParticle *mcPart) {
if (mcPart->Charge()==0) return kFALSE;
return kTRUE;
}
Bool_t AliCFParticleGenCuts::IsPrimary(AliMCParticle *mcPart) {
AliStack* stack = ((AliMCEvent*)fMCInfo)->Stack();
if (!stack->IsPhysicalPrimary(mcPart->GetLabel())) return kFALSE;
return kTRUE;
}
Bool_t AliCFParticleGenCuts::IsPrimary(AliAODMCParticle *mcPart) {
if (!mcPart->IsPhysicalPrimary()) return kFALSE;
return kTRUE;
}
Bool_t AliCFParticleGenCuts::IsPrimaryCharged(AliVParticle *mcPart) {
if (!fIsAODMC) {
if (!IsPrimary((AliMCParticle*)mcPart) || !IsCharged(mcPart)) return kFALSE ;
}
else {
if (!IsPrimary((AliAODMCParticle*)mcPart) || !IsCharged(mcPart)) return kFALSE ;
}
return kTRUE;
}
Bool_t AliCFParticleGenCuts::IsA(AliMCParticle *mcPart, Int_t pdg, Bool_t abs) {
TParticle* part = mcPart->Particle();
Int_t pdgCode = part->GetPdgCode();
if (abs) {
pdgCode = TMath::Abs(pdgCode);
pdg = TMath::Abs(pdg);
}
if (pdgCode != pdg ) return kFALSE;
return kTRUE;
}
Bool_t AliCFParticleGenCuts::IsA(AliAODMCParticle *mcPart, Int_t pdg, Bool_t abs) {
Int_t pdgCode = mcPart->GetPdgCode();
if (abs) {
pdgCode = TMath::Abs(pdgCode);
pdg = TMath::Abs(pdg);
}
if (pdgCode != pdg ) return kFALSE;
return kTRUE;
}
void AliCFParticleGenCuts::SetMCEventInfo(const TObject* mcEvent) {
if (!mcEvent) {
AliError("Pointer to MC Event is null !");
return;
}
TString className(mcEvent->ClassName());
if (className.CompareTo("AliMCEvent") != 0 && className.CompareTo("AliAODEvent") != 0) {
AliError("argument must point to an AliMCEvent or an AliAODEvent !");
return ;
}
fMCInfo = (AliVEvent*)mcEvent ;
}
AliCFParticleGenCuts.cxx:1 AliCFParticleGenCuts.cxx:2 AliCFParticleGenCuts.cxx:3 AliCFParticleGenCuts.cxx:4 AliCFParticleGenCuts.cxx:5 AliCFParticleGenCuts.cxx:6 AliCFParticleGenCuts.cxx:7 AliCFParticleGenCuts.cxx:8 AliCFParticleGenCuts.cxx:9 AliCFParticleGenCuts.cxx:10 AliCFParticleGenCuts.cxx:11 AliCFParticleGenCuts.cxx:12 AliCFParticleGenCuts.cxx:13 AliCFParticleGenCuts.cxx:14 AliCFParticleGenCuts.cxx:15 AliCFParticleGenCuts.cxx:16 AliCFParticleGenCuts.cxx:17 AliCFParticleGenCuts.cxx:18 AliCFParticleGenCuts.cxx:19 AliCFParticleGenCuts.cxx:20 AliCFParticleGenCuts.cxx:21 AliCFParticleGenCuts.cxx:22 AliCFParticleGenCuts.cxx:23 AliCFParticleGenCuts.cxx:24 AliCFParticleGenCuts.cxx:25 AliCFParticleGenCuts.cxx:26 AliCFParticleGenCuts.cxx:27 AliCFParticleGenCuts.cxx:28 AliCFParticleGenCuts.cxx:29 AliCFParticleGenCuts.cxx:30 AliCFParticleGenCuts.cxx:31 AliCFParticleGenCuts.cxx:32 AliCFParticleGenCuts.cxx:33 AliCFParticleGenCuts.cxx:34 AliCFParticleGenCuts.cxx:35 AliCFParticleGenCuts.cxx:36 AliCFParticleGenCuts.cxx:37 AliCFParticleGenCuts.cxx:38 AliCFParticleGenCuts.cxx:39 AliCFParticleGenCuts.cxx:40 AliCFParticleGenCuts.cxx:41 AliCFParticleGenCuts.cxx:42 AliCFParticleGenCuts.cxx:43 AliCFParticleGenCuts.cxx:44 AliCFParticleGenCuts.cxx:45 AliCFParticleGenCuts.cxx:46 AliCFParticleGenCuts.cxx:47 AliCFParticleGenCuts.cxx:48 AliCFParticleGenCuts.cxx:49 AliCFParticleGenCuts.cxx:50 AliCFParticleGenCuts.cxx:51 AliCFParticleGenCuts.cxx:52 AliCFParticleGenCuts.cxx:53 AliCFParticleGenCuts.cxx:54 AliCFParticleGenCuts.cxx:55 AliCFParticleGenCuts.cxx:56 AliCFParticleGenCuts.cxx:57 AliCFParticleGenCuts.cxx:58 AliCFParticleGenCuts.cxx:59 AliCFParticleGenCuts.cxx:60 AliCFParticleGenCuts.cxx:61 AliCFParticleGenCuts.cxx:62 AliCFParticleGenCuts.cxx:63 AliCFParticleGenCuts.cxx:64 AliCFParticleGenCuts.cxx:65 AliCFParticleGenCuts.cxx:66 AliCFParticleGenCuts.cxx:67 AliCFParticleGenCuts.cxx:68 AliCFParticleGenCuts.cxx:69 AliCFParticleGenCuts.cxx:70 AliCFParticleGenCuts.cxx:71 AliCFParticleGenCuts.cxx:72 AliCFParticleGenCuts.cxx:73 AliCFParticleGenCuts.cxx:74 AliCFParticleGenCuts.cxx:75 AliCFParticleGenCuts.cxx:76 AliCFParticleGenCuts.cxx:77 AliCFParticleGenCuts.cxx:78 AliCFParticleGenCuts.cxx:79 AliCFParticleGenCuts.cxx:80 AliCFParticleGenCuts.cxx:81 AliCFParticleGenCuts.cxx:82 AliCFParticleGenCuts.cxx:83 AliCFParticleGenCuts.cxx:84 AliCFParticleGenCuts.cxx:85 AliCFParticleGenCuts.cxx:86 AliCFParticleGenCuts.cxx:87 AliCFParticleGenCuts.cxx:88 AliCFParticleGenCuts.cxx:89 AliCFParticleGenCuts.cxx:90 AliCFParticleGenCuts.cxx:91 AliCFParticleGenCuts.cxx:92 AliCFParticleGenCuts.cxx:93 AliCFParticleGenCuts.cxx:94 AliCFParticleGenCuts.cxx:95 AliCFParticleGenCuts.cxx:96 AliCFParticleGenCuts.cxx:97 AliCFParticleGenCuts.cxx:98 AliCFParticleGenCuts.cxx:99 AliCFParticleGenCuts.cxx:100 AliCFParticleGenCuts.cxx:101 AliCFParticleGenCuts.cxx:102 AliCFParticleGenCuts.cxx:103 AliCFParticleGenCuts.cxx:104 AliCFParticleGenCuts.cxx:105 AliCFParticleGenCuts.cxx:106 AliCFParticleGenCuts.cxx:107 AliCFParticleGenCuts.cxx:108 AliCFParticleGenCuts.cxx:109 AliCFParticleGenCuts.cxx:110 AliCFParticleGenCuts.cxx:111 AliCFParticleGenCuts.cxx:112 AliCFParticleGenCuts.cxx:113 AliCFParticleGenCuts.cxx:114 AliCFParticleGenCuts.cxx:115 AliCFParticleGenCuts.cxx:116 AliCFParticleGenCuts.cxx:117 AliCFParticleGenCuts.cxx:118 AliCFParticleGenCuts.cxx:119 AliCFParticleGenCuts.cxx:120 AliCFParticleGenCuts.cxx:121 AliCFParticleGenCuts.cxx:122 AliCFParticleGenCuts.cxx:123 AliCFParticleGenCuts.cxx:124 AliCFParticleGenCuts.cxx:125 AliCFParticleGenCuts.cxx:126 AliCFParticleGenCuts.cxx:127 AliCFParticleGenCuts.cxx:128 AliCFParticleGenCuts.cxx:129 AliCFParticleGenCuts.cxx:130 AliCFParticleGenCuts.cxx:131 AliCFParticleGenCuts.cxx:132 AliCFParticleGenCuts.cxx:133 AliCFParticleGenCuts.cxx:134 AliCFParticleGenCuts.cxx:135 AliCFParticleGenCuts.cxx:136 AliCFParticleGenCuts.cxx:137 AliCFParticleGenCuts.cxx:138 AliCFParticleGenCuts.cxx:139 AliCFParticleGenCuts.cxx:140 AliCFParticleGenCuts.cxx:141 AliCFParticleGenCuts.cxx:142 AliCFParticleGenCuts.cxx:143 AliCFParticleGenCuts.cxx:144 AliCFParticleGenCuts.cxx:145 AliCFParticleGenCuts.cxx:146 AliCFParticleGenCuts.cxx:147 AliCFParticleGenCuts.cxx:148 AliCFParticleGenCuts.cxx:149 AliCFParticleGenCuts.cxx:150 AliCFParticleGenCuts.cxx:151 AliCFParticleGenCuts.cxx:152 AliCFParticleGenCuts.cxx:153 AliCFParticleGenCuts.cxx:154 AliCFParticleGenCuts.cxx:155 AliCFParticleGenCuts.cxx:156 AliCFParticleGenCuts.cxx:157 AliCFParticleGenCuts.cxx:158 AliCFParticleGenCuts.cxx:159 AliCFParticleGenCuts.cxx:160 AliCFParticleGenCuts.cxx:161 AliCFParticleGenCuts.cxx:162 AliCFParticleGenCuts.cxx:163 AliCFParticleGenCuts.cxx:164 AliCFParticleGenCuts.cxx:165 AliCFParticleGenCuts.cxx:166 AliCFParticleGenCuts.cxx:167 AliCFParticleGenCuts.cxx:168 AliCFParticleGenCuts.cxx:169 AliCFParticleGenCuts.cxx:170 AliCFParticleGenCuts.cxx:171 AliCFParticleGenCuts.cxx:172 AliCFParticleGenCuts.cxx:173 AliCFParticleGenCuts.cxx:174 AliCFParticleGenCuts.cxx:175 AliCFParticleGenCuts.cxx:176 AliCFParticleGenCuts.cxx:177 AliCFParticleGenCuts.cxx:178 AliCFParticleGenCuts.cxx:179 AliCFParticleGenCuts.cxx:180 AliCFParticleGenCuts.cxx:181 AliCFParticleGenCuts.cxx:182 AliCFParticleGenCuts.cxx:183 AliCFParticleGenCuts.cxx:184 AliCFParticleGenCuts.cxx:185 AliCFParticleGenCuts.cxx:186 AliCFParticleGenCuts.cxx:187 AliCFParticleGenCuts.cxx:188 AliCFParticleGenCuts.cxx:189 AliCFParticleGenCuts.cxx:190 AliCFParticleGenCuts.cxx:191 AliCFParticleGenCuts.cxx:192 AliCFParticleGenCuts.cxx:193 AliCFParticleGenCuts.cxx:194 AliCFParticleGenCuts.cxx:195 AliCFParticleGenCuts.cxx:196 AliCFParticleGenCuts.cxx:197 AliCFParticleGenCuts.cxx:198 AliCFParticleGenCuts.cxx:199 AliCFParticleGenCuts.cxx:200 AliCFParticleGenCuts.cxx:201 AliCFParticleGenCuts.cxx:202 AliCFParticleGenCuts.cxx:203 AliCFParticleGenCuts.cxx:204 AliCFParticleGenCuts.cxx:205 AliCFParticleGenCuts.cxx:206 AliCFParticleGenCuts.cxx:207 AliCFParticleGenCuts.cxx:208 AliCFParticleGenCuts.cxx:209 AliCFParticleGenCuts.cxx:210 AliCFParticleGenCuts.cxx:211 AliCFParticleGenCuts.cxx:212 AliCFParticleGenCuts.cxx:213 AliCFParticleGenCuts.cxx:214 AliCFParticleGenCuts.cxx:215 AliCFParticleGenCuts.cxx:216 AliCFParticleGenCuts.cxx:217 AliCFParticleGenCuts.cxx:218 AliCFParticleGenCuts.cxx:219 AliCFParticleGenCuts.cxx:220 AliCFParticleGenCuts.cxx:221 AliCFParticleGenCuts.cxx:222 AliCFParticleGenCuts.cxx:223 AliCFParticleGenCuts.cxx:224 AliCFParticleGenCuts.cxx:225 AliCFParticleGenCuts.cxx:226 AliCFParticleGenCuts.cxx:227 AliCFParticleGenCuts.cxx:228 AliCFParticleGenCuts.cxx:229 AliCFParticleGenCuts.cxx:230 AliCFParticleGenCuts.cxx:231 AliCFParticleGenCuts.cxx:232 AliCFParticleGenCuts.cxx:233 AliCFParticleGenCuts.cxx:234 AliCFParticleGenCuts.cxx:235 AliCFParticleGenCuts.cxx:236 AliCFParticleGenCuts.cxx:237 AliCFParticleGenCuts.cxx:238 AliCFParticleGenCuts.cxx:239 AliCFParticleGenCuts.cxx:240 AliCFParticleGenCuts.cxx:241 AliCFParticleGenCuts.cxx:242 AliCFParticleGenCuts.cxx:243 AliCFParticleGenCuts.cxx:244 AliCFParticleGenCuts.cxx:245 AliCFParticleGenCuts.cxx:246 AliCFParticleGenCuts.cxx:247 AliCFParticleGenCuts.cxx:248 AliCFParticleGenCuts.cxx:249 AliCFParticleGenCuts.cxx:250 AliCFParticleGenCuts.cxx:251 AliCFParticleGenCuts.cxx:252 AliCFParticleGenCuts.cxx:253 AliCFParticleGenCuts.cxx:254 AliCFParticleGenCuts.cxx:255 AliCFParticleGenCuts.cxx:256 AliCFParticleGenCuts.cxx:257 AliCFParticleGenCuts.cxx:258 AliCFParticleGenCuts.cxx:259 AliCFParticleGenCuts.cxx:260 AliCFParticleGenCuts.cxx:261 AliCFParticleGenCuts.cxx:262 AliCFParticleGenCuts.cxx:263 AliCFParticleGenCuts.cxx:264 AliCFParticleGenCuts.cxx:265 AliCFParticleGenCuts.cxx:266 AliCFParticleGenCuts.cxx:267 AliCFParticleGenCuts.cxx:268 AliCFParticleGenCuts.cxx:269 AliCFParticleGenCuts.cxx:270 AliCFParticleGenCuts.cxx:271 AliCFParticleGenCuts.cxx:272 AliCFParticleGenCuts.cxx:273 AliCFParticleGenCuts.cxx:274 AliCFParticleGenCuts.cxx:275 AliCFParticleGenCuts.cxx:276 AliCFParticleGenCuts.cxx:277 AliCFParticleGenCuts.cxx:278 AliCFParticleGenCuts.cxx:279 AliCFParticleGenCuts.cxx:280 AliCFParticleGenCuts.cxx:281 AliCFParticleGenCuts.cxx:282 AliCFParticleGenCuts.cxx:283 AliCFParticleGenCuts.cxx:284 AliCFParticleGenCuts.cxx:285 AliCFParticleGenCuts.cxx:286 AliCFParticleGenCuts.cxx:287 AliCFParticleGenCuts.cxx:288 AliCFParticleGenCuts.cxx:289 AliCFParticleGenCuts.cxx:290 AliCFParticleGenCuts.cxx:291 AliCFParticleGenCuts.cxx:292 AliCFParticleGenCuts.cxx:293 AliCFParticleGenCuts.cxx:294 AliCFParticleGenCuts.cxx:295 AliCFParticleGenCuts.cxx:296 AliCFParticleGenCuts.cxx:297 AliCFParticleGenCuts.cxx:298 AliCFParticleGenCuts.cxx:299 AliCFParticleGenCuts.cxx:300 AliCFParticleGenCuts.cxx:301 AliCFParticleGenCuts.cxx:302 AliCFParticleGenCuts.cxx:303 AliCFParticleGenCuts.cxx:304 AliCFParticleGenCuts.cxx:305 AliCFParticleGenCuts.cxx:306 AliCFParticleGenCuts.cxx:307 AliCFParticleGenCuts.cxx:308 AliCFParticleGenCuts.cxx:309 AliCFParticleGenCuts.cxx:310 AliCFParticleGenCuts.cxx:311 AliCFParticleGenCuts.cxx:312 AliCFParticleGenCuts.cxx:313 AliCFParticleGenCuts.cxx:314 AliCFParticleGenCuts.cxx:315 AliCFParticleGenCuts.cxx:316 AliCFParticleGenCuts.cxx:317 AliCFParticleGenCuts.cxx:318 AliCFParticleGenCuts.cxx:319 AliCFParticleGenCuts.cxx:320 AliCFParticleGenCuts.cxx:321 AliCFParticleGenCuts.cxx:322 AliCFParticleGenCuts.cxx:323 AliCFParticleGenCuts.cxx:324 AliCFParticleGenCuts.cxx:325 AliCFParticleGenCuts.cxx:326 AliCFParticleGenCuts.cxx:327 AliCFParticleGenCuts.cxx:328 AliCFParticleGenCuts.cxx:329 AliCFParticleGenCuts.cxx:330 AliCFParticleGenCuts.cxx:331 AliCFParticleGenCuts.cxx:332 AliCFParticleGenCuts.cxx:333 AliCFParticleGenCuts.cxx:334 AliCFParticleGenCuts.cxx:335 AliCFParticleGenCuts.cxx:336 AliCFParticleGenCuts.cxx:337 AliCFParticleGenCuts.cxx:338 AliCFParticleGenCuts.cxx:339 AliCFParticleGenCuts.cxx:340 AliCFParticleGenCuts.cxx:341 AliCFParticleGenCuts.cxx:342 AliCFParticleGenCuts.cxx:343 AliCFParticleGenCuts.cxx:344 AliCFParticleGenCuts.cxx:345 AliCFParticleGenCuts.cxx:346 AliCFParticleGenCuts.cxx:347 AliCFParticleGenCuts.cxx:348 AliCFParticleGenCuts.cxx:349 AliCFParticleGenCuts.cxx:350 AliCFParticleGenCuts.cxx:351 AliCFParticleGenCuts.cxx:352 AliCFParticleGenCuts.cxx:353 AliCFParticleGenCuts.cxx:354 AliCFParticleGenCuts.cxx:355 AliCFParticleGenCuts.cxx:356 AliCFParticleGenCuts.cxx:357 AliCFParticleGenCuts.cxx:358 AliCFParticleGenCuts.cxx:359 AliCFParticleGenCuts.cxx:360 AliCFParticleGenCuts.cxx:361 AliCFParticleGenCuts.cxx:362 AliCFParticleGenCuts.cxx:363 AliCFParticleGenCuts.cxx:364 AliCFParticleGenCuts.cxx:365 AliCFParticleGenCuts.cxx:366 AliCFParticleGenCuts.cxx:367 AliCFParticleGenCuts.cxx:368 AliCFParticleGenCuts.cxx:369 AliCFParticleGenCuts.cxx:370 AliCFParticleGenCuts.cxx:371 AliCFParticleGenCuts.cxx:372 AliCFParticleGenCuts.cxx:373 AliCFParticleGenCuts.cxx:374 AliCFParticleGenCuts.cxx:375 AliCFParticleGenCuts.cxx:376 AliCFParticleGenCuts.cxx:377 AliCFParticleGenCuts.cxx:378 AliCFParticleGenCuts.cxx:379 AliCFParticleGenCuts.cxx:380 AliCFParticleGenCuts.cxx:381 AliCFParticleGenCuts.cxx:382 AliCFParticleGenCuts.cxx:383 AliCFParticleGenCuts.cxx:384 AliCFParticleGenCuts.cxx:385 AliCFParticleGenCuts.cxx:386 AliCFParticleGenCuts.cxx:387 AliCFParticleGenCuts.cxx:388 AliCFParticleGenCuts.cxx:389 AliCFParticleGenCuts.cxx:390 AliCFParticleGenCuts.cxx:391 AliCFParticleGenCuts.cxx:392 AliCFParticleGenCuts.cxx:393 AliCFParticleGenCuts.cxx:394 AliCFParticleGenCuts.cxx:395 AliCFParticleGenCuts.cxx:396 AliCFParticleGenCuts.cxx:397 AliCFParticleGenCuts.cxx:398 AliCFParticleGenCuts.cxx:399 AliCFParticleGenCuts.cxx:400 AliCFParticleGenCuts.cxx:401 AliCFParticleGenCuts.cxx:402 AliCFParticleGenCuts.cxx:403 AliCFParticleGenCuts.cxx:404 AliCFParticleGenCuts.cxx:405 AliCFParticleGenCuts.cxx:406 AliCFParticleGenCuts.cxx:407 AliCFParticleGenCuts.cxx:408 AliCFParticleGenCuts.cxx:409 AliCFParticleGenCuts.cxx:410 AliCFParticleGenCuts.cxx:411 AliCFParticleGenCuts.cxx:412 AliCFParticleGenCuts.cxx:413 AliCFParticleGenCuts.cxx:414 AliCFParticleGenCuts.cxx:415 AliCFParticleGenCuts.cxx:416 AliCFParticleGenCuts.cxx:417 AliCFParticleGenCuts.cxx:418 AliCFParticleGenCuts.cxx:419 AliCFParticleGenCuts.cxx:420 AliCFParticleGenCuts.cxx:421 AliCFParticleGenCuts.cxx:422 AliCFParticleGenCuts.cxx:423 AliCFParticleGenCuts.cxx:424 AliCFParticleGenCuts.cxx:425 AliCFParticleGenCuts.cxx:426 AliCFParticleGenCuts.cxx:427 AliCFParticleGenCuts.cxx:428 AliCFParticleGenCuts.cxx:429 AliCFParticleGenCuts.cxx:430 AliCFParticleGenCuts.cxx:431 AliCFParticleGenCuts.cxx:432 AliCFParticleGenCuts.cxx:433 AliCFParticleGenCuts.cxx:434 AliCFParticleGenCuts.cxx:435 AliCFParticleGenCuts.cxx:436 AliCFParticleGenCuts.cxx:437 AliCFParticleGenCuts.cxx:438 AliCFParticleGenCuts.cxx:439 AliCFParticleGenCuts.cxx:440 AliCFParticleGenCuts.cxx:441 AliCFParticleGenCuts.cxx:442 AliCFParticleGenCuts.cxx:443 AliCFParticleGenCuts.cxx:444 AliCFParticleGenCuts.cxx:445 AliCFParticleGenCuts.cxx:446 AliCFParticleGenCuts.cxx:447 AliCFParticleGenCuts.cxx:448 AliCFParticleGenCuts.cxx:449 AliCFParticleGenCuts.cxx:450 AliCFParticleGenCuts.cxx:451 AliCFParticleGenCuts.cxx:452 AliCFParticleGenCuts.cxx:453 AliCFParticleGenCuts.cxx:454 AliCFParticleGenCuts.cxx:455 AliCFParticleGenCuts.cxx:456 AliCFParticleGenCuts.cxx:457 AliCFParticleGenCuts.cxx:458 AliCFParticleGenCuts.cxx:459 AliCFParticleGenCuts.cxx:460 AliCFParticleGenCuts.cxx:461 AliCFParticleGenCuts.cxx:462 AliCFParticleGenCuts.cxx:463 AliCFParticleGenCuts.cxx:464 AliCFParticleGenCuts.cxx:465 AliCFParticleGenCuts.cxx:466 AliCFParticleGenCuts.cxx:467 AliCFParticleGenCuts.cxx:468 AliCFParticleGenCuts.cxx:469 AliCFParticleGenCuts.cxx:470 AliCFParticleGenCuts.cxx:471 AliCFParticleGenCuts.cxx:472 AliCFParticleGenCuts.cxx:473 AliCFParticleGenCuts.cxx:474 AliCFParticleGenCuts.cxx:475 AliCFParticleGenCuts.cxx:476 AliCFParticleGenCuts.cxx:477 AliCFParticleGenCuts.cxx:478 AliCFParticleGenCuts.cxx:479 AliCFParticleGenCuts.cxx:480 AliCFParticleGenCuts.cxx:481 AliCFParticleGenCuts.cxx:482 AliCFParticleGenCuts.cxx:483 AliCFParticleGenCuts.cxx:484 AliCFParticleGenCuts.cxx:485 AliCFParticleGenCuts.cxx:486 AliCFParticleGenCuts.cxx:487 AliCFParticleGenCuts.cxx:488 AliCFParticleGenCuts.cxx:489 AliCFParticleGenCuts.cxx:490 AliCFParticleGenCuts.cxx:491 AliCFParticleGenCuts.cxx:492 AliCFParticleGenCuts.cxx:493 AliCFParticleGenCuts.cxx:494 AliCFParticleGenCuts.cxx:495 AliCFParticleGenCuts.cxx:496 AliCFParticleGenCuts.cxx:497 AliCFParticleGenCuts.cxx:498 AliCFParticleGenCuts.cxx:499 AliCFParticleGenCuts.cxx:500 AliCFParticleGenCuts.cxx:501 AliCFParticleGenCuts.cxx:502 AliCFParticleGenCuts.cxx:503 AliCFParticleGenCuts.cxx:504 AliCFParticleGenCuts.cxx:505 AliCFParticleGenCuts.cxx:506 AliCFParticleGenCuts.cxx:507 AliCFParticleGenCuts.cxx:508 AliCFParticleGenCuts.cxx:509 AliCFParticleGenCuts.cxx:510 AliCFParticleGenCuts.cxx:511 AliCFParticleGenCuts.cxx:512 AliCFParticleGenCuts.cxx:513 AliCFParticleGenCuts.cxx:514 AliCFParticleGenCuts.cxx:515 AliCFParticleGenCuts.cxx:516 AliCFParticleGenCuts.cxx:517 AliCFParticleGenCuts.cxx:518 AliCFParticleGenCuts.cxx:519 AliCFParticleGenCuts.cxx:520 AliCFParticleGenCuts.cxx:521 AliCFParticleGenCuts.cxx:522 AliCFParticleGenCuts.cxx:523 AliCFParticleGenCuts.cxx:524 AliCFParticleGenCuts.cxx:525 AliCFParticleGenCuts.cxx:526 AliCFParticleGenCuts.cxx:527 AliCFParticleGenCuts.cxx:528 AliCFParticleGenCuts.cxx:529 AliCFParticleGenCuts.cxx:530 AliCFParticleGenCuts.cxx:531 AliCFParticleGenCuts.cxx:532 AliCFParticleGenCuts.cxx:533 AliCFParticleGenCuts.cxx:534 AliCFParticleGenCuts.cxx:535 AliCFParticleGenCuts.cxx:536 AliCFParticleGenCuts.cxx:537 AliCFParticleGenCuts.cxx:538 AliCFParticleGenCuts.cxx:539 AliCFParticleGenCuts.cxx:540 AliCFParticleGenCuts.cxx:541 AliCFParticleGenCuts.cxx:542 AliCFParticleGenCuts.cxx:543 AliCFParticleGenCuts.cxx:544 AliCFParticleGenCuts.cxx:545 AliCFParticleGenCuts.cxx:546 AliCFParticleGenCuts.cxx:547 AliCFParticleGenCuts.cxx:548 AliCFParticleGenCuts.cxx:549 AliCFParticleGenCuts.cxx:550 AliCFParticleGenCuts.cxx:551 AliCFParticleGenCuts.cxx:552 AliCFParticleGenCuts.cxx:553 AliCFParticleGenCuts.cxx:554 AliCFParticleGenCuts.cxx:555 AliCFParticleGenCuts.cxx:556 AliCFParticleGenCuts.cxx:557 AliCFParticleGenCuts.cxx:558 AliCFParticleGenCuts.cxx:559 AliCFParticleGenCuts.cxx:560 AliCFParticleGenCuts.cxx:561 AliCFParticleGenCuts.cxx:562 AliCFParticleGenCuts.cxx:563 AliCFParticleGenCuts.cxx:564 AliCFParticleGenCuts.cxx:565 AliCFParticleGenCuts.cxx:566 AliCFParticleGenCuts.cxx:567 AliCFParticleGenCuts.cxx:568 AliCFParticleGenCuts.cxx:569 AliCFParticleGenCuts.cxx:570 AliCFParticleGenCuts.cxx:571 AliCFParticleGenCuts.cxx:572 AliCFParticleGenCuts.cxx:573 AliCFParticleGenCuts.cxx:574 AliCFParticleGenCuts.cxx:575 AliCFParticleGenCuts.cxx:576 AliCFParticleGenCuts.cxx:577 AliCFParticleGenCuts.cxx:578 AliCFParticleGenCuts.cxx:579 AliCFParticleGenCuts.cxx:580 AliCFParticleGenCuts.cxx:581 AliCFParticleGenCuts.cxx:582 AliCFParticleGenCuts.cxx:583 AliCFParticleGenCuts.cxx:584 AliCFParticleGenCuts.cxx:585 AliCFParticleGenCuts.cxx:586 AliCFParticleGenCuts.cxx:587 AliCFParticleGenCuts.cxx:588 AliCFParticleGenCuts.cxx:589 AliCFParticleGenCuts.cxx:590 AliCFParticleGenCuts.cxx:591 AliCFParticleGenCuts.cxx:592 AliCFParticleGenCuts.cxx:593 AliCFParticleGenCuts.cxx:594 AliCFParticleGenCuts.cxx:595 AliCFParticleGenCuts.cxx:596 AliCFParticleGenCuts.cxx:597 AliCFParticleGenCuts.cxx:598 AliCFParticleGenCuts.cxx:599 AliCFParticleGenCuts.cxx:600 AliCFParticleGenCuts.cxx:601 AliCFParticleGenCuts.cxx:602 AliCFParticleGenCuts.cxx:603 AliCFParticleGenCuts.cxx:604 AliCFParticleGenCuts.cxx:605 AliCFParticleGenCuts.cxx:606 AliCFParticleGenCuts.cxx:607 AliCFParticleGenCuts.cxx:608 AliCFParticleGenCuts.cxx:609 AliCFParticleGenCuts.cxx:610 AliCFParticleGenCuts.cxx:611 AliCFParticleGenCuts.cxx:612 AliCFParticleGenCuts.cxx:613 AliCFParticleGenCuts.cxx:614 AliCFParticleGenCuts.cxx:615 AliCFParticleGenCuts.cxx:616 AliCFParticleGenCuts.cxx:617 AliCFParticleGenCuts.cxx:618 AliCFParticleGenCuts.cxx:619 AliCFParticleGenCuts.cxx:620 AliCFParticleGenCuts.cxx:621 AliCFParticleGenCuts.cxx:622 AliCFParticleGenCuts.cxx:623 AliCFParticleGenCuts.cxx:624 AliCFParticleGenCuts.cxx:625 AliCFParticleGenCuts.cxx:626 AliCFParticleGenCuts.cxx:627 AliCFParticleGenCuts.cxx:628 AliCFParticleGenCuts.cxx:629 AliCFParticleGenCuts.cxx:630 AliCFParticleGenCuts.cxx:631 AliCFParticleGenCuts.cxx:632 AliCFParticleGenCuts.cxx:633 AliCFParticleGenCuts.cxx:634 AliCFParticleGenCuts.cxx:635 AliCFParticleGenCuts.cxx:636 AliCFParticleGenCuts.cxx:637 AliCFParticleGenCuts.cxx:638 AliCFParticleGenCuts.cxx:639 AliCFParticleGenCuts.cxx:640 AliCFParticleGenCuts.cxx:641 AliCFParticleGenCuts.cxx:642 AliCFParticleGenCuts.cxx:643 AliCFParticleGenCuts.cxx:644 AliCFParticleGenCuts.cxx:645 AliCFParticleGenCuts.cxx:646 AliCFParticleGenCuts.cxx:647 AliCFParticleGenCuts.cxx:648 AliCFParticleGenCuts.cxx:649 AliCFParticleGenCuts.cxx:650 AliCFParticleGenCuts.cxx:651 AliCFParticleGenCuts.cxx:652 AliCFParticleGenCuts.cxx:653 AliCFParticleGenCuts.cxx:654 AliCFParticleGenCuts.cxx:655 AliCFParticleGenCuts.cxx:656 AliCFParticleGenCuts.cxx:657 AliCFParticleGenCuts.cxx:658 AliCFParticleGenCuts.cxx:659 AliCFParticleGenCuts.cxx:660 AliCFParticleGenCuts.cxx:661 AliCFParticleGenCuts.cxx:662 AliCFParticleGenCuts.cxx:663 AliCFParticleGenCuts.cxx:664 AliCFParticleGenCuts.cxx:665 AliCFParticleGenCuts.cxx:666 AliCFParticleGenCuts.cxx:667 AliCFParticleGenCuts.cxx:668 AliCFParticleGenCuts.cxx:669 AliCFParticleGenCuts.cxx:670 AliCFParticleGenCuts.cxx:671 AliCFParticleGenCuts.cxx:672 AliCFParticleGenCuts.cxx:673 AliCFParticleGenCuts.cxx:674 AliCFParticleGenCuts.cxx:675 AliCFParticleGenCuts.cxx:676 AliCFParticleGenCuts.cxx:677 AliCFParticleGenCuts.cxx:678 AliCFParticleGenCuts.cxx:679 AliCFParticleGenCuts.cxx:680 AliCFParticleGenCuts.cxx:681 AliCFParticleGenCuts.cxx:682 AliCFParticleGenCuts.cxx:683 AliCFParticleGenCuts.cxx:684 AliCFParticleGenCuts.cxx:685 AliCFParticleGenCuts.cxx:686 AliCFParticleGenCuts.cxx:687 AliCFParticleGenCuts.cxx:688 AliCFParticleGenCuts.cxx:689 AliCFParticleGenCuts.cxx:690 AliCFParticleGenCuts.cxx:691 AliCFParticleGenCuts.cxx:692 AliCFParticleGenCuts.cxx:693 AliCFParticleGenCuts.cxx:694 AliCFParticleGenCuts.cxx:695 AliCFParticleGenCuts.cxx:696 AliCFParticleGenCuts.cxx:697 AliCFParticleGenCuts.cxx:698 AliCFParticleGenCuts.cxx:699 AliCFParticleGenCuts.cxx:700 AliCFParticleGenCuts.cxx:701 AliCFParticleGenCuts.cxx:702 AliCFParticleGenCuts.cxx:703 AliCFParticleGenCuts.cxx:704 AliCFParticleGenCuts.cxx:705 AliCFParticleGenCuts.cxx:706 AliCFParticleGenCuts.cxx:707 AliCFParticleGenCuts.cxx:708 AliCFParticleGenCuts.cxx:709 AliCFParticleGenCuts.cxx:710 AliCFParticleGenCuts.cxx:711 AliCFParticleGenCuts.cxx:712 AliCFParticleGenCuts.cxx:713 AliCFParticleGenCuts.cxx:714 AliCFParticleGenCuts.cxx:715 AliCFParticleGenCuts.cxx:716 AliCFParticleGenCuts.cxx:717 AliCFParticleGenCuts.cxx:718 AliCFParticleGenCuts.cxx:719 AliCFParticleGenCuts.cxx:720 AliCFParticleGenCuts.cxx:721 AliCFParticleGenCuts.cxx:722 AliCFParticleGenCuts.cxx:723 AliCFParticleGenCuts.cxx:724 AliCFParticleGenCuts.cxx:725 AliCFParticleGenCuts.cxx:726 AliCFParticleGenCuts.cxx:727 AliCFParticleGenCuts.cxx:728 AliCFParticleGenCuts.cxx:729 AliCFParticleGenCuts.cxx:730 AliCFParticleGenCuts.cxx:731 AliCFParticleGenCuts.cxx:732 AliCFParticleGenCuts.cxx:733 AliCFParticleGenCuts.cxx:734 AliCFParticleGenCuts.cxx:735 AliCFParticleGenCuts.cxx:736 AliCFParticleGenCuts.cxx:737 AliCFParticleGenCuts.cxx:738 AliCFParticleGenCuts.cxx:739 AliCFParticleGenCuts.cxx:740 AliCFParticleGenCuts.cxx:741 AliCFParticleGenCuts.cxx:742 AliCFParticleGenCuts.cxx:743 AliCFParticleGenCuts.cxx:744 AliCFParticleGenCuts.cxx:745 AliCFParticleGenCuts.cxx:746 AliCFParticleGenCuts.cxx:747 AliCFParticleGenCuts.cxx:748 AliCFParticleGenCuts.cxx:749 AliCFParticleGenCuts.cxx:750 AliCFParticleGenCuts.cxx:751 AliCFParticleGenCuts.cxx:752 AliCFParticleGenCuts.cxx:753 AliCFParticleGenCuts.cxx:754 AliCFParticleGenCuts.cxx:755 AliCFParticleGenCuts.cxx:756 AliCFParticleGenCuts.cxx:757 AliCFParticleGenCuts.cxx:758 AliCFParticleGenCuts.cxx:759 AliCFParticleGenCuts.cxx:760 AliCFParticleGenCuts.cxx:761 AliCFParticleGenCuts.cxx:762 AliCFParticleGenCuts.cxx:763 AliCFParticleGenCuts.cxx:764 AliCFParticleGenCuts.cxx:765 AliCFParticleGenCuts.cxx:766 AliCFParticleGenCuts.cxx:767 AliCFParticleGenCuts.cxx:768 AliCFParticleGenCuts.cxx:769 AliCFParticleGenCuts.cxx:770 AliCFParticleGenCuts.cxx:771 AliCFParticleGenCuts.cxx:772 AliCFParticleGenCuts.cxx:773 AliCFParticleGenCuts.cxx:774 AliCFParticleGenCuts.cxx:775 AliCFParticleGenCuts.cxx:776 AliCFParticleGenCuts.cxx:777 AliCFParticleGenCuts.cxx:778 AliCFParticleGenCuts.cxx:779 AliCFParticleGenCuts.cxx:780 AliCFParticleGenCuts.cxx:781 AliCFParticleGenCuts.cxx:782 AliCFParticleGenCuts.cxx:783 AliCFParticleGenCuts.cxx:784 AliCFParticleGenCuts.cxx:785 AliCFParticleGenCuts.cxx:786 AliCFParticleGenCuts.cxx:787 AliCFParticleGenCuts.cxx:788 AliCFParticleGenCuts.cxx:789 AliCFParticleGenCuts.cxx:790 AliCFParticleGenCuts.cxx:791 AliCFParticleGenCuts.cxx:792 AliCFParticleGenCuts.cxx:793 AliCFParticleGenCuts.cxx:794 AliCFParticleGenCuts.cxx:795 AliCFParticleGenCuts.cxx:796 AliCFParticleGenCuts.cxx:797 AliCFParticleGenCuts.cxx:798 AliCFParticleGenCuts.cxx:799 AliCFParticleGenCuts.cxx:800 AliCFParticleGenCuts.cxx:801 AliCFParticleGenCuts.cxx:802 AliCFParticleGenCuts.cxx:803 AliCFParticleGenCuts.cxx:804 AliCFParticleGenCuts.cxx:805 AliCFParticleGenCuts.cxx:806 AliCFParticleGenCuts.cxx:807 AliCFParticleGenCuts.cxx:808 AliCFParticleGenCuts.cxx:809 AliCFParticleGenCuts.cxx:810 AliCFParticleGenCuts.cxx:811 AliCFParticleGenCuts.cxx:812 AliCFParticleGenCuts.cxx:813 AliCFParticleGenCuts.cxx:814 AliCFParticleGenCuts.cxx:815