#include "AliDxHFEParticleSelectionEl.h"
#include "AliSelectNonHFE.h"
#include "AliReducedParticle.h"
#include "AliESDtrackCuts.h"
#include "AliVParticle.h"
#include "AliVEvent.h"
#include "AliPID.h"
#include "AliPIDResponse.h"
#include "AliHFEcontainer.h"
#include "AliHFEpid.h"
#include "AliHFEpidBase.h"
#include "AliHFEtools.h"
#include "AliHFEcuts.h"
#include "AliAODTrack.h"
#include "AliAODEvent.h"
#include "AliAnalysisDataSlot.h"
#include "AliAnalysisDataContainer.h"
#include "AliAnalysisManager.h"
#include "AliExternalTrackParam.h"
#include "AliAODVertex.h"
#include "AliHFEextraCuts.h"
#include "AliCFManager.h"
#include "THnSparse.h"
#include "AliLog.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TAxis.h"
#include "TList.h"
#include "TObjArray.h"
#include "AliKFParticle.h"
#include "AliKFVertex.h"
#include <iostream>
#include <cerrno>
#include <memory>
using namespace std;
ClassImp(AliDxHFEParticleSelectionEl)
AliDxHFEParticleSelectionEl::AliDxHFEParticleSelectionEl(const char* opt)
: AliDxHFEParticleSelection("electron", opt)
, fPIDTOFTPC(NULL)
, fPIDTOF(NULL)
, fPIDTPC(NULL)
, fElectronProperties(NULL)
, fHistoList(NULL)
, fCutPidList(NULL)
, fPIDResponse(NULL)
, fCuts(NULL)
, fSelNHFE(NULL)
, fTrackCuts(NULL)
, fCFM(NULL)
, fFinalCutStep(kPIDTOFTPC)
, fInvMassLow(0.1)
, fUseInvMassCut(kNoInvMass)
, fSystem(0)
, fTrackNum(0)
, fImpactParamCutRadial(3)
, fEtaCut(0.8)
, fSurvivedCutStep(kNotSelected)
, fStoreCutStepInfo(kFALSE)
{
ParseArguments(opt);
}
AliDxHFEParticleSelectionEl::~AliDxHFEParticleSelectionEl()
{
if (fElectronProperties) {
delete fElectronProperties;
fElectronProperties=NULL;
}
if(fHistoList){
delete fHistoList;
fHistoList=NULL;
}
if(fCFM){
delete fCFM;
fCFM=NULL;
}
if(fPIDResponse){
delete fPIDResponse;
fPIDResponse=NULL;
}
fPIDTOFTPC=NULL;
fPIDTOF=NULL;
fPIDTPC=NULL;
fCuts=NULL;
if(fSelNHFE){
delete fSelNHFE;
fSelNHFE=NULL;
}
if(fTrackCuts){
delete fTrackCuts;
fTrackCuts=NULL;
}
}
const char* AliDxHFEParticleSelectionEl::fgkCutBinNames[]={
"kRecKineITSTPC",
"kRecPrim",
"kHFEcuts",
"kHFEcutsTOFPID",
"kHFEcutsTPCPID",
"kPIDTOF",
"kPIDTPC",
"kPIDTPCTOF",
"kINVMASS",
"Selected e"
};
int AliDxHFEParticleSelectionEl::Init()
{
int iResult=0;
fSelNHFE= new AliSelectNonHFE("IM","IM");
fTrackCuts = new AliESDtrackCuts();
fTrackCuts->SetAcceptKinkDaughters(kFALSE);
fTrackCuts->SetRequireTPCRefit(kTRUE);
fTrackCuts->SetEtaRange(-0.9,0.9);
fTrackCuts->SetRequireSigmaToVertex(kTRUE);
fTrackCuts->SetMaxChi2PerClusterTPC(4.0);
fTrackCuts->SetMinNClustersTPC(80);
fTrackCuts->SetPtRange(0.3,1e10);
fSelNHFE->SetTrackCuts(-3, 3, fTrackCuts);
fSelNHFE->SetInvariantMassCut(fInvMassLow);
fSelNHFE->SetAlgorithm("KF");
fSelNHFE->SetAODanalysis(kTRUE);
iResult=AliDxHFEParticleSelection::Init();
if (iResult<0) return iResult;
AliInfo("Setting up CFM");
fCFM = new AliCFManager;
const Int_t kNcutSteps = AliHFEcuts::kNcutStepsMCTrack + AliHFEcuts::kNcutStepsRecTrack + AliHFEcuts::kNcutStepsDETrack;
fCFM->SetNStepParticle(kNcutSteps);
for(Int_t istep = 0; istep < kNcutSteps; istep++) {
fCFM->SetParticleCutsList(istep, NULL);
}
if(!fCuts) {
AliWarning("Cuts not available. Default cuts will be used");
fCuts = new AliHFEcuts;
fCuts->CreateStandardCuts();
}
fCuts->Initialize(fCFM);
const int paramSize=4;
Double_t params[paramSize];
memset(params, 0, sizeof(Double_t)*paramSize);
params[0]=-1.;
fPIDTPC = new AliHFEpid("hfePidTPC");
if(!fPIDTPC->GetNumberOfPIDdetectors()) {
fPIDTPC->AddDetector("TPC",1);
}
fPIDTPC->ConfigureTPCdefaultCut(NULL, params, 3.);
fPIDTPC->InitializePID();
if(fUseInvMassCut>kNoInvMass) AliDebug(2,Form("Setting up with invariant mass cut of %f",fInvMassLow));
if(fStoreCutStepInfo) AliDebug(2,"will store cut step info");
AliDebug(2,Form("Stopping selection after step: %d", fFinalCutStep));
return 0;
}
THnSparse* AliDxHFEParticleSelectionEl::DefineTHnSparse()
{
const int thnSize = 3;
InitTHnSparseArray(thnSize);
const double Pi=TMath::Pi();
TString name;
name.Form("%s info", GetName());
int thnBins [thnSize] = { 1000, 200, 500};
double thnMin [thnSize] = { 0, 0, -1.};
double thnMax [thnSize] = { 100, 2*Pi, 1.};
const char* thnNames[thnSize] = { "Pt","Phi","Eta"};
return CreateControlTHnSparse(name,thnSize,thnBins,thnMin,thnMax,thnNames);
}
int AliDxHFEParticleSelectionEl::InitControlObjects()
{
AliInfo("Electron THnSparse");
fElectronProperties=DefineTHnSparse();
AddControlObject(fElectronProperties);
fHistoList=new TList;
fHistoList->SetName("HFE Histograms");
fHistoList->SetOwner();
fHistoList->Add(CreateControlHistogram("fWhichCut","effective cut for a rejected particle", kNCutLabels, fgkCutBinNames));
fHistoList->Add(CreateControlHistogram("fTPCnClAOD","Nr TPC clusters/track for all tracks", 160, 0., 159.));
fHistoList->Add(CreateControlHistogram("fTPCnClSingleTrackCuts","Nr TPC clusters/track After SingleTrackCuts", 160, 0., 159.));
fHistoList->Add(CreateControlHistogram("fTPCnClTPCTOFPID","Nr TPC clusters/track After TPCTOF PID", 160, 0., 159.));
double dEdxBins[6]={1000,0.,10.,200,0.,200.};
double nSigBins[6]={1000,0.,10.,200,-10.,10.};
fHistoList->Add(CreateControl2DHistogram("fdEdx", "dEdx before cuts", dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fdEdxCut", "dEdx after cuts",dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fdEdxPidTOF", "dEdx after TOF pid",dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fdEdxPidTPC", "dEdx after TPC pid",dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fdEdxPid", "dEdx after pid",dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fdEdxIM", "dEdx after Inv Mass",dEdxBins,"momentum (GeV/c)","dE/dx in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTPC", "nSigTPC before cuts",nSigBins,"momentum (GeV/c)","nSigma in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTPCCut", "nSigmaTPC after cuts",nSigBins,"momentum (GeV/c)","nSigma in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTPCPidTPC", "nSigmaTPC after TPC PID", nSigBins,"momentum (GeV/c)","nSigma in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTPCPidTOF", "nSigmaTPC after TOF PID", nSigBins,"momentum (GeV/c)","nSigma in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTPCPid", "nSigmaTPC after PID", nSigBins,"momentum (GeV/c)","nSigma in TPC (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTOF", "nSigmaTOF before cuts",nSigBins,"momentum (GeV/c)","nSigma in TOF (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTOFCut", "nSigmaTOF after cuts",nSigBins,"momentum (GeV/c)","nSigma in TOF (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTOFPidTOF", "nSigmaTOF after TOF PID", nSigBins,"momentum (GeV/c)","nSigma in TOF (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTOFPidTPC", "nSigmaTOF after TPC PID", nSigBins,"momentum (GeV/c)","nSigma in TOF (a.u.)"));
fHistoList->Add(CreateControl2DHistogram("fnSigTOFPid", "nSigmaTOF after PID", nSigBins,"momentum (GeV/c)","nSigma in TOF (a.u.)"));
fHistoList->Add(CreateControlHistogram("fInvMassLS", "Invariant mass LS", 1000, 0., 0.5));
fHistoList->Add(CreateControlHistogram("fInvMassULS", "Invariant mass ULS", 1000, 0., 0.5));
fHistoList->Add(CreateControlHistogram("fInvMass2SelLS", "Invariant mass two selected particles LS", 1000, 0., 5.));
fHistoList->Add(CreateControlHistogram("fInvMass2SelULS", "Invariant mass two selected particles ULS", 1000, 0., 5.));
fHistoList->Add(CreateControlHistogram("fInvMass2SelLScut", "Invariant mass two selected particles LS (cut)", 1000, 0., 0.5));
fHistoList->Add(CreateControlHistogram("fInvMass2SelULScut", "Invariant mass two selected particles ULS (cut)", 1000, 0., 0.5));
fSelNHFE->SetHistMass((TH1F*)fHistoList->FindObject("fInvMassULS"));
fSelNHFE->SetHistMassBack((TH1F*)fHistoList->FindObject("fInvMassLS"));
AddControlObject(fHistoList);
return AliDxHFEParticleSelection::InitControlObjects();
}
int AliDxHFEParticleSelectionEl::HistogramParticleProperties(AliVParticle* p, int selectionCode)
{
if (!p) return -EINVAL;
if(selectionCode==0) return 0;
if(fElectronProperties && ParticleProperties()) {
FillParticleProperties(p, ParticleProperties(), GetDimTHnSparse());
fElectronProperties->Fill(ParticleProperties());
}
return 0;
}
int AliDxHFEParticleSelectionEl::FillParticleProperties(AliVParticle* p, Double_t* data, int dimension) const
{
if (!data) return -EINVAL;
AliAODTrack *track=(AliAODTrack*)p;
if (!track) return -ENODATA;
int i=0;
if (dimension!=GetDimTHnSparse()) {
return -ENOSPC;
}
data[i++]=track->Pt();
data[i++]=track->Phi();
data[i++]=track->Eta();
return i;
}
TObjArray* AliDxHFEParticleSelectionEl::Select(const AliVEvent* pEvent)
{
if (!pEvent) return NULL;
TList* selectedTracks=new TList;
fSelNHFE->SetPIDresponse(fPIDResponse);
fPIDTPC->SetPIDResponse(fPIDResponse);
TObjArray* finalTracks=new TObjArray;
if (!finalTracks) return NULL;
finalTracks->SetOwner(kFALSE);
TObjArray* finalTracksIM=new TObjArray;
if (!finalTracksIM) return NULL;
finalTracksIM->SetOwner(kFALSE);
int nofTracks=pEvent->GetNumberOfTracks();
fTrackNum=0;
int selectionCode=0;
for (int itrack=0; itrack<nofTracks; itrack++) {
selectionCode=0;
AliVParticle* track=pEvent->GetTrack(itrack);
selectionCode=IsSelected(track,pEvent);
fTrackNum++;
if (selectionCode==0) continue;
AliReducedParticle *trackReduced2 =(AliReducedParticle*)CreateParticle(track);
finalTracks->Add(trackReduced2);
if(fUseInvMassCut!=kInvMassTwoSelected || selectionCode==0)
HistogramParticleProperties(trackReduced2, selectionCode);
selectedTracks->Add(track);
}
if(selectedTracks->GetSize()>0)
{
Bool_t* selTrackIndex=new Bool_t[selectedTracks->GetSize()];
if (selTrackIndex) {
InvMassFilter(selectedTracks, selTrackIndex);
if(fUseInvMassCut==kInvMassTwoSelected){
for(Int_t k=0; k<selectedTracks->GetSize(); k++)
{
selectionCode=0;
AliAODTrack *trackIM=(AliAODTrack*)selectedTracks->At(k);
AliReducedParticle *trackReduced=(AliReducedParticle*)finalTracks->At(k);
if(selTrackIndex[k]==kTRUE)
{
((TH2D*)fHistoList->FindObject("fdEdxIM"))->Fill(trackIM->GetTPCmomentum(), trackIM->GetTPCsignal());
finalTracksIM->Add(trackReduced);
selectionCode=1;
}
HistogramParticleProperties(trackReduced, selectionCode);
}
}
delete [] selTrackIndex;
}
}
HistogramEventProperties(AliDxHFEParticleSelection::kHistoNrTracksPrEvent,finalTracks->GetEntries());
if(fUseInvMassCut!=kInvMassTwoSelected)
return finalTracks;
else
return finalTracksIM;
}
int AliDxHFEParticleSelectionEl::IsSelected(AliVParticle* pEl, const AliVEvent* pEvent)
{
if(!pEvent){
AliError("No event information");
return 0;
}
fSurvivedCutStep=kNotSelected;
AliAODTrack *track=(AliAODTrack*)pEl;
fCFM->SetRecEventInfo(pEvent);
((TH2D*)fHistoList->FindObject("fdEdx"))->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
((TH2D*)fHistoList->FindObject("fnSigTPC"))->Fill(track->GetTPCmomentum(), fPIDResponse->NumberOfSigmasTPC(track,AliPID::kElectron));
((TH2D*)fHistoList->FindObject("fnSigTOF"))->Fill(track->P(), fPIDResponse->NumberOfSigmasTOF(track,AliPID::kElectron));
((TH1D*)fHistoList->FindObject("fTPCnClAOD"))->Fill(track->GetTPCNcls());
if(fFinalCutStep==kNoCuts){
Float_t radial=999;
Bool_t acceptTrack=kFALSE;
if(TMath::Abs(track->Eta()) < fEtaCut) {
acceptTrack=kTRUE;
}
const Double_t kBeampiperadius=fImpactParamCutRadial;
Double_t dcaD[2]={-999.,-999.}, covD[3]={-999.,-999.,-999.};
AliAODEvent *aodevent = (AliAODEvent*)(pEvent);
if(!aodevent) {
AliDebug(1, "No aod event available\n");
return 0;
}
AliAODVertex *vtxAODSkip = aodevent->GetPrimaryVertex();
if(!vtxAODSkip) return 0;
AliExternalTrackParam etp; etp.CopyFromVTrack(track);
if(etp.PropagateToDCA(vtxAODSkip, aodevent->GetMagneticField(), kBeampiperadius, dcaD, covD)) {
radial = dcaD[0];
}
if(acceptTrack && TMath::Abs(radial) < fImpactParamCutRadial){
acceptTrack=kTRUE;
}
if(acceptTrack)
fSurvivedCutStep=kNoCuts;
if(!acceptTrack) return 0;
AliDebug(2,"Returns after kNoCuts");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected);
return 1;
}
if(!ProcessCutStep(AliHFEcuts::kStepRecKineITSTPC, track)){
AliDebug(4,"Cut: kStepRecKineITSTPC");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kRecKineITSTPC);
return 0;
}
if(fStoreCutStepInfo) fSurvivedCutStep=kRecKineITSTPC;
if(fFinalCutStep==kRecKineITSTPC) {AliDebug(2,"Returns after kStepRecKineITSTPC"); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
if(!ProcessCutStep(AliHFEcuts::kStepRecPrim, track)) {
AliDebug(4,"Cut: kStepRecPrim");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kRecPrim);
if(!fStoreCutStepInfo) return 0;
else return 1;
}
if(fStoreCutStepInfo) fSurvivedCutStep=kRecPrim;
if(fFinalCutStep==kRecPrim) {AliDebug(2,"Returns after kRecPrim"); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
if(!ProcessCutStep(AliHFEcuts::kStepHFEcutsITS, track)) {
AliDebug(4,"Cut: kStepHFEcutsITS");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kHFEcutsITS);
if(!fStoreCutStepInfo) return 0;
else return 1;
}
if(fStoreCutStepInfo) fSurvivedCutStep=kHFEcutsITS;
if(fFinalCutStep==kHFEcutsITS) {AliDebug(2,"Returns after kHFEcutsITS "); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
if(!ProcessCutStep(AliHFEcuts::kStepHFEcutsTOF, track)) {
AliDebug(4,"Cut: kStepHFEcutsTOF");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kHFEcutsTOF);
if(!fStoreCutStepInfo) return 0;
else return 1;
}
if(fStoreCutStepInfo) fSurvivedCutStep=kHFEcutsTOF;
if(fFinalCutStep==kHFEcutsTOF) {AliDebug(2,"Returns after kHFEcutsTOF"); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
if(!ProcessCutStep(AliHFEcuts::kStepHFEcutsTPC, track)){
AliDebug(4,"Cut: kStepHFEcutsTPC");
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kHFEcutsTPC);
if(!fStoreCutStepInfo) return 0;
else return 1;
}
if(fStoreCutStepInfo) fSurvivedCutStep=kHFEcutsTPC;
((TH2D*)fHistoList->FindObject("fdEdxCut"))->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
((TH2D*)fHistoList->FindObject("fnSigTPCCut"))->Fill(track->GetTPCmomentum(), fPIDResponse->NumberOfSigmasTPC(track,AliPID::kElectron));
((TH2D*)fHistoList->FindObject("fnSigTOFCut"))->Fill(track->P(), fPIDResponse->NumberOfSigmasTOF(track,AliPID::kElectron));
((TH1D*)fHistoList->FindObject("fTPCnClSingleTrackCuts"))->Fill(track->GetTPCNcls());
if(fFinalCutStep==kHFEcutsTPC) {AliDebug(2,"Returns after track cuts"); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
AliHFEpidObject hfetrack;
hfetrack.SetAnalysisType(AliHFEpidObject::kAODanalysis);
hfetrack.SetRecTrack(track);
if(GetSystem()==1) {
hfetrack.SetPbPb();
hfetrack.SetCentrality(-1);
}
else hfetrack.SetPP();
if(fPIDTOF && fPIDTOF->IsSelected(&hfetrack)) {
((TH2D*)fHistoList->FindObject("fdEdxPidTOF"))->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
((TH2D*)fHistoList->FindObject("fnSigTPCPidTOF"))->Fill(track->GetTPCmomentum(), fPIDResponse->NumberOfSigmasTPC(track,AliPID::kElectron));
((TH2D*)fHistoList->FindObject("fnSigTOFPidTOF"))->Fill(track->P(), fPIDResponse->NumberOfSigmasTOF(track,AliPID::kElectron));
if(fStoreCutStepInfo){fSurvivedCutStep=kPIDTOF; }
if(fFinalCutStep==kPIDTOF) {AliDebug(2,"Returns at PIDTOF");((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
}
else{
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kPIDTOF);
}
if(fFinalCutStep==kPIDTOF) {AliDebug(2,"Returns at PIDTOF"); return 0;}
if(fPIDTPC && fPIDTPC->IsSelected(&hfetrack)) {
((TH2D*)fHistoList->FindObject("fdEdxPidTPC"))->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
((TH2D*)fHistoList->FindObject("fnSigTPCPidTPC"))->Fill(track->GetTPCmomentum(), fPIDResponse->NumberOfSigmasTPC(track,AliPID::kElectron));
((TH2D*)fHistoList->FindObject("fnSigTOFPidTPC"))->Fill(track->P(), fPIDResponse->NumberOfSigmasTOF(track,AliPID::kElectron));
if(fStoreCutStepInfo){fSurvivedCutStep=kPIDTPC; }
if(fFinalCutStep==kPIDTPC) {AliDebug(2,"Returns at PIDTPC"); ((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected); return 1;}
}
else{
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kPIDTPC);
}
if(fFinalCutStep==kPIDTPC) {AliDebug(2,"Returns at PIDTTPC"); return 0;}
if(fPIDTOFTPC && fPIDTOFTPC->IsSelected(&hfetrack)) {
AliDebug(3,"Inside FilldPhi, electron is selected");
((TH2D*)fHistoList->FindObject("fdEdxPid"))->Fill(track->GetTPCmomentum(), track->GetTPCsignal());
((TH2D*)fHistoList->FindObject("fnSigTPCPid"))->Fill(track->GetTPCmomentum(), fPIDResponse->NumberOfSigmasTPC(track,AliPID::kElectron));
((TH2D*)fHistoList->FindObject("fnSigTOFPid"))->Fill(track->P(), fPIDResponse->NumberOfSigmasTOF(track,AliPID::kElectron));
((TH1D*)fHistoList->FindObject("fTPCnClTPCTOFPID"))->Fill(track->GetTPCNcls());
if(fStoreCutStepInfo){
fSurvivedCutStep=kPIDTOFTPC;
}
}
else{
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kPIDTOFTPC);
AliDebug(4,"Cut: kTPCTOFPID");
if(!fStoreCutStepInfo) return 0;
else { return 1; }
}
if(fUseInvMassCut==kInvMassSingleSelected)
{
AliDebug(4,"invmass check");
fSelNHFE->FindNonHFE(fTrackNum, track, const_cast<AliVEvent*>(pEvent));
if(fSelNHFE->IsLS() || fSelNHFE->IsULS())
{
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kINVMASS);
AliDebug(4,"Cut: Invmass");
if(!fStoreCutStepInfo) return 0;
}
else
if(fStoreCutStepInfo) fSurvivedCutStep=kINVMASS;
}
((TH1D*)fHistoList->FindObject("fWhichCut"))->Fill(kSelected);
return 1;
}
void AliDxHFEParticleSelectionEl::SetCuts(TObject* cuts, int level)
{
if (level==kCutHFE) {
fCuts=dynamic_cast<AliHFEcuts*>(cuts);
if (!fCuts && cuts) {
AliError(Form("Cut object is not of required type AliHFEcuts but %s", cuts->ClassName()));
}
return;
}
if (level==kCutPIDTOFTPC) {
fPIDTOFTPC=dynamic_cast<AliHFEpid*>(cuts);
if (!fPIDTOFTPC && cuts) {
AliError(Form("cuts object is not of required type AliHFEpid but %s", cuts->ClassName()));
}
return;
}
if (level==kCutPIDTOF) {
fPIDTOF=dynamic_cast<AliHFEpid*>(cuts);
if (!fPIDTOF && cuts) {
AliError(Form("cuts object is not of required type AliHFEpid but %s", cuts->ClassName()));
}
return;
}
if(level==kCutList){
fCutPidList=dynamic_cast<TList*>(cuts);
if (!fCutPidList && cuts) {
AliError(Form("cuts object is not of required type TList but %s", cuts->ClassName()));
}
else{
TObject *obj=NULL;
int iii=0;
TIter next(fCutPidList);
while((obj = next())){
iii++;
if(iii==1) {
fCuts=dynamic_cast<AliHFEcuts*>(obj);
if (!fCuts)
AliError(Form("Cut object is not of required type AliHFEcuts but %s", cuts->ClassName()));
}
if(iii==2){
fPIDTOFTPC=dynamic_cast<AliHFEpid*>(obj);
if (!fPIDTOFTPC)
AliError(Form("(TOFTPC) cuts object is not of required type AliHFEpid but %s", cuts->ClassName()));
}
if(iii==3){
fPIDTOF=dynamic_cast<AliHFEpid*>(obj);
if (!fPIDTOF)
AliError(Form("(TOF) cuts object is not of required type AliHFEpid but %s", cuts->ClassName()));
}
}
}
return;
}
}
Bool_t AliDxHFEParticleSelectionEl::ProcessCutStep(Int_t cutStep, AliVParticle *track)
{
const Int_t kMCOffset = AliHFEcuts::kNcutStepsMCTrack;
if(!fCFM->CheckParticleCuts(cutStep + kMCOffset, track)) return kFALSE;
return kTRUE;
}
int AliDxHFEParticleSelectionEl::ParseArguments(const char* arguments)
{
TString strArguments(arguments);
auto_ptr<TObjArray> tokens(strArguments.Tokenize(" "));
if (!tokens.get()) return 0;
AliInfo(strArguments);
TIter next(tokens.get());
TObject* token;
while ((token=next())) {
TString argument=token->GetName();
if(argument.BeginsWith("elreco=")){
argument.ReplaceAll("elreco=", "");
int selectionStep=kPIDTOFTPC;
if(argument.CompareTo("alltracks")==0) selectionStep=kNoCuts;
if(argument.CompareTo("afterreckineitstpc")==0) selectionStep=kRecKineITSTPC;
if(argument.CompareTo("afterrecprim")==0) selectionStep=kRecPrim;
if(argument.CompareTo("afterhfeits")==0) selectionStep=kHFEcutsITS;
if(argument.CompareTo("afterhfetof")==0) selectionStep=kHFEcutsTOF;
if(argument.CompareTo("afterhfetpc")==0) selectionStep=kHFEcutsTPC;
if(argument.CompareTo("aftertrackcuts")==0) selectionStep=kHFEcutsTPC;
if(argument.CompareTo("aftertofpid")==0) selectionStep=kPIDTOF;
if(argument.CompareTo("aftertpcpid")==0) selectionStep=kPIDTPC;
if(argument.CompareTo("afterfullpid")==0) selectionStep=kPIDTOFTPC;
SetFinalCutStep(selectionStep);
continue;
}
if(argument.BeginsWith("twoselectedinvmasscut")){
fUseInvMassCut=kInvMassTwoSelected;
AliInfo("Using Invariant mass cut for two selected particles");
continue;
}
if(argument.BeginsWith("useinvmasscut")){
fUseInvMassCut=kInvMassSingleSelected;
AliInfo("Using Invariant mass cut for single selected particle and looser cuts on partner");
continue;
}
if(argument.BeginsWith("invmasscut=")){
argument.ReplaceAll("invmasscut=", "");
fInvMassLow=argument.Atof();
AliInfo(Form("Using invariant mass cut: %f",fInvMassLow));
continue;
}
if(argument.BeginsWith("impactparamcut=")){
argument.ReplaceAll("impactparamcut=", "");
fImpactParamCutRadial=argument.Atof();
AliInfo(Form("Using impact parameter cut: %f",fImpactParamCutRadial));
continue;
}
if(argument.BeginsWith("etacut=")){
argument.ReplaceAll("etacut=", "");
fEtaCut=argument.Atof();
AliInfo(Form("Using Eta cut: %f",fEtaCut));
continue;
}
if(argument.BeginsWith("storelastcutstep")){
AliInfo("Stores the last cut step");
SetStoreLastCutStep(kTRUE);
continue;
}
AliDxHFEParticleSelection::ParseArguments(argument);
}
return 0;
}
void AliDxHFEParticleSelectionEl::InvMassFilter(TList *elList, Bool_t *selIndx)
{
for(int i=0; i<((elList->GetSize())-1); i++)
{
AliAODTrack *trackAsso=(AliAODTrack*)elList->At(i);
for(int j=i+1; j<elList->GetSize(); j++)
{
AliAODTrack *track=(AliAODTrack*)elList->At(j);
if(trackAsso && track)
{
Double_t mass=-999., width = -999;
Bool_t fFlagLS=kFALSE, fFlagULS=kFALSE;
Int_t chargeAsso = trackAsso->Charge();
Int_t charge = track->Charge();
Int_t fPDGe1 = 11; Int_t fPDGe2 = 11;
if(charge>0) fPDGe1 = -11;
if(chargeAsso>0) fPDGe2 = -11;
if(charge == chargeAsso) fFlagLS = kTRUE;
if(charge != chargeAsso) fFlagULS = kTRUE;
AliKFParticle ge1 = AliKFParticle(*track, fPDGe1);
AliKFParticle ge2 = AliKFParticle(*trackAsso, fPDGe2);
AliKFParticle recg(ge1, ge2);
if(recg.GetNDF()<1) continue;
Double_t chi2recg = recg.GetChi2()/recg.GetNDF();
if(TMath::Sqrt(TMath::Abs(chi2recg))>3.) continue;
recg.GetMass(mass,width);
if(fFlagLS) {
((TH1D*)fHistoList->FindObject("fInvMass2SelLS"))->Fill(mass);
if(mass>fInvMassLow)
{
((TH1D*)fHistoList->FindObject("fInvMass2SelLScut"))->Fill(mass);
selIndx[i]=kTRUE;
selIndx[j]=kTRUE;
}
}
if(fFlagULS) {
((TH1D*)fHistoList->FindObject("fInvMass2SelULS"))->Fill(mass);
if(mass>fInvMassLow)
{
((TH1D*)fHistoList->FindObject("fInvMass2SelULScut"))->Fill(mass);
selIndx[i]=kTRUE;
selIndx[j]=kTRUE;
}
}
}
}
}
}
AliDxHFEParticleSelectionEl.cxx:1 AliDxHFEParticleSelectionEl.cxx:2 AliDxHFEParticleSelectionEl.cxx:3 AliDxHFEParticleSelectionEl.cxx:4 AliDxHFEParticleSelectionEl.cxx:5 AliDxHFEParticleSelectionEl.cxx:6 AliDxHFEParticleSelectionEl.cxx:7 AliDxHFEParticleSelectionEl.cxx:8 AliDxHFEParticleSelectionEl.cxx:9 AliDxHFEParticleSelectionEl.cxx:10 AliDxHFEParticleSelectionEl.cxx:11 AliDxHFEParticleSelectionEl.cxx:12 AliDxHFEParticleSelectionEl.cxx:13 AliDxHFEParticleSelectionEl.cxx:14 AliDxHFEParticleSelectionEl.cxx:15 AliDxHFEParticleSelectionEl.cxx:16 AliDxHFEParticleSelectionEl.cxx:17 AliDxHFEParticleSelectionEl.cxx:18 AliDxHFEParticleSelectionEl.cxx:19 AliDxHFEParticleSelectionEl.cxx:20 AliDxHFEParticleSelectionEl.cxx:21 AliDxHFEParticleSelectionEl.cxx:22 AliDxHFEParticleSelectionEl.cxx:23 AliDxHFEParticleSelectionEl.cxx:24 AliDxHFEParticleSelectionEl.cxx:25 AliDxHFEParticleSelectionEl.cxx:26 AliDxHFEParticleSelectionEl.cxx:27 AliDxHFEParticleSelectionEl.cxx:28 AliDxHFEParticleSelectionEl.cxx:29 AliDxHFEParticleSelectionEl.cxx:30 AliDxHFEParticleSelectionEl.cxx:31 AliDxHFEParticleSelectionEl.cxx:32 AliDxHFEParticleSelectionEl.cxx:33 AliDxHFEParticleSelectionEl.cxx:34 AliDxHFEParticleSelectionEl.cxx:35 AliDxHFEParticleSelectionEl.cxx:36 AliDxHFEParticleSelectionEl.cxx:37 AliDxHFEParticleSelectionEl.cxx:38 AliDxHFEParticleSelectionEl.cxx:39 AliDxHFEParticleSelectionEl.cxx:40 AliDxHFEParticleSelectionEl.cxx:41 AliDxHFEParticleSelectionEl.cxx:42 AliDxHFEParticleSelectionEl.cxx:43 AliDxHFEParticleSelectionEl.cxx:44 AliDxHFEParticleSelectionEl.cxx:45 AliDxHFEParticleSelectionEl.cxx:46 AliDxHFEParticleSelectionEl.cxx:47 AliDxHFEParticleSelectionEl.cxx:48 AliDxHFEParticleSelectionEl.cxx:49 AliDxHFEParticleSelectionEl.cxx:50 AliDxHFEParticleSelectionEl.cxx:51 AliDxHFEParticleSelectionEl.cxx:52 AliDxHFEParticleSelectionEl.cxx:53 AliDxHFEParticleSelectionEl.cxx:54 AliDxHFEParticleSelectionEl.cxx:55 AliDxHFEParticleSelectionEl.cxx:56 AliDxHFEParticleSelectionEl.cxx:57 AliDxHFEParticleSelectionEl.cxx:58 AliDxHFEParticleSelectionEl.cxx:59 AliDxHFEParticleSelectionEl.cxx:60 AliDxHFEParticleSelectionEl.cxx:61 AliDxHFEParticleSelectionEl.cxx:62 AliDxHFEParticleSelectionEl.cxx:63 AliDxHFEParticleSelectionEl.cxx:64 AliDxHFEParticleSelectionEl.cxx:65 AliDxHFEParticleSelectionEl.cxx:66 AliDxHFEParticleSelectionEl.cxx:67 AliDxHFEParticleSelectionEl.cxx:68 AliDxHFEParticleSelectionEl.cxx:69 AliDxHFEParticleSelectionEl.cxx:70 AliDxHFEParticleSelectionEl.cxx:71 AliDxHFEParticleSelectionEl.cxx:72 AliDxHFEParticleSelectionEl.cxx:73 AliDxHFEParticleSelectionEl.cxx:74 AliDxHFEParticleSelectionEl.cxx:75 AliDxHFEParticleSelectionEl.cxx:76 AliDxHFEParticleSelectionEl.cxx:77 AliDxHFEParticleSelectionEl.cxx:78 AliDxHFEParticleSelectionEl.cxx:79 AliDxHFEParticleSelectionEl.cxx:80 AliDxHFEParticleSelectionEl.cxx:81 AliDxHFEParticleSelectionEl.cxx:82 AliDxHFEParticleSelectionEl.cxx:83 AliDxHFEParticleSelectionEl.cxx:84 AliDxHFEParticleSelectionEl.cxx:85 AliDxHFEParticleSelectionEl.cxx:86 AliDxHFEParticleSelectionEl.cxx:87 AliDxHFEParticleSelectionEl.cxx:88 AliDxHFEParticleSelectionEl.cxx:89 AliDxHFEParticleSelectionEl.cxx:90 AliDxHFEParticleSelectionEl.cxx:91 AliDxHFEParticleSelectionEl.cxx:92 AliDxHFEParticleSelectionEl.cxx:93 AliDxHFEParticleSelectionEl.cxx:94 AliDxHFEParticleSelectionEl.cxx:95 AliDxHFEParticleSelectionEl.cxx:96 AliDxHFEParticleSelectionEl.cxx:97 AliDxHFEParticleSelectionEl.cxx:98 AliDxHFEParticleSelectionEl.cxx:99 AliDxHFEParticleSelectionEl.cxx:100 AliDxHFEParticleSelectionEl.cxx:101 AliDxHFEParticleSelectionEl.cxx:102 AliDxHFEParticleSelectionEl.cxx:103 AliDxHFEParticleSelectionEl.cxx:104 AliDxHFEParticleSelectionEl.cxx:105 AliDxHFEParticleSelectionEl.cxx:106 AliDxHFEParticleSelectionEl.cxx:107 AliDxHFEParticleSelectionEl.cxx:108 AliDxHFEParticleSelectionEl.cxx:109 AliDxHFEParticleSelectionEl.cxx:110 AliDxHFEParticleSelectionEl.cxx:111 AliDxHFEParticleSelectionEl.cxx:112 AliDxHFEParticleSelectionEl.cxx:113 AliDxHFEParticleSelectionEl.cxx:114 AliDxHFEParticleSelectionEl.cxx:115 AliDxHFEParticleSelectionEl.cxx:116 AliDxHFEParticleSelectionEl.cxx:117 AliDxHFEParticleSelectionEl.cxx:118 AliDxHFEParticleSelectionEl.cxx:119 AliDxHFEParticleSelectionEl.cxx:120 AliDxHFEParticleSelectionEl.cxx:121 AliDxHFEParticleSelectionEl.cxx:122 AliDxHFEParticleSelectionEl.cxx:123 AliDxHFEParticleSelectionEl.cxx:124 AliDxHFEParticleSelectionEl.cxx:125 AliDxHFEParticleSelectionEl.cxx:126 AliDxHFEParticleSelectionEl.cxx:127 AliDxHFEParticleSelectionEl.cxx:128 AliDxHFEParticleSelectionEl.cxx:129 AliDxHFEParticleSelectionEl.cxx:130 AliDxHFEParticleSelectionEl.cxx:131 AliDxHFEParticleSelectionEl.cxx:132 AliDxHFEParticleSelectionEl.cxx:133 AliDxHFEParticleSelectionEl.cxx:134 AliDxHFEParticleSelectionEl.cxx:135 AliDxHFEParticleSelectionEl.cxx:136 AliDxHFEParticleSelectionEl.cxx:137 AliDxHFEParticleSelectionEl.cxx:138 AliDxHFEParticleSelectionEl.cxx:139 AliDxHFEParticleSelectionEl.cxx:140 AliDxHFEParticleSelectionEl.cxx:141 AliDxHFEParticleSelectionEl.cxx:142 AliDxHFEParticleSelectionEl.cxx:143 AliDxHFEParticleSelectionEl.cxx:144 AliDxHFEParticleSelectionEl.cxx:145 AliDxHFEParticleSelectionEl.cxx:146 AliDxHFEParticleSelectionEl.cxx:147 AliDxHFEParticleSelectionEl.cxx:148 AliDxHFEParticleSelectionEl.cxx:149 AliDxHFEParticleSelectionEl.cxx:150 AliDxHFEParticleSelectionEl.cxx:151 AliDxHFEParticleSelectionEl.cxx:152 AliDxHFEParticleSelectionEl.cxx:153 AliDxHFEParticleSelectionEl.cxx:154 AliDxHFEParticleSelectionEl.cxx:155 AliDxHFEParticleSelectionEl.cxx:156 AliDxHFEParticleSelectionEl.cxx:157 AliDxHFEParticleSelectionEl.cxx:158 AliDxHFEParticleSelectionEl.cxx:159 AliDxHFEParticleSelectionEl.cxx:160 AliDxHFEParticleSelectionEl.cxx:161 AliDxHFEParticleSelectionEl.cxx:162 AliDxHFEParticleSelectionEl.cxx:163 AliDxHFEParticleSelectionEl.cxx:164 AliDxHFEParticleSelectionEl.cxx:165 AliDxHFEParticleSelectionEl.cxx:166 AliDxHFEParticleSelectionEl.cxx:167 AliDxHFEParticleSelectionEl.cxx:168 AliDxHFEParticleSelectionEl.cxx:169 AliDxHFEParticleSelectionEl.cxx:170 AliDxHFEParticleSelectionEl.cxx:171 AliDxHFEParticleSelectionEl.cxx:172 AliDxHFEParticleSelectionEl.cxx:173 AliDxHFEParticleSelectionEl.cxx:174 AliDxHFEParticleSelectionEl.cxx:175 AliDxHFEParticleSelectionEl.cxx:176 AliDxHFEParticleSelectionEl.cxx:177 AliDxHFEParticleSelectionEl.cxx:178 AliDxHFEParticleSelectionEl.cxx:179 AliDxHFEParticleSelectionEl.cxx:180 AliDxHFEParticleSelectionEl.cxx:181 AliDxHFEParticleSelectionEl.cxx:182 AliDxHFEParticleSelectionEl.cxx:183 AliDxHFEParticleSelectionEl.cxx:184 AliDxHFEParticleSelectionEl.cxx:185 AliDxHFEParticleSelectionEl.cxx:186 AliDxHFEParticleSelectionEl.cxx:187 AliDxHFEParticleSelectionEl.cxx:188 AliDxHFEParticleSelectionEl.cxx:189 AliDxHFEParticleSelectionEl.cxx:190 AliDxHFEParticleSelectionEl.cxx:191 AliDxHFEParticleSelectionEl.cxx:192 AliDxHFEParticleSelectionEl.cxx:193 AliDxHFEParticleSelectionEl.cxx:194 AliDxHFEParticleSelectionEl.cxx:195 AliDxHFEParticleSelectionEl.cxx:196 AliDxHFEParticleSelectionEl.cxx:197 AliDxHFEParticleSelectionEl.cxx:198 AliDxHFEParticleSelectionEl.cxx:199 AliDxHFEParticleSelectionEl.cxx:200 AliDxHFEParticleSelectionEl.cxx:201 AliDxHFEParticleSelectionEl.cxx:202 AliDxHFEParticleSelectionEl.cxx:203 AliDxHFEParticleSelectionEl.cxx:204 AliDxHFEParticleSelectionEl.cxx:205 AliDxHFEParticleSelectionEl.cxx:206 AliDxHFEParticleSelectionEl.cxx:207 AliDxHFEParticleSelectionEl.cxx:208 AliDxHFEParticleSelectionEl.cxx:209 AliDxHFEParticleSelectionEl.cxx:210 AliDxHFEParticleSelectionEl.cxx:211 AliDxHFEParticleSelectionEl.cxx:212 AliDxHFEParticleSelectionEl.cxx:213 AliDxHFEParticleSelectionEl.cxx:214 AliDxHFEParticleSelectionEl.cxx:215 AliDxHFEParticleSelectionEl.cxx:216 AliDxHFEParticleSelectionEl.cxx:217 AliDxHFEParticleSelectionEl.cxx:218 AliDxHFEParticleSelectionEl.cxx:219 AliDxHFEParticleSelectionEl.cxx:220 AliDxHFEParticleSelectionEl.cxx:221 AliDxHFEParticleSelectionEl.cxx:222 AliDxHFEParticleSelectionEl.cxx:223 AliDxHFEParticleSelectionEl.cxx:224 AliDxHFEParticleSelectionEl.cxx:225 AliDxHFEParticleSelectionEl.cxx:226 AliDxHFEParticleSelectionEl.cxx:227 AliDxHFEParticleSelectionEl.cxx:228 AliDxHFEParticleSelectionEl.cxx:229 AliDxHFEParticleSelectionEl.cxx:230 AliDxHFEParticleSelectionEl.cxx:231 AliDxHFEParticleSelectionEl.cxx:232 AliDxHFEParticleSelectionEl.cxx:233 AliDxHFEParticleSelectionEl.cxx:234 AliDxHFEParticleSelectionEl.cxx:235 AliDxHFEParticleSelectionEl.cxx:236 AliDxHFEParticleSelectionEl.cxx:237 AliDxHFEParticleSelectionEl.cxx:238 AliDxHFEParticleSelectionEl.cxx:239 AliDxHFEParticleSelectionEl.cxx:240 AliDxHFEParticleSelectionEl.cxx:241 AliDxHFEParticleSelectionEl.cxx:242 AliDxHFEParticleSelectionEl.cxx:243 AliDxHFEParticleSelectionEl.cxx:244 AliDxHFEParticleSelectionEl.cxx:245 AliDxHFEParticleSelectionEl.cxx:246 AliDxHFEParticleSelectionEl.cxx:247 AliDxHFEParticleSelectionEl.cxx:248 AliDxHFEParticleSelectionEl.cxx:249 AliDxHFEParticleSelectionEl.cxx:250 AliDxHFEParticleSelectionEl.cxx:251 AliDxHFEParticleSelectionEl.cxx:252 AliDxHFEParticleSelectionEl.cxx:253 AliDxHFEParticleSelectionEl.cxx:254 AliDxHFEParticleSelectionEl.cxx:255 AliDxHFEParticleSelectionEl.cxx:256 AliDxHFEParticleSelectionEl.cxx:257 AliDxHFEParticleSelectionEl.cxx:258 AliDxHFEParticleSelectionEl.cxx:259 AliDxHFEParticleSelectionEl.cxx:260 AliDxHFEParticleSelectionEl.cxx:261 AliDxHFEParticleSelectionEl.cxx:262 AliDxHFEParticleSelectionEl.cxx:263 AliDxHFEParticleSelectionEl.cxx:264 AliDxHFEParticleSelectionEl.cxx:265 AliDxHFEParticleSelectionEl.cxx:266 AliDxHFEParticleSelectionEl.cxx:267 AliDxHFEParticleSelectionEl.cxx:268 AliDxHFEParticleSelectionEl.cxx:269 AliDxHFEParticleSelectionEl.cxx:270 AliDxHFEParticleSelectionEl.cxx:271 AliDxHFEParticleSelectionEl.cxx:272 AliDxHFEParticleSelectionEl.cxx:273 AliDxHFEParticleSelectionEl.cxx:274 AliDxHFEParticleSelectionEl.cxx:275 AliDxHFEParticleSelectionEl.cxx:276 AliDxHFEParticleSelectionEl.cxx:277 AliDxHFEParticleSelectionEl.cxx:278 AliDxHFEParticleSelectionEl.cxx:279 AliDxHFEParticleSelectionEl.cxx:280 AliDxHFEParticleSelectionEl.cxx:281 AliDxHFEParticleSelectionEl.cxx:282 AliDxHFEParticleSelectionEl.cxx:283 AliDxHFEParticleSelectionEl.cxx:284 AliDxHFEParticleSelectionEl.cxx:285 AliDxHFEParticleSelectionEl.cxx:286 AliDxHFEParticleSelectionEl.cxx:287 AliDxHFEParticleSelectionEl.cxx:288 AliDxHFEParticleSelectionEl.cxx:289 AliDxHFEParticleSelectionEl.cxx:290 AliDxHFEParticleSelectionEl.cxx:291 AliDxHFEParticleSelectionEl.cxx:292 AliDxHFEParticleSelectionEl.cxx:293 AliDxHFEParticleSelectionEl.cxx:294 AliDxHFEParticleSelectionEl.cxx:295 AliDxHFEParticleSelectionEl.cxx:296 AliDxHFEParticleSelectionEl.cxx:297 AliDxHFEParticleSelectionEl.cxx:298 AliDxHFEParticleSelectionEl.cxx:299 AliDxHFEParticleSelectionEl.cxx:300 AliDxHFEParticleSelectionEl.cxx:301 AliDxHFEParticleSelectionEl.cxx:302 AliDxHFEParticleSelectionEl.cxx:303 AliDxHFEParticleSelectionEl.cxx:304 AliDxHFEParticleSelectionEl.cxx:305 AliDxHFEParticleSelectionEl.cxx:306 AliDxHFEParticleSelectionEl.cxx:307 AliDxHFEParticleSelectionEl.cxx:308 AliDxHFEParticleSelectionEl.cxx:309 AliDxHFEParticleSelectionEl.cxx:310 AliDxHFEParticleSelectionEl.cxx:311 AliDxHFEParticleSelectionEl.cxx:312 AliDxHFEParticleSelectionEl.cxx:313 AliDxHFEParticleSelectionEl.cxx:314 AliDxHFEParticleSelectionEl.cxx:315 AliDxHFEParticleSelectionEl.cxx:316 AliDxHFEParticleSelectionEl.cxx:317 AliDxHFEParticleSelectionEl.cxx:318 AliDxHFEParticleSelectionEl.cxx:319 AliDxHFEParticleSelectionEl.cxx:320 AliDxHFEParticleSelectionEl.cxx:321 AliDxHFEParticleSelectionEl.cxx:322 AliDxHFEParticleSelectionEl.cxx:323 AliDxHFEParticleSelectionEl.cxx:324 AliDxHFEParticleSelectionEl.cxx:325 AliDxHFEParticleSelectionEl.cxx:326 AliDxHFEParticleSelectionEl.cxx:327 AliDxHFEParticleSelectionEl.cxx:328 AliDxHFEParticleSelectionEl.cxx:329 AliDxHFEParticleSelectionEl.cxx:330 AliDxHFEParticleSelectionEl.cxx:331 AliDxHFEParticleSelectionEl.cxx:332 AliDxHFEParticleSelectionEl.cxx:333 AliDxHFEParticleSelectionEl.cxx:334 AliDxHFEParticleSelectionEl.cxx:335 AliDxHFEParticleSelectionEl.cxx:336 AliDxHFEParticleSelectionEl.cxx:337 AliDxHFEParticleSelectionEl.cxx:338 AliDxHFEParticleSelectionEl.cxx:339 AliDxHFEParticleSelectionEl.cxx:340 AliDxHFEParticleSelectionEl.cxx:341 AliDxHFEParticleSelectionEl.cxx:342 AliDxHFEParticleSelectionEl.cxx:343 AliDxHFEParticleSelectionEl.cxx:344 AliDxHFEParticleSelectionEl.cxx:345 AliDxHFEParticleSelectionEl.cxx:346 AliDxHFEParticleSelectionEl.cxx:347 AliDxHFEParticleSelectionEl.cxx:348 AliDxHFEParticleSelectionEl.cxx:349 AliDxHFEParticleSelectionEl.cxx:350 AliDxHFEParticleSelectionEl.cxx:351 AliDxHFEParticleSelectionEl.cxx:352 AliDxHFEParticleSelectionEl.cxx:353 AliDxHFEParticleSelectionEl.cxx:354 AliDxHFEParticleSelectionEl.cxx:355 AliDxHFEParticleSelectionEl.cxx:356 AliDxHFEParticleSelectionEl.cxx:357 AliDxHFEParticleSelectionEl.cxx:358 AliDxHFEParticleSelectionEl.cxx:359 AliDxHFEParticleSelectionEl.cxx:360 AliDxHFEParticleSelectionEl.cxx:361 AliDxHFEParticleSelectionEl.cxx:362 AliDxHFEParticleSelectionEl.cxx:363 AliDxHFEParticleSelectionEl.cxx:364 AliDxHFEParticleSelectionEl.cxx:365 AliDxHFEParticleSelectionEl.cxx:366 AliDxHFEParticleSelectionEl.cxx:367 AliDxHFEParticleSelectionEl.cxx:368 AliDxHFEParticleSelectionEl.cxx:369 AliDxHFEParticleSelectionEl.cxx:370 AliDxHFEParticleSelectionEl.cxx:371 AliDxHFEParticleSelectionEl.cxx:372 AliDxHFEParticleSelectionEl.cxx:373 AliDxHFEParticleSelectionEl.cxx:374 AliDxHFEParticleSelectionEl.cxx:375 AliDxHFEParticleSelectionEl.cxx:376 AliDxHFEParticleSelectionEl.cxx:377 AliDxHFEParticleSelectionEl.cxx:378 AliDxHFEParticleSelectionEl.cxx:379 AliDxHFEParticleSelectionEl.cxx:380 AliDxHFEParticleSelectionEl.cxx:381 AliDxHFEParticleSelectionEl.cxx:382 AliDxHFEParticleSelectionEl.cxx:383 AliDxHFEParticleSelectionEl.cxx:384 AliDxHFEParticleSelectionEl.cxx:385 AliDxHFEParticleSelectionEl.cxx:386 AliDxHFEParticleSelectionEl.cxx:387 AliDxHFEParticleSelectionEl.cxx:388 AliDxHFEParticleSelectionEl.cxx:389 AliDxHFEParticleSelectionEl.cxx:390 AliDxHFEParticleSelectionEl.cxx:391 AliDxHFEParticleSelectionEl.cxx:392 AliDxHFEParticleSelectionEl.cxx:393 AliDxHFEParticleSelectionEl.cxx:394 AliDxHFEParticleSelectionEl.cxx:395 AliDxHFEParticleSelectionEl.cxx:396 AliDxHFEParticleSelectionEl.cxx:397 AliDxHFEParticleSelectionEl.cxx:398 AliDxHFEParticleSelectionEl.cxx:399 AliDxHFEParticleSelectionEl.cxx:400 AliDxHFEParticleSelectionEl.cxx:401 AliDxHFEParticleSelectionEl.cxx:402 AliDxHFEParticleSelectionEl.cxx:403 AliDxHFEParticleSelectionEl.cxx:404 AliDxHFEParticleSelectionEl.cxx:405 AliDxHFEParticleSelectionEl.cxx:406 AliDxHFEParticleSelectionEl.cxx:407 AliDxHFEParticleSelectionEl.cxx:408 AliDxHFEParticleSelectionEl.cxx:409 AliDxHFEParticleSelectionEl.cxx:410 AliDxHFEParticleSelectionEl.cxx:411 AliDxHFEParticleSelectionEl.cxx:412 AliDxHFEParticleSelectionEl.cxx:413 AliDxHFEParticleSelectionEl.cxx:414 AliDxHFEParticleSelectionEl.cxx:415 AliDxHFEParticleSelectionEl.cxx:416 AliDxHFEParticleSelectionEl.cxx:417 AliDxHFEParticleSelectionEl.cxx:418 AliDxHFEParticleSelectionEl.cxx:419 AliDxHFEParticleSelectionEl.cxx:420 AliDxHFEParticleSelectionEl.cxx:421 AliDxHFEParticleSelectionEl.cxx:422 AliDxHFEParticleSelectionEl.cxx:423 AliDxHFEParticleSelectionEl.cxx:424 AliDxHFEParticleSelectionEl.cxx:425 AliDxHFEParticleSelectionEl.cxx:426 AliDxHFEParticleSelectionEl.cxx:427 AliDxHFEParticleSelectionEl.cxx:428 AliDxHFEParticleSelectionEl.cxx:429 AliDxHFEParticleSelectionEl.cxx:430 AliDxHFEParticleSelectionEl.cxx:431 AliDxHFEParticleSelectionEl.cxx:432 AliDxHFEParticleSelectionEl.cxx:433 AliDxHFEParticleSelectionEl.cxx:434 AliDxHFEParticleSelectionEl.cxx:435 AliDxHFEParticleSelectionEl.cxx:436 AliDxHFEParticleSelectionEl.cxx:437 AliDxHFEParticleSelectionEl.cxx:438 AliDxHFEParticleSelectionEl.cxx:439 AliDxHFEParticleSelectionEl.cxx:440 AliDxHFEParticleSelectionEl.cxx:441 AliDxHFEParticleSelectionEl.cxx:442 AliDxHFEParticleSelectionEl.cxx:443 AliDxHFEParticleSelectionEl.cxx:444 AliDxHFEParticleSelectionEl.cxx:445 AliDxHFEParticleSelectionEl.cxx:446 AliDxHFEParticleSelectionEl.cxx:447 AliDxHFEParticleSelectionEl.cxx:448 AliDxHFEParticleSelectionEl.cxx:449 AliDxHFEParticleSelectionEl.cxx:450 AliDxHFEParticleSelectionEl.cxx:451 AliDxHFEParticleSelectionEl.cxx:452 AliDxHFEParticleSelectionEl.cxx:453 AliDxHFEParticleSelectionEl.cxx:454 AliDxHFEParticleSelectionEl.cxx:455 AliDxHFEParticleSelectionEl.cxx:456 AliDxHFEParticleSelectionEl.cxx:457 AliDxHFEParticleSelectionEl.cxx:458 AliDxHFEParticleSelectionEl.cxx:459 AliDxHFEParticleSelectionEl.cxx:460 AliDxHFEParticleSelectionEl.cxx:461 AliDxHFEParticleSelectionEl.cxx:462 AliDxHFEParticleSelectionEl.cxx:463 AliDxHFEParticleSelectionEl.cxx:464 AliDxHFEParticleSelectionEl.cxx:465 AliDxHFEParticleSelectionEl.cxx:466 AliDxHFEParticleSelectionEl.cxx:467 AliDxHFEParticleSelectionEl.cxx:468 AliDxHFEParticleSelectionEl.cxx:469 AliDxHFEParticleSelectionEl.cxx:470 AliDxHFEParticleSelectionEl.cxx:471 AliDxHFEParticleSelectionEl.cxx:472 AliDxHFEParticleSelectionEl.cxx:473 AliDxHFEParticleSelectionEl.cxx:474 AliDxHFEParticleSelectionEl.cxx:475 AliDxHFEParticleSelectionEl.cxx:476 AliDxHFEParticleSelectionEl.cxx:477 AliDxHFEParticleSelectionEl.cxx:478 AliDxHFEParticleSelectionEl.cxx:479 AliDxHFEParticleSelectionEl.cxx:480 AliDxHFEParticleSelectionEl.cxx:481 AliDxHFEParticleSelectionEl.cxx:482 AliDxHFEParticleSelectionEl.cxx:483 AliDxHFEParticleSelectionEl.cxx:484 AliDxHFEParticleSelectionEl.cxx:485 AliDxHFEParticleSelectionEl.cxx:486 AliDxHFEParticleSelectionEl.cxx:487 AliDxHFEParticleSelectionEl.cxx:488 AliDxHFEParticleSelectionEl.cxx:489 AliDxHFEParticleSelectionEl.cxx:490 AliDxHFEParticleSelectionEl.cxx:491 AliDxHFEParticleSelectionEl.cxx:492 AliDxHFEParticleSelectionEl.cxx:493 AliDxHFEParticleSelectionEl.cxx:494 AliDxHFEParticleSelectionEl.cxx:495 AliDxHFEParticleSelectionEl.cxx:496 AliDxHFEParticleSelectionEl.cxx:497 AliDxHFEParticleSelectionEl.cxx:498 AliDxHFEParticleSelectionEl.cxx:499 AliDxHFEParticleSelectionEl.cxx:500 AliDxHFEParticleSelectionEl.cxx:501 AliDxHFEParticleSelectionEl.cxx:502 AliDxHFEParticleSelectionEl.cxx:503 AliDxHFEParticleSelectionEl.cxx:504 AliDxHFEParticleSelectionEl.cxx:505 AliDxHFEParticleSelectionEl.cxx:506 AliDxHFEParticleSelectionEl.cxx:507 AliDxHFEParticleSelectionEl.cxx:508 AliDxHFEParticleSelectionEl.cxx:509 AliDxHFEParticleSelectionEl.cxx:510 AliDxHFEParticleSelectionEl.cxx:511 AliDxHFEParticleSelectionEl.cxx:512 AliDxHFEParticleSelectionEl.cxx:513 AliDxHFEParticleSelectionEl.cxx:514 AliDxHFEParticleSelectionEl.cxx:515 AliDxHFEParticleSelectionEl.cxx:516 AliDxHFEParticleSelectionEl.cxx:517 AliDxHFEParticleSelectionEl.cxx:518 AliDxHFEParticleSelectionEl.cxx:519 AliDxHFEParticleSelectionEl.cxx:520 AliDxHFEParticleSelectionEl.cxx:521 AliDxHFEParticleSelectionEl.cxx:522 AliDxHFEParticleSelectionEl.cxx:523 AliDxHFEParticleSelectionEl.cxx:524 AliDxHFEParticleSelectionEl.cxx:525 AliDxHFEParticleSelectionEl.cxx:526 AliDxHFEParticleSelectionEl.cxx:527 AliDxHFEParticleSelectionEl.cxx:528 AliDxHFEParticleSelectionEl.cxx:529 AliDxHFEParticleSelectionEl.cxx:530 AliDxHFEParticleSelectionEl.cxx:531 AliDxHFEParticleSelectionEl.cxx:532 AliDxHFEParticleSelectionEl.cxx:533 AliDxHFEParticleSelectionEl.cxx:534 AliDxHFEParticleSelectionEl.cxx:535 AliDxHFEParticleSelectionEl.cxx:536 AliDxHFEParticleSelectionEl.cxx:537 AliDxHFEParticleSelectionEl.cxx:538 AliDxHFEParticleSelectionEl.cxx:539 AliDxHFEParticleSelectionEl.cxx:540 AliDxHFEParticleSelectionEl.cxx:541 AliDxHFEParticleSelectionEl.cxx:542 AliDxHFEParticleSelectionEl.cxx:543 AliDxHFEParticleSelectionEl.cxx:544 AliDxHFEParticleSelectionEl.cxx:545 AliDxHFEParticleSelectionEl.cxx:546 AliDxHFEParticleSelectionEl.cxx:547 AliDxHFEParticleSelectionEl.cxx:548 AliDxHFEParticleSelectionEl.cxx:549 AliDxHFEParticleSelectionEl.cxx:550 AliDxHFEParticleSelectionEl.cxx:551 AliDxHFEParticleSelectionEl.cxx:552 AliDxHFEParticleSelectionEl.cxx:553 AliDxHFEParticleSelectionEl.cxx:554 AliDxHFEParticleSelectionEl.cxx:555 AliDxHFEParticleSelectionEl.cxx:556 AliDxHFEParticleSelectionEl.cxx:557 AliDxHFEParticleSelectionEl.cxx:558 AliDxHFEParticleSelectionEl.cxx:559 AliDxHFEParticleSelectionEl.cxx:560 AliDxHFEParticleSelectionEl.cxx:561 AliDxHFEParticleSelectionEl.cxx:562 AliDxHFEParticleSelectionEl.cxx:563 AliDxHFEParticleSelectionEl.cxx:564 AliDxHFEParticleSelectionEl.cxx:565 AliDxHFEParticleSelectionEl.cxx:566 AliDxHFEParticleSelectionEl.cxx:567 AliDxHFEParticleSelectionEl.cxx:568 AliDxHFEParticleSelectionEl.cxx:569 AliDxHFEParticleSelectionEl.cxx:570 AliDxHFEParticleSelectionEl.cxx:571 AliDxHFEParticleSelectionEl.cxx:572 AliDxHFEParticleSelectionEl.cxx:573 AliDxHFEParticleSelectionEl.cxx:574 AliDxHFEParticleSelectionEl.cxx:575 AliDxHFEParticleSelectionEl.cxx:576 AliDxHFEParticleSelectionEl.cxx:577 AliDxHFEParticleSelectionEl.cxx:578 AliDxHFEParticleSelectionEl.cxx:579 AliDxHFEParticleSelectionEl.cxx:580 AliDxHFEParticleSelectionEl.cxx:581 AliDxHFEParticleSelectionEl.cxx:582 AliDxHFEParticleSelectionEl.cxx:583 AliDxHFEParticleSelectionEl.cxx:584 AliDxHFEParticleSelectionEl.cxx:585 AliDxHFEParticleSelectionEl.cxx:586 AliDxHFEParticleSelectionEl.cxx:587 AliDxHFEParticleSelectionEl.cxx:588 AliDxHFEParticleSelectionEl.cxx:589 AliDxHFEParticleSelectionEl.cxx:590 AliDxHFEParticleSelectionEl.cxx:591 AliDxHFEParticleSelectionEl.cxx:592 AliDxHFEParticleSelectionEl.cxx:593 AliDxHFEParticleSelectionEl.cxx:594 AliDxHFEParticleSelectionEl.cxx:595 AliDxHFEParticleSelectionEl.cxx:596 AliDxHFEParticleSelectionEl.cxx:597 AliDxHFEParticleSelectionEl.cxx:598 AliDxHFEParticleSelectionEl.cxx:599 AliDxHFEParticleSelectionEl.cxx:600 AliDxHFEParticleSelectionEl.cxx:601 AliDxHFEParticleSelectionEl.cxx:602 AliDxHFEParticleSelectionEl.cxx:603 AliDxHFEParticleSelectionEl.cxx:604 AliDxHFEParticleSelectionEl.cxx:605 AliDxHFEParticleSelectionEl.cxx:606 AliDxHFEParticleSelectionEl.cxx:607 AliDxHFEParticleSelectionEl.cxx:608 AliDxHFEParticleSelectionEl.cxx:609 AliDxHFEParticleSelectionEl.cxx:610 AliDxHFEParticleSelectionEl.cxx:611 AliDxHFEParticleSelectionEl.cxx:612 AliDxHFEParticleSelectionEl.cxx:613 AliDxHFEParticleSelectionEl.cxx:614 AliDxHFEParticleSelectionEl.cxx:615 AliDxHFEParticleSelectionEl.cxx:616 AliDxHFEParticleSelectionEl.cxx:617 AliDxHFEParticleSelectionEl.cxx:618 AliDxHFEParticleSelectionEl.cxx:619 AliDxHFEParticleSelectionEl.cxx:620 AliDxHFEParticleSelectionEl.cxx:621 AliDxHFEParticleSelectionEl.cxx:622 AliDxHFEParticleSelectionEl.cxx:623 AliDxHFEParticleSelectionEl.cxx:624 AliDxHFEParticleSelectionEl.cxx:625 AliDxHFEParticleSelectionEl.cxx:626 AliDxHFEParticleSelectionEl.cxx:627 AliDxHFEParticleSelectionEl.cxx:628 AliDxHFEParticleSelectionEl.cxx:629 AliDxHFEParticleSelectionEl.cxx:630 AliDxHFEParticleSelectionEl.cxx:631 AliDxHFEParticleSelectionEl.cxx:632 AliDxHFEParticleSelectionEl.cxx:633 AliDxHFEParticleSelectionEl.cxx:634 AliDxHFEParticleSelectionEl.cxx:635 AliDxHFEParticleSelectionEl.cxx:636 AliDxHFEParticleSelectionEl.cxx:637 AliDxHFEParticleSelectionEl.cxx:638 AliDxHFEParticleSelectionEl.cxx:639 AliDxHFEParticleSelectionEl.cxx:640 AliDxHFEParticleSelectionEl.cxx:641 AliDxHFEParticleSelectionEl.cxx:642 AliDxHFEParticleSelectionEl.cxx:643 AliDxHFEParticleSelectionEl.cxx:644 AliDxHFEParticleSelectionEl.cxx:645 AliDxHFEParticleSelectionEl.cxx:646 AliDxHFEParticleSelectionEl.cxx:647 AliDxHFEParticleSelectionEl.cxx:648 AliDxHFEParticleSelectionEl.cxx:649 AliDxHFEParticleSelectionEl.cxx:650 AliDxHFEParticleSelectionEl.cxx:651 AliDxHFEParticleSelectionEl.cxx:652 AliDxHFEParticleSelectionEl.cxx:653 AliDxHFEParticleSelectionEl.cxx:654 AliDxHFEParticleSelectionEl.cxx:655 AliDxHFEParticleSelectionEl.cxx:656 AliDxHFEParticleSelectionEl.cxx:657 AliDxHFEParticleSelectionEl.cxx:658 AliDxHFEParticleSelectionEl.cxx:659 AliDxHFEParticleSelectionEl.cxx:660 AliDxHFEParticleSelectionEl.cxx:661 AliDxHFEParticleSelectionEl.cxx:662 AliDxHFEParticleSelectionEl.cxx:663 AliDxHFEParticleSelectionEl.cxx:664 AliDxHFEParticleSelectionEl.cxx:665 AliDxHFEParticleSelectionEl.cxx:666 AliDxHFEParticleSelectionEl.cxx:667 AliDxHFEParticleSelectionEl.cxx:668 AliDxHFEParticleSelectionEl.cxx:669 AliDxHFEParticleSelectionEl.cxx:670 AliDxHFEParticleSelectionEl.cxx:671 AliDxHFEParticleSelectionEl.cxx:672 AliDxHFEParticleSelectionEl.cxx:673 AliDxHFEParticleSelectionEl.cxx:674 AliDxHFEParticleSelectionEl.cxx:675 AliDxHFEParticleSelectionEl.cxx:676 AliDxHFEParticleSelectionEl.cxx:677 AliDxHFEParticleSelectionEl.cxx:678 AliDxHFEParticleSelectionEl.cxx:679 AliDxHFEParticleSelectionEl.cxx:680 AliDxHFEParticleSelectionEl.cxx:681 AliDxHFEParticleSelectionEl.cxx:682 AliDxHFEParticleSelectionEl.cxx:683 AliDxHFEParticleSelectionEl.cxx:684 AliDxHFEParticleSelectionEl.cxx:685 AliDxHFEParticleSelectionEl.cxx:686 AliDxHFEParticleSelectionEl.cxx:687 AliDxHFEParticleSelectionEl.cxx:688 AliDxHFEParticleSelectionEl.cxx:689 AliDxHFEParticleSelectionEl.cxx:690 AliDxHFEParticleSelectionEl.cxx:691 AliDxHFEParticleSelectionEl.cxx:692 AliDxHFEParticleSelectionEl.cxx:693 AliDxHFEParticleSelectionEl.cxx:694 AliDxHFEParticleSelectionEl.cxx:695 AliDxHFEParticleSelectionEl.cxx:696 AliDxHFEParticleSelectionEl.cxx:697 AliDxHFEParticleSelectionEl.cxx:698 AliDxHFEParticleSelectionEl.cxx:699 AliDxHFEParticleSelectionEl.cxx:700 AliDxHFEParticleSelectionEl.cxx:701 AliDxHFEParticleSelectionEl.cxx:702 AliDxHFEParticleSelectionEl.cxx:703 AliDxHFEParticleSelectionEl.cxx:704 AliDxHFEParticleSelectionEl.cxx:705 AliDxHFEParticleSelectionEl.cxx:706 AliDxHFEParticleSelectionEl.cxx:707 AliDxHFEParticleSelectionEl.cxx:708 AliDxHFEParticleSelectionEl.cxx:709 AliDxHFEParticleSelectionEl.cxx:710 AliDxHFEParticleSelectionEl.cxx:711 AliDxHFEParticleSelectionEl.cxx:712 AliDxHFEParticleSelectionEl.cxx:713 AliDxHFEParticleSelectionEl.cxx:714 AliDxHFEParticleSelectionEl.cxx:715 AliDxHFEParticleSelectionEl.cxx:716 AliDxHFEParticleSelectionEl.cxx:717 AliDxHFEParticleSelectionEl.cxx:718 AliDxHFEParticleSelectionEl.cxx:719 AliDxHFEParticleSelectionEl.cxx:720 AliDxHFEParticleSelectionEl.cxx:721 AliDxHFEParticleSelectionEl.cxx:722 AliDxHFEParticleSelectionEl.cxx:723 AliDxHFEParticleSelectionEl.cxx:724 AliDxHFEParticleSelectionEl.cxx:725 AliDxHFEParticleSelectionEl.cxx:726 AliDxHFEParticleSelectionEl.cxx:727 AliDxHFEParticleSelectionEl.cxx:728 AliDxHFEParticleSelectionEl.cxx:729 AliDxHFEParticleSelectionEl.cxx:730 AliDxHFEParticleSelectionEl.cxx:731 AliDxHFEParticleSelectionEl.cxx:732 AliDxHFEParticleSelectionEl.cxx:733 AliDxHFEParticleSelectionEl.cxx:734 AliDxHFEParticleSelectionEl.cxx:735 AliDxHFEParticleSelectionEl.cxx:736 AliDxHFEParticleSelectionEl.cxx:737 AliDxHFEParticleSelectionEl.cxx:738 AliDxHFEParticleSelectionEl.cxx:739 AliDxHFEParticleSelectionEl.cxx:740 AliDxHFEParticleSelectionEl.cxx:741 AliDxHFEParticleSelectionEl.cxx:742 AliDxHFEParticleSelectionEl.cxx:743 AliDxHFEParticleSelectionEl.cxx:744 AliDxHFEParticleSelectionEl.cxx:745 AliDxHFEParticleSelectionEl.cxx:746 AliDxHFEParticleSelectionEl.cxx:747 AliDxHFEParticleSelectionEl.cxx:748 AliDxHFEParticleSelectionEl.cxx:749 AliDxHFEParticleSelectionEl.cxx:750 AliDxHFEParticleSelectionEl.cxx:751 AliDxHFEParticleSelectionEl.cxx:752 AliDxHFEParticleSelectionEl.cxx:753 AliDxHFEParticleSelectionEl.cxx:754 AliDxHFEParticleSelectionEl.cxx:755 AliDxHFEParticleSelectionEl.cxx:756 AliDxHFEParticleSelectionEl.cxx:757 AliDxHFEParticleSelectionEl.cxx:758 AliDxHFEParticleSelectionEl.cxx:759 AliDxHFEParticleSelectionEl.cxx:760 AliDxHFEParticleSelectionEl.cxx:761 AliDxHFEParticleSelectionEl.cxx:762 AliDxHFEParticleSelectionEl.cxx:763 AliDxHFEParticleSelectionEl.cxx:764 AliDxHFEParticleSelectionEl.cxx:765 AliDxHFEParticleSelectionEl.cxx:766 AliDxHFEParticleSelectionEl.cxx:767 AliDxHFEParticleSelectionEl.cxx:768 AliDxHFEParticleSelectionEl.cxx:769 AliDxHFEParticleSelectionEl.cxx:770 AliDxHFEParticleSelectionEl.cxx:771 AliDxHFEParticleSelectionEl.cxx:772 AliDxHFEParticleSelectionEl.cxx:773 AliDxHFEParticleSelectionEl.cxx:774 AliDxHFEParticleSelectionEl.cxx:775 AliDxHFEParticleSelectionEl.cxx:776 AliDxHFEParticleSelectionEl.cxx:777 AliDxHFEParticleSelectionEl.cxx:778 AliDxHFEParticleSelectionEl.cxx:779 AliDxHFEParticleSelectionEl.cxx:780 AliDxHFEParticleSelectionEl.cxx:781 AliDxHFEParticleSelectionEl.cxx:782 AliDxHFEParticleSelectionEl.cxx:783 AliDxHFEParticleSelectionEl.cxx:784 AliDxHFEParticleSelectionEl.cxx:785 AliDxHFEParticleSelectionEl.cxx:786 AliDxHFEParticleSelectionEl.cxx:787 AliDxHFEParticleSelectionEl.cxx:788 AliDxHFEParticleSelectionEl.cxx:789 AliDxHFEParticleSelectionEl.cxx:790 AliDxHFEParticleSelectionEl.cxx:791 AliDxHFEParticleSelectionEl.cxx:792 AliDxHFEParticleSelectionEl.cxx:793 AliDxHFEParticleSelectionEl.cxx:794 AliDxHFEParticleSelectionEl.cxx:795 AliDxHFEParticleSelectionEl.cxx:796 AliDxHFEParticleSelectionEl.cxx:797 AliDxHFEParticleSelectionEl.cxx:798 AliDxHFEParticleSelectionEl.cxx:799 AliDxHFEParticleSelectionEl.cxx:800 AliDxHFEParticleSelectionEl.cxx:801 AliDxHFEParticleSelectionEl.cxx:802 AliDxHFEParticleSelectionEl.cxx:803 AliDxHFEParticleSelectionEl.cxx:804 AliDxHFEParticleSelectionEl.cxx:805 AliDxHFEParticleSelectionEl.cxx:806 AliDxHFEParticleSelectionEl.cxx:807 AliDxHFEParticleSelectionEl.cxx:808 AliDxHFEParticleSelectionEl.cxx:809 AliDxHFEParticleSelectionEl.cxx:810 AliDxHFEParticleSelectionEl.cxx:811 AliDxHFEParticleSelectionEl.cxx:812 AliDxHFEParticleSelectionEl.cxx:813 AliDxHFEParticleSelectionEl.cxx:814 AliDxHFEParticleSelectionEl.cxx:815 AliDxHFEParticleSelectionEl.cxx:816 AliDxHFEParticleSelectionEl.cxx:817 AliDxHFEParticleSelectionEl.cxx:818 AliDxHFEParticleSelectionEl.cxx:819 AliDxHFEParticleSelectionEl.cxx:820 AliDxHFEParticleSelectionEl.cxx:821 AliDxHFEParticleSelectionEl.cxx:822 AliDxHFEParticleSelectionEl.cxx:823 AliDxHFEParticleSelectionEl.cxx:824 AliDxHFEParticleSelectionEl.cxx:825 AliDxHFEParticleSelectionEl.cxx:826 AliDxHFEParticleSelectionEl.cxx:827 AliDxHFEParticleSelectionEl.cxx:828 AliDxHFEParticleSelectionEl.cxx:829 AliDxHFEParticleSelectionEl.cxx:830 AliDxHFEParticleSelectionEl.cxx:831 AliDxHFEParticleSelectionEl.cxx:832 AliDxHFEParticleSelectionEl.cxx:833 AliDxHFEParticleSelectionEl.cxx:834