#include "TChain.h"
#include "TH2D.h"
#include "TH3D.h"
#include "AliAODEvent.h"
#include "AliAODRecoDecay.h"
#include "AliAODTrack.h"
#include "AliLog.h"
#include "AliAnalysisTaskSE.h"
#include "AliMCEvent.h"
#include "AliAODMCParticle.h"
#include "AliAnalysisTaskAODFilterBitQA.h"
ClassImp(AliAnalysisTaskAODFilterBitQA)
AliAnalysisTaskAODFilterBitQA::AliAnalysisTaskAODFilterBitQA(const char *name)
: AliAnalysisTaskSE(name),
fArrayMC(0x0),
fListQA(0x0),
useCentrality(kFALSE),
fillOnlySecondaries(kFALSE),
fillHFVertexingTracks(kFALSE),
fHFBranchName("D0toKpi"),
fBitIgnore1(-1),
fBitIgnore2(-1),
fCentralityPercentileMin(0.),
fCentralityPercentileMax(80.),
fPtMin(0),
fPtMax(1000),
fEtaMin(-10),
fEtaMax(10),
fHistTrackStats(0)
{
for(Int_t iCharge = 0; iCharge < gNCharge; iCharge++){
for(Int_t iTrackBit = 0; iTrackBit < gBitMax; iTrackBit++){
fHistKinematics[iCharge][iTrackBit] = NULL;
fHistDCAconstrained[iCharge][iTrackBit] = NULL;
fHistDCAglobal[iCharge][iTrackBit] = NULL;
fHistChiClus[iCharge][iTrackBit] = NULL;
}
}
DefineInput(0, TChain::Class());
DefineOutput(1, TList::Class());
}
AliAnalysisTaskAODFilterBitQA::~AliAnalysisTaskAODFilterBitQA() {
}
void AliAnalysisTaskAODFilterBitQA::UserCreateOutputObjects() {
Bool_t oldStatus = TH1::AddDirectoryStatus();
TH1::AddDirectory(kFALSE);
fListQA = new TList();
fListQA->SetName("listQA");
fListQA->SetOwner();
fHistTrackStats = new TH2D("fHistTrackStats","Track statistics;Centrality;TrackFilterBit;N_{events}",100,0,100,gBitMax,0,gBitMax);
fListQA->Add(fHistTrackStats);
TString sCharge[gNCharge] = {"Plus","Minus"};
for(Int_t iCharge = 0; iCharge < gNCharge; iCharge++){
for(Int_t iTrackBit = 0; iTrackBit < gBitMax; iTrackBit++){
fHistKinematics[iCharge][iTrackBit] = new TH3D(Form("Bit%d_%s_Kinematics",iTrackBit,sCharge[iCharge].Data()),Form("Bit%d_%s_Kinematics;#eta;#varphi (rad);p_{T} (GeV/c)",iTrackBit,sCharge[iCharge].Data()),100,-1.0,1.0,100,0,TMath::Pi()*2,100,0,10);
fHistDCAconstrained[iCharge][iTrackBit] = new TH2D(Form("Bit%d_%s_DCAconstrained",iTrackBit,sCharge[iCharge].Data()),Form("Bit%d_%s_DCAconstrained;DCA XY [Constrained] (cm);DCA Z [Constrained] (cm)",iTrackBit,sCharge[iCharge].Data()),100,-5.0,5.0,100,-5.0,5.0);
fHistDCAglobal[iCharge][iTrackBit] = new TH3D(Form("Bit%d_%s_DCAglobal",iTrackBit,sCharge[iCharge].Data()),Form("Bit%d_%s_DCAglobal;DCA X [Global] (cm);DCA Y [Global] (cm);DCA Z [Global] (cm)",iTrackBit,sCharge[iCharge].Data()),100,-5.0,5.0,100,-5.0,5.0,100,-5.0,5.0);
fHistChiClus[iCharge][iTrackBit] = new TH2D(Form("Bit%d_%s_ChiClus",iTrackBit,sCharge[iCharge].Data()),Form("Bit%d_%s_ChiClus;#chi^{2} [Fit];N_{clus} [TPC]",iTrackBit,sCharge[iCharge].Data()),100,-1.0,5.0,160,0,160.0);
fListQA->Add(fHistKinematics[iCharge][iTrackBit]);
fListQA->Add(fHistDCAconstrained[iCharge][iTrackBit]);
fListQA->Add(fHistDCAglobal[iCharge][iTrackBit]);
fListQA->Add(fHistChiClus[iCharge][iTrackBit]);
}
}
PostData(1, fListQA);
AliInfo("Finished setting up the Output");
TH1::AddDirectory(oldStatus);
}
void AliAnalysisTaskAODFilterBitQA::UserExec(Option_t *) {
AliVEvent* event = dynamic_cast<AliVEvent*>(InputEvent());
if(!event) {
AliError("event not available");
return;
}
fArrayMC = dynamic_cast<TClonesArray*>(event->FindListObject(AliAODMCParticle::StdBranchName()));
Double_t lMultiplicityVar = -1;
if((lMultiplicityVar = IsEventAccepted(event)) < 0){
return;
}
if(fillHFVertexingTracks){
GetAcceptedHFVertexingTracks(event,lMultiplicityVar);
}
else{
GetAcceptedTracks(event,lMultiplicityVar);
}
}
void AliAnalysisTaskAODFilterBitQA::FinishTaskOutput(){
}
void AliAnalysisTaskAODFilterBitQA::Terminate(Option_t *) {
}
Double_t AliAnalysisTaskAODFilterBitQA::IsEventAccepted(AliVEvent *event){
Double_t fVxMax = 0.5;
Double_t fVyMax = 0.5;
Double_t fVzMax = 10.0;
TString fCentralityEstimator = "V0M";
Float_t gCentrality = -1.;
const AliVVertex *vertex = event->GetPrimaryVertex();
if(vertex) {
Double32_t fCov[6];
vertex->GetCovarianceMatrix(fCov);
if(vertex->GetNContributors() > 0) {
if(fCov[5] != 0) {
if(TMath::Abs(vertex->GetX()) < fVxMax) {
if(TMath::Abs(vertex->GetY()) < fVyMax) {
if(TMath::Abs(vertex->GetZ()) < fVzMax) {
if(useCentrality){
AliAODHeader *header = (AliAODHeader*) event->GetHeader();
gCentrality = header->GetCentralityP()->GetCentralityPercentile(fCentralityEstimator.Data());
if((gCentrality > fCentralityPercentileMin) && (gCentrality < fCentralityPercentileMax)){
return gCentrality;
}
else{
return -1;
}
}
return 1;
}
}
}
}
}
}
return -1;
}
void AliAnalysisTaskAODFilterBitQA::GetAcceptedTracks(AliVEvent *event, Double_t gCentrality){
Double_t vEta;
Double_t vPhi;
Double_t vPt;
Double_t vDCAconstrainedxy;
Double_t vDCAconstrainedz;
Double_t vDCAglobalx;
Double_t vDCAglobaly;
Double_t vDCAglobalz;
Double_t vChi2;
Double_t vClus;
Double_t pos[3];
Double_t v[3];
const AliVVertex *vertex = event->GetPrimaryVertex();
vertex->GetXYZ(v);
for (Int_t iTracks = 0; iTracks < event->GetNumberOfTracks(); iTracks++) {
AliAODTrack* aodTrack = dynamic_cast<AliAODTrack *>(event->GetTrack(iTracks));
if (!aodTrack) {
AliError(Form("Could not receive track %d", iTracks));
continue;
}
if(fArrayMC && fillOnlySecondaries){
Int_t label = aodTrack->GetLabel();
AliAODMCParticle *mcTrack = (AliAODMCParticle *)fArrayMC->At(TMath::Abs(label));
if(mcTrack->IsPhysicalPrimary())
continue;
}
vEta = aodTrack->Eta();
vPhi = aodTrack->Phi();
vPt = aodTrack->Pt();
vDCAconstrainedxy = aodTrack->DCA();
vDCAconstrainedz = aodTrack->ZAtDCA();
vChi2 = aodTrack->Chi2perNDF();
vClus = aodTrack->GetTPCNcls();
if( vPt > fPtMax || vPt < fPtMin )
continue;
if( vEta > fEtaMax || vEta < fEtaMin )
continue;
aodTrack->GetXYZ(pos);
vDCAglobalx = pos[0] - v[0];
vDCAglobaly = pos[1] - v[1];
vDCAglobalz = pos[2] - v[2];
Int_t iCharge = -1;
if(aodTrack->Charge() > 0)
iCharge = 0;
else if(aodTrack->Charge() < 0)
iCharge = 1;
else{
AliError("Charge==0?");
iCharge = -1;
}
if(iCharge > -1){
for(Int_t iTrackBit = 0; iTrackBit < gBitMax-1; iTrackBit++){
fHistTrackStats->Fill(gCentrality,iTrackBit,aodTrack->TestFilterBit(1<<iTrackBit));
if(aodTrack->TestFilterBit(1<<iTrackBit)){
fHistKinematics[iCharge][iTrackBit]->Fill(vEta,vPhi,vPt);
fHistDCAconstrained[iCharge][iTrackBit]->Fill(vDCAconstrainedxy,vDCAconstrainedz);
fHistDCAglobal[iCharge][iTrackBit]->Fill(vDCAglobalx,vDCAglobaly,vDCAglobalz);
fHistChiClus[iCharge][iTrackBit]->Fill(vChi2,vClus);
}
}
fHistTrackStats->Fill(gCentrality,gBitMax-1,1);
fHistKinematics[iCharge][gBitMax-1]->Fill(vEta,vPhi,vPt);
fHistDCAconstrained[iCharge][gBitMax-1]->Fill(vDCAconstrainedxy,vDCAconstrainedz);
fHistDCAglobal[iCharge][gBitMax-1]->Fill(vDCAglobalx,vDCAglobaly,vDCAglobalz);
fHistChiClus[iCharge][gBitMax-1]->Fill(vChi2,vClus);
}
}
return;
}
void AliAnalysisTaskAODFilterBitQA::GetAcceptedHFVertexingTracks(AliVEvent *event, Double_t gCentrality){
Double_t vEta;
Double_t vPhi;
Double_t vPt;
Double_t vDCAconstrainedxy;
Double_t vDCAconstrainedz;
Double_t vDCAglobalx;
Double_t vDCAglobaly;
Double_t vDCAglobalz;
Double_t vChi2;
Double_t vClus;
Double_t pos[3];
Double_t v[3];
Int_t IDList[1000];
Int_t IDListLength = 0;
for(Int_t i = 0; i < 1000; i++){
IDList[i] = -5;
}
const AliVVertex *vertex = event->GetPrimaryVertex();
vertex->GetXYZ(v);
TClonesArray *arrayDStartoD0pi = (TClonesArray*)event->GetList()->FindObject(fHFBranchName.Data());
if (!arrayDStartoD0pi) {
AliInfo(Form("Could not find array %s, skipping the event",fHFBranchName.Data()));
return;
} else {
AliDebug(2, Form("Found %d vertices",arrayDStartoD0pi->GetEntriesFast()));
}
const Int_t NVertices = arrayDStartoD0pi->GetEntriesFast();
for (Int_t iVertex = 0; iVertex < NVertices; ++iVertex) {
AliAODRecoDecay *HFvertex = static_cast<AliAODRecoDecay*>(arrayDStartoD0pi->At(iVertex));
for (Int_t iProng = 0; iProng<HFvertex->GetNProngs(); iProng++) {
AliAODTrack *daughter = (AliAODTrack*)HFvertex->GetDaughter(iProng);
if (!daughter){
AliError(Form("Could not receive track %d %d", iVertex, iProng));
continue;
}
if(fArrayMC && fillOnlySecondaries){
Int_t label = daughter->GetLabel();
AliAODMCParticle *mcTrack = (AliAODMCParticle *)fArrayMC->At(TMath::Abs(label));
if(mcTrack->IsPhysicalPrimary())
continue;
}
vEta = daughter->Eta();
vPhi = daughter->Phi();
vPt = daughter->Pt();
vDCAconstrainedxy = daughter->DCA();
vDCAconstrainedz = daughter->ZAtDCA();
vChi2 = daughter->Chi2perNDF();
vClus = daughter->GetTPCNcls();
if( vPt > fPtMax || vPt < fPtMin )
continue;
if( vEta > fEtaMax || vEta < fEtaMin )
continue;
Bool_t doubleCount = kFALSE;
Int_t daughterID = daughter->GetID();
for(Int_t idx = 0; idx < IDListLength; idx++){
if(IDList[idx]==daughterID){
doubleCount = kTRUE;
break;
}
}
if(!doubleCount){
IDList[IDListLength] = daughterID;
IDListLength++;
}
else{
continue;
}
daughter->GetXYZ(pos);
vDCAglobalx = pos[0] - v[0];
vDCAglobaly = pos[1] - v[1];
vDCAglobalz = pos[2] - v[2];
Int_t iCharge = -1;
if(daughter->Charge() > 0)
iCharge = 0;
else if(daughter->Charge() < 0)
iCharge = 1;
else{
AliError("Charge==0?");
iCharge = -1;
}
if(iCharge > -1){
if(fBitIgnore1 > -1 && daughter->TestFilterBit(1<<fBitIgnore1))
continue;
if(fBitIgnore2 > -1 && daughter->TestFilterBit(1<<fBitIgnore2))
continue;
for(Int_t iTrackBit = 0; iTrackBit < gBitMax; iTrackBit++){
fHistTrackStats->Fill(gCentrality,iTrackBit,daughter->TestFilterBit(1<<iTrackBit));
if(daughter->TestFilterBit(1<<iTrackBit)){
fHistKinematics[iCharge][iTrackBit]->Fill(vEta,vPhi,vPt);
fHistDCAconstrained[iCharge][iTrackBit]->Fill(vDCAconstrainedxy,vDCAconstrainedz);
fHistDCAglobal[iCharge][iTrackBit]->Fill(vDCAglobalx,vDCAglobaly,vDCAglobalz);
fHistChiClus[iCharge][iTrackBit]->Fill(vChi2,vClus);
}
}
fHistTrackStats->Fill(gCentrality,gBitMax-1,1);
fHistKinematics[iCharge][gBitMax-1]->Fill(vEta,vPhi,vPt);
fHistDCAconstrained[iCharge][gBitMax-1]->Fill(vDCAconstrainedxy,vDCAconstrainedz);
fHistDCAglobal[iCharge][gBitMax-1]->Fill(vDCAglobalx,vDCAglobaly,vDCAglobalz);
fHistChiClus[iCharge][gBitMax-1]->Fill(vChi2,vClus);
}
}
}
return;
}
AliAnalysisTaskAODFilterBitQA.cxx:1 AliAnalysisTaskAODFilterBitQA.cxx:2 AliAnalysisTaskAODFilterBitQA.cxx:3 AliAnalysisTaskAODFilterBitQA.cxx:4 AliAnalysisTaskAODFilterBitQA.cxx:5 AliAnalysisTaskAODFilterBitQA.cxx:6 AliAnalysisTaskAODFilterBitQA.cxx:7 AliAnalysisTaskAODFilterBitQA.cxx:8 AliAnalysisTaskAODFilterBitQA.cxx:9 AliAnalysisTaskAODFilterBitQA.cxx:10 AliAnalysisTaskAODFilterBitQA.cxx:11 AliAnalysisTaskAODFilterBitQA.cxx:12 AliAnalysisTaskAODFilterBitQA.cxx:13 AliAnalysisTaskAODFilterBitQA.cxx:14 AliAnalysisTaskAODFilterBitQA.cxx:15 AliAnalysisTaskAODFilterBitQA.cxx:16 AliAnalysisTaskAODFilterBitQA.cxx:17 AliAnalysisTaskAODFilterBitQA.cxx:18 AliAnalysisTaskAODFilterBitQA.cxx:19 AliAnalysisTaskAODFilterBitQA.cxx:20 AliAnalysisTaskAODFilterBitQA.cxx:21 AliAnalysisTaskAODFilterBitQA.cxx:22 AliAnalysisTaskAODFilterBitQA.cxx:23 AliAnalysisTaskAODFilterBitQA.cxx:24 AliAnalysisTaskAODFilterBitQA.cxx:25 AliAnalysisTaskAODFilterBitQA.cxx:26 AliAnalysisTaskAODFilterBitQA.cxx:27 AliAnalysisTaskAODFilterBitQA.cxx:28 AliAnalysisTaskAODFilterBitQA.cxx:29 AliAnalysisTaskAODFilterBitQA.cxx:30 AliAnalysisTaskAODFilterBitQA.cxx:31 AliAnalysisTaskAODFilterBitQA.cxx:32 AliAnalysisTaskAODFilterBitQA.cxx:33 AliAnalysisTaskAODFilterBitQA.cxx:34 AliAnalysisTaskAODFilterBitQA.cxx:35 AliAnalysisTaskAODFilterBitQA.cxx:36 AliAnalysisTaskAODFilterBitQA.cxx:37 AliAnalysisTaskAODFilterBitQA.cxx:38 AliAnalysisTaskAODFilterBitQA.cxx:39 AliAnalysisTaskAODFilterBitQA.cxx:40 AliAnalysisTaskAODFilterBitQA.cxx:41 AliAnalysisTaskAODFilterBitQA.cxx:42 AliAnalysisTaskAODFilterBitQA.cxx:43 AliAnalysisTaskAODFilterBitQA.cxx:44 AliAnalysisTaskAODFilterBitQA.cxx:45 AliAnalysisTaskAODFilterBitQA.cxx:46 AliAnalysisTaskAODFilterBitQA.cxx:47 AliAnalysisTaskAODFilterBitQA.cxx:48 AliAnalysisTaskAODFilterBitQA.cxx:49 AliAnalysisTaskAODFilterBitQA.cxx:50 AliAnalysisTaskAODFilterBitQA.cxx:51 AliAnalysisTaskAODFilterBitQA.cxx:52 AliAnalysisTaskAODFilterBitQA.cxx:53 AliAnalysisTaskAODFilterBitQA.cxx:54 AliAnalysisTaskAODFilterBitQA.cxx:55 AliAnalysisTaskAODFilterBitQA.cxx:56 AliAnalysisTaskAODFilterBitQA.cxx:57 AliAnalysisTaskAODFilterBitQA.cxx:58 AliAnalysisTaskAODFilterBitQA.cxx:59 AliAnalysisTaskAODFilterBitQA.cxx:60 AliAnalysisTaskAODFilterBitQA.cxx:61 AliAnalysisTaskAODFilterBitQA.cxx:62 AliAnalysisTaskAODFilterBitQA.cxx:63 AliAnalysisTaskAODFilterBitQA.cxx:64 AliAnalysisTaskAODFilterBitQA.cxx:65 AliAnalysisTaskAODFilterBitQA.cxx:66 AliAnalysisTaskAODFilterBitQA.cxx:67 AliAnalysisTaskAODFilterBitQA.cxx:68 AliAnalysisTaskAODFilterBitQA.cxx:69 AliAnalysisTaskAODFilterBitQA.cxx:70 AliAnalysisTaskAODFilterBitQA.cxx:71 AliAnalysisTaskAODFilterBitQA.cxx:72 AliAnalysisTaskAODFilterBitQA.cxx:73 AliAnalysisTaskAODFilterBitQA.cxx:74 AliAnalysisTaskAODFilterBitQA.cxx:75 AliAnalysisTaskAODFilterBitQA.cxx:76 AliAnalysisTaskAODFilterBitQA.cxx:77 AliAnalysisTaskAODFilterBitQA.cxx:78 AliAnalysisTaskAODFilterBitQA.cxx:79 AliAnalysisTaskAODFilterBitQA.cxx:80 AliAnalysisTaskAODFilterBitQA.cxx:81 AliAnalysisTaskAODFilterBitQA.cxx:82 AliAnalysisTaskAODFilterBitQA.cxx:83 AliAnalysisTaskAODFilterBitQA.cxx:84 AliAnalysisTaskAODFilterBitQA.cxx:85 AliAnalysisTaskAODFilterBitQA.cxx:86 AliAnalysisTaskAODFilterBitQA.cxx:87 AliAnalysisTaskAODFilterBitQA.cxx:88 AliAnalysisTaskAODFilterBitQA.cxx:89 AliAnalysisTaskAODFilterBitQA.cxx:90 AliAnalysisTaskAODFilterBitQA.cxx:91 AliAnalysisTaskAODFilterBitQA.cxx:92 AliAnalysisTaskAODFilterBitQA.cxx:93 AliAnalysisTaskAODFilterBitQA.cxx:94 AliAnalysisTaskAODFilterBitQA.cxx:95 AliAnalysisTaskAODFilterBitQA.cxx:96 AliAnalysisTaskAODFilterBitQA.cxx:97 AliAnalysisTaskAODFilterBitQA.cxx:98 AliAnalysisTaskAODFilterBitQA.cxx:99 AliAnalysisTaskAODFilterBitQA.cxx:100 AliAnalysisTaskAODFilterBitQA.cxx:101 AliAnalysisTaskAODFilterBitQA.cxx:102 AliAnalysisTaskAODFilterBitQA.cxx:103 AliAnalysisTaskAODFilterBitQA.cxx:104 AliAnalysisTaskAODFilterBitQA.cxx:105 AliAnalysisTaskAODFilterBitQA.cxx:106 AliAnalysisTaskAODFilterBitQA.cxx:107 AliAnalysisTaskAODFilterBitQA.cxx:108 AliAnalysisTaskAODFilterBitQA.cxx:109 AliAnalysisTaskAODFilterBitQA.cxx:110 AliAnalysisTaskAODFilterBitQA.cxx:111 AliAnalysisTaskAODFilterBitQA.cxx:112 AliAnalysisTaskAODFilterBitQA.cxx:113 AliAnalysisTaskAODFilterBitQA.cxx:114 AliAnalysisTaskAODFilterBitQA.cxx:115 AliAnalysisTaskAODFilterBitQA.cxx:116 AliAnalysisTaskAODFilterBitQA.cxx:117 AliAnalysisTaskAODFilterBitQA.cxx:118 AliAnalysisTaskAODFilterBitQA.cxx:119 AliAnalysisTaskAODFilterBitQA.cxx:120 AliAnalysisTaskAODFilterBitQA.cxx:121 AliAnalysisTaskAODFilterBitQA.cxx:122 AliAnalysisTaskAODFilterBitQA.cxx:123 AliAnalysisTaskAODFilterBitQA.cxx:124 AliAnalysisTaskAODFilterBitQA.cxx:125 AliAnalysisTaskAODFilterBitQA.cxx:126 AliAnalysisTaskAODFilterBitQA.cxx:127 AliAnalysisTaskAODFilterBitQA.cxx:128 AliAnalysisTaskAODFilterBitQA.cxx:129 AliAnalysisTaskAODFilterBitQA.cxx:130 AliAnalysisTaskAODFilterBitQA.cxx:131 AliAnalysisTaskAODFilterBitQA.cxx:132 AliAnalysisTaskAODFilterBitQA.cxx:133 AliAnalysisTaskAODFilterBitQA.cxx:134 AliAnalysisTaskAODFilterBitQA.cxx:135 AliAnalysisTaskAODFilterBitQA.cxx:136 AliAnalysisTaskAODFilterBitQA.cxx:137 AliAnalysisTaskAODFilterBitQA.cxx:138 AliAnalysisTaskAODFilterBitQA.cxx:139 AliAnalysisTaskAODFilterBitQA.cxx:140 AliAnalysisTaskAODFilterBitQA.cxx:141 AliAnalysisTaskAODFilterBitQA.cxx:142 AliAnalysisTaskAODFilterBitQA.cxx:143 AliAnalysisTaskAODFilterBitQA.cxx:144 AliAnalysisTaskAODFilterBitQA.cxx:145 AliAnalysisTaskAODFilterBitQA.cxx:146 AliAnalysisTaskAODFilterBitQA.cxx:147 AliAnalysisTaskAODFilterBitQA.cxx:148 AliAnalysisTaskAODFilterBitQA.cxx:149 AliAnalysisTaskAODFilterBitQA.cxx:150 AliAnalysisTaskAODFilterBitQA.cxx:151 AliAnalysisTaskAODFilterBitQA.cxx:152 AliAnalysisTaskAODFilterBitQA.cxx:153 AliAnalysisTaskAODFilterBitQA.cxx:154 AliAnalysisTaskAODFilterBitQA.cxx:155 AliAnalysisTaskAODFilterBitQA.cxx:156 AliAnalysisTaskAODFilterBitQA.cxx:157 AliAnalysisTaskAODFilterBitQA.cxx:158 AliAnalysisTaskAODFilterBitQA.cxx:159 AliAnalysisTaskAODFilterBitQA.cxx:160 AliAnalysisTaskAODFilterBitQA.cxx:161 AliAnalysisTaskAODFilterBitQA.cxx:162 AliAnalysisTaskAODFilterBitQA.cxx:163 AliAnalysisTaskAODFilterBitQA.cxx:164 AliAnalysisTaskAODFilterBitQA.cxx:165 AliAnalysisTaskAODFilterBitQA.cxx:166 AliAnalysisTaskAODFilterBitQA.cxx:167 AliAnalysisTaskAODFilterBitQA.cxx:168 AliAnalysisTaskAODFilterBitQA.cxx:169 AliAnalysisTaskAODFilterBitQA.cxx:170 AliAnalysisTaskAODFilterBitQA.cxx:171 AliAnalysisTaskAODFilterBitQA.cxx:172 AliAnalysisTaskAODFilterBitQA.cxx:173 AliAnalysisTaskAODFilterBitQA.cxx:174 AliAnalysisTaskAODFilterBitQA.cxx:175 AliAnalysisTaskAODFilterBitQA.cxx:176 AliAnalysisTaskAODFilterBitQA.cxx:177 AliAnalysisTaskAODFilterBitQA.cxx:178 AliAnalysisTaskAODFilterBitQA.cxx:179 AliAnalysisTaskAODFilterBitQA.cxx:180 AliAnalysisTaskAODFilterBitQA.cxx:181 AliAnalysisTaskAODFilterBitQA.cxx:182 AliAnalysisTaskAODFilterBitQA.cxx:183 AliAnalysisTaskAODFilterBitQA.cxx:184 AliAnalysisTaskAODFilterBitQA.cxx:185 AliAnalysisTaskAODFilterBitQA.cxx:186 AliAnalysisTaskAODFilterBitQA.cxx:187 AliAnalysisTaskAODFilterBitQA.cxx:188 AliAnalysisTaskAODFilterBitQA.cxx:189 AliAnalysisTaskAODFilterBitQA.cxx:190 AliAnalysisTaskAODFilterBitQA.cxx:191 AliAnalysisTaskAODFilterBitQA.cxx:192 AliAnalysisTaskAODFilterBitQA.cxx:193 AliAnalysisTaskAODFilterBitQA.cxx:194 AliAnalysisTaskAODFilterBitQA.cxx:195 AliAnalysisTaskAODFilterBitQA.cxx:196 AliAnalysisTaskAODFilterBitQA.cxx:197 AliAnalysisTaskAODFilterBitQA.cxx:198 AliAnalysisTaskAODFilterBitQA.cxx:199 AliAnalysisTaskAODFilterBitQA.cxx:200 AliAnalysisTaskAODFilterBitQA.cxx:201 AliAnalysisTaskAODFilterBitQA.cxx:202 AliAnalysisTaskAODFilterBitQA.cxx:203 AliAnalysisTaskAODFilterBitQA.cxx:204 AliAnalysisTaskAODFilterBitQA.cxx:205 AliAnalysisTaskAODFilterBitQA.cxx:206 AliAnalysisTaskAODFilterBitQA.cxx:207 AliAnalysisTaskAODFilterBitQA.cxx:208 AliAnalysisTaskAODFilterBitQA.cxx:209 AliAnalysisTaskAODFilterBitQA.cxx:210 AliAnalysisTaskAODFilterBitQA.cxx:211 AliAnalysisTaskAODFilterBitQA.cxx:212 AliAnalysisTaskAODFilterBitQA.cxx:213 AliAnalysisTaskAODFilterBitQA.cxx:214 AliAnalysisTaskAODFilterBitQA.cxx:215 AliAnalysisTaskAODFilterBitQA.cxx:216 AliAnalysisTaskAODFilterBitQA.cxx:217 AliAnalysisTaskAODFilterBitQA.cxx:218 AliAnalysisTaskAODFilterBitQA.cxx:219 AliAnalysisTaskAODFilterBitQA.cxx:220 AliAnalysisTaskAODFilterBitQA.cxx:221 AliAnalysisTaskAODFilterBitQA.cxx:222 AliAnalysisTaskAODFilterBitQA.cxx:223 AliAnalysisTaskAODFilterBitQA.cxx:224 AliAnalysisTaskAODFilterBitQA.cxx:225 AliAnalysisTaskAODFilterBitQA.cxx:226 AliAnalysisTaskAODFilterBitQA.cxx:227 AliAnalysisTaskAODFilterBitQA.cxx:228 AliAnalysisTaskAODFilterBitQA.cxx:229 AliAnalysisTaskAODFilterBitQA.cxx:230 AliAnalysisTaskAODFilterBitQA.cxx:231 AliAnalysisTaskAODFilterBitQA.cxx:232 AliAnalysisTaskAODFilterBitQA.cxx:233 AliAnalysisTaskAODFilterBitQA.cxx:234 AliAnalysisTaskAODFilterBitQA.cxx:235 AliAnalysisTaskAODFilterBitQA.cxx:236 AliAnalysisTaskAODFilterBitQA.cxx:237 AliAnalysisTaskAODFilterBitQA.cxx:238 AliAnalysisTaskAODFilterBitQA.cxx:239 AliAnalysisTaskAODFilterBitQA.cxx:240 AliAnalysisTaskAODFilterBitQA.cxx:241 AliAnalysisTaskAODFilterBitQA.cxx:242 AliAnalysisTaskAODFilterBitQA.cxx:243 AliAnalysisTaskAODFilterBitQA.cxx:244 AliAnalysisTaskAODFilterBitQA.cxx:245 AliAnalysisTaskAODFilterBitQA.cxx:246 AliAnalysisTaskAODFilterBitQA.cxx:247 AliAnalysisTaskAODFilterBitQA.cxx:248 AliAnalysisTaskAODFilterBitQA.cxx:249 AliAnalysisTaskAODFilterBitQA.cxx:250 AliAnalysisTaskAODFilterBitQA.cxx:251 AliAnalysisTaskAODFilterBitQA.cxx:252 AliAnalysisTaskAODFilterBitQA.cxx:253 AliAnalysisTaskAODFilterBitQA.cxx:254 AliAnalysisTaskAODFilterBitQA.cxx:255 AliAnalysisTaskAODFilterBitQA.cxx:256 AliAnalysisTaskAODFilterBitQA.cxx:257 AliAnalysisTaskAODFilterBitQA.cxx:258 AliAnalysisTaskAODFilterBitQA.cxx:259 AliAnalysisTaskAODFilterBitQA.cxx:260 AliAnalysisTaskAODFilterBitQA.cxx:261 AliAnalysisTaskAODFilterBitQA.cxx:262 AliAnalysisTaskAODFilterBitQA.cxx:263 AliAnalysisTaskAODFilterBitQA.cxx:264 AliAnalysisTaskAODFilterBitQA.cxx:265 AliAnalysisTaskAODFilterBitQA.cxx:266 AliAnalysisTaskAODFilterBitQA.cxx:267 AliAnalysisTaskAODFilterBitQA.cxx:268 AliAnalysisTaskAODFilterBitQA.cxx:269 AliAnalysisTaskAODFilterBitQA.cxx:270 AliAnalysisTaskAODFilterBitQA.cxx:271 AliAnalysisTaskAODFilterBitQA.cxx:272 AliAnalysisTaskAODFilterBitQA.cxx:273 AliAnalysisTaskAODFilterBitQA.cxx:274 AliAnalysisTaskAODFilterBitQA.cxx:275 AliAnalysisTaskAODFilterBitQA.cxx:276 AliAnalysisTaskAODFilterBitQA.cxx:277 AliAnalysisTaskAODFilterBitQA.cxx:278 AliAnalysisTaskAODFilterBitQA.cxx:279 AliAnalysisTaskAODFilterBitQA.cxx:280 AliAnalysisTaskAODFilterBitQA.cxx:281 AliAnalysisTaskAODFilterBitQA.cxx:282 AliAnalysisTaskAODFilterBitQA.cxx:283 AliAnalysisTaskAODFilterBitQA.cxx:284 AliAnalysisTaskAODFilterBitQA.cxx:285 AliAnalysisTaskAODFilterBitQA.cxx:286 AliAnalysisTaskAODFilterBitQA.cxx:287 AliAnalysisTaskAODFilterBitQA.cxx:288 AliAnalysisTaskAODFilterBitQA.cxx:289 AliAnalysisTaskAODFilterBitQA.cxx:290 AliAnalysisTaskAODFilterBitQA.cxx:291 AliAnalysisTaskAODFilterBitQA.cxx:292 AliAnalysisTaskAODFilterBitQA.cxx:293 AliAnalysisTaskAODFilterBitQA.cxx:294 AliAnalysisTaskAODFilterBitQA.cxx:295 AliAnalysisTaskAODFilterBitQA.cxx:296 AliAnalysisTaskAODFilterBitQA.cxx:297 AliAnalysisTaskAODFilterBitQA.cxx:298 AliAnalysisTaskAODFilterBitQA.cxx:299 AliAnalysisTaskAODFilterBitQA.cxx:300 AliAnalysisTaskAODFilterBitQA.cxx:301 AliAnalysisTaskAODFilterBitQA.cxx:302 AliAnalysisTaskAODFilterBitQA.cxx:303 AliAnalysisTaskAODFilterBitQA.cxx:304 AliAnalysisTaskAODFilterBitQA.cxx:305 AliAnalysisTaskAODFilterBitQA.cxx:306 AliAnalysisTaskAODFilterBitQA.cxx:307 AliAnalysisTaskAODFilterBitQA.cxx:308 AliAnalysisTaskAODFilterBitQA.cxx:309 AliAnalysisTaskAODFilterBitQA.cxx:310 AliAnalysisTaskAODFilterBitQA.cxx:311 AliAnalysisTaskAODFilterBitQA.cxx:312 AliAnalysisTaskAODFilterBitQA.cxx:313 AliAnalysisTaskAODFilterBitQA.cxx:314 AliAnalysisTaskAODFilterBitQA.cxx:315 AliAnalysisTaskAODFilterBitQA.cxx:316 AliAnalysisTaskAODFilterBitQA.cxx:317 AliAnalysisTaskAODFilterBitQA.cxx:318 AliAnalysisTaskAODFilterBitQA.cxx:319 AliAnalysisTaskAODFilterBitQA.cxx:320 AliAnalysisTaskAODFilterBitQA.cxx:321 AliAnalysisTaskAODFilterBitQA.cxx:322 AliAnalysisTaskAODFilterBitQA.cxx:323 AliAnalysisTaskAODFilterBitQA.cxx:324 AliAnalysisTaskAODFilterBitQA.cxx:325 AliAnalysisTaskAODFilterBitQA.cxx:326 AliAnalysisTaskAODFilterBitQA.cxx:327 AliAnalysisTaskAODFilterBitQA.cxx:328 AliAnalysisTaskAODFilterBitQA.cxx:329 AliAnalysisTaskAODFilterBitQA.cxx:330 AliAnalysisTaskAODFilterBitQA.cxx:331 AliAnalysisTaskAODFilterBitQA.cxx:332 AliAnalysisTaskAODFilterBitQA.cxx:333 AliAnalysisTaskAODFilterBitQA.cxx:334 AliAnalysisTaskAODFilterBitQA.cxx:335 AliAnalysisTaskAODFilterBitQA.cxx:336 AliAnalysisTaskAODFilterBitQA.cxx:337 AliAnalysisTaskAODFilterBitQA.cxx:338 AliAnalysisTaskAODFilterBitQA.cxx:339 AliAnalysisTaskAODFilterBitQA.cxx:340 AliAnalysisTaskAODFilterBitQA.cxx:341 AliAnalysisTaskAODFilterBitQA.cxx:342 AliAnalysisTaskAODFilterBitQA.cxx:343 AliAnalysisTaskAODFilterBitQA.cxx:344 AliAnalysisTaskAODFilterBitQA.cxx:345 AliAnalysisTaskAODFilterBitQA.cxx:346 AliAnalysisTaskAODFilterBitQA.cxx:347 AliAnalysisTaskAODFilterBitQA.cxx:348 AliAnalysisTaskAODFilterBitQA.cxx:349 AliAnalysisTaskAODFilterBitQA.cxx:350 AliAnalysisTaskAODFilterBitQA.cxx:351 AliAnalysisTaskAODFilterBitQA.cxx:352 AliAnalysisTaskAODFilterBitQA.cxx:353 AliAnalysisTaskAODFilterBitQA.cxx:354 AliAnalysisTaskAODFilterBitQA.cxx:355 AliAnalysisTaskAODFilterBitQA.cxx:356 AliAnalysisTaskAODFilterBitQA.cxx:357 AliAnalysisTaskAODFilterBitQA.cxx:358 AliAnalysisTaskAODFilterBitQA.cxx:359 AliAnalysisTaskAODFilterBitQA.cxx:360 AliAnalysisTaskAODFilterBitQA.cxx:361 AliAnalysisTaskAODFilterBitQA.cxx:362 AliAnalysisTaskAODFilterBitQA.cxx:363 AliAnalysisTaskAODFilterBitQA.cxx:364 AliAnalysisTaskAODFilterBitQA.cxx:365 AliAnalysisTaskAODFilterBitQA.cxx:366 AliAnalysisTaskAODFilterBitQA.cxx:367 AliAnalysisTaskAODFilterBitQA.cxx:368 AliAnalysisTaskAODFilterBitQA.cxx:369 AliAnalysisTaskAODFilterBitQA.cxx:370 AliAnalysisTaskAODFilterBitQA.cxx:371 AliAnalysisTaskAODFilterBitQA.cxx:372 AliAnalysisTaskAODFilterBitQA.cxx:373 AliAnalysisTaskAODFilterBitQA.cxx:374 AliAnalysisTaskAODFilterBitQA.cxx:375 AliAnalysisTaskAODFilterBitQA.cxx:376 AliAnalysisTaskAODFilterBitQA.cxx:377 AliAnalysisTaskAODFilterBitQA.cxx:378 AliAnalysisTaskAODFilterBitQA.cxx:379 AliAnalysisTaskAODFilterBitQA.cxx:380 AliAnalysisTaskAODFilterBitQA.cxx:381 AliAnalysisTaskAODFilterBitQA.cxx:382 AliAnalysisTaskAODFilterBitQA.cxx:383 AliAnalysisTaskAODFilterBitQA.cxx:384 AliAnalysisTaskAODFilterBitQA.cxx:385 AliAnalysisTaskAODFilterBitQA.cxx:386 AliAnalysisTaskAODFilterBitQA.cxx:387 AliAnalysisTaskAODFilterBitQA.cxx:388 AliAnalysisTaskAODFilterBitQA.cxx:389 AliAnalysisTaskAODFilterBitQA.cxx:390 AliAnalysisTaskAODFilterBitQA.cxx:391 AliAnalysisTaskAODFilterBitQA.cxx:392 AliAnalysisTaskAODFilterBitQA.cxx:393 AliAnalysisTaskAODFilterBitQA.cxx:394 AliAnalysisTaskAODFilterBitQA.cxx:395 AliAnalysisTaskAODFilterBitQA.cxx:396 AliAnalysisTaskAODFilterBitQA.cxx:397 AliAnalysisTaskAODFilterBitQA.cxx:398 AliAnalysisTaskAODFilterBitQA.cxx:399 AliAnalysisTaskAODFilterBitQA.cxx:400 AliAnalysisTaskAODFilterBitQA.cxx:401 AliAnalysisTaskAODFilterBitQA.cxx:402 AliAnalysisTaskAODFilterBitQA.cxx:403 AliAnalysisTaskAODFilterBitQA.cxx:404 AliAnalysisTaskAODFilterBitQA.cxx:405 AliAnalysisTaskAODFilterBitQA.cxx:406 AliAnalysisTaskAODFilterBitQA.cxx:407 AliAnalysisTaskAODFilterBitQA.cxx:408 AliAnalysisTaskAODFilterBitQA.cxx:409 AliAnalysisTaskAODFilterBitQA.cxx:410 AliAnalysisTaskAODFilterBitQA.cxx:411 AliAnalysisTaskAODFilterBitQA.cxx:412 AliAnalysisTaskAODFilterBitQA.cxx:413 AliAnalysisTaskAODFilterBitQA.cxx:414 AliAnalysisTaskAODFilterBitQA.cxx:415 AliAnalysisTaskAODFilterBitQA.cxx:416 AliAnalysisTaskAODFilterBitQA.cxx:417 AliAnalysisTaskAODFilterBitQA.cxx:418 AliAnalysisTaskAODFilterBitQA.cxx:419 AliAnalysisTaskAODFilterBitQA.cxx:420 AliAnalysisTaskAODFilterBitQA.cxx:421 AliAnalysisTaskAODFilterBitQA.cxx:422 AliAnalysisTaskAODFilterBitQA.cxx:423 AliAnalysisTaskAODFilterBitQA.cxx:424 AliAnalysisTaskAODFilterBitQA.cxx:425 AliAnalysisTaskAODFilterBitQA.cxx:426 AliAnalysisTaskAODFilterBitQA.cxx:427 AliAnalysisTaskAODFilterBitQA.cxx:428 AliAnalysisTaskAODFilterBitQA.cxx:429 AliAnalysisTaskAODFilterBitQA.cxx:430 AliAnalysisTaskAODFilterBitQA.cxx:431 AliAnalysisTaskAODFilterBitQA.cxx:432 AliAnalysisTaskAODFilterBitQA.cxx:433 AliAnalysisTaskAODFilterBitQA.cxx:434 AliAnalysisTaskAODFilterBitQA.cxx:435 AliAnalysisTaskAODFilterBitQA.cxx:436 AliAnalysisTaskAODFilterBitQA.cxx:437 AliAnalysisTaskAODFilterBitQA.cxx:438 AliAnalysisTaskAODFilterBitQA.cxx:439 AliAnalysisTaskAODFilterBitQA.cxx:440 AliAnalysisTaskAODFilterBitQA.cxx:441 AliAnalysisTaskAODFilterBitQA.cxx:442 AliAnalysisTaskAODFilterBitQA.cxx:443 AliAnalysisTaskAODFilterBitQA.cxx:444 AliAnalysisTaskAODFilterBitQA.cxx:445 AliAnalysisTaskAODFilterBitQA.cxx:446 AliAnalysisTaskAODFilterBitQA.cxx:447 AliAnalysisTaskAODFilterBitQA.cxx:448 AliAnalysisTaskAODFilterBitQA.cxx:449 AliAnalysisTaskAODFilterBitQA.cxx:450 AliAnalysisTaskAODFilterBitQA.cxx:451 AliAnalysisTaskAODFilterBitQA.cxx:452 AliAnalysisTaskAODFilterBitQA.cxx:453 AliAnalysisTaskAODFilterBitQA.cxx:454 AliAnalysisTaskAODFilterBitQA.cxx:455 AliAnalysisTaskAODFilterBitQA.cxx:456 AliAnalysisTaskAODFilterBitQA.cxx:457