#include <TSystem.h>
#include <TFile.h>
#include <TKey.h>
#include <TH2F.h>
#include <TProfile.h>
#include <TProfile2D.h>
#include <TList.h>
#include <TClonesArray.h>
#include <TGeoGlobalMagField.h>
#include "AliAODHeader.h"
#include "AliESDEvent.h"
#include "AliAODEvent.h"
#include "AliESDtrackCuts.h"
#include "AliAnalysisManager.h"
#include "AliInputEventHandler.h"
#include "AliAnalysisTaskCounter.h"
ClassImp(AliAnalysisTaskCounter)
AliAnalysisTaskCounter::AliAnalysisTaskCounter(const char *name)
: AliAnalysisTaskSE(name),
fAcceptFastCluster(kTRUE),
fZVertexCut(10.),
fTrackMultEtaCut(0.8),
fAvgTrials(-1),
fOutputContainer(0x0),
fESDtrackCuts(AliESDtrackCuts::GetStandardITSTPCTrackCuts2010()),
fCurrFileName(0), fCheckMCCrossSection(kFALSE),
fhNEvents(0),
fhXVertex(0), fhYVertex(0), fhZVertex(0),
fhXGoodVertex(0),fhYGoodVertex(0),fhZGoodVertex(0),
fhCentrality(0), fhEventPlaneAngle(0),
fh1Xsec(0), fh1Trials(0)
{
DefineOutput(1, TList::Class());
}
AliAnalysisTaskCounter::AliAnalysisTaskCounter()
: AliAnalysisTaskSE("DefaultAnalysis_AliAnalysisTaskCounter"),
fAcceptFastCluster(kTRUE),
fZVertexCut(10.),
fTrackMultEtaCut(0.8),
fAvgTrials(-1),
fOutputContainer(0x0),
fESDtrackCuts(AliESDtrackCuts::GetStandardITSTPCTrackCuts2010()),
fCurrFileName(0), fCheckMCCrossSection(kFALSE),
fhNEvents(0),
fhXVertex(0), fhYVertex(0), fhZVertex(0),
fhXGoodVertex(0),fhYGoodVertex(0),fhZGoodVertex(0),
fhCentrality(0), fhEventPlaneAngle(0),
fh1Xsec(0), fh1Trials(0)
{
DefineOutput(1, TList::Class());
}
AliAnalysisTaskCounter::~AliAnalysisTaskCounter()
{
if (AliAnalysisManager::GetAnalysisManager()->IsProofMode()) return;
if(fOutputContainer)
{
fOutputContainer->Delete() ;
delete fOutputContainer ;
}
if(fESDtrackCuts) delete fESDtrackCuts;
}
void AliAnalysisTaskCounter::UserCreateOutputObjects()
{
fOutputContainer = new TList();
if(fCheckMCCrossSection)
{
fh1Xsec = new TH1F("hXsec","xsec from pyxsec.root",1,0,1);
fh1Xsec->GetXaxis()->SetBinLabel(1,"<#sigma>");
fOutputContainer->Add(fh1Xsec);
fh1Trials = new TH1F("hTrials","trials root file",1,0,1);
fh1Trials->GetXaxis()->SetBinLabel(1,"#sum{ntrials}");
fOutputContainer->Add(fh1Trials);
}
fhZVertex = new TH1F("hZVertex", " Z vertex distribution" , 200 , -50 , 50 ) ;
fhZVertex->SetXTitle("v_{z} (cm)");
fOutputContainer->Add(fhZVertex);
fhZGoodVertex = new TH1F("hZGoodVertex", " Good Z vertex distribution" , 200 , -50 , 50 ) ;
fhZGoodVertex->SetXTitle("v_{z} (cm)");
fOutputContainer->Add(fhZGoodVertex);
fhXVertex = new TH1F("hXVertex", " X vertex distribution" , 200 , -2 , 2 ) ;
fhXVertex->SetXTitle("v_{x} (cm)");
fOutputContainer->Add(fhXVertex);
fhXGoodVertex = new TH1F("hXGoodVertex", " Good X vertex distribution" , 200 , -2 , 2 ) ;
fhXGoodVertex->SetXTitle("v_{x} (cm)");
fOutputContainer->Add(fhXGoodVertex);
fhYVertex = new TH1F("hYVertex", " Y vertex distribution" , 200 , -2 , 2 ) ;
fhYVertex->SetXTitle("v_{y} (cm)");
fOutputContainer->Add(fhYVertex);
fhYGoodVertex = new TH1F("hYGoodVertex", " Good Y vertex distribution" , 200 , -2 , 2 ) ;
fhYGoodVertex->SetXTitle("v_{y} (cm)");
fOutputContainer->Add(fhYGoodVertex);
fhCentrality = new TH1F("hCentrality","Number of events in centrality bin, |vz|<10 cm, method <V0M> ",100,0.,100.) ;
fhCentrality->SetXTitle("Centrality bin");
fOutputContainer->Add(fhCentrality) ;
fhEventPlaneAngle=new TH1F("hEventPlaneAngle","Number of events in event plane, |vz|<10 cm, method <V0> ",100,0.,TMath::Pi()) ;
fhEventPlaneAngle->SetXTitle("EP angle (rad)");
fOutputContainer->Add(fhEventPlaneAngle) ;
fhNEvents = new TH1I("hNEvents", "Number of analyzed events", 21, 0, 21) ;
fhNEvents->SetYTitle("# events");
fhNEvents->GetXaxis()->SetBinLabel(1 ,"1 = PS");
fhNEvents->GetXaxis()->SetBinLabel(2 ,"2 = 1 & ESD");
fhNEvents->GetXaxis()->SetBinLabel(3 ,"3 = 2 & |Z|<10");
fhNEvents->GetXaxis()->SetBinLabel(4 ,"4 = 2 & |eta|<0.8");
fhNEvents->GetXaxis()->SetBinLabel(5 ,"5 = 3 & 4");
fhNEvents->GetXaxis()->SetBinLabel(6 ,"6 = 2 & V0AND");
fhNEvents->GetXaxis()->SetBinLabel(7 ,"7 = 3 & 6");
fhNEvents->GetXaxis()->SetBinLabel(8 ,"8 = 4 & 6");
fhNEvents->GetXaxis()->SetBinLabel(9 ,"9 = 5 & 6");
fhNEvents->GetXaxis()->SetBinLabel(10,"10 = 2 & not pileup");
fhNEvents->GetXaxis()->SetBinLabel(11,"11 = 2 & good vertex");
fhNEvents->GetXaxis()->SetBinLabel(12,"12 = 3 & 11");
fhNEvents->GetXaxis()->SetBinLabel(13,"13 = 4 & 11");
fhNEvents->GetXaxis()->SetBinLabel(14,"14 = 6 & 11");
fhNEvents->GetXaxis()->SetBinLabel(15,"15 = 9 & 11");
fhNEvents->GetXaxis()->SetBinLabel(16,"16 = 10 & 11");
fhNEvents->GetXaxis()->SetBinLabel(17,"17 = 6 & 10");
fhNEvents->GetXaxis()->SetBinLabel(17,"17 = 1 & |Z|<50");
fhNEvents->GetXaxis()->SetBinLabel(18,"18 = Reject EMCAL 1");
fhNEvents->GetXaxis()->SetBinLabel(19,"19 = 18 & 2");
fhNEvents->GetXaxis()->SetBinLabel(20,"20 = Reject EMCAL 2");
fhNEvents->GetXaxis()->SetBinLabel(21,"21 = 20 & 2");
fOutputContainer->Add(fhNEvents);
fOutputContainer->SetOwner(kTRUE);
PostData(1,fOutputContainer);
}
void AliAnalysisTaskCounter::UserExec(Option_t *)
{
Notify();
fhNEvents->Fill(0.5);
AliVEvent * event = InputEvent();
AliESDEvent * esdevent = dynamic_cast<AliESDEvent*> (event);
AliAODEvent * aodevent = dynamic_cast<AliAODEvent*> (event);
if (!TGeoGlobalMagField::Instance()->GetField() && esdevent) esdevent->InitMagneticField();
TString triggerclasses = event->GetFiredTriggerClasses();
if (triggerclasses.Contains("FAST") && !triggerclasses.Contains("ALL") && !fAcceptFastCluster)
{
return;
}
fhNEvents->Fill(1.5);
Bool_t bSelectVZ = kFALSE;
Bool_t bV0AND = kFALSE;
Bool_t bPileup = kFALSE;
Bool_t bGoodV = kFALSE;
Bool_t bSelectTrack = kFALSE;
Int_t trackMult = 0;
Double_t v[3];
event->GetPrimaryVertex()->GetXYZ(v) ;
fhXVertex->Fill(v[0]);
fhYVertex->Fill(v[1]);
fhZVertex->Fill(v[2]);
if(TMath::Abs(v[2]) < fZVertexCut)
{
bSelectVZ=kTRUE;
fhNEvents->Fill(2.5);
}
Int_t nTracks = event->GetNumberOfTracks() ;
for (Int_t itrack = 0; itrack < nTracks; itrack++)
{
AliVTrack * track = (AliVTrack*)event->GetTrack(itrack) ;
if(esdevent && !fESDtrackCuts->AcceptTrack((AliESDtrack*)track)) continue;
if(aodevent && !((AliAODTrack*)track)->IsHybridGlobalConstrainedGlobal()) continue ;
if(TMath::Abs(track->Eta())< fTrackMultEtaCut) trackMult++;
}
if (trackMult > 0)
{
bSelectTrack = kTRUE;
fhNEvents->Fill(3.5);
if(bSelectVZ) fhNEvents->Fill(4.5);
}
AliVVZERO* v0 = fInputEvent->GetVZEROData();
bV0AND = ((v0->GetV0ADecision()==1) && (v0->GetV0CDecision()==1));
if(bV0AND)
{
fhNEvents->Fill(5.5);
if (bSelectVZ) fhNEvents->Fill(6.5);
if (bSelectTrack) fhNEvents->Fill(7.5);
if (bSelectVZ && bSelectTrack) fhNEvents->Fill(8.5);
}
bPileup = event->IsPileupFromSPD(3, 0.8, 3., 2., 5.);
if (!bPileup)
{
fhNEvents->Fill(9.5);
if(bV0AND) fhNEvents->Fill(16.5);
}
bGoodV = CheckForPrimaryVertex();
if(TMath::Abs(v[0]) < 1.e-6 &&
TMath::Abs(v[1]) < 1.e-6 &&
TMath::Abs(v[2]) < 1.e-6) bGoodV = kFALSE;
if(bGoodV)
{
fhXGoodVertex->Fill(v[0]);
fhYGoodVertex->Fill(v[1]);
fhZGoodVertex->Fill(v[2]);
fhNEvents->Fill(10.5);
if(bSelectVZ) fhNEvents->Fill(11.5);
if(bSelectTrack) fhNEvents->Fill(12.5);
if(bV0AND) fhNEvents->Fill(13.5);
if(bSelectVZ && bSelectTrack && bV0AND)
fhNEvents->Fill(14.5);
if(!bPileup) fhNEvents->Fill(15.5);
if(TMath::Abs(v[2]) < 10.)
{
if(InputEvent()->GetCentrality())
fhCentrality->Fill(InputEvent()->GetCentrality()->GetCentralityPercentile("V0M"));
if(InputEvent()->GetEventplane())
{
Float_t ep = InputEvent()->GetEventplane()->GetEventplane("V0", InputEvent());
ep+=TMath::Pi()/2.;
fhEventPlaneAngle->Fill(ep);
}
}
}
Bool_t bEMCALRejected = kFALSE;
for (Int_t i = 0; i < InputEvent()->GetNumberOfCaloClusters(); i++)
{
AliVCluster *clus = InputEvent()->GetCaloCluster(i);
if(clus->IsEMCAL()){
if ((clus->E() > 500 && clus->GetNCells() > 200 ) || clus->GetNCells() > 200)
{
fhNEvents->Fill(17.5);
if(bSelectVZ) fhNEvents->Fill(18.5);
bEMCALRejected = kTRUE;
break;
}
}
}
if(!bEMCALRejected)
{
Int_t ncellsSM3 = 0;
Int_t ncellsSM4 = 0;
for(Int_t icell = 0; icell < event->GetEMCALCells()->GetNumberOfCells(); icell++)
{
if(event->GetEMCALCells()->GetAmplitude(icell) > 0.1 && event->GetEMCALCells()->GetCellNumber(icell)/(24*48)==3) ncellsSM3++;
if(event->GetEMCALCells()->GetAmplitude(icell) > 0.1 && event->GetEMCALCells()->GetCellNumber(icell)/(24*48)==4) ncellsSM4++;
}
Int_t ncellcut = 21;
if(triggerclasses.Contains("EMC")) ncellcut = 35;
if( ncellsSM3 >= ncellcut || ncellsSM4 >= 100 )
{
fhNEvents->Fill(19.5);
if(bSelectVZ) fhNEvents->Fill(20.5);
}
}
PostData(1,fOutputContainer);
}
Bool_t AliAnalysisTaskCounter::CheckForPrimaryVertex()
{
AliESDEvent * esdevent = dynamic_cast<AliESDEvent*> (InputEvent());
AliAODEvent * aodevent = dynamic_cast<AliAODEvent*> (InputEvent());
if(esdevent)
{
if(esdevent->GetPrimaryVertex()->GetNContributors() > 0)
{
return kTRUE;
}
if(esdevent->GetPrimaryVertex()->GetNContributors() < 1)
{
if(esdevent->GetPrimaryVertexSPD()->GetNContributors() > 0)
{
return kTRUE;
}
if(esdevent->GetPrimaryVertexSPD()->GetNContributors() < 1)
{
return kFALSE;
}
}
}
else if(aodevent)
{
if (aodevent->GetPrimaryVertex() != NULL)
{
if(aodevent->GetPrimaryVertex()->GetNContributors() > 0)
{
return kTRUE;
}
}
if(aodevent->GetPrimaryVertexSPD() != NULL)
{
if(aodevent->GetPrimaryVertexSPD()->GetNContributors() > 0)
{
return kTRUE;
}
else
{
AliWarning(Form("Number of contributors from bad vertex type:: %s",aodevent->GetPrimaryVertex()->GetName()));
return kFALSE;
}
}
}
else return kTRUE;
return kFALSE;
}
void AliAnalysisTaskCounter::FinishTaskOutput()
{
AliAnalysisManager *am = AliAnalysisManager::GetAnalysisManager();
AliInputEventHandler *inputH = dynamic_cast<AliInputEventHandler*>(am->GetInputEventHandler());
if (!inputH) return;
TH2F *histStat = dynamic_cast<TH2F*>(inputH->GetStatistics());
TH2F *histBin0 = dynamic_cast<TH2F*>(inputH->GetStatistics("BIN0"));
if(histStat)
fOutputContainer->Add(histStat);
else AliInfo("Stat histogram not available check, \n if ESDs, that AliPhysicsSelection was on, \n if AODs, if EventStat_temp.root exists");
if(histBin0)
fOutputContainer->Add(histBin0);
}
Bool_t AliAnalysisTaskCounter::Notify()
{
if(!fCheckMCCrossSection) return kTRUE;
Float_t xsection = 0;
Float_t trials = 1;
fAvgTrials = -1;
TTree *tree = AliAnalysisManager::GetAnalysisManager()->GetTree();
if(!tree) return kFALSE;
TFile *curfile = tree->GetCurrentFile();
if(!curfile) return kFALSE;
if(fCurrFileName == curfile->GetName()) return kFALSE;
fCurrFileName = TString(curfile->GetName());
if(!fh1Xsec||!fh1Trials)
{
AliInfo(Form("%s%d No Histogram fh1Xsec",(char*)__FILE__,__LINE__));
return kFALSE;
}
Bool_t ok = PythiaInfoFromFile(fCurrFileName,xsection,trials);
if(!ok) return kFALSE;
fh1Xsec->Fill("<#sigma>",xsection);
Float_t nEntries = (Float_t)tree->GetTree()->GetEntries();
if(trials >= nEntries && nEntries > 0.) fAvgTrials = trials/nEntries;
fh1Trials->Fill("#sum{ntrials}",trials);
AliInfo(Form("xs %f, trial %f, avg trials %f\n",xsection,trials, fAvgTrials));
AliDebug(1,Form("Reading File %s",fInputHandler->GetTree()->GetCurrentFile()->GetName()));
return kTRUE;
}
Bool_t AliAnalysisTaskCounter::PythiaInfoFromFile(TString file,Float_t & xsec,Float_t & trials)
{
xsec = 0;
trials = 1;
if(file.Contains("root_archive.zip#"))
{
Ssiz_t pos1 = file.Index("root_archive",12,0,TString::kExact);
Ssiz_t pos = file.Index("#",1,pos1,TString::kExact);
Ssiz_t pos2 = file.Index(".root",5,TString::kExact);
file.Replace(pos+1,pos2-pos1,"");
}
else
{
file.ReplaceAll(gSystem->BaseName(file.Data()),"");
}
TFile *fxsec = TFile::Open(Form("%s%s",file.Data(),"pyxsec.root"));
if(!fxsec)
{
fxsec = TFile::Open(Form("%s%s",file.Data(),"pyxsec_hists.root"));
if(!fxsec)
{
return kFALSE;
}
else
{
TKey* key = (TKey*)fxsec->GetListOfKeys()->At(0);
if(!key)
{
fxsec->Close();
return kFALSE;
}
TList *list = dynamic_cast<TList*>(key->ReadObj());
if(!list)
{
fxsec->Close();
return kFALSE;
}
xsec = ((TProfile*)list->FindObject("h1Xsec")) ->GetBinContent(1);
trials = ((TH1F*) list->FindObject("h1Trials"))->GetBinContent(1);
fxsec->Close();
}
}
else
{
TTree *xtree = (TTree*)fxsec->Get("Xsection");
if(!xtree)
{
fxsec->Close();
return kFALSE;
}
UInt_t ntrials = 0;
Double_t xsection = 0;
xtree->SetBranchAddress("xsection",&xsection);
xtree->SetBranchAddress("ntrials",&ntrials);
xtree->GetEntry(0);
trials = ntrials;
xsec = xsection;
fxsec->Close();
}
return kTRUE;
}
AliAnalysisTaskCounter.cxx:1 AliAnalysisTaskCounter.cxx:2 AliAnalysisTaskCounter.cxx:3 AliAnalysisTaskCounter.cxx:4 AliAnalysisTaskCounter.cxx:5 AliAnalysisTaskCounter.cxx:6 AliAnalysisTaskCounter.cxx:7 AliAnalysisTaskCounter.cxx:8 AliAnalysisTaskCounter.cxx:9 AliAnalysisTaskCounter.cxx:10 AliAnalysisTaskCounter.cxx:11 AliAnalysisTaskCounter.cxx:12 AliAnalysisTaskCounter.cxx:13 AliAnalysisTaskCounter.cxx:14 AliAnalysisTaskCounter.cxx:15 AliAnalysisTaskCounter.cxx:16 AliAnalysisTaskCounter.cxx:17 AliAnalysisTaskCounter.cxx:18 AliAnalysisTaskCounter.cxx:19 AliAnalysisTaskCounter.cxx:20 AliAnalysisTaskCounter.cxx:21 AliAnalysisTaskCounter.cxx:22 AliAnalysisTaskCounter.cxx:23 AliAnalysisTaskCounter.cxx:24 AliAnalysisTaskCounter.cxx:25 AliAnalysisTaskCounter.cxx:26 AliAnalysisTaskCounter.cxx:27 AliAnalysisTaskCounter.cxx:28 AliAnalysisTaskCounter.cxx:29 AliAnalysisTaskCounter.cxx:30 AliAnalysisTaskCounter.cxx:31 AliAnalysisTaskCounter.cxx:32 AliAnalysisTaskCounter.cxx:33 AliAnalysisTaskCounter.cxx:34 AliAnalysisTaskCounter.cxx:35 AliAnalysisTaskCounter.cxx:36 AliAnalysisTaskCounter.cxx:37 AliAnalysisTaskCounter.cxx:38 AliAnalysisTaskCounter.cxx:39 AliAnalysisTaskCounter.cxx:40 AliAnalysisTaskCounter.cxx:41 AliAnalysisTaskCounter.cxx:42 AliAnalysisTaskCounter.cxx:43 AliAnalysisTaskCounter.cxx:44 AliAnalysisTaskCounter.cxx:45 AliAnalysisTaskCounter.cxx:46 AliAnalysisTaskCounter.cxx:47 AliAnalysisTaskCounter.cxx:48 AliAnalysisTaskCounter.cxx:49 AliAnalysisTaskCounter.cxx:50 AliAnalysisTaskCounter.cxx:51 AliAnalysisTaskCounter.cxx:52 AliAnalysisTaskCounter.cxx:53 AliAnalysisTaskCounter.cxx:54 AliAnalysisTaskCounter.cxx:55 AliAnalysisTaskCounter.cxx:56 AliAnalysisTaskCounter.cxx:57 AliAnalysisTaskCounter.cxx:58 AliAnalysisTaskCounter.cxx:59 AliAnalysisTaskCounter.cxx:60 AliAnalysisTaskCounter.cxx:61 AliAnalysisTaskCounter.cxx:62 AliAnalysisTaskCounter.cxx:63 AliAnalysisTaskCounter.cxx:64 AliAnalysisTaskCounter.cxx:65 AliAnalysisTaskCounter.cxx:66 AliAnalysisTaskCounter.cxx:67 AliAnalysisTaskCounter.cxx:68 AliAnalysisTaskCounter.cxx:69 AliAnalysisTaskCounter.cxx:70 AliAnalysisTaskCounter.cxx:71 AliAnalysisTaskCounter.cxx:72 AliAnalysisTaskCounter.cxx:73 AliAnalysisTaskCounter.cxx:74 AliAnalysisTaskCounter.cxx:75 AliAnalysisTaskCounter.cxx:76 AliAnalysisTaskCounter.cxx:77 AliAnalysisTaskCounter.cxx:78 AliAnalysisTaskCounter.cxx:79 AliAnalysisTaskCounter.cxx:80 AliAnalysisTaskCounter.cxx:81 AliAnalysisTaskCounter.cxx:82 AliAnalysisTaskCounter.cxx:83 AliAnalysisTaskCounter.cxx:84 AliAnalysisTaskCounter.cxx:85 AliAnalysisTaskCounter.cxx:86 AliAnalysisTaskCounter.cxx:87 AliAnalysisTaskCounter.cxx:88 AliAnalysisTaskCounter.cxx:89 AliAnalysisTaskCounter.cxx:90 AliAnalysisTaskCounter.cxx:91 AliAnalysisTaskCounter.cxx:92 AliAnalysisTaskCounter.cxx:93 AliAnalysisTaskCounter.cxx:94 AliAnalysisTaskCounter.cxx:95 AliAnalysisTaskCounter.cxx:96 AliAnalysisTaskCounter.cxx:97 AliAnalysisTaskCounter.cxx:98 AliAnalysisTaskCounter.cxx:99 AliAnalysisTaskCounter.cxx:100 AliAnalysisTaskCounter.cxx:101 AliAnalysisTaskCounter.cxx:102 AliAnalysisTaskCounter.cxx:103 AliAnalysisTaskCounter.cxx:104 AliAnalysisTaskCounter.cxx:105 AliAnalysisTaskCounter.cxx:106 AliAnalysisTaskCounter.cxx:107 AliAnalysisTaskCounter.cxx:108 AliAnalysisTaskCounter.cxx:109 AliAnalysisTaskCounter.cxx:110 AliAnalysisTaskCounter.cxx:111 AliAnalysisTaskCounter.cxx:112 AliAnalysisTaskCounter.cxx:113 AliAnalysisTaskCounter.cxx:114 AliAnalysisTaskCounter.cxx:115 AliAnalysisTaskCounter.cxx:116 AliAnalysisTaskCounter.cxx:117 AliAnalysisTaskCounter.cxx:118 AliAnalysisTaskCounter.cxx:119 AliAnalysisTaskCounter.cxx:120 AliAnalysisTaskCounter.cxx:121 AliAnalysisTaskCounter.cxx:122 AliAnalysisTaskCounter.cxx:123 AliAnalysisTaskCounter.cxx:124 AliAnalysisTaskCounter.cxx:125 AliAnalysisTaskCounter.cxx:126 AliAnalysisTaskCounter.cxx:127 AliAnalysisTaskCounter.cxx:128 AliAnalysisTaskCounter.cxx:129 AliAnalysisTaskCounter.cxx:130 AliAnalysisTaskCounter.cxx:131 AliAnalysisTaskCounter.cxx:132 AliAnalysisTaskCounter.cxx:133 AliAnalysisTaskCounter.cxx:134 AliAnalysisTaskCounter.cxx:135 AliAnalysisTaskCounter.cxx:136 AliAnalysisTaskCounter.cxx:137 AliAnalysisTaskCounter.cxx:138 AliAnalysisTaskCounter.cxx:139 AliAnalysisTaskCounter.cxx:140 AliAnalysisTaskCounter.cxx:141 AliAnalysisTaskCounter.cxx:142 AliAnalysisTaskCounter.cxx:143 AliAnalysisTaskCounter.cxx:144 AliAnalysisTaskCounter.cxx:145 AliAnalysisTaskCounter.cxx:146 AliAnalysisTaskCounter.cxx:147 AliAnalysisTaskCounter.cxx:148 AliAnalysisTaskCounter.cxx:149 AliAnalysisTaskCounter.cxx:150 AliAnalysisTaskCounter.cxx:151 AliAnalysisTaskCounter.cxx:152 AliAnalysisTaskCounter.cxx:153 AliAnalysisTaskCounter.cxx:154 AliAnalysisTaskCounter.cxx:155 AliAnalysisTaskCounter.cxx:156 AliAnalysisTaskCounter.cxx:157 AliAnalysisTaskCounter.cxx:158 AliAnalysisTaskCounter.cxx:159 AliAnalysisTaskCounter.cxx:160 AliAnalysisTaskCounter.cxx:161 AliAnalysisTaskCounter.cxx:162 AliAnalysisTaskCounter.cxx:163 AliAnalysisTaskCounter.cxx:164 AliAnalysisTaskCounter.cxx:165 AliAnalysisTaskCounter.cxx:166 AliAnalysisTaskCounter.cxx:167 AliAnalysisTaskCounter.cxx:168 AliAnalysisTaskCounter.cxx:169 AliAnalysisTaskCounter.cxx:170 AliAnalysisTaskCounter.cxx:171 AliAnalysisTaskCounter.cxx:172 AliAnalysisTaskCounter.cxx:173 AliAnalysisTaskCounter.cxx:174 AliAnalysisTaskCounter.cxx:175 AliAnalysisTaskCounter.cxx:176 AliAnalysisTaskCounter.cxx:177 AliAnalysisTaskCounter.cxx:178 AliAnalysisTaskCounter.cxx:179 AliAnalysisTaskCounter.cxx:180 AliAnalysisTaskCounter.cxx:181 AliAnalysisTaskCounter.cxx:182 AliAnalysisTaskCounter.cxx:183 AliAnalysisTaskCounter.cxx:184 AliAnalysisTaskCounter.cxx:185 AliAnalysisTaskCounter.cxx:186 AliAnalysisTaskCounter.cxx:187 AliAnalysisTaskCounter.cxx:188 AliAnalysisTaskCounter.cxx:189 AliAnalysisTaskCounter.cxx:190 AliAnalysisTaskCounter.cxx:191 AliAnalysisTaskCounter.cxx:192 AliAnalysisTaskCounter.cxx:193 AliAnalysisTaskCounter.cxx:194 AliAnalysisTaskCounter.cxx:195 AliAnalysisTaskCounter.cxx:196 AliAnalysisTaskCounter.cxx:197 AliAnalysisTaskCounter.cxx:198 AliAnalysisTaskCounter.cxx:199 AliAnalysisTaskCounter.cxx:200 AliAnalysisTaskCounter.cxx:201 AliAnalysisTaskCounter.cxx:202 AliAnalysisTaskCounter.cxx:203 AliAnalysisTaskCounter.cxx:204 AliAnalysisTaskCounter.cxx:205 AliAnalysisTaskCounter.cxx:206 AliAnalysisTaskCounter.cxx:207 AliAnalysisTaskCounter.cxx:208 AliAnalysisTaskCounter.cxx:209 AliAnalysisTaskCounter.cxx:210 AliAnalysisTaskCounter.cxx:211 AliAnalysisTaskCounter.cxx:212 AliAnalysisTaskCounter.cxx:213 AliAnalysisTaskCounter.cxx:214 AliAnalysisTaskCounter.cxx:215 AliAnalysisTaskCounter.cxx:216 AliAnalysisTaskCounter.cxx:217 AliAnalysisTaskCounter.cxx:218 AliAnalysisTaskCounter.cxx:219 AliAnalysisTaskCounter.cxx:220 AliAnalysisTaskCounter.cxx:221 AliAnalysisTaskCounter.cxx:222 AliAnalysisTaskCounter.cxx:223 AliAnalysisTaskCounter.cxx:224 AliAnalysisTaskCounter.cxx:225 AliAnalysisTaskCounter.cxx:226 AliAnalysisTaskCounter.cxx:227 AliAnalysisTaskCounter.cxx:228 AliAnalysisTaskCounter.cxx:229 AliAnalysisTaskCounter.cxx:230 AliAnalysisTaskCounter.cxx:231 AliAnalysisTaskCounter.cxx:232 AliAnalysisTaskCounter.cxx:233 AliAnalysisTaskCounter.cxx:234 AliAnalysisTaskCounter.cxx:235 AliAnalysisTaskCounter.cxx:236 AliAnalysisTaskCounter.cxx:237 AliAnalysisTaskCounter.cxx:238 AliAnalysisTaskCounter.cxx:239 AliAnalysisTaskCounter.cxx:240 AliAnalysisTaskCounter.cxx:241 AliAnalysisTaskCounter.cxx:242 AliAnalysisTaskCounter.cxx:243 AliAnalysisTaskCounter.cxx:244 AliAnalysisTaskCounter.cxx:245 AliAnalysisTaskCounter.cxx:246 AliAnalysisTaskCounter.cxx:247 AliAnalysisTaskCounter.cxx:248 AliAnalysisTaskCounter.cxx:249 AliAnalysisTaskCounter.cxx:250 AliAnalysisTaskCounter.cxx:251 AliAnalysisTaskCounter.cxx:252 AliAnalysisTaskCounter.cxx:253 AliAnalysisTaskCounter.cxx:254 AliAnalysisTaskCounter.cxx:255 AliAnalysisTaskCounter.cxx:256 AliAnalysisTaskCounter.cxx:257 AliAnalysisTaskCounter.cxx:258 AliAnalysisTaskCounter.cxx:259 AliAnalysisTaskCounter.cxx:260 AliAnalysisTaskCounter.cxx:261 AliAnalysisTaskCounter.cxx:262 AliAnalysisTaskCounter.cxx:263 AliAnalysisTaskCounter.cxx:264 AliAnalysisTaskCounter.cxx:265 AliAnalysisTaskCounter.cxx:266 AliAnalysisTaskCounter.cxx:267 AliAnalysisTaskCounter.cxx:268 AliAnalysisTaskCounter.cxx:269 AliAnalysisTaskCounter.cxx:270 AliAnalysisTaskCounter.cxx:271 AliAnalysisTaskCounter.cxx:272 AliAnalysisTaskCounter.cxx:273 AliAnalysisTaskCounter.cxx:274 AliAnalysisTaskCounter.cxx:275 AliAnalysisTaskCounter.cxx:276 AliAnalysisTaskCounter.cxx:277 AliAnalysisTaskCounter.cxx:278 AliAnalysisTaskCounter.cxx:279 AliAnalysisTaskCounter.cxx:280 AliAnalysisTaskCounter.cxx:281 AliAnalysisTaskCounter.cxx:282 AliAnalysisTaskCounter.cxx:283 AliAnalysisTaskCounter.cxx:284 AliAnalysisTaskCounter.cxx:285 AliAnalysisTaskCounter.cxx:286 AliAnalysisTaskCounter.cxx:287 AliAnalysisTaskCounter.cxx:288 AliAnalysisTaskCounter.cxx:289 AliAnalysisTaskCounter.cxx:290 AliAnalysisTaskCounter.cxx:291 AliAnalysisTaskCounter.cxx:292 AliAnalysisTaskCounter.cxx:293 AliAnalysisTaskCounter.cxx:294 AliAnalysisTaskCounter.cxx:295 AliAnalysisTaskCounter.cxx:296 AliAnalysisTaskCounter.cxx:297 AliAnalysisTaskCounter.cxx:298 AliAnalysisTaskCounter.cxx:299 AliAnalysisTaskCounter.cxx:300 AliAnalysisTaskCounter.cxx:301 AliAnalysisTaskCounter.cxx:302 AliAnalysisTaskCounter.cxx:303 AliAnalysisTaskCounter.cxx:304 AliAnalysisTaskCounter.cxx:305 AliAnalysisTaskCounter.cxx:306 AliAnalysisTaskCounter.cxx:307 AliAnalysisTaskCounter.cxx:308 AliAnalysisTaskCounter.cxx:309 AliAnalysisTaskCounter.cxx:310 AliAnalysisTaskCounter.cxx:311 AliAnalysisTaskCounter.cxx:312 AliAnalysisTaskCounter.cxx:313 AliAnalysisTaskCounter.cxx:314 AliAnalysisTaskCounter.cxx:315 AliAnalysisTaskCounter.cxx:316 AliAnalysisTaskCounter.cxx:317 AliAnalysisTaskCounter.cxx:318 AliAnalysisTaskCounter.cxx:319 AliAnalysisTaskCounter.cxx:320 AliAnalysisTaskCounter.cxx:321 AliAnalysisTaskCounter.cxx:322 AliAnalysisTaskCounter.cxx:323 AliAnalysisTaskCounter.cxx:324 AliAnalysisTaskCounter.cxx:325 AliAnalysisTaskCounter.cxx:326 AliAnalysisTaskCounter.cxx:327 AliAnalysisTaskCounter.cxx:328 AliAnalysisTaskCounter.cxx:329 AliAnalysisTaskCounter.cxx:330 AliAnalysisTaskCounter.cxx:331 AliAnalysisTaskCounter.cxx:332 AliAnalysisTaskCounter.cxx:333 AliAnalysisTaskCounter.cxx:334 AliAnalysisTaskCounter.cxx:335 AliAnalysisTaskCounter.cxx:336 AliAnalysisTaskCounter.cxx:337 AliAnalysisTaskCounter.cxx:338 AliAnalysisTaskCounter.cxx:339 AliAnalysisTaskCounter.cxx:340 AliAnalysisTaskCounter.cxx:341 AliAnalysisTaskCounter.cxx:342 AliAnalysisTaskCounter.cxx:343 AliAnalysisTaskCounter.cxx:344 AliAnalysisTaskCounter.cxx:345 AliAnalysisTaskCounter.cxx:346 AliAnalysisTaskCounter.cxx:347 AliAnalysisTaskCounter.cxx:348 AliAnalysisTaskCounter.cxx:349 AliAnalysisTaskCounter.cxx:350 AliAnalysisTaskCounter.cxx:351 AliAnalysisTaskCounter.cxx:352 AliAnalysisTaskCounter.cxx:353 AliAnalysisTaskCounter.cxx:354 AliAnalysisTaskCounter.cxx:355 AliAnalysisTaskCounter.cxx:356 AliAnalysisTaskCounter.cxx:357 AliAnalysisTaskCounter.cxx:358 AliAnalysisTaskCounter.cxx:359 AliAnalysisTaskCounter.cxx:360 AliAnalysisTaskCounter.cxx:361 AliAnalysisTaskCounter.cxx:362 AliAnalysisTaskCounter.cxx:363 AliAnalysisTaskCounter.cxx:364 AliAnalysisTaskCounter.cxx:365 AliAnalysisTaskCounter.cxx:366 AliAnalysisTaskCounter.cxx:367 AliAnalysisTaskCounter.cxx:368 AliAnalysisTaskCounter.cxx:369 AliAnalysisTaskCounter.cxx:370 AliAnalysisTaskCounter.cxx:371 AliAnalysisTaskCounter.cxx:372 AliAnalysisTaskCounter.cxx:373 AliAnalysisTaskCounter.cxx:374 AliAnalysisTaskCounter.cxx:375 AliAnalysisTaskCounter.cxx:376 AliAnalysisTaskCounter.cxx:377 AliAnalysisTaskCounter.cxx:378 AliAnalysisTaskCounter.cxx:379 AliAnalysisTaskCounter.cxx:380 AliAnalysisTaskCounter.cxx:381 AliAnalysisTaskCounter.cxx:382 AliAnalysisTaskCounter.cxx:383 AliAnalysisTaskCounter.cxx:384 AliAnalysisTaskCounter.cxx:385 AliAnalysisTaskCounter.cxx:386 AliAnalysisTaskCounter.cxx:387 AliAnalysisTaskCounter.cxx:388 AliAnalysisTaskCounter.cxx:389 AliAnalysisTaskCounter.cxx:390 AliAnalysisTaskCounter.cxx:391 AliAnalysisTaskCounter.cxx:392 AliAnalysisTaskCounter.cxx:393 AliAnalysisTaskCounter.cxx:394 AliAnalysisTaskCounter.cxx:395 AliAnalysisTaskCounter.cxx:396 AliAnalysisTaskCounter.cxx:397 AliAnalysisTaskCounter.cxx:398 AliAnalysisTaskCounter.cxx:399 AliAnalysisTaskCounter.cxx:400 AliAnalysisTaskCounter.cxx:401 AliAnalysisTaskCounter.cxx:402 AliAnalysisTaskCounter.cxx:403 AliAnalysisTaskCounter.cxx:404 AliAnalysisTaskCounter.cxx:405 AliAnalysisTaskCounter.cxx:406 AliAnalysisTaskCounter.cxx:407 AliAnalysisTaskCounter.cxx:408 AliAnalysisTaskCounter.cxx:409 AliAnalysisTaskCounter.cxx:410 AliAnalysisTaskCounter.cxx:411 AliAnalysisTaskCounter.cxx:412 AliAnalysisTaskCounter.cxx:413 AliAnalysisTaskCounter.cxx:414 AliAnalysisTaskCounter.cxx:415 AliAnalysisTaskCounter.cxx:416 AliAnalysisTaskCounter.cxx:417 AliAnalysisTaskCounter.cxx:418 AliAnalysisTaskCounter.cxx:419 AliAnalysisTaskCounter.cxx:420 AliAnalysisTaskCounter.cxx:421 AliAnalysisTaskCounter.cxx:422 AliAnalysisTaskCounter.cxx:423 AliAnalysisTaskCounter.cxx:424 AliAnalysisTaskCounter.cxx:425 AliAnalysisTaskCounter.cxx:426 AliAnalysisTaskCounter.cxx:427 AliAnalysisTaskCounter.cxx:428 AliAnalysisTaskCounter.cxx:429 AliAnalysisTaskCounter.cxx:430 AliAnalysisTaskCounter.cxx:431 AliAnalysisTaskCounter.cxx:432 AliAnalysisTaskCounter.cxx:433 AliAnalysisTaskCounter.cxx:434 AliAnalysisTaskCounter.cxx:435 AliAnalysisTaskCounter.cxx:436 AliAnalysisTaskCounter.cxx:437 AliAnalysisTaskCounter.cxx:438 AliAnalysisTaskCounter.cxx:439 AliAnalysisTaskCounter.cxx:440 AliAnalysisTaskCounter.cxx:441 AliAnalysisTaskCounter.cxx:442 AliAnalysisTaskCounter.cxx:443 AliAnalysisTaskCounter.cxx:444 AliAnalysisTaskCounter.cxx:445 AliAnalysisTaskCounter.cxx:446 AliAnalysisTaskCounter.cxx:447 AliAnalysisTaskCounter.cxx:448 AliAnalysisTaskCounter.cxx:449 AliAnalysisTaskCounter.cxx:450 AliAnalysisTaskCounter.cxx:451 AliAnalysisTaskCounter.cxx:452 AliAnalysisTaskCounter.cxx:453 AliAnalysisTaskCounter.cxx:454 AliAnalysisTaskCounter.cxx:455 AliAnalysisTaskCounter.cxx:456 AliAnalysisTaskCounter.cxx:457 AliAnalysisTaskCounter.cxx:458 AliAnalysisTaskCounter.cxx:459 AliAnalysisTaskCounter.cxx:460 AliAnalysisTaskCounter.cxx:461 AliAnalysisTaskCounter.cxx:462 AliAnalysisTaskCounter.cxx:463 AliAnalysisTaskCounter.cxx:464 AliAnalysisTaskCounter.cxx:465 AliAnalysisTaskCounter.cxx:466 AliAnalysisTaskCounter.cxx:467 AliAnalysisTaskCounter.cxx:468 AliAnalysisTaskCounter.cxx:469 AliAnalysisTaskCounter.cxx:470 AliAnalysisTaskCounter.cxx:471 AliAnalysisTaskCounter.cxx:472 AliAnalysisTaskCounter.cxx:473 AliAnalysisTaskCounter.cxx:474 AliAnalysisTaskCounter.cxx:475 AliAnalysisTaskCounter.cxx:476 AliAnalysisTaskCounter.cxx:477 AliAnalysisTaskCounter.cxx:478 AliAnalysisTaskCounter.cxx:479 AliAnalysisTaskCounter.cxx:480 AliAnalysisTaskCounter.cxx:481 AliAnalysisTaskCounter.cxx:482 AliAnalysisTaskCounter.cxx:483 AliAnalysisTaskCounter.cxx:484 AliAnalysisTaskCounter.cxx:485 AliAnalysisTaskCounter.cxx:486 AliAnalysisTaskCounter.cxx:487 AliAnalysisTaskCounter.cxx:488 AliAnalysisTaskCounter.cxx:489 AliAnalysisTaskCounter.cxx:490 AliAnalysisTaskCounter.cxx:491 AliAnalysisTaskCounter.cxx:492 AliAnalysisTaskCounter.cxx:493 AliAnalysisTaskCounter.cxx:494 AliAnalysisTaskCounter.cxx:495 AliAnalysisTaskCounter.cxx:496 AliAnalysisTaskCounter.cxx:497 AliAnalysisTaskCounter.cxx:498 AliAnalysisTaskCounter.cxx:499 AliAnalysisTaskCounter.cxx:500 AliAnalysisTaskCounter.cxx:501 AliAnalysisTaskCounter.cxx:502 AliAnalysisTaskCounter.cxx:503 AliAnalysisTaskCounter.cxx:504 AliAnalysisTaskCounter.cxx:505 AliAnalysisTaskCounter.cxx:506 AliAnalysisTaskCounter.cxx:507 AliAnalysisTaskCounter.cxx:508 AliAnalysisTaskCounter.cxx:509 AliAnalysisTaskCounter.cxx:510 AliAnalysisTaskCounter.cxx:511 AliAnalysisTaskCounter.cxx:512 AliAnalysisTaskCounter.cxx:513 AliAnalysisTaskCounter.cxx:514 AliAnalysisTaskCounter.cxx:515 AliAnalysisTaskCounter.cxx:516 AliAnalysisTaskCounter.cxx:517 AliAnalysisTaskCounter.cxx:518 AliAnalysisTaskCounter.cxx:519 AliAnalysisTaskCounter.cxx:520 AliAnalysisTaskCounter.cxx:521 AliAnalysisTaskCounter.cxx:522 AliAnalysisTaskCounter.cxx:523 AliAnalysisTaskCounter.cxx:524 AliAnalysisTaskCounter.cxx:525 AliAnalysisTaskCounter.cxx:526 AliAnalysisTaskCounter.cxx:527 AliAnalysisTaskCounter.cxx:528 AliAnalysisTaskCounter.cxx:529 AliAnalysisTaskCounter.cxx:530 AliAnalysisTaskCounter.cxx:531 AliAnalysisTaskCounter.cxx:532 AliAnalysisTaskCounter.cxx:533 AliAnalysisTaskCounter.cxx:534 AliAnalysisTaskCounter.cxx:535 AliAnalysisTaskCounter.cxx:536 AliAnalysisTaskCounter.cxx:537 AliAnalysisTaskCounter.cxx:538 AliAnalysisTaskCounter.cxx:539 AliAnalysisTaskCounter.cxx:540 AliAnalysisTaskCounter.cxx:541 AliAnalysisTaskCounter.cxx:542 AliAnalysisTaskCounter.cxx:543 AliAnalysisTaskCounter.cxx:544 AliAnalysisTaskCounter.cxx:545 AliAnalysisTaskCounter.cxx:546 AliAnalysisTaskCounter.cxx:547 AliAnalysisTaskCounter.cxx:548 AliAnalysisTaskCounter.cxx:549 AliAnalysisTaskCounter.cxx:550 AliAnalysisTaskCounter.cxx:551 AliAnalysisTaskCounter.cxx:552 AliAnalysisTaskCounter.cxx:553 AliAnalysisTaskCounter.cxx:554 AliAnalysisTaskCounter.cxx:555 AliAnalysisTaskCounter.cxx:556 AliAnalysisTaskCounter.cxx:557 AliAnalysisTaskCounter.cxx:558 AliAnalysisTaskCounter.cxx:559 AliAnalysisTaskCounter.cxx:560 AliAnalysisTaskCounter.cxx:561 AliAnalysisTaskCounter.cxx:562 AliAnalysisTaskCounter.cxx:563 AliAnalysisTaskCounter.cxx:564 AliAnalysisTaskCounter.cxx:565 AliAnalysisTaskCounter.cxx:566 AliAnalysisTaskCounter.cxx:567 AliAnalysisTaskCounter.cxx:568 AliAnalysisTaskCounter.cxx:569 AliAnalysisTaskCounter.cxx:570 AliAnalysisTaskCounter.cxx:571 AliAnalysisTaskCounter.cxx:572 AliAnalysisTaskCounter.cxx:573 AliAnalysisTaskCounter.cxx:574 AliAnalysisTaskCounter.cxx:575 AliAnalysisTaskCounter.cxx:576 AliAnalysisTaskCounter.cxx:577 AliAnalysisTaskCounter.cxx:578 AliAnalysisTaskCounter.cxx:579 AliAnalysisTaskCounter.cxx:580 AliAnalysisTaskCounter.cxx:581 AliAnalysisTaskCounter.cxx:582 AliAnalysisTaskCounter.cxx:583 AliAnalysisTaskCounter.cxx:584 AliAnalysisTaskCounter.cxx:585 AliAnalysisTaskCounter.cxx:586 AliAnalysisTaskCounter.cxx:587 AliAnalysisTaskCounter.cxx:588 AliAnalysisTaskCounter.cxx:589 AliAnalysisTaskCounter.cxx:590 AliAnalysisTaskCounter.cxx:591 AliAnalysisTaskCounter.cxx:592 AliAnalysisTaskCounter.cxx:593 AliAnalysisTaskCounter.cxx:594 AliAnalysisTaskCounter.cxx:595 AliAnalysisTaskCounter.cxx:596 AliAnalysisTaskCounter.cxx:597 AliAnalysisTaskCounter.cxx:598 AliAnalysisTaskCounter.cxx:599 AliAnalysisTaskCounter.cxx:600 AliAnalysisTaskCounter.cxx:601 AliAnalysisTaskCounter.cxx:602 AliAnalysisTaskCounter.cxx:603 AliAnalysisTaskCounter.cxx:604 AliAnalysisTaskCounter.cxx:605 AliAnalysisTaskCounter.cxx:606 AliAnalysisTaskCounter.cxx:607 AliAnalysisTaskCounter.cxx:608 AliAnalysisTaskCounter.cxx:609 AliAnalysisTaskCounter.cxx:610 AliAnalysisTaskCounter.cxx:611 AliAnalysisTaskCounter.cxx:612 AliAnalysisTaskCounter.cxx:613 AliAnalysisTaskCounter.cxx:614 AliAnalysisTaskCounter.cxx:615 AliAnalysisTaskCounter.cxx:616 AliAnalysisTaskCounter.cxx:617 AliAnalysisTaskCounter.cxx:618 AliAnalysisTaskCounter.cxx:619 AliAnalysisTaskCounter.cxx:620 AliAnalysisTaskCounter.cxx:621 AliAnalysisTaskCounter.cxx:622 AliAnalysisTaskCounter.cxx:623 AliAnalysisTaskCounter.cxx:624 AliAnalysisTaskCounter.cxx:625