#include <TMath.h>
#include <TString.h>
#include "AliAnalysisCuts.h"
#include "AliCFContainer.h"
#include "AliCFParticleGenCuts.h"
#include "AliCFTrackKineCuts.h"
#include "AliCFTrackIsPrimaryCuts.h"
#include "AliCFTrackQualityCuts.h"
#include "AliMCEvent.h"
#include "AliVEvent.h"
#include "AliVTrack.h"
#include "AliVParticle.h"
#include "AliHFEcontainer.h"
#include "AliHFEcutStep.h"
#include "AliHFEextraCuts.h"
#include "AliHFEtrackFilter.h"
#include "AliHFEtools.h"
ClassImp(AliHFEtrackFilter)
AliHFEtrackFilter::AliHFEtrackFilter() :
TNamed(),
fFilteredTracks(NULL),
fCutSteps(NULL),
fEfficiencyContainers(NULL),
fMC(NULL),
fMCsignal(NULL),
fPtBins(0),
fEtaBins(0),
fPhiBins(0),
fPtBinning(NULL),
fEtaBinning(NULL),
fPhiBinning(NULL)
{
}
AliHFEtrackFilter::AliHFEtrackFilter(const Char_t *name) :
TNamed(name, ""),
fFilteredTracks(NULL),
fCutSteps(NULL),
fEfficiencyContainers(NULL),
fMC(NULL),
fMCsignal(NULL),
fPtBins(0),
fEtaBins(0),
fPhiBins(0),
fPtBinning(NULL),
fEtaBinning(NULL),
fPhiBinning(NULL)
{
fCutSteps = new TObjArray;
fFilteredTracks = new TObjArray;
fEfficiencyContainers = new TObjArray(4);
}
AliHFEtrackFilter::AliHFEtrackFilter(const AliHFEtrackFilter &ref):
TNamed(ref),
fFilteredTracks(NULL),
fCutSteps(NULL),
fEfficiencyContainers(NULL),
fMC(NULL),
fMCsignal(NULL),
fPtBins(0),
fEtaBins(0),
fPhiBins(0),
fPtBinning(NULL),
fEtaBinning(NULL),
fPhiBinning(NULL)
{
ref.Copy(*this);
}
AliHFEtrackFilter &AliHFEtrackFilter::operator=(const AliHFEtrackFilter &o){
if(this != &o){
o.Copy(*this);
}
return *this;
}
AliHFEtrackFilter::~AliHFEtrackFilter(){
if(fPtBinning) delete fPtBinning;
if(fEtaBinning) delete fEtaBinning;
if(fPhiBinning) delete fPhiBinning;
if(TestBit(kOwnCFContainers))
fEfficiencyContainers->Delete();
delete fEfficiencyContainers;
delete fFilteredTracks;
delete fCutSteps;
}
void AliHFEtrackFilter::Copy(TObject &o) const{
TNamed::Copy(o);
AliHFEtrackFilter &target = dynamic_cast<AliHFEtrackFilter &>(o);
target.fFilteredTracks = dynamic_cast<TObjArray *>(fFilteredTracks->Clone());
target.fCutSteps = dynamic_cast<TObjArray *>(fCutSteps->Clone());
target.fEfficiencyContainers = dynamic_cast<TObjArray *>(fEfficiencyContainers->Clone());
target.fMC = fMC;
target.fMCsignal = dynamic_cast<AliHFEcutStep *>(fMCsignal->Clone());
target.fPtBins = fPtBins;
target.fEtaBins = fEtaBins;
target.fPhiBins = fPhiBins;
target.fPtBinning = new Double_t[fPtBins];
memcpy(target.fPtBinning, fPtBinning, sizeof(Double_t) * fPtBins);
target.fEtaBinning = new Double_t[fEtaBins];
memcpy(target.fEtaBinning, fEtaBinning, sizeof(Double_t) * fEtaBins);
target.fPhiBinning = new Double_t[fPhiBins];
memcpy(target.fPhiBinning, fPhiBinning, sizeof(Double_t) * fPhiBins);
}
void AliHFEtrackFilter::InitCF(){
const Char_t *cnames[4] = {"_container", "_container_signal", "_container_MC", "_container_signalMC"};
const Char_t *ctitlesAppends[4] = {"(All Rec)", "(All Signals)", "(All Rec (MC))", "(All Signals(MC))"};
if(!fPtBins){
fPtBins = 40;
fPtBinning = AliHFEtools::MakeLogarithmicBinning(fPtBins, 0.1, 10);
}
if(!fEtaBins){
fEtaBins = 8;
fEtaBinning = AliHFEtools::MakeLinearBinning(fEtaBins, -0.9, 0.9);
}
if(!fPhiBins){
fPhiBins = 18;
fPhiBinning = AliHFEtools::MakeLinearBinning(fPhiBins, 0, 2*TMath::Pi());
}
Double_t chargeBins[3] = {-1.1, 0., 1.1};
Int_t nStep = fCutSteps->GetEntriesFast()+1;
Int_t nBins[4] = {fPtBins, fEtaBins, fPhiBins + 2};
AliCFContainer *ctmp = NULL;
for(Int_t icont = 0; icont < 4; icont++){
TString containername = GetName() + TString(cnames[icont]);
TString containertitle = TString("Container for filter ") + GetName() + TString(ctitlesAppends[icont]);
ctmp = new AliCFContainer(containername.Data(), containertitle.Data(), nStep, 4, nBins);
SetBit(kOwnCFContainers, kTRUE);
ctmp->SetBinLimits(0, fPtBinning);
ctmp->SetBinLimits(1, fEtaBinning);
ctmp->SetBinLimits(2, fPhiBinning);
ctmp->SetBinLimits(3, chargeBins);
ctmp->SetVarTitle(0, "pt");
ctmp->SetVarTitle(1, "eta");
ctmp->SetVarTitle(2, "phi");
ctmp->SetVarTitle(3, "charge");
ctmp->SetStepTitle(0, "No Cuts");
AliHFEcutStep *cutStep = NULL;
for(Int_t istep = 0; istep < fCutSteps->GetEntriesFast(); istep++){
cutStep = dynamic_cast<AliHFEcutStep *>(fCutSteps->UncheckedAt(istep));
if(cutStep) ctmp->SetStepTitle(istep + 1, cutStep->GetName());
}
fEfficiencyContainers->AddAt(ctmp, 0);
}
OwnContainers();
}
void AliHFEtrackFilter::InitCF(AliHFEcontainer *cont){
const Char_t *cnames[4] = {"_container", "_container_signal", "_container_MC", "_container_signalMC"};
const Char_t *ctitlesAppends[4] = {"(All Rec)", "(All Signals)", "(All Rec (MC))", "(All Signals(MC))"};
Int_t nStep = fCutSteps->GetEntriesFast()+1;
AliCFContainer *ctmp = NULL;
for(Int_t icont = 0; icont < 4; icont++){
TString contname = GetName() + TString(cnames[icont]);
TString contTitle = TString("Container for filter ") + GetName() + TString(ctitlesAppends[icont]);
cont->CreateContainer(contname.Data(), contTitle.Data(), nStep);
fEfficiencyContainers->AddAt((ctmp = cont->GetCFContainer(contname.Data())), icont);
ctmp->SetStepTitle(0, "No Cuts");
AliHFEcutStep *cutStep = NULL;
for(Int_t istep = 0; istep < fCutSteps->GetEntriesFast(); istep++){
cutStep = dynamic_cast<AliHFEcutStep *>(fCutSteps->UncheckedAt(istep));
if(cutStep) ctmp->SetStepTitle(istep + 1, cutStep->GetName());
}
}
ReleaseContainers();
}
void AliHFEtrackFilter::FilterTracks(const AliVEvent * const event){
AliHFEcutStep *cutStep = NULL;
AliVTrack *track = NULL;
AliVParticle *mctrack = NULL;
Double_t cont[4] = {0., 0., 0., 0.}, contMC[4] = {0., 0., 0., 0.};
Bool_t goodTrack = kTRUE, signal = kFALSE;
Int_t nStep = fCutSteps->GetEntriesFast();
AliCFContainer *call = dynamic_cast<AliCFContainer *>(fEfficiencyContainers->At(0));
AliCFContainer *cSignal = dynamic_cast<AliCFContainer *>(fEfficiencyContainers->At(1));
AliCFContainer *callMC = dynamic_cast<AliCFContainer *>(fEfficiencyContainers->At(2));
AliCFContainer *cSignalMC = dynamic_cast<AliCFContainer *>(fEfficiencyContainers->At(3));
for(Int_t itrack = 0; itrack < event->GetNumberOfTracks(); itrack++){
signal = kFALSE;
track = static_cast<AliVTrack *>(event->GetTrack(itrack));
if(fMC){
mctrack = fMC->GetTrack(TMath::Abs(track->GetLabel()));
if(mctrack){
contMC[0] = mctrack->Pt();
contMC[1] = mctrack->Eta();
contMC[2] = mctrack->Phi();
contMC[3] = mctrack->Charge();
if(fMCsignal->IsSelected(mctrack)) signal = kTRUE;
}
}
cont[0] = track->Pt();
cont[1] = track->Eta();
cont[2] = track->Phi();
cont[3] = track->Charge();
if(call) call->Fill(cont, 0);
if(callMC) callMC->Fill(contMC, 0);
if(signal){
if(cSignal) cSignal->Fill(cont, 0);
if(cSignalMC) cSignalMC->Fill(contMC, 0);
}
goodTrack = kTRUE;
for(Int_t icut = 0; icut < nStep; icut++){
cutStep = dynamic_cast<AliHFEcutStep *>(fCutSteps->UncheckedAt(icut));
if(cutStep && (!cutStep->IsSelected(track))){
goodTrack = kFALSE;
break;
}
if(call) call->Fill(cont, icut + 1);
if(callMC) callMC->Fill(contMC, icut + 1);
if(signal){
if(cSignal) cSignal->Fill(cont, icut + 1);
if(cSignalMC) cSignalMC->Fill(contMC, icut + 1);
}
}
if(goodTrack) fFilteredTracks->Add(track);
}
}
void AliHFEtrackFilter::GenerateCutSteps(){
MakeCutStepRecKineITSTPC();
MakeCutStepPrimary();
MakeCutStepHFEITS();
MakeCutStepHFETRD();
MakeMCSignalCuts();
}
void AliHFEtrackFilter::AddCutStep(AliHFEcutStep *step){
if(!fCutSteps->FindObject(step->GetName())) fCutSteps->Add(step);
}
AliHFEcutStep *AliHFEtrackFilter::GetCutStep(Int_t istep){
return dynamic_cast<AliHFEcutStep *>(fCutSteps->At(istep));
}
AliHFEcutStep *AliHFEtrackFilter::GetCutStep(const Char_t *name){
return dynamic_cast<AliHFEcutStep *>(fCutSteps->FindObject(name));
}
void AliHFEtrackFilter::Flush(){
fFilteredTracks->Clear();
}
void AliHFEtrackFilter::SetPtBins(Int_t nBins, Double_t *binning){
fPtBins = nBins;
fPtBinning = new Double_t[fPtBins + 1];
memcpy(fPtBinning, binning, sizeof(Double_t) * nBins);
}
void AliHFEtrackFilter::SetEtaBins(Int_t nBins, Double_t *binning){
fEtaBins = nBins;
fEtaBinning = new Double_t[fEtaBins + 1];
memcpy(fEtaBinning, binning, sizeof(Double_t) * nBins);
}
void AliHFEtrackFilter::SetPhiBins(Int_t nBins, Double_t *binning){
fPhiBins = nBins;
fPhiBinning = new Double_t[fPhiBins + 1];
memcpy(fPhiBinning, binning, sizeof(Double_t) * nBins);
}
AliHFEcutStep *AliHFEtrackFilter::MakeCutStepRecKineITSTPC(){
AliHFEcutStep *fCutStep = new AliHFEcutStep("RecKineITSTPC");
AliCFTrackQualityCuts *trackQuality = new AliCFTrackQualityCuts((Char_t *)"QualityRec", (Char_t *)"REC Track Quality Cuts");
trackQuality->SetMinNClusterTPC(80);
trackQuality->SetMaxChi2PerClusterTPC(3.5);
trackQuality->SetStatus(AliVTrack::kTPCrefit | AliVTrack::kITSrefit);
trackQuality->SetMaxCovDiagonalElements(2., 2., 0.5, 0.5, 2);
fCutStep->AddCut(trackQuality);
AliHFEextraCuts *hfecuts = new AliHFEextraCuts("HFETPC","Extra cuts from the HFE group");
hfecuts->SetClusterRatioTPC(0.6, AliHFEextraCuts::kFoundOverCR);
fCutStep->AddCut(hfecuts);
AliCFTrackKineCuts *kineCuts = new AliCFTrackKineCuts((Char_t *)"RecKine", (Char_t *)"REC Kine Cuts");
kineCuts->SetPtRange(0.1, 20);
kineCuts->SetEtaRange(-0.8, 0.8);
fCutStep->AddCut(kineCuts);
AddCutStep(fCutStep);
return fCutStep;
}
AliHFEcutStep *AliHFEtrackFilter::MakeCutStepPrimary(){
AliHFEcutStep *fCutStep = new AliHFEcutStep("Primary");
AliCFTrackIsPrimaryCuts *primaryCut = new AliCFTrackIsPrimaryCuts((Char_t *)"PrimaryCuts", (Char_t *)"REC Primary Cuts");
primaryCut->SetMaxDCAToVertexXY(0.5);
primaryCut->SetMaxDCAToVertexZ(5.);
primaryCut->SetAcceptKinkDaughters(kFALSE);
fCutStep->AddCut(primaryCut);
AddCutStep(fCutStep);
return fCutStep;
}
AliHFEcutStep *AliHFEtrackFilter::MakeCutStepHFEITS(){
AliHFEcutStep *fCutStep = new AliHFEcutStep("HFEITS");
AliHFEextraCuts *hfecuts = new AliHFEextraCuts((Char_t *)"HFEPixelsCuts",(Char_t *)"Extra cuts from the HFE group");
hfecuts->SetRequireITSpixel(AliHFEextraCuts::kFirst);
fCutStep->AddCut(hfecuts);
AddCutStep(fCutStep);
return fCutStep;
}
AliHFEcutStep *AliHFEtrackFilter::MakeCutStepHFETRD(){
AliHFEcutStep *fCutStep = new AliHFEcutStep("HFETRD");
AliHFEextraCuts *hfecuts = new AliHFEextraCuts("HFETRDCuts","Extra cuts from the HFE group");
hfecuts->SetMinTrackletsTRD(0);
fCutStep->AddCut(hfecuts);
AddCutStep(fCutStep);
return fCutStep;
}
AliHFEcutStep *AliHFEtrackFilter::MakeMCSignalCuts(){
fMCsignal = new AliHFEcutStep("MCSignal");
AliCFParticleGenCuts *genCuts = new AliCFParticleGenCuts((Char_t *)"fCutsGenMC", (Char_t *)"Particle Generation Cuts");
genCuts->SetRequireIsCharged();
genCuts->SetRequireIsPrimary();
genCuts->SetProdVtxRange2D();
genCuts->SetProdVtxRangeX(0, 1);
genCuts->SetProdVtxRangeY(0, 1);
genCuts->SetRequirePdgCode(11, kTRUE);
fMCsignal->AddCut(genCuts);
AliCFTrackKineCuts *kineMCcuts = new AliCFTrackKineCuts((Char_t *)"fCutsKineMC",(Char_t *)"MC Kine Cuts");
kineMCcuts->SetPtRange(0.1, 20.);
kineMCcuts->SetEtaRange(-0.8, 0.8);
fMCsignal->AddCut(kineMCcuts);
return fMCsignal;
}
void AliHFEtrackFilter::SetMC(AliMCEvent * const mc){
fMC = mc;
fMCsignal->SetMC(fMC);
AliHFEcutStep *cs = NULL;
for(Int_t icut = 0; icut < fCutSteps->GetEntriesFast(); icut++)
if((cs = dynamic_cast<AliHFEcutStep *>(fCutSteps->UncheckedAt(icut)))) cs->SetMC(fMC);
}
void AliHFEtrackFilter::SetRecEvent(const AliVEvent *rec){
AliHFEcutStep *cs = NULL;
for(Int_t icut = 0; icut < fCutSteps->GetEntriesFast(); icut++)
if((cs = dynamic_cast<AliHFEcutStep *>(fCutSteps->UncheckedAt(icut)))) cs->SetRecEvent(rec);
}
AliCFContainer *AliHFEtrackFilter::GetEfficiencyContainer(Int_t icont){
if(icont >= 4 || icont < 0) return NULL;
return dynamic_cast<AliCFContainer *>(fEfficiencyContainers->At(icont));
}
AliHFEtrackFilter.cxx:100 AliHFEtrackFilter.cxx:101 AliHFEtrackFilter.cxx:102 AliHFEtrackFilter.cxx:103 AliHFEtrackFilter.cxx:104 AliHFEtrackFilter.cxx:105 AliHFEtrackFilter.cxx:106 AliHFEtrackFilter.cxx:107 AliHFEtrackFilter.cxx:108 AliHFEtrackFilter.cxx:109 AliHFEtrackFilter.cxx:110 AliHFEtrackFilter.cxx:111 AliHFEtrackFilter.cxx:112 AliHFEtrackFilter.cxx:113 AliHFEtrackFilter.cxx:114 AliHFEtrackFilter.cxx:115 AliHFEtrackFilter.cxx:116 AliHFEtrackFilter.cxx:117 AliHFEtrackFilter.cxx:118 AliHFEtrackFilter.cxx:119 AliHFEtrackFilter.cxx:120 AliHFEtrackFilter.cxx:121 AliHFEtrackFilter.cxx:122 AliHFEtrackFilter.cxx:123 AliHFEtrackFilter.cxx:124 AliHFEtrackFilter.cxx:125 AliHFEtrackFilter.cxx:126 AliHFEtrackFilter.cxx:127 AliHFEtrackFilter.cxx:128 AliHFEtrackFilter.cxx:129 AliHFEtrackFilter.cxx:130 AliHFEtrackFilter.cxx:131 AliHFEtrackFilter.cxx:132 AliHFEtrackFilter.cxx:133 AliHFEtrackFilter.cxx:134 AliHFEtrackFilter.cxx:135 AliHFEtrackFilter.cxx:136 AliHFEtrackFilter.cxx:137 AliHFEtrackFilter.cxx:138 AliHFEtrackFilter.cxx:139 AliHFEtrackFilter.cxx:140 AliHFEtrackFilter.cxx:141 AliHFEtrackFilter.cxx:142 AliHFEtrackFilter.cxx:143 AliHFEtrackFilter.cxx:144 AliHFEtrackFilter.cxx:145 AliHFEtrackFilter.cxx:146 AliHFEtrackFilter.cxx:147 AliHFEtrackFilter.cxx:148 AliHFEtrackFilter.cxx:149 AliHFEtrackFilter.cxx:150 AliHFEtrackFilter.cxx:151 AliHFEtrackFilter.cxx:152 AliHFEtrackFilter.cxx:153 AliHFEtrackFilter.cxx:154 AliHFEtrackFilter.cxx:155 AliHFEtrackFilter.cxx:156 AliHFEtrackFilter.cxx:157 AliHFEtrackFilter.cxx:158 AliHFEtrackFilter.cxx:159 AliHFEtrackFilter.cxx:160 AliHFEtrackFilter.cxx:161 AliHFEtrackFilter.cxx:162 AliHFEtrackFilter.cxx:163 AliHFEtrackFilter.cxx:164 AliHFEtrackFilter.cxx:165 AliHFEtrackFilter.cxx:166 AliHFEtrackFilter.cxx:167 AliHFEtrackFilter.cxx:168 AliHFEtrackFilter.cxx:169 AliHFEtrackFilter.cxx:170 AliHFEtrackFilter.cxx:171 AliHFEtrackFilter.cxx:172 AliHFEtrackFilter.cxx:173 AliHFEtrackFilter.cxx:174 AliHFEtrackFilter.cxx:175 AliHFEtrackFilter.cxx:176 AliHFEtrackFilter.cxx:177 AliHFEtrackFilter.cxx:178 AliHFEtrackFilter.cxx:179 AliHFEtrackFilter.cxx:180 AliHFEtrackFilter.cxx:181 AliHFEtrackFilter.cxx:182 AliHFEtrackFilter.cxx:183 AliHFEtrackFilter.cxx:184 AliHFEtrackFilter.cxx:185 AliHFEtrackFilter.cxx:186 AliHFEtrackFilter.cxx:187 AliHFEtrackFilter.cxx:188 AliHFEtrackFilter.cxx:189 AliHFEtrackFilter.cxx:190 AliHFEtrackFilter.cxx:191 AliHFEtrackFilter.cxx:192 AliHFEtrackFilter.cxx:193 AliHFEtrackFilter.cxx:194 AliHFEtrackFilter.cxx:195 AliHFEtrackFilter.cxx:196 AliHFEtrackFilter.cxx:197 AliHFEtrackFilter.cxx:198 AliHFEtrackFilter.cxx:199 AliHFEtrackFilter.cxx:200 AliHFEtrackFilter.cxx:201 AliHFEtrackFilter.cxx:202 AliHFEtrackFilter.cxx:203 AliHFEtrackFilter.cxx:204 AliHFEtrackFilter.cxx:205 AliHFEtrackFilter.cxx:206 AliHFEtrackFilter.cxx:207 AliHFEtrackFilter.cxx:208 AliHFEtrackFilter.cxx:209 AliHFEtrackFilter.cxx:210 AliHFEtrackFilter.cxx:211 AliHFEtrackFilter.cxx:212 AliHFEtrackFilter.cxx:213 AliHFEtrackFilter.cxx:214 AliHFEtrackFilter.cxx:215 AliHFEtrackFilter.cxx:216 AliHFEtrackFilter.cxx:217 AliHFEtrackFilter.cxx:218 AliHFEtrackFilter.cxx:219 AliHFEtrackFilter.cxx:220 AliHFEtrackFilter.cxx:221 AliHFEtrackFilter.cxx:222 AliHFEtrackFilter.cxx:223 AliHFEtrackFilter.cxx:224 AliHFEtrackFilter.cxx:225 AliHFEtrackFilter.cxx:226 AliHFEtrackFilter.cxx:227 AliHFEtrackFilter.cxx:228 AliHFEtrackFilter.cxx:229 AliHFEtrackFilter.cxx:230 AliHFEtrackFilter.cxx:231 AliHFEtrackFilter.cxx:232 AliHFEtrackFilter.cxx:233 AliHFEtrackFilter.cxx:234 AliHFEtrackFilter.cxx:235 AliHFEtrackFilter.cxx:236 AliHFEtrackFilter.cxx:237 AliHFEtrackFilter.cxx:238 AliHFEtrackFilter.cxx:239 AliHFEtrackFilter.cxx:240 AliHFEtrackFilter.cxx:241 AliHFEtrackFilter.cxx:242 AliHFEtrackFilter.cxx:243 AliHFEtrackFilter.cxx:244 AliHFEtrackFilter.cxx:245 AliHFEtrackFilter.cxx:246 AliHFEtrackFilter.cxx:247 AliHFEtrackFilter.cxx:248 AliHFEtrackFilter.cxx:249 AliHFEtrackFilter.cxx:250 AliHFEtrackFilter.cxx:251 AliHFEtrackFilter.cxx:252 AliHFEtrackFilter.cxx:253 AliHFEtrackFilter.cxx:254 AliHFEtrackFilter.cxx:255 AliHFEtrackFilter.cxx:256 AliHFEtrackFilter.cxx:257 AliHFEtrackFilter.cxx:258 AliHFEtrackFilter.cxx:259 AliHFEtrackFilter.cxx:260 AliHFEtrackFilter.cxx:261 AliHFEtrackFilter.cxx:262 AliHFEtrackFilter.cxx:263 AliHFEtrackFilter.cxx:264 AliHFEtrackFilter.cxx:265 AliHFEtrackFilter.cxx:266 AliHFEtrackFilter.cxx:267 AliHFEtrackFilter.cxx:268 AliHFEtrackFilter.cxx:269 AliHFEtrackFilter.cxx:270 AliHFEtrackFilter.cxx:271 AliHFEtrackFilter.cxx:272 AliHFEtrackFilter.cxx:273 AliHFEtrackFilter.cxx:274 AliHFEtrackFilter.cxx:275 AliHFEtrackFilter.cxx:276 AliHFEtrackFilter.cxx:277 AliHFEtrackFilter.cxx:278 AliHFEtrackFilter.cxx:279 AliHFEtrackFilter.cxx:280 AliHFEtrackFilter.cxx:281 AliHFEtrackFilter.cxx:282 AliHFEtrackFilter.cxx:283 AliHFEtrackFilter.cxx:284 AliHFEtrackFilter.cxx:285 AliHFEtrackFilter.cxx:286 AliHFEtrackFilter.cxx:287 AliHFEtrackFilter.cxx:288 AliHFEtrackFilter.cxx:289 AliHFEtrackFilter.cxx:290 AliHFEtrackFilter.cxx:291 AliHFEtrackFilter.cxx:292 AliHFEtrackFilter.cxx:293 AliHFEtrackFilter.cxx:294 AliHFEtrackFilter.cxx:295 AliHFEtrackFilter.cxx:296 AliHFEtrackFilter.cxx:297 AliHFEtrackFilter.cxx:298 AliHFEtrackFilter.cxx:299 AliHFEtrackFilter.cxx:300 AliHFEtrackFilter.cxx:301 AliHFEtrackFilter.cxx:302 AliHFEtrackFilter.cxx:303 AliHFEtrackFilter.cxx:304 AliHFEtrackFilter.cxx:305 AliHFEtrackFilter.cxx:306 AliHFEtrackFilter.cxx:307 AliHFEtrackFilter.cxx:308 AliHFEtrackFilter.cxx:309 AliHFEtrackFilter.cxx:310 AliHFEtrackFilter.cxx:311 AliHFEtrackFilter.cxx:312 AliHFEtrackFilter.cxx:313 AliHFEtrackFilter.cxx:314 AliHFEtrackFilter.cxx:315 AliHFEtrackFilter.cxx:316 AliHFEtrackFilter.cxx:317 AliHFEtrackFilter.cxx:318 AliHFEtrackFilter.cxx:319 AliHFEtrackFilter.cxx:320 AliHFEtrackFilter.cxx:321 AliHFEtrackFilter.cxx:322 AliHFEtrackFilter.cxx:323 AliHFEtrackFilter.cxx:324 AliHFEtrackFilter.cxx:325 AliHFEtrackFilter.cxx:326 AliHFEtrackFilter.cxx:327 AliHFEtrackFilter.cxx:328 AliHFEtrackFilter.cxx:329 AliHFEtrackFilter.cxx:330 AliHFEtrackFilter.cxx:331 AliHFEtrackFilter.cxx:332 AliHFEtrackFilter.cxx:333 AliHFEtrackFilter.cxx:334 AliHFEtrackFilter.cxx:335 AliHFEtrackFilter.cxx:336 AliHFEtrackFilter.cxx:337 AliHFEtrackFilter.cxx:338 AliHFEtrackFilter.cxx:339 AliHFEtrackFilter.cxx:340 AliHFEtrackFilter.cxx:341 AliHFEtrackFilter.cxx:342 AliHFEtrackFilter.cxx:343 AliHFEtrackFilter.cxx:344 AliHFEtrackFilter.cxx:345 AliHFEtrackFilter.cxx:346 AliHFEtrackFilter.cxx:347 AliHFEtrackFilter.cxx:348 AliHFEtrackFilter.cxx:349 AliHFEtrackFilter.cxx:350 AliHFEtrackFilter.cxx:351 AliHFEtrackFilter.cxx:352 AliHFEtrackFilter.cxx:353 AliHFEtrackFilter.cxx:354 AliHFEtrackFilter.cxx:355 AliHFEtrackFilter.cxx:356 AliHFEtrackFilter.cxx:357 AliHFEtrackFilter.cxx:358 AliHFEtrackFilter.cxx:359 AliHFEtrackFilter.cxx:360 AliHFEtrackFilter.cxx:361 AliHFEtrackFilter.cxx:362 AliHFEtrackFilter.cxx:363 AliHFEtrackFilter.cxx:364 AliHFEtrackFilter.cxx:365 AliHFEtrackFilter.cxx:366 AliHFEtrackFilter.cxx:367 AliHFEtrackFilter.cxx:368 AliHFEtrackFilter.cxx:369 AliHFEtrackFilter.cxx:370 AliHFEtrackFilter.cxx:371 AliHFEtrackFilter.cxx:372 AliHFEtrackFilter.cxx:373 AliHFEtrackFilter.cxx:374 AliHFEtrackFilter.cxx:375 AliHFEtrackFilter.cxx:376 AliHFEtrackFilter.cxx:377 AliHFEtrackFilter.cxx:378 AliHFEtrackFilter.cxx:379 AliHFEtrackFilter.cxx:380 AliHFEtrackFilter.cxx:381 AliHFEtrackFilter.cxx:382 AliHFEtrackFilter.cxx:383 AliHFEtrackFilter.cxx:384 AliHFEtrackFilter.cxx:385 AliHFEtrackFilter.cxx:386 AliHFEtrackFilter.cxx:387 AliHFEtrackFilter.cxx:388 AliHFEtrackFilter.cxx:389 AliHFEtrackFilter.cxx:390 AliHFEtrackFilter.cxx:391 AliHFEtrackFilter.cxx:392 AliHFEtrackFilter.cxx:393 AliHFEtrackFilter.cxx:394 AliHFEtrackFilter.cxx:395 AliHFEtrackFilter.cxx:396 AliHFEtrackFilter.cxx:397 AliHFEtrackFilter.cxx:398 AliHFEtrackFilter.cxx:399 AliHFEtrackFilter.cxx:400 AliHFEtrackFilter.cxx:401 AliHFEtrackFilter.cxx:402 AliHFEtrackFilter.cxx:403 AliHFEtrackFilter.cxx:404 AliHFEtrackFilter.cxx:405 AliHFEtrackFilter.cxx:406 AliHFEtrackFilter.cxx:407 AliHFEtrackFilter.cxx:408 AliHFEtrackFilter.cxx:409 AliHFEtrackFilter.cxx:410 AliHFEtrackFilter.cxx:411 AliHFEtrackFilter.cxx:412 AliHFEtrackFilter.cxx:413 AliHFEtrackFilter.cxx:414 AliHFEtrackFilter.cxx:415 AliHFEtrackFilter.cxx:416 AliHFEtrackFilter.cxx:417 AliHFEtrackFilter.cxx:418 AliHFEtrackFilter.cxx:419 AliHFEtrackFilter.cxx:420 AliHFEtrackFilter.cxx:421 AliHFEtrackFilter.cxx:422 AliHFEtrackFilter.cxx:423 AliHFEtrackFilter.cxx:424 AliHFEtrackFilter.cxx:425 AliHFEtrackFilter.cxx:426 AliHFEtrackFilter.cxx:427 AliHFEtrackFilter.cxx:428 AliHFEtrackFilter.cxx:429 AliHFEtrackFilter.cxx:430 AliHFEtrackFilter.cxx:431 AliHFEtrackFilter.cxx:432 AliHFEtrackFilter.cxx:433 AliHFEtrackFilter.cxx:434 AliHFEtrackFilter.cxx:435 AliHFEtrackFilter.cxx:436 AliHFEtrackFilter.cxx:437 AliHFEtrackFilter.cxx:438 AliHFEtrackFilter.cxx:439 AliHFEtrackFilter.cxx:440 AliHFEtrackFilter.cxx:441 AliHFEtrackFilter.cxx:442 AliHFEtrackFilter.cxx:443 AliHFEtrackFilter.cxx:444 AliHFEtrackFilter.cxx:445 AliHFEtrackFilter.cxx:446 AliHFEtrackFilter.cxx:447 AliHFEtrackFilter.cxx:448 AliHFEtrackFilter.cxx:449 AliHFEtrackFilter.cxx:450 AliHFEtrackFilter.cxx:451 AliHFEtrackFilter.cxx:452 AliHFEtrackFilter.cxx:453 AliHFEtrackFilter.cxx:454 AliHFEtrackFilter.cxx:455 AliHFEtrackFilter.cxx:456 AliHFEtrackFilter.cxx:457 AliHFEtrackFilter.cxx:458 AliHFEtrackFilter.cxx:459 AliHFEtrackFilter.cxx:460 AliHFEtrackFilter.cxx:461 AliHFEtrackFilter.cxx:462 AliHFEtrackFilter.cxx:463 AliHFEtrackFilter.cxx:464 AliHFEtrackFilter.cxx:465 AliHFEtrackFilter.cxx:466 AliHFEtrackFilter.cxx:467 AliHFEtrackFilter.cxx:468 AliHFEtrackFilter.cxx:469 AliHFEtrackFilter.cxx:470 AliHFEtrackFilter.cxx:471 AliHFEtrackFilter.cxx:472 AliHFEtrackFilter.cxx:473 AliHFEtrackFilter.cxx:474 AliHFEtrackFilter.cxx:475 AliHFEtrackFilter.cxx:476 AliHFEtrackFilter.cxx:477 AliHFEtrackFilter.cxx:478 AliHFEtrackFilter.cxx:479 AliHFEtrackFilter.cxx:480 AliHFEtrackFilter.cxx:481 AliHFEtrackFilter.cxx:482 AliHFEtrackFilter.cxx:483 AliHFEtrackFilter.cxx:484 AliHFEtrackFilter.cxx:485 AliHFEtrackFilter.cxx:486 AliHFEtrackFilter.cxx:487 AliHFEtrackFilter.cxx:488 AliHFEtrackFilter.cxx:489 AliHFEtrackFilter.cxx:490 AliHFEtrackFilter.cxx:491 AliHFEtrackFilter.cxx:492 AliHFEtrackFilter.cxx:493 AliHFEtrackFilter.cxx:494 AliHFEtrackFilter.cxx:495 AliHFEtrackFilter.cxx:496 AliHFEtrackFilter.cxx:497 AliHFEtrackFilter.cxx:498 AliHFEtrackFilter.cxx:499 AliHFEtrackFilter.cxx:500 AliHFEtrackFilter.cxx:501 AliHFEtrackFilter.cxx:502 AliHFEtrackFilter.cxx:503 AliHFEtrackFilter.cxx:504 AliHFEtrackFilter.cxx:505 AliHFEtrackFilter.cxx:506 AliHFEtrackFilter.cxx:507 AliHFEtrackFilter.cxx:508 AliHFEtrackFilter.cxx:509 AliHFEtrackFilter.cxx:510 AliHFEtrackFilter.cxx:511 AliHFEtrackFilter.cxx:512 AliHFEtrackFilter.cxx:513 AliHFEtrackFilter.cxx:514 AliHFEtrackFilter.cxx:515 AliHFEtrackFilter.cxx:516 AliHFEtrackFilter.cxx:517 AliHFEtrackFilter.cxx:518 AliHFEtrackFilter.cxx:519 AliHFEtrackFilter.cxx:520 AliHFEtrackFilter.cxx:521 AliHFEtrackFilter.cxx:522 AliHFEtrackFilter.cxx:523 AliHFEtrackFilter.cxx:524 AliHFEtrackFilter.cxx:525 AliHFEtrackFilter.cxx:526 AliHFEtrackFilter.cxx:527 AliHFEtrackFilter.cxx:528 AliHFEtrackFilter.cxx:529 AliHFEtrackFilter.cxx:530 AliHFEtrackFilter.cxx:531