#include "AliConvEventCuts.h"
#include "AliAODTrack.h"
#include "AliESDtrack.h"
#include "AliAnalysisManager.h"
#include "AliInputEventHandler.h"
#include "AliMCEventHandler.h"
#include "AliAODHandler.h"
#include "TH1.h"
#include "TH2.h"
#include "TF1.h"
#include "AliStack.h"
#include "TObjString.h"
#include "AliAODEvent.h"
#include "AliESDEvent.h"
#include "AliCentrality.h"
#include "TList.h"
#include "TFile.h"
#include "AliLog.h"
#include "AliGenCocktailEventHeader.h"
#include "AliGenDPMjetEventHeader.h"
#include "AliGenPythiaEventHeader.h"
#include "AliGenHijingEventHeader.h"
#include "AliTriggerAnalysis.h"
#include "AliV0ReaderV1.h"
#include "AliVCaloCells.h"
#include "AliAODMCParticle.h"
#include "AliAODMCHeader.h"
class iostream;
using namespace std;
ClassImp(AliConvEventCuts)
const char* AliConvEventCuts::fgkCutNames[AliConvEventCuts::kNCuts] = {
"HeavyIon",
"CentralityMin",
"CentralityMax",
"SelectSpecialTrigger",
"SelectSpecialSubTriggerClass",
"RemovePileUp",
"RejectExtraSignals",
};
AliConvEventCuts::AliConvEventCuts(const char *name,const char *title) :
AliAnalysisCuts(name,title),
fHistograms(NULL),
fHeaderList(NULL),
fEventQuality(-1),
fIsHeavyIon(0),
fDetectorCentrality(0),
fModCentralityClass(0),
fMaxVertexZ(10),
fCentralityMin(0),
fCentralityMax(0),
fMultiplicityMethod(0),
fSpecialTrigger(0),
fSpecialSubTrigger(0),
fRemovePileUp(kFALSE),
fRejectExtraSignals(0),
fOfflineTriggerMask(0),
fHasV0AND(kTRUE),
fIsSDDFired(kTRUE),
fRandom(0),
fnHeaders(0),
fNotRejectedStart(NULL),
fNotRejectedEnd(NULL),
fGeneratorNames(NULL),
fCutString(NULL),
fUtils(NULL),
fEtaShift(0.0),
fDoEtaShift(kFALSE),
fDoReweightHistoMCPi0(kFALSE),
fDoReweightHistoMCEta(kFALSE),
fDoReweightHistoMCK0s(kFALSE),
fPathTrFReweighting(""),
fNameHistoReweightingPi0(""),
fNameHistoReweightingEta(""),
fNameHistoReweightingK0s(""),
fNameFitDataPi0(""),
fNameFitDataEta(""),
fNameFitDataK0s(""),
fHistoEventCuts(NULL),
hCentrality(NULL),
hCentralityVsNumberOfPrimaryTracks(NULL),
hVertexZ(NULL),
hTriggerClass(NULL),
hTriggerClassSelected(NULL),
hReweightMCHistPi0(NULL),
hReweightMCHistEta(NULL),
hReweightMCHistK0s(NULL),
fFitDataPi0(NULL),
fFitDataEta(NULL),
fFitDataK0s(NULL),
fAddedSignalPDGCode(0),
fPreSelCut(kFALSE),
fTriggerSelectedManually(kFALSE),
fSpecialTriggerName(""),
fSpecialSubTriggerName(""),
fNSpecialSubTriggerOptions(0),
fV0ReaderName(""),
fCaloTriggers(NULL),
fTriggerPatchInfo(NULL),
fMainTriggerPatchEMCAL(NULL),
fCaloTriggersName(""),
fCaloTriggerPatchInfoName(""),
fTriggersEMCAL(0),
fTriggersEMCALSelected(-1),
fEMCALTrigInitialized(kFALSE)
{
for(Int_t jj=0;jj<kNCuts;jj++){fCuts[jj]=0;}
fCutString=new TObjString((GetCutNumber()).Data());
fUtils = new AliAnalysisUtils();
}
AliConvEventCuts::AliConvEventCuts(const AliConvEventCuts &ref) :
AliAnalysisCuts(ref),
fHistograms(NULL),
fHeaderList(ref.fHeaderList),
fEventQuality(ref.fEventQuality),
fIsHeavyIon(ref.fIsHeavyIon),
fDetectorCentrality(ref.fDetectorCentrality),
fModCentralityClass(ref.fModCentralityClass),
fMaxVertexZ(ref.fMaxVertexZ),
fCentralityMin(ref.fCentralityMin),
fCentralityMax(ref.fCentralityMax),
fMultiplicityMethod(ref.fMultiplicityMethod),
fSpecialTrigger(ref.fSpecialTrigger),
fSpecialSubTrigger(ref.fSpecialSubTrigger),
fRemovePileUp(ref.fRemovePileUp),
fRejectExtraSignals(ref.fRejectExtraSignals),
fOfflineTriggerMask(ref.fOfflineTriggerMask),
fHasV0AND(ref.fHasV0AND),
fIsSDDFired(ref.fIsSDDFired),
fRandom(ref.fRandom),
fnHeaders(ref.fnHeaders),
fNotRejectedStart(NULL),
fNotRejectedEnd(NULL),
fGeneratorNames(ref.fGeneratorNames),
fCutString(NULL),
fUtils(NULL),
fEtaShift(ref.fEtaShift),
fDoEtaShift(ref.fDoEtaShift),
fDoReweightHistoMCPi0(ref.fDoReweightHistoMCPi0),
fDoReweightHistoMCEta(ref.fDoReweightHistoMCEta),
fDoReweightHistoMCK0s(ref.fDoReweightHistoMCK0s),
fPathTrFReweighting(ref.fPathTrFReweighting),
fNameHistoReweightingPi0(ref.fNameHistoReweightingPi0),
fNameHistoReweightingEta(ref.fNameHistoReweightingEta),
fNameHistoReweightingK0s(ref.fNameHistoReweightingK0s),
fNameFitDataPi0(ref.fNameFitDataPi0),
fNameFitDataEta(ref.fNameFitDataEta),
fNameFitDataK0s(ref.fNameFitDataK0s),
fHistoEventCuts(NULL),
hCentrality(NULL),
hCentralityVsNumberOfPrimaryTracks(NULL),
hVertexZ(NULL),
hTriggerClass(NULL),
hTriggerClassSelected(NULL),
hReweightMCHistPi0(ref.hReweightMCHistPi0),
hReweightMCHistEta(ref.hReweightMCHistEta),
hReweightMCHistK0s(ref.hReweightMCHistK0s),
fFitDataPi0(ref.fFitDataPi0),
fFitDataEta(ref.fFitDataEta),
fFitDataK0s(ref.fFitDataK0s),
fAddedSignalPDGCode(ref.fAddedSignalPDGCode),
fPreSelCut(ref.fPreSelCut),
fTriggerSelectedManually(ref.fTriggerSelectedManually),
fSpecialTriggerName(ref.fSpecialTriggerName),
fSpecialSubTriggerName(ref.fSpecialSubTriggerName),
fNSpecialSubTriggerOptions(ref.fNSpecialSubTriggerOptions),
fV0ReaderName(ref.fV0ReaderName),
fCaloTriggers(NULL),
fTriggerPatchInfo(NULL),
fMainTriggerPatchEMCAL(NULL),
fCaloTriggersName(ref.fCaloTriggersName),
fCaloTriggerPatchInfoName(ref.fCaloTriggerPatchInfoName),
fTriggersEMCAL(ref.fTriggersEMCAL),
fTriggersEMCALSelected(ref.fTriggersEMCALSelected),
fEMCALTrigInitialized(kFALSE)
{
for(Int_t jj=0;jj<kNCuts;jj++){fCuts[jj]=ref.fCuts[jj];}
fCutString=new TObjString((GetCutNumber()).Data());
fUtils = new AliAnalysisUtils();
}
AliConvEventCuts::~AliConvEventCuts() {
if(fCutString != NULL){
delete fCutString;
fCutString = NULL;
}
if(fNotRejectedStart){
delete[] fNotRejectedStart;
fNotRejectedStart = NULL;
}
if(fNotRejectedEnd){
delete[] fNotRejectedEnd;
fNotRejectedEnd = NULL;
}
if(fGeneratorNames){
delete[] fGeneratorNames;
fGeneratorNames = NULL;
}
if(fUtils){
delete fUtils;
fUtils = NULL;
}
}
void AliConvEventCuts::InitCutHistograms(TString name, Bool_t preCut){
TH1::AddDirectory(kFALSE);
if(fHistograms != NULL){
delete fHistograms;
fHistograms=NULL;
}
if(fHistograms==NULL){
fHistograms=new TList();
fHistograms->SetOwner(kTRUE);
if(name=="")fHistograms->SetName(Form("ConvEventCuts_%s",GetCutNumber().Data()));
else fHistograms->SetName(Form("%s_%s",name.Data(),GetCutNumber().Data()));
}
if (hReweightMCHistPi0){
hReweightMCHistPi0->SetName("MCInputForWeightingPi0");
fHistograms->Add(hReweightMCHistPi0);
}
if (hReweightMCHistEta){
hReweightMCHistEta->SetName("MCInputForWeightingEta");
fHistograms->Add(hReweightMCHistEta);
}
if (hReweightMCHistK0s){
hReweightMCHistK0s->SetName("MCInputForWeightingK0s");
fHistograms->Add(hReweightMCHistK0s);
}
hCentrality=new TH1F(Form("Centrality %s",GetCutNumber().Data()),"Centrality",100,0,100);
fHistograms->Add(hCentrality);
hCentralityVsNumberOfPrimaryTracks=new TH2F(Form("Centrality vs Primary Tracks %s",GetCutNumber().Data()),"Centrality vs Primary Tracks ",100,0,100,4000,0,4000);
fHistograms->Add(hCentralityVsNumberOfPrimaryTracks);
if(preCut){
fHistoEventCuts=new TH1F(Form("ESD_EventCuts %s",GetCutNumber().Data()),"Event Cuts",7,-0.5,6.5);
fHistoEventCuts->GetXaxis()->SetBinLabel(1,"in");
fHistoEventCuts->GetXaxis()->SetBinLabel(2,"OfflineTrigger");
fHistoEventCuts->GetXaxis()->SetBinLabel(3,"nvtxcontr");
fHistoEventCuts->GetXaxis()->SetBinLabel(4,"VertexZ");
fHistoEventCuts->GetXaxis()->SetBinLabel(5,"pileup");
fHistoEventCuts->GetXaxis()->SetBinLabel(6,"centrsel");
fHistoEventCuts->GetXaxis()->SetBinLabel(7,"out");
fHistograms->Add(fHistoEventCuts);
hVertexZ=new TH1F(Form("VertexZ %s",GetCutNumber().Data()),"VertexZ",1000,-50,50);
fHistograms->Add(hVertexZ);
hTriggerClass= new TH1F(Form("OfflineTrigger %s",GetCutNumber().Data()),"OfflineTrigger",35,-0.5,34.5);
hTriggerClass->GetXaxis()->SetBinLabel( 1,"kMB");
hTriggerClass->GetXaxis()->SetBinLabel( 2,"kINT7");
hTriggerClass->GetXaxis()->SetBinLabel( 3,"kMUON");
hTriggerClass->GetXaxis()->SetBinLabel( 4,"kHighMult");
hTriggerClass->GetXaxis()->SetBinLabel( 5,"kKEMC1");
hTriggerClass->GetXaxis()->SetBinLabel( 6,"kCINT5");
hTriggerClass->GetXaxis()->SetBinLabel( 7,"kCMUS5/kMUSPB");
hTriggerClass->GetXaxis()->SetBinLabel( 8,"kMUSH7/kMUSHPB");
hTriggerClass->GetXaxis()->SetBinLabel( 9,"kMUL7/kMuonLikePB");
hTriggerClass->GetXaxis()->SetBinLabel(10,"kMUU7/kMuonUnlikePB");
hTriggerClass->GetXaxis()->SetBinLabel(11,"kEMC7/kEMC8");
hTriggerClass->GetXaxis()->SetBinLabel(12,"kMUS7");
hTriggerClass->GetXaxis()->SetBinLabel(13,"kPHI1");
hTriggerClass->GetXaxis()->SetBinLabel(14,"kPHI7/kPHI8/kPHOSPb");
hTriggerClass->GetXaxis()->SetBinLabel(15,"kEMCEJE");
hTriggerClass->GetXaxis()->SetBinLabel(16,"kEMCEGA");
hTriggerClass->GetXaxis()->SetBinLabel(17,"kCentral");
hTriggerClass->GetXaxis()->SetBinLabel(18,"kSemiCentral");
hTriggerClass->GetXaxis()->SetBinLabel(19,"kDG5");
hTriggerClass->GetXaxis()->SetBinLabel(20,"kZED");
hTriggerClass->GetXaxis()->SetBinLabel(21,"kSPI7/kSPI");
hTriggerClass->GetXaxis()->SetBinLabel(22,"kINT8");
hTriggerClass->GetXaxis()->SetBinLabel(23,"kMuonSingleLowPt8");
hTriggerClass->GetXaxis()->SetBinLabel(24,"kMuonSingleHighPt8");
hTriggerClass->GetXaxis()->SetBinLabel(25,"kMuonLikeLowPt8");
hTriggerClass->GetXaxis()->SetBinLabel(26,"kMuonUnlikeLowPt8");
hTriggerClass->GetXaxis()->SetBinLabel(27,"kMuonUnlikeLowPt0");
hTriggerClass->GetXaxis()->SetBinLabel(28,"kUserDefined");
hTriggerClass->GetXaxis()->SetBinLabel(29,"kTRD");
hTriggerClass->GetXaxis()->SetBinLabel(30,"kFastOnly");
hTriggerClass->GetXaxis()->SetBinLabel(31,"kAnyINT");
hTriggerClass->GetXaxis()->SetBinLabel(32,"kAny");
hTriggerClass->GetXaxis()->SetBinLabel(33,"V0AND");
hTriggerClass->GetXaxis()->SetBinLabel(34,"NOT kFastOnly");
hTriggerClass->GetXaxis()->SetBinLabel(35,"failed Physics Selection");
fHistograms->Add(hTriggerClass);
}
if(!preCut){
hTriggerClassSelected= new TH1F(Form("OfflineTriggerSelected %s",GetCutNumber().Data()),"OfflineTriggerSelected",34,-0.5,33.5);
hTriggerClassSelected->GetXaxis()->SetBinLabel( 1,"kMB");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 2,"kINT7");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 3,"kMUON");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 4,"kHighMult");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 5,"kKEMC1");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 6,"kCINT5");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 7,"kCMUS5/kMUSPB");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 8,"kMUSH7/kMUSHPB");
hTriggerClassSelected->GetXaxis()->SetBinLabel( 9,"kMUL7/kMuonLikePB");
hTriggerClassSelected->GetXaxis()->SetBinLabel(10,"kMUU7/kMuonUnlikePB");
hTriggerClassSelected->GetXaxis()->SetBinLabel(11,"kEMC7/kEMC8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(12,"kMUS7");
hTriggerClassSelected->GetXaxis()->SetBinLabel(13,"kPHI1");
hTriggerClassSelected->GetXaxis()->SetBinLabel(14,"kPHI7/kPHI8/kPHOSPb");
hTriggerClassSelected->GetXaxis()->SetBinLabel(15,"kEMCEJE");
hTriggerClassSelected->GetXaxis()->SetBinLabel(16,"kEMCEGA");
hTriggerClassSelected->GetXaxis()->SetBinLabel(17,"kCentral");
hTriggerClassSelected->GetXaxis()->SetBinLabel(18,"kSemiCentral");
hTriggerClassSelected->GetXaxis()->SetBinLabel(19,"kDG5");
hTriggerClassSelected->GetXaxis()->SetBinLabel(20,"kZED");
hTriggerClassSelected->GetXaxis()->SetBinLabel(21,"kSPI7/kSPI");
hTriggerClassSelected->GetXaxis()->SetBinLabel(22,"kINT8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(23,"kMuonSingleLowPt8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(24,"kMuonSingleHighPt8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(25,"kMuonLikeLowPt8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(26,"kMuonUnlikeLowPt8");
hTriggerClassSelected->GetXaxis()->SetBinLabel(27,"kMuonUnlikeLowPt0");
hTriggerClassSelected->GetXaxis()->SetBinLabel(28,"kUserDefined");
hTriggerClassSelected->GetXaxis()->SetBinLabel(29,"kTRD");
hTriggerClassSelected->GetXaxis()->SetBinLabel(30,"kFastOnly");
hTriggerClassSelected->GetXaxis()->SetBinLabel(31,"kAnyINT");
hTriggerClassSelected->GetXaxis()->SetBinLabel(32,"kAny");
hTriggerClassSelected->GetXaxis()->SetBinLabel(33,"V0AND");
hTriggerClassSelected->GetXaxis()->SetBinLabel(34,"NOT kFastOnly");
fHistograms->Add(hTriggerClassSelected);
}
TH1::AddDirectory(kTRUE);
}
Bool_t AliConvEventCuts::EventIsSelected(AliVEvent *fInputEvent, AliVEvent *fMCEvent){
Int_t cutindex=0;
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
cutindex++;
Bool_t isMC = kFALSE;
if(fMCEvent && fInputEvent->IsA()==AliESDEvent::Class()){
AliMCEventHandler* mcHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
if (!mcHandler){
fEventQuality = 2;
return kFALSE;
}
if (!mcHandler->InitOk() ){
fEventQuality = 2;
return kFALSE;
}
if (!mcHandler->TreeK() ){
fEventQuality = 2;
return kFALSE;
}
if (!mcHandler->TreeTR() ) {
fEventQuality = 2;
return kFALSE;
}
isMC = kTRUE;
}
if(!IsTriggerSelected(fInputEvent, isMC )){
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
fEventQuality = 3;
return kFALSE;
}
cutindex++;
if(fInputEvent->IsA()==AliESDEvent::Class()){
AliTriggerAnalysis fTriggerAnalysis;
fHasV0AND = fTriggerAnalysis.IsOfflineTriggerFired((AliESDEvent*)fInputEvent, AliTriggerAnalysis::kV0AND);
if(fHasV0AND&&hTriggerClass)hTriggerClass->Fill(32);
}
if(GetNumberOfContributorsVtx(fInputEvent)<=0) {
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
fEventQuality = 5;
return kFALSE;
}
cutindex++;
if(!VertexZCut(fInputEvent)){
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
fEventQuality = 4;
return kFALSE;
}
cutindex++;
if(fRemovePileUp){
if(fInputEvent->IsPileupFromSPD(3,0.8,3.,2.,5.)){
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
fEventQuality = 6;
return kFALSE;
}
}
cutindex++;
if(!IsCentralitySelected(fInputEvent,fMCEvent)){
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
fEventQuality = 1;
return kFALSE;
}
cutindex++;
if(fHistoEventCuts)fHistoEventCuts->Fill(cutindex);
if(hVertexZ)hVertexZ->Fill(fInputEvent->GetPrimaryVertex()->GetZ());
if(hCentrality)hCentrality->Fill(GetCentrality(fInputEvent));
if(hCentralityVsNumberOfPrimaryTracks)
hCentralityVsNumberOfPrimaryTracks->Fill(GetCentrality(fInputEvent),
((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()
->GetTask(fV0ReaderName.Data()))->GetNumberOfPrimaryTracks());
fEventQuality = 0;
return kTRUE;
}
Bool_t AliConvEventCuts::UpdateCutString() {
if(fCutString && fCutString->GetString().Length() == kNCuts) {
fCutString->SetString(GetCutNumber());
} else {
return kFALSE;
}
return kTRUE;
}
void AliConvEventCuts::LoadReweightingHistosMCFromFile() {
AliInfo("Entering loading of histograms for weighting");
TFile *f = TFile::Open(fPathTrFReweighting.Data());
if(!f){
AliError(Form("file for weighting %s not found",fPathTrFReweighting.Data()));
return;
}
if (fNameHistoReweightingPi0.CompareTo("") != 0 && fDoReweightHistoMCPi0 ){
cout << "I have to find: " << fNameHistoReweightingPi0.Data() << endl;
TH1D *hReweightMCHistPi0temp = (TH1D*)f->Get(fNameHistoReweightingPi0.Data());
hReweightMCHistPi0 = new TH1D(*hReweightMCHistPi0temp);
if (hReweightMCHistPi0) AliInfo(Form("%s has been loaded from %s", fNameHistoReweightingPi0.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s", fNameHistoReweightingPi0.Data() ,fPathTrFReweighting.Data()));
hReweightMCHistPi0->SetDirectory(0);
}
if (fNameFitDataPi0.CompareTo("") != 0 && fDoReweightHistoMCPi0 ){
cout << "I have to find: " << fNameFitDataPi0.Data() << endl;
TF1 *fFitDataPi0temp = (TF1*)f->Get(fNameFitDataPi0.Data());
fFitDataPi0 = new TF1(*fFitDataPi0temp);
if (fFitDataPi0) AliInfo(Form("%s has been loaded from %s", fNameFitDataPi0.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s",fPathTrFReweighting.Data(), fNameFitDataPi0.Data() ));
}
if (fNameHistoReweightingEta.CompareTo("") != 0 && fDoReweightHistoMCEta){
cout << "I have to find: " << fNameHistoReweightingEta.Data() << endl;
TH1D *hReweightMCHistEtatemp = (TH1D*)f->Get(fNameHistoReweightingEta.Data());
hReweightMCHistEta = new TH1D(*hReweightMCHistEtatemp);
if (hReweightMCHistEta) AliInfo(Form("%s has been loaded from %s", fNameHistoReweightingEta.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s", fNameHistoReweightingEta.Data(),fPathTrFReweighting.Data() ));
hReweightMCHistEta->SetDirectory(0);
}
if (fNameFitDataEta.CompareTo("") != 0 && fDoReweightHistoMCEta){
cout << "I have to find: " << fNameFitDataEta.Data() << endl;
TF1 *fFitDataEtatemp = (TF1*)f->Get(fNameFitDataEta.Data());
fFitDataEta = new TF1(*fFitDataEtatemp);
if (fFitDataEta) AliInfo(Form("%s has been loaded from %s", fNameFitDataEta.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s", fNameFitDataEta.Data(),fPathTrFReweighting.Data() ));
}
if (fNameHistoReweightingK0s.CompareTo("") != 0 && fDoReweightHistoMCK0s){
cout << "I have to find: " << fNameHistoReweightingK0s.Data() << endl;
TH1D *hReweightMCHistK0stemp = (TH1D*)f->Get(fNameHistoReweightingK0s.Data());
hReweightMCHistK0s = new TH1D(*hReweightMCHistK0stemp);
if (hReweightMCHistK0s) AliInfo(Form("%s has been loaded from %s", fNameHistoReweightingK0s.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s", fNameHistoReweightingK0s.Data(),fPathTrFReweighting.Data() ));
hReweightMCHistK0s->SetDirectory(0);
}
if (fNameFitDataK0s.CompareTo("") != 0 && fDoReweightHistoMCK0s){
cout << "I have to find: " << fNameFitDataK0s.Data() << endl;
TF1 *fFitDataK0stemp = (TF1*)f->Get(fNameFitDataK0s.Data());
fFitDataK0s = new TF1(*fFitDataK0stemp);
if (fFitDataK0s) AliInfo(Form("%s has been loaded from %s", fNameFitDataK0s.Data(),fPathTrFReweighting.Data() ));
else AliWarning(Form("%s not found in %s", fNameFitDataK0s.Data(),fPathTrFReweighting.Data() ));
}
f->Close();
delete f;
}
Bool_t AliConvEventCuts::InitializeCutsFromCutString(const TString analysisCutSelection ) {
if(fDoReweightHistoMCPi0 || fDoReweightHistoMCEta || fDoReweightHistoMCK0s) {
AliInfo("Weighting was enabled");
LoadReweightingHistosMCFromFile();
}
AliInfo(Form("Set Event Cut Number: %s",analysisCutSelection.Data()));
if(analysisCutSelection.Length()!=kNCuts) {
AliError(Form("Cut selection has the wrong length! size is %d, number of cuts is %d", analysisCutSelection.Length(), kNCuts));
return kFALSE;
}
if(!analysisCutSelection.IsDigit()){
AliError("Cut selection contains characters");
return kFALSE;
}
if (fV0ReaderName.CompareTo("") == 0){
fV0ReaderName = "V0ReaderV1";
}
const char *cutSelection = analysisCutSelection.Data();
#define ASSIGNARRAY(i) fCuts[i] = cutSelection[i] - '0'
for(Int_t ii=0;ii<kNCuts;ii++){
ASSIGNARRAY(ii);
}
for(Int_t ii=0;ii<kNCuts;ii++){
if(!SetCut(cutIds(ii),fCuts[ii]))return kFALSE;
}
PrintCutsWithValues();
return kTRUE;
}
Bool_t AliConvEventCuts::SetCut(cutIds cutID, const Int_t value) {
switch (cutID) {
case kremovePileUp:
if( SetRemovePileUp(value)) {
fCuts[kremovePileUp] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kSelectSpecialTriggerAlias:
if( SetSelectSpecialTrigger(value)) {
fCuts[kSelectSpecialTriggerAlias] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kSelectSubTriggerClass:
if( SetSelectSubTriggerClass(value)) {
fCuts[kSelectSubTriggerClass] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kisHeavyIon:
if( SetIsHeavyIon(value)) {
fCuts[kisHeavyIon] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kCentralityMin:
if( SetCentralityMin(value)) {
fCuts[kCentralityMin] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kCentralityMax:
if( SetCentralityMax(value)) {
fCuts[kCentralityMax] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kExtraSignals:
if( SetRejectExtraSignalsCut(value)) {
fCuts[kExtraSignals] = value;
UpdateCutString();
return kTRUE;
} else return kFALSE;
case kNCuts:
AliError("Cut id out of range");
return kFALSE;
}
AliError("Cut id %d not recognized");
return kFALSE;
}
void AliConvEventCuts::PrintCuts() {
for(Int_t ic = 0; ic < kNCuts; ic++) {
printf("%-30s : %d \n", fgkCutNames[ic], fCuts[ic]);
}
}
void AliConvEventCuts::PrintCutsWithValues() {
printf("\nEvent cutnumber \n");
for(Int_t ic = 0; ic < kNCuts; ic++) {
printf("%d",fCuts[ic]);
}
printf("\n\n");
if (fIsHeavyIon == 0) {
printf("Running in pp mode \n");
if (fSpecialTrigger == 0){
if (fSpecialSubTrigger == 0){
printf("\t only events triggered by V0OR will be analysed \n");
} else if (fSpecialSubTrigger == 1){
printf("\t only events where SDD was present will be analysed \n");
}
} else if (fSpecialTrigger == 1){
if (fSpecialSubTrigger == 0){
printf("\t only events triggered by V0AND will be analysed \n");
} else if(fSpecialSubTrigger == 1){
printf("\t only events where SDD was present will be analysed and triggered by VOAND\n");
}
} else if (fSpecialTrigger > 1){
printf("\t only events triggered by %s %s\n", fSpecialTriggerName.Data(), fSpecialSubTriggerName.Data());
}
} else if (fIsHeavyIon == 1){
printf("Running in PbPb mode \n");
if (fDetectorCentrality == 0){
printf("\t centrality selection based on V0M \n");
} else if (fDetectorCentrality == 1){
printf("\t centrality selection based on Cl1 \n");
}
if (fModCentralityClass == 0){
printf("\t %d - %d \n", fCentralityMin*10, fCentralityMax*10);
} else if ( fModCentralityClass == 1){
printf("\t %d - %d \n", fCentralityMin*5, fCentralityMax*5);
} else if ( fModCentralityClass == 2){
printf("\t %d - %d \n", fCentralityMin*5+45, fCentralityMax*5+45);
} else if (fModCentralityClass == 3){
printf("\t %d - %d, with Track mult in MC as data \n", fCentralityMin*10, fCentralityMax*10);
} else if ( fModCentralityClass == 4){
printf("\t %d - %d, with Track mult in MC as data \n", fCentralityMin*5, fCentralityMax*5);
} else if ( fModCentralityClass == 5){
printf("\t %d - %d, with Track mult in MC as data \n", fCentralityMin*5+45, fCentralityMax*5+45);
}
if (fSpecialTrigger == 0){
printf("\t only events triggered by kMB, kCentral, kSemiCentral will be analysed \n");
} else if (fSpecialTrigger > 1){
printf("\t only events triggered by %s %s\n", fSpecialTriggerName.Data(), fSpecialSubTriggerName.Data());
printf("\n\t SpecialTrigger is: %s\n", fSpecialTriggerName.Data());
printf("\t SpecialSubTrigger is: %s\n\n", fSpecialSubTriggerName.Data());
}
} else if (fIsHeavyIon == 2){
printf("Running in pPb mode \n");
if (fDetectorCentrality == 0){
printf("\t centrality selection based on V0A \n");
} else if (fDetectorCentrality == 1){
printf("\t centrality selection based on Cl1 \n");
}
if (fModCentralityClass == 0){
printf("\t %d - %d \n", fCentralityMin*10, fCentralityMax*10);
}
if (fSpecialTrigger == 0){
printf("\t only events triggered by kINT7 will be analysed \n");
} else if (fSpecialTrigger > 1){
printf("\t only events triggered by %s %s\n", fSpecialTriggerName.Data(), fSpecialSubTriggerName.Data());
}
}
printf("MC event cuts: \n");
if (fRejectExtraSignals == 0) printf("\t no rejection was applied \n");
else if (fRejectExtraSignals == 1) printf("\t only MB header will be inspected \n");
else if (fRejectExtraSignals > 1) printf("\t special header have been selected \n");
}
Bool_t AliConvEventCuts::SetIsHeavyIon(Int_t isHeavyIon)
{
switch(isHeavyIon){
case 0:
fIsHeavyIon=0;
break;
case 1:
fIsHeavyIon=1;
fDetectorCentrality=0;
break;
case 2:
fIsHeavyIon=1;
fDetectorCentrality=1;
break;
case 3:
fIsHeavyIon=1;
fDetectorCentrality=0;
fModCentralityClass=1;
break;
case 4:
fIsHeavyIon=1;
fDetectorCentrality=0;
fModCentralityClass=2;
break;
case 5:
fIsHeavyIon=1;
fDetectorCentrality=0;
fModCentralityClass=3;
break;
case 6:
fIsHeavyIon=1;
fDetectorCentrality=0;
fModCentralityClass=4;
break;
case 7:
fIsHeavyIon=1;
fDetectorCentrality=0;
fModCentralityClass=5;
break;
case 8:
fIsHeavyIon=2;
fDetectorCentrality=0;
break;
case 9:
fIsHeavyIon=2;
fDetectorCentrality=1;
break;
default:
AliError(Form("SetHeavyIon not defined %d",isHeavyIon));
return kFALSE;
}
return kTRUE;
}
Bool_t AliConvEventCuts::SetCentralityMin(Int_t minCentrality)
{
if(minCentrality<0||minCentrality>9){
AliError(Form("minCentrality not defined %d",minCentrality));
return kFALSE;
}
fCentralityMin=minCentrality;
return kTRUE;
}
Bool_t AliConvEventCuts::SetCentralityMax(Int_t maxCentrality)
{
if(maxCentrality<0||maxCentrality>9){
AliError(Form("maxCentrality not defined %d",maxCentrality));
return kFALSE;
}
fCentralityMax=maxCentrality;
return kTRUE;
}
Bool_t AliConvEventCuts::SetSelectSpecialTrigger(Int_t selectSpecialTrigger)
{
switch(selectSpecialTrigger){
case 0:
fSpecialTrigger=0;
break;
case 1:
fSpecialTrigger=1;
break;
case 3:
fSpecialTrigger=3;
fSpecialTriggerName="AliVEvent::kCentral/kSemiCentral/kMB";
break;
case 4:
fSpecialTrigger=4;
fOfflineTriggerMask=AliVEvent::kTRD;
fTriggerSelectedManually = kTRUE;
fSpecialTriggerName="AliVEvent::kTRD";
break;
case 5:
fSpecialTrigger=5;
fOfflineTriggerMask=AliVEvent::kEMC7 | AliVEvent::kEMC8 | AliVEvent::kEMC1 ;
fTriggerSelectedManually = kTRUE;
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kL0);
fSpecialTriggerName="AliVEvent::kEMC7/kEMC8/kEMC1";
break;
case 6:
fSpecialTrigger=6;
fOfflineTriggerMask=AliVEvent::kPHI7 | AliVEvent::kPHI1 | AliVEvent::kPHI8 | AliVEvent::kPHOSPb;
fTriggerSelectedManually = kTRUE;
fSpecialTriggerName="AliVEvent::kPHI7/kPHI1/kPHI8/kPHOSPb";
break;
case 7:
fSpecialTrigger=7;
fOfflineTriggerMask=AliVEvent::kHighMult;
fTriggerSelectedManually = kTRUE;
fSpecialTriggerName="AliVEvent::kHighMult";
break;
case 8:
fSpecialTrigger=8;
fOfflineTriggerMask=AliVEvent::kEMCEGA;
fTriggerSelectedManually = kTRUE;
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG2);
fSpecialTriggerName="AliVEvent::kEMCEGA";
break;
case 9:
fSpecialTrigger=9;
fOfflineTriggerMask=AliVEvent::kEMCEJE;
fTriggerSelectedManually = kTRUE;
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ2);
fSpecialTriggerName="AliVEvent::kEMCEJE";
break;
default:
AliError("Warning: Special Trigger Not known");
return 0;
}
return 1;
}
Bool_t AliConvEventCuts::SetSelectSubTriggerClass(Int_t selectSpecialSubTriggerClass)
{
if (fSpecialTrigger == 0){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialTrigger=0;
fSpecialSubTrigger=0;
break;
case 3:
fSpecialSubTrigger=1;
cout << "V0OR with SDD requested" << endl;
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 1){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialTrigger=0;
fSpecialSubTrigger=0;
fOfflineTriggerMask=AliVEvent::kINT7;
fTriggerSelectedManually = kTRUE;
fSpecialTriggerName="AliVEvent::kINT7";
break;
case 1:
fSpecialTrigger=0;
fSpecialSubTrigger=0;
fOfflineTriggerMask=AliVEvent::kINT8;
fTriggerSelectedManually = kTRUE;
fSpecialTriggerName="AliVEvent::kINT8";
break;
case 2:
fSpecialTrigger=1;
fSpecialSubTrigger=0;
break;
case 3:
fSpecialTrigger=1;
fSpecialSubTrigger=1;
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 3){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CVHN";
cout << "kCentralOpen" << endl;
break;
case 2:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CCENT";
cout << "kCentralVertex" << endl;
break;
case 3:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CVHN|CCENT";
cout << "kCentral both" << endl;
break;
case 4:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CVLN";
cout << "kSemiCentralOpen" << endl;
break;
case 5:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CSEMI";
cout << "kSemiCentralVertex" << endl;
break;
case 6:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CSEMI%CVLN";
cout << "kSemiCentral both" << endl;
break;
case 7:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CPBI1_|CPBI1-";
cout << "kMB 1" << endl;
break;
case 8:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CPBI2_|CPBI2-";
cout << "kMB 2" << endl;
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 4){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7WUHEE";
break;
case 2:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8WUHEE";
break;
case 3:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7WUHSE";
break;
case 4:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8WUHSE";
break;
case 5:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7WUHJT";
break;
case 6:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8WUHJT";
break;
case 7:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7WUHQU";
break;
case 8:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8WUHQU";
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 5){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fOfflineTriggerMask=AliVEvent::kEMC1;
fSpecialTriggerName="AliVEvent::kEMC1";
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CEMC1";
break;
case 2:
fSpecialSubTrigger=1;
fOfflineTriggerMask=AliVEvent::kEMC7;
fSpecialTriggerName="AliVEvent::kEMC7";
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CEMC7";
break;
case 3:
fOfflineTriggerMask=AliVEvent::kEMC8;
fSpecialTriggerName="AliVEvent::kEMC8";
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CEMC8";
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 6){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fOfflineTriggerMask=AliVEvent::kPHI1;
fSpecialTriggerName="AliVEvent::kPHI1";
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CPHI1";
break;
case 2:
fSpecialSubTrigger=1;
fOfflineTriggerMask=AliVEvent::kPHI7;
fSpecialTriggerName="AliVEvent::kPHI7";
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CPHI7";
break;
case 3:
fOfflineTriggerMask=AliVEvent::kPHI8;
fSpecialTriggerName="AliVEvent::kPHI8";
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CPHI8";
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 7){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CSHM1";
break;
case 2:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CSHM7";
break;
case 3:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="CSHM8";
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 8){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EGA";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG2);
break;
case 2:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EGA";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG2);
break;
case 3:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EG1";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG1);
break;
case 4:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EG1";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG1);
break;
case 5:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EG2";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG2);
break;
case 6:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EG2";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kG2);
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
} else if (fSpecialTrigger == 9){
switch(selectSpecialSubTriggerClass){
case 0:
fSpecialSubTrigger=0;
fSpecialSubTriggerName="";
break;
case 1:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EJE";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ2);
break;
case 2:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EJE";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ2);
break;
case 3:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EJ1";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ1);
break;
case 4:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EJ1";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ1);
break;
case 5:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="7EJ2";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ2);
break;
case 6:
fSpecialSubTrigger=1;
fNSpecialSubTriggerOptions=1;
fSpecialSubTriggerName="8EJ2";
fTriggersEMCALSelected= 0;
SETBIT(fTriggersEMCALSelected, kJ2);
break;
default:
AliError("Warning: Special Subtrigger Class Not known");
return 0;
}
}
return 1;
}
Bool_t AliConvEventCuts::SetMultiplicityMethod(Int_t multiplicityMethod)
{
fMultiplicityMethod=multiplicityMethod;
return kTRUE;
}
Bool_t AliConvEventCuts::SetRemovePileUp(Int_t removePileUp)
{
switch(removePileUp){
case 0:
fRemovePileUp=kFALSE;
break;
case 1:
fRemovePileUp=kTRUE;
break;
default:
AliError("RemovePileUpCut not defined");
return kFALSE;
}
return kTRUE;
}
Bool_t AliConvEventCuts::SetRejectExtraSignalsCut(Int_t extraSignal) {
switch(extraSignal){
case 0:
fRejectExtraSignals = 0;
break;
case 1:
fRejectExtraSignals = 1;
break;
case 2:
fRejectExtraSignals = 2;
break;
case 3:
fRejectExtraSignals = 3;
break;
default:
AliError(Form("Extra Signal Rejection not defined %d",extraSignal));
return kFALSE;
}
return kTRUE;
}
Double_t AliConvEventCuts::GetCentrality(AliVEvent *event)
{
AliESDEvent *esdEvent=dynamic_cast<AliESDEvent*>(event);
if(esdEvent){
AliCentrality *fESDCentrality=(AliCentrality*)esdEvent->GetCentrality();
if(fDetectorCentrality==0){
if (fIsHeavyIon==2){
return fESDCentrality->GetCentralityPercentile("V0A");
} else{
return fESDCentrality->GetCentralityPercentile("V0M");
}
}
if(fDetectorCentrality==1){
return fESDCentrality->GetCentralityPercentile("CL1");
}
}
AliAODEvent *aodEvent=dynamic_cast<AliAODEvent*>(event);
if(aodEvent){
if(aodEvent->GetHeader()){return ((AliVAODHeader*)aodEvent->GetHeader())->GetCentrality();}
}
return -1;
}
Bool_t AliConvEventCuts::IsCentralitySelected(AliVEvent *event, AliVEvent *fMCEvent)
{
if(!fIsHeavyIon)return kTRUE;
if(fCentralityMin == fCentralityMax ) return kTRUE;
else if(fCentralityMax==0) fCentralityMax=10;
Double_t centrality=GetCentrality(event);
if(centrality<0)return kFALSE;
Int_t centralityC=0;
if (fModCentralityClass == 0){
centralityC= Int_t(centrality/10);
if(centralityC >= fCentralityMin && centralityC < fCentralityMax)
return kTRUE;
else return kFALSE;
}
else if (fModCentralityClass ==1){
centralityC= Int_t(centrality);
if(centralityC >= fCentralityMin*5 && centralityC < fCentralityMax*5){
return kTRUE;
} else return kFALSE;
}
else if (fModCentralityClass ==2){
centralityC= Int_t(centrality);
if(centralityC >= ((fCentralityMin*5)+45) && centralityC < ((fCentralityMax*5)+45))
return kTRUE;
else return kFALSE;
}
Int_t nprimaryTracks = ((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()->GetTask(fV0ReaderName.Data()))->GetNumberOfPrimaryTracks();
Int_t PrimaryTracks10[10][2] =
{
{9999,9999},
{1210, 928},
{ 817, 658},
{ 536, 435},
{ 337, 276},
{ 197, 162},
{ 106, 100},
{ 51, 44},
{ 21, 18},
{ 0, 0}
};
Int_t PrimaryTracks5a[10][2] =
{
{9999,9999},
{1485,1168},
{1210, 928},
{ 995, 795},
{ 817, 658},
{ 666, 538},
{ 536, 435},
{ 428, 350},
{ 337, 276},
{ 260, 214}
};
Int_t PrimaryTracks5b[10][2] =
{
{ 260, 214},
{ 197, 162},
{ 147, 125},
{ 106, 100},
{ 75, 63},
{ 51, 44},
{ 34, 29},
{ 21, 18},
{ 13, 11},
{ 0, 0}
};
Int_t column = 0;
if(event->IsA()==AliESDEvent::Class()) column = 0;
if(event->IsA()==AliAODEvent::Class()) column = 1;
if (fModCentralityClass == 3){
if(fMCEvent){
if(nprimaryTracks > PrimaryTracks10[fCentralityMax][column] && nprimaryTracks <= PrimaryTracks10[fCentralityMin][column])
return kTRUE;
else return kFALSE;
}
else{
centralityC= Int_t(centrality/10);
if(centralityC >= fCentralityMin && centralityC < fCentralityMax)
return kTRUE;
else return kFALSE;
}
}
else if (fModCentralityClass ==4){
if(fMCEvent){
if(nprimaryTracks > PrimaryTracks5a[fCentralityMax][column] && nprimaryTracks <= PrimaryTracks5a[fCentralityMin][column])
return kTRUE;
else return kFALSE;
}
else{
centralityC= Int_t(centrality);
if(centralityC >= fCentralityMin*5 && centralityC < fCentralityMax*5){
return kTRUE;
} else return kFALSE;
}
}
else if (fModCentralityClass ==5){
if(fMCEvent){
if(nprimaryTracks > PrimaryTracks5b[fCentralityMax][column] && nprimaryTracks <= PrimaryTracks5b[fCentralityMin][column])
return kTRUE;
else return kFALSE;
}
else{
centralityC= Int_t(centrality);
if(centralityC >= ((fCentralityMin*5)+45) && centralityC < ((fCentralityMax*5)+45))
return kTRUE;
else return kFALSE;
}
}
return kFALSE;
}
Bool_t AliConvEventCuts::VertexZCut(AliVEvent *event){
Double_t fVertexZ=event->GetPrimaryVertex()->GetZ();
Double_t fVertexZSPD = 0;
AliESDEvent *fESDEvent=dynamic_cast<AliESDEvent*>(event);
if(fESDEvent){
fVertexZSPD = fESDEvent->GetPrimaryVertexSPD()->GetZ();
}
AliAODEvent *fAODEvent=dynamic_cast<AliAODEvent*>(event);
if(fAODEvent){
fVertexZSPD = fAODEvent->GetPrimaryVertexSPD()->GetZ();
}
if(abs(fVertexZ)>fMaxVertexZ)return kFALSE;
TString periodName = ((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()
->GetTask(fV0ReaderName.Data()))->GetPeriodName();
if (periodName.CompareTo("LHC11h")==0){
if (abs(fVertexZ-fVertexZSPD) > 0.1) return kFALSE;
}
if (fIsHeavyIon == 2){
if(fUtils->IsFirstEventInChunk(event)) return kFALSE;
if(!fUtils->IsVertexSelected2013pA(event)) return kFALSE;
if(fUtils->IsPileUpEvent(event)) return kFALSE;
}
return kTRUE;
}
Int_t AliConvEventCuts::GetNumberOfContributorsVtx(AliVEvent *event){
AliESDEvent *fESDEvent=dynamic_cast<AliESDEvent*>(event);
if(fESDEvent){
if (fESDEvent->GetPrimaryVertex() != NULL){
if(fESDEvent->GetPrimaryVertex()->GetNContributors()>0) {
return fESDEvent->GetPrimaryVertex()->GetNContributors();
}
}
if(fESDEvent->GetPrimaryVertexSPD() !=NULL){
if(fESDEvent->GetPrimaryVertexSPD()->GetNContributors()>0) {
return fESDEvent->GetPrimaryVertexSPD()->GetNContributors();
} else {
AliWarning(Form("Number of contributors from bad vertex type:: %s",fESDEvent->GetPrimaryVertex()->GetName()));
return 0;
}
}
}
AliAODEvent *fAODEvent=dynamic_cast<AliAODEvent*>(event);
if(fAODEvent){
if (fAODEvent->GetPrimaryVertex() != NULL){
if(fAODEvent->GetPrimaryVertex()->GetNContributors()>0) {
return fAODEvent->GetPrimaryVertex()->GetNContributors();
}
}
if(fAODEvent->GetPrimaryVertexSPD() !=NULL){
if(fAODEvent->GetPrimaryVertexSPD()->GetNContributors()>0) {
return fAODEvent->GetPrimaryVertexSPD()->GetNContributors();
} else {
AliWarning(Form("Number of contributors from bad vertex type:: %s",fAODEvent->GetPrimaryVertex()->GetName()));
return 0;
}
}
}
return 0;
}
Bool_t AliConvEventCuts::IsTriggerSelected(AliVEvent *fInputEvent, Bool_t isMC)
{
AliInputEventHandler *fInputHandler=(AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
UInt_t isSelected = AliVEvent::kAny;
TString periodName = ((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()->GetTask(fV0ReaderName.Data()))->GetPeriodName();
if (fInputHandler==NULL) return kFALSE;
if( fInputHandler->GetEventSelection() || fInputEvent->IsA()==AliAODEvent::Class()) {
TString firedTrigClass = fInputEvent->GetFiredTriggerClasses();
if (!fTriggerSelectedManually){
if (fPreSelCut) fOfflineTriggerMask = AliVEvent::kAny;
else {
if (fIsHeavyIon == 1) fOfflineTriggerMask = AliVEvent::kMB | AliVEvent::kCentral | AliVEvent::kSemiCentral;
else if (fIsHeavyIon == 2) fOfflineTriggerMask = AliVEvent::kINT7;
else if (periodName.CompareTo("LHC11c") == 0 || periodName.CompareTo("LHC11d") == 0 || periodName.CompareTo("LHC11e") == 0 || periodName.CompareTo("LHC11f") == 0 || periodName.CompareTo("LHC11g") == 0 || periodName.CompareTo("LHC12a") == 0 || periodName.CompareTo("LHC12b") == 0 || periodName.CompareTo("LHC12c") == 0 || periodName.CompareTo("LHC12d") == 0 || periodName.CompareTo("LHC12f") == 0 || periodName.CompareTo("LHC12g") == 0 || periodName.CompareTo("LHC12h") == 0 || periodName.CompareTo("LHC12i") == 0 ||periodName.CompareTo("LHC13g") == 0 ) {
fOfflineTriggerMask = AliVEvent::kINT7;
}
else fOfflineTriggerMask = AliVEvent::kMB;
}
}
if (isMC) fOfflineTriggerMask = AliVEvent::kAny;
if (fOfflineTriggerMask){
isSelected = fOfflineTriggerMask & fInputHandler->IsEventSelected();
if (isSelected && !fPreSelCut){
if (fSpecialTrigger == 5 || fSpecialTrigger == 8 || fSpecialTrigger == 9){
if (!fEMCALTrigInitialized ) InitializeEMCALTrigger(fInputEvent);
fTriggersEMCAL= GetTriggerList();
}
if (fSpecialSubTrigger>0 && !isMC){
if (!firedTrigClass.Contains(fSpecialSubTriggerName.Data())) isSelected = 0;
} else if (isMC){
if (fSpecialTrigger == 5 || fSpecialTrigger == 8 || fSpecialTrigger == 9){
isSelected = 0;
if (fTriggersEMCAL&fTriggersEMCALSelected){
isSelected = 1;
}
}
}
if(fSpecialSubTrigger == 1){
if(fSpecialSubTriggerName.Contains("|")){
TObjArray *ClassesList = fSpecialSubTriggerName.Tokenize("|");
for (Int_t i=0; i<ClassesList->GetEntriesFast();++i){
TObjString *NameClass = (TObjString*)ClassesList->At(i);
if (firedTrigClass.Contains(NameClass->GetString())) isSelected = 1;
}
} else if(fSpecialSubTriggerName.Contains("%")){
TObjArray *ClassesList = fSpecialSubTriggerName.Tokenize("%");
for (Int_t i=0; i<ClassesList->GetEntriesFast();++i){
TObjString *NameClass = (TObjString*)ClassesList->At(i);
if (firedTrigClass.Contains(NameClass->GetString())) isSelected = 1;
}
} else if(fSpecialSubTriggerName.Contains("&")){
TObjArray *ClassesList = fSpecialSubTriggerName.Tokenize("&");
TString CheckClass = "";
for (Int_t i=0; i<ClassesList->GetEntriesFast(); i++){
TObjString *NameClass = (TObjString*)ClassesList->At(i);
if (firedTrigClass.Contains(NameClass->GetString())) CheckClass+="1";
else CheckClass+="0";
}
if(CheckClass.Contains("0")) isSelected = 0;
}
else if(firedTrigClass.Contains(fSpecialSubTriggerName.Data())) isSelected = 1;
}
}
}
}
fIsSDDFired = !(fInputHandler->IsEventSelected() & AliVEvent::kFastOnly);
if(hTriggerClass){
if (fIsSDDFired) hTriggerClass->Fill(33);
if (fInputHandler->IsEventSelected() & AliVEvent::kMB)hTriggerClass->Fill(0);
if (fInputHandler->IsEventSelected() & AliVEvent::kINT7)hTriggerClass->Fill(1);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUON)hTriggerClass->Fill(2);
if (fInputHandler->IsEventSelected() & AliVEvent::kHighMult)hTriggerClass->Fill(3);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMC1)hTriggerClass->Fill(4);
if (fInputHandler->IsEventSelected() & AliVEvent::kCINT5)hTriggerClass->Fill(5);
if (fInputHandler->IsEventSelected() & AliVEvent::kCMUS5)hTriggerClass->Fill(6);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUSH7)hTriggerClass->Fill(7);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUL7)hTriggerClass->Fill(8);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUU7)hTriggerClass->Fill(9);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMC7)hTriggerClass->Fill(10);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUS7)hTriggerClass->Fill(11);
if (fInputHandler->IsEventSelected() & AliVEvent::kPHI1)hTriggerClass->Fill(12);
if (fInputHandler->IsEventSelected() & AliVEvent::kPHI7)hTriggerClass->Fill(13);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMCEJE)hTriggerClass->Fill(14);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMCEGA)hTriggerClass->Fill(15);
if (fInputHandler->IsEventSelected() & AliVEvent::kCentral)hTriggerClass->Fill(16);
if (fInputHandler->IsEventSelected() & AliVEvent::kSemiCentral)hTriggerClass->Fill(17);
if (fInputHandler->IsEventSelected() & AliVEvent::kDG5)hTriggerClass->Fill(18);
if (fInputHandler->IsEventSelected() & AliVEvent::kZED)hTriggerClass->Fill(19);
if (fInputHandler->IsEventSelected() & AliVEvent::kSPI7)hTriggerClass->Fill(20);
if (fInputHandler->IsEventSelected() & AliVEvent::kINT8)hTriggerClass->Fill(21);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonSingleLowPt8)hTriggerClass->Fill(22);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonSingleHighPt8)hTriggerClass->Fill(23);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonLikeLowPt8)hTriggerClass->Fill(24);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonUnlikeLowPt8)hTriggerClass->Fill(25);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonUnlikeLowPt0)hTriggerClass->Fill(26);
if (fInputHandler->IsEventSelected() & AliVEvent::kUserDefined)hTriggerClass->Fill(27);
if (fInputHandler->IsEventSelected() & AliVEvent::kTRD)hTriggerClass->Fill(28);
if (fInputHandler->IsEventSelected() & AliVEvent::kFastOnly)hTriggerClass->Fill(29);
if (fInputHandler->IsEventSelected() & AliVEvent::kAnyINT)hTriggerClass->Fill(30);
if (fInputHandler->IsEventSelected() & AliVEvent::kAny)hTriggerClass->Fill(31);
if (!fInputHandler->IsEventSelected()) hTriggerClass->Fill(34);
}
if(hTriggerClassSelected && isSelected){
if (!fIsSDDFired) hTriggerClassSelected->Fill(33);
if (fInputHandler->IsEventSelected() & AliVEvent::kMB)hTriggerClassSelected->Fill(0);
if (fInputHandler->IsEventSelected() & AliVEvent::kINT7)hTriggerClassSelected->Fill(1);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUON)hTriggerClassSelected->Fill(2);
if (fInputHandler->IsEventSelected() & AliVEvent::kHighMult)hTriggerClassSelected->Fill(3);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMC1)hTriggerClassSelected->Fill(4);
if (fInputHandler->IsEventSelected() & AliVEvent::kCINT5)hTriggerClassSelected->Fill(5);
if (fInputHandler->IsEventSelected() & AliVEvent::kCMUS5)hTriggerClassSelected->Fill(6);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUSH7)hTriggerClassSelected->Fill(7);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUL7)hTriggerClassSelected->Fill(8);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUU7)hTriggerClassSelected->Fill(9);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMC7)hTriggerClassSelected->Fill(10);
if (fInputHandler->IsEventSelected() & AliVEvent::kMUS7)hTriggerClassSelected->Fill(11);
if (fInputHandler->IsEventSelected() & AliVEvent::kPHI1)hTriggerClassSelected->Fill(12);
if (fInputHandler->IsEventSelected() & AliVEvent::kPHI7)hTriggerClassSelected->Fill(13);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMCEJE)hTriggerClassSelected->Fill(14);
if (fInputHandler->IsEventSelected() & AliVEvent::kEMCEGA)hTriggerClassSelected->Fill(15);
if (fInputHandler->IsEventSelected() & AliVEvent::kCentral)hTriggerClassSelected->Fill(16);
if (fInputHandler->IsEventSelected() & AliVEvent::kSemiCentral)hTriggerClassSelected->Fill(17);
if (fInputHandler->IsEventSelected() & AliVEvent::kDG5)hTriggerClassSelected->Fill(18);
if (fInputHandler->IsEventSelected() & AliVEvent::kZED)hTriggerClassSelected->Fill(19);
if (fInputHandler->IsEventSelected() & AliVEvent::kSPI7)hTriggerClassSelected->Fill(20);
if (fInputHandler->IsEventSelected() & AliVEvent::kINT8)hTriggerClassSelected->Fill(21);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonSingleLowPt8)hTriggerClassSelected->Fill(22);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonSingleHighPt8)hTriggerClassSelected->Fill(23);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonLikeLowPt8)hTriggerClassSelected->Fill(24);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonUnlikeLowPt8)hTriggerClassSelected->Fill(25);
if (fInputHandler->IsEventSelected() & AliVEvent::kMuonUnlikeLowPt0)hTriggerClassSelected->Fill(26);
if (fInputHandler->IsEventSelected() & AliVEvent::kUserDefined)hTriggerClassSelected->Fill(27);
if (fInputHandler->IsEventSelected() & AliVEvent::kTRD)hTriggerClassSelected->Fill(28);
if (fInputHandler->IsEventSelected() & AliVEvent::kFastOnly)hTriggerClassSelected->Fill(29);
if (fInputHandler->IsEventSelected() & AliVEvent::kAnyINT)hTriggerClassSelected->Fill(30);
if (fInputHandler->IsEventSelected() & AliVEvent::kAny)hTriggerClassSelected->Fill(31);
}
if(!isSelected)return kFALSE;
return kTRUE;
}
TString AliConvEventCuts::GetCutNumber(){
TString a(kNCuts);
for(Int_t ii=0;ii<kNCuts;ii++){
a.Append(Form("%d",fCuts[ii]));
}
return a;
}
void AliConvEventCuts::GetNotRejectedParticles(Int_t rejection, TList *HeaderList, AliVEvent *MCEvent){
TString periodName = ((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()->GetTask(fV0ReaderName.Data()))->GetPeriodName();
if(fNotRejectedStart){
delete[] fNotRejectedStart;
fNotRejectedStart = NULL;
}
if(fNotRejectedEnd){
delete[] fNotRejectedEnd;
fNotRejectedEnd = NULL;
}
if(fGeneratorNames){
delete[] fGeneratorNames;
fGeneratorNames = NULL;
}
if(rejection == 0) return;
AliGenCocktailEventHeader *cHeader = 0x0;
AliAODMCHeader *cHeaderAOD = 0x0;
Bool_t headerFound = kFALSE;
AliStack *fMCStack = 0x0;
TClonesArray *fMCStackAOD = 0x0;
if(MCEvent->IsA()==AliMCEvent::Class()){
cHeader = dynamic_cast<AliGenCocktailEventHeader*>(dynamic_cast<AliMCEvent*>(MCEvent)->GenEventHeader());
if(cHeader) headerFound = kTRUE;
if(dynamic_cast<AliMCEvent*>(MCEvent))fMCStack = dynamic_cast<AliStack*>(dynamic_cast<AliMCEvent*>(MCEvent)->Stack());
}
if(MCEvent->IsA()==AliAODEvent::Class()){
cHeaderAOD = dynamic_cast<AliAODMCHeader*>(MCEvent->FindListObject(AliAODMCHeader::StdBranchName()));
fMCStackAOD = dynamic_cast<TClonesArray*>(MCEvent->FindListObject(AliAODMCParticle::StdBranchName()));
if(cHeaderAOD) headerFound = kTRUE;
}
if(headerFound){
TList *genHeaders = 0x0;
if(cHeader) genHeaders = cHeader->GetHeaders();
if(cHeaderAOD){
genHeaders = cHeaderAOD->GetCocktailHeaders();
if(genHeaders->GetEntries()==1){
SetRejectExtraSignalsCut(0);
return;
}
}
AliGenEventHeader* gh = 0;
fnHeaders = 0;
Int_t firstindexA = 0;
Int_t lastindexA = -1;
if(rejection == 1 || rejection == 3) fnHeaders = 1;
if(rejection == 2){
for(Int_t i = 0; i<genHeaders->GetEntries();i++){
gh = (AliGenEventHeader*)genHeaders->At(i);
TString GeneratorName = gh->GetName();
lastindexA = lastindexA + gh->NProduced();
for(Int_t j = 0; j<HeaderList->GetEntries();j++){
TString GeneratorInList = ((TObjString*)HeaderList->At(j))->GetString();
if(GeneratorName.CompareTo(GeneratorInList) == 0){
if (GeneratorInList.CompareTo("PARAM") == 0 || GeneratorInList.CompareTo("BOX") == 0 ){
if(fMCStack){
if (fMCStack->Particle(firstindexA)->GetPdgCode() == fAddedSignalPDGCode ) {
if (periodName.CompareTo("LHC14a1b")==0 || periodName.CompareTo("LHC14a1c")==0 ){
if (gh->NProduced() > 10 && fMCStack->Particle(firstindexA+10)->GetPdgCode() == fAddedSignalPDGCode ){
fnHeaders++;
continue;
}
continue;
} else {
fnHeaders++;
continue;
}
}
}
if ( fMCStackAOD){
AliAODMCParticle *aodMCParticle = static_cast<AliAODMCParticle*>(fMCStackAOD->At(firstindexA));
if ( aodMCParticle->GetPdgCode() == fAddedSignalPDGCode ){
if (periodName.CompareTo("LHC14a1b")==0 || periodName.CompareTo("LHC14a1c")==0 ){
if (gh->NProduced() > 10){
AliAODMCParticle *aodMCParticle2 = static_cast<AliAODMCParticle*>(fMCStackAOD->At(firstindexA+10));
if ( aodMCParticle2->GetPdgCode() == fAddedSignalPDGCode ){
fnHeaders++;
continue;
}
}
continue;
} else {
fnHeaders++;
continue;
}
}
}
continue;
}
fnHeaders++;
continue;
}
}
firstindexA = firstindexA + gh->NProduced();
}
}
fNotRejectedStart = new Int_t[fnHeaders];
fNotRejectedEnd = new Int_t[fnHeaders];
fGeneratorNames = new TString[fnHeaders];
if(rejection == 1 || rejection == 3){
fNotRejectedStart[0] = 0;
fNotRejectedEnd[0] = ((AliGenEventHeader*)genHeaders->At(0))->NProduced()-1;
fGeneratorNames[0] = ((AliGenEventHeader*)genHeaders->At(0))->GetName();
return;
}
Int_t firstindex = 0;
Int_t lastindex = -1;
Int_t number = 0;
for(Int_t i = 0; i<genHeaders->GetEntries();i++){
gh = (AliGenEventHeader*)genHeaders->At(i);
TString GeneratorName = gh->GetName();
lastindex = lastindex + gh->NProduced();
for(Int_t j = 0; j<HeaderList->GetEntries();j++){
TString GeneratorInList = ((TObjString*)HeaderList->At(j))->GetString();
if(GeneratorName.CompareTo(GeneratorInList) == 0){
if (GeneratorInList.CompareTo("PARAM") == 0 || GeneratorInList.CompareTo("BOX") == 0 ){
if(fMCStack){
if (fMCStack->Particle(firstindex)->GetPdgCode() == fAddedSignalPDGCode ) {
if (periodName.CompareTo("LHC14a1b")==0 || periodName.CompareTo("LHC14a1c")==0 ){
if (gh->NProduced() > 10 && fMCStack->Particle(firstindex+10)->GetPdgCode() == fAddedSignalPDGCode){
fNotRejectedStart[number] = firstindex;
fNotRejectedEnd[number] = lastindex;
fGeneratorNames[number] = GeneratorName;
number++;
continue;
}
} else {
fNotRejectedStart[number] = firstindex;
fNotRejectedEnd[number] = lastindex;
fGeneratorNames[number] = GeneratorName;
number++;
continue;
}
}
}
if ( fMCStackAOD){
AliAODMCParticle *aodMCParticle = static_cast<AliAODMCParticle*>(fMCStackAOD->At(firstindex));
if ( aodMCParticle->GetPdgCode() == fAddedSignalPDGCode ){
if (periodName.CompareTo("LHC14a1b")==0 || periodName.CompareTo("LHC14a1c")==0 ){
if (gh->NProduced() > 10) {
AliAODMCParticle *aodMCParticle2 = static_cast<AliAODMCParticle*>(fMCStackAOD->At(firstindex+10));
if ( aodMCParticle2->GetPdgCode() == fAddedSignalPDGCode ){
fNotRejectedEnd[number] = lastindex;
fNotRejectedStart[number] = firstindex;
fGeneratorNames[number] = GeneratorName;
number++;
}
continue;
}
} else {
fNotRejectedStart[number] = firstindex;
fNotRejectedEnd[number] = lastindex;
fGeneratorNames[number] = GeneratorName;
number++;
continue;
}
}
}
continue;
} else {
fNotRejectedStart[number] = firstindex;
fNotRejectedEnd[number] = lastindex;
fGeneratorNames[number] = GeneratorName;
number++;
continue;
}
}
}
firstindex = firstindex + gh->NProduced();
}
} else {
fNotRejectedStart = new Int_t[1];
fNotRejectedEnd = new Int_t[1];
fnHeaders = 1;
fNotRejectedStart[0] = 0;
fNotRejectedEnd[0] = static_cast<AliMCEvent*>(MCEvent)->Stack()->GetNprimary()-1;
fGeneratorNames = new TString[1];
fGeneratorNames[0] = "NoCocktailGeneratorFound";
AliGenPythiaEventHeader *mcHeaderPythia = dynamic_cast<AliGenPythiaEventHeader*>(static_cast<AliMCEvent*>(MCEvent)->GenEventHeader());
if (mcHeaderPythia) fGeneratorNames[0] = "NoCocktailGeneratorFound_Pythia";
AliGenDPMjetEventHeader *mcHeaderPhojet = dynamic_cast<AliGenDPMjetEventHeader*>(static_cast<AliMCEvent*>(MCEvent)->GenEventHeader());
if (mcHeaderPhojet) fGeneratorNames[0] = "NoCocktailGeneratorFound_Phojet";
AliGenHijingEventHeader *mcHeaderHijing = dynamic_cast<AliGenHijingEventHeader*>(static_cast<AliMCEvent*>(MCEvent)->GenEventHeader());
if (mcHeaderHijing) fGeneratorNames[0] = "NoCocktailGeneratorFound_Hijing";
SetRejectExtraSignalsCut(0);
}
}
Int_t AliConvEventCuts::IsParticleFromBGEvent(Int_t index, AliStack *MCStack, AliVEvent *InputEvent){
if(index < 0) return 0;
Int_t accepted = 0;
if(!InputEvent || InputEvent->IsA()==AliESDEvent::Class()){
if( index >= MCStack->GetNprimary()){
if( ((TParticle*)MCStack->Particle(index))->GetMother(0) < 0) return 1;
return IsParticleFromBGEvent(((TParticle*)MCStack->Particle(index))->GetMother(0),MCStack,InputEvent);
}
for(Int_t i = 0;i<fnHeaders;i++){
if(index >= fNotRejectedStart[i] && index <= fNotRejectedEnd[i]){
accepted = 1;
if(i == 0) accepted = 2;
}
}
}
else if(InputEvent->IsA()==AliAODEvent::Class()){
TClonesArray *AODMCTrackArray = dynamic_cast<TClonesArray*>(InputEvent->FindListObject(AliAODMCParticle::StdBranchName()));
if (AODMCTrackArray){
AliAODMCParticle *aodMCParticle = static_cast<AliAODMCParticle*>(AODMCTrackArray->At(index));
if(!aodMCParticle) return 1;
if(!aodMCParticle->IsPrimary()){
if( aodMCParticle->GetMother() < 0) return 1;
return IsParticleFromBGEvent(aodMCParticle->GetMother(),MCStack,InputEvent);
}
index = abs(static_cast<AliAODMCParticle*>(AODMCTrackArray->At(index))->GetLabel());
for(Int_t i = 0;i<fnHeaders;i++){
if(index >= fNotRejectedStart[i] && index <= fNotRejectedEnd[i]){
accepted = 1;
if(i == 0) accepted = 2;
}
}
}
}
return accepted;
}
Int_t AliConvEventCuts::IsEventAcceptedByCut(AliConvEventCuts *ReaderCuts, AliVEvent *InputEvent, AliMCEvent *MCEvent, Int_t isHeavyIon, Bool_t isEMCALAnalysis){
Bool_t isMC = kFALSE;
if (MCEvent){isMC = kTRUE;}
if ( !IsTriggerSelected(InputEvent, isMC) )
return 3;
if(isHeavyIon != 0 && !(IsCentralitySelected(InputEvent,MCEvent)))
return 1;
if(isHeavyIon == 0 && GetIsFromPileup()){
if(InputEvent->IsPileupFromSPD(3,0.8,3.,2.,5.)){
return 6;
}
}
Bool_t hasV0And = ReaderCuts->HasV0AND();
Bool_t isSDDFired = ReaderCuts->IsSDDFired();
if( ( (IsSpecialTrigger() == 0 && IsSpecialSubTrigger() == 1) || (IsSpecialTrigger() == 1 && IsSpecialSubTrigger() == 1) ) && !isSDDFired && !MCEvent)
return 7;
if( ( (IsSpecialTrigger() == 1 && IsSpecialSubTrigger() == 0) || (IsSpecialTrigger() == 1 && IsSpecialSubTrigger() == 1) ) && !hasV0And)
return 8;
if( (IsSpecialTrigger() == 2 || IsSpecialTrigger() == 3) && !isSDDFired && !MCEvent)
return 7;
if( (IsSpecialTrigger() == 1 || IsSpecialTrigger() == 3) && !hasV0And)
return 8;
if (isEMCALAnalysis || IsSpecialTrigger() == 5 || IsSpecialTrigger() == 8 || IsSpecialTrigger() == 9 ){
Int_t runnumber = InputEvent->GetRunNumber();
if ((runnumber>=144871) && (runnumber<=146860)) {
AliVCaloCells *cells = InputEvent->GetEMCALCells();
const Short_t nCells = cells->GetNumberOfCells();
if (InputEvent->IsA()==AliESDEvent::Class()) AliAnalysisManager::GetAnalysisManager()->LoadBranch("EMCALCells.");
AliInputEventHandler *fInputHandler=(AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
if (!fInputHandler) return 3;
Int_t nCellCount[12] = {0,0,0,0,0,0,0,0,0,0,0,0};
for(Int_t iCell=0; iCell<nCells; ++iCell) {
Short_t cellId = cells->GetCellNumber(iCell);
Double_t cellE = cells->GetCellAmplitude(cellId);
Int_t sm = cellId / (24*48);
if (cellE>0.1) ++nCellCount[sm];
}
Bool_t fIsLedEvent = kFALSE;
if (nCellCount[4] > 100) {
fIsLedEvent = kTRUE;
} else {
if ((runnumber>=146858) && (runnumber<=146860)) {
if ((fInputHandler->IsEventSelected() & AliVEvent::kMB) && (nCellCount[3]>=21))
fIsLedEvent = kTRUE;
else if ((fInputHandler->IsEventSelected() & AliVEvent::kEMC1) && (nCellCount[3]>=35))
fIsLedEvent = kTRUE;
}
}
if (fIsLedEvent) {
return 9;
}
}
}
if(hCentrality)hCentrality->Fill(GetCentrality(InputEvent));
if(hCentralityVsNumberOfPrimaryTracks)
hCentralityVsNumberOfPrimaryTracks->Fill(GetCentrality(InputEvent),
((AliV0ReaderV1*)AliAnalysisManager::GetAnalysisManager()
->GetTask(fV0ReaderName.Data()))->GetNumberOfPrimaryTracks());
return 0;
}
Float_t AliConvEventCuts::GetWeightForMeson(TString period, Int_t index, AliStack *MCStack, AliVEvent *InputEvent){
if (!( period.CompareTo("LHC11a10a") == 0 || period.CompareTo("LHC11a10b") == 0 || period.CompareTo("LHC11a10b_bis") == 0 || period.CompareTo("LHC11a10a_bis") == 0 || period.CompareTo("LHC11a10b_plus") == 0 || period.Contains("LHC13d2")|| period.Contains("LHC14a1") ||
period.CompareTo("LHC13e7") == 0 || period.Contains("LHC13b2_efix") || period.CompareTo("LHC14b2") == 0 )) return 1.;
Int_t kCaseGen = 0;
for (Int_t i = 0; i < fnHeaders; i++){
if (index >= fNotRejectedStart[i] && index < fNotRejectedEnd[i]+1){
if (fGeneratorNames[i].CompareTo("Pythia") == 0){
kCaseGen = 1;
} else if (fGeneratorNames[i].CompareTo("DPMJET") == 0){
kCaseGen = 2;
} else if (fGeneratorNames[i].CompareTo("HIJING") == 0 ||
fGeneratorNames[i].CompareTo("Hijing") == 0 ||
fGeneratorNames[i].Contains("hijing")){
kCaseGen = 3;
} else if (fGeneratorNames[i].CompareTo("BOX") == 0){
kCaseGen = 4;
} else if (fGeneratorNames[i].CompareTo("PARAM") == 0){
kCaseGen = 5;
} else if (fGeneratorNames[i].CompareTo("NoCocktailGeneratorFound") == 0){
kCaseGen = 6;
} else if (fGeneratorNames[i].CompareTo("NoCocktailGeneratorFound_Pythia") == 0){
kCaseGen = 1;
} else if (fGeneratorNames[i].CompareTo("NoCocktailGeneratorFound_Phojet") == 0){
kCaseGen = 2;
} else if (fGeneratorNames[i].CompareTo("NoCocktailGeneratorFound_Hijing") == 0){
kCaseGen = 3;
}
if (period.Contains("LHC13d2") || period.CompareTo("LHC13e7") == 0 || period.Contains("LHC13b2_efix") || period.Contains("LHC14a1") || period.CompareTo("LHC14b2") == 0 ){
kCaseGen = 3;
}
}
}
if (kCaseGen == 0) return 1;
Double_t mesonPt = 0;
Double_t mesonMass = 0;
Int_t PDGCode = 0;
if(!InputEvent || InputEvent->IsA()==AliESDEvent::Class()){
mesonPt = ((TParticle*)MCStack->Particle(index))->Pt();
mesonMass = ((TParticle*)MCStack->Particle(index))->GetCalcMass();
PDGCode = ((TParticle*)MCStack->Particle(index))->GetPdgCode();
}
else if(InputEvent->IsA()==AliAODEvent::Class()){
TClonesArray *AODMCTrackArray = dynamic_cast<TClonesArray*>(InputEvent->FindListObject(AliAODMCParticle::StdBranchName()));
if (AODMCTrackArray){
AliAODMCParticle *aodMCParticle = static_cast<AliAODMCParticle*>(AODMCTrackArray->At(index));
mesonPt = aodMCParticle->Pt();
mesonMass = aodMCParticle->GetCalcMass();
PDGCode = aodMCParticle->GetPdgCode();
} else {
return 1;
}
}
Float_t functionResultMC = 1.;
if (kCaseGen == 1){
Float_t dNdyMC = 2.1462;
Float_t nMC = 7.06055;
Float_t tMC = 0.12533;
if ( PDGCode == 111){
dNdyMC = 2.1462;
nMC = 7.06055;
tMC = 0.12533;
} else if ( PDGCode == 221){
dNdyMC = 0.2357;
nMC = 5.9105;
tMC = 0.1525;
}
functionResultMC = dNdyMC / ( 2 * TMath::Pi())*(nMC-1.)*(nMC-2.) / (nMC*tMC*(nMC*tMC+mesonMass*(nMC-2.))) * TMath::Power(1.+(TMath::Sqrt(mesonPt*mesonPt+mesonMass*mesonMass)-mesonMass)/(nMC*tMC), -nMC);
} else if (kCaseGen == 2){
Float_t dNdyMC = 2.35978;
Float_t nMC = 6.81795;
Float_t tMC = 0.11492;
if ( PDGCode == 111){
dNdyMC = 2.35978;
nMC = 6.81795;
tMC = 0.11492;
} else if ( PDGCode == 221){
dNdyMC = 0.3690;
nMC = 5.55809;
tMC = 0.13387;
}
functionResultMC = dNdyMC / ( 2 * TMath::Pi())*(nMC-1.)*(nMC-2.) / (nMC*tMC*(nMC*tMC+mesonMass*(nMC-2.))) * TMath::Power(1.+(TMath::Sqrt(mesonPt*mesonPt+mesonMass*mesonMass)-mesonMass)/(nMC*tMC), -nMC);
} else if (kCaseGen == 4){
Float_t a = 0.23437;
Float_t b = 5.6661;
Float_t c = -1430.5863;
Float_t d = -0.6966624;
Float_t e = 252.3742;
if ( PDGCode == 111){
a = 0.23437;
b = 5.6661;
c = -1430.5863;
d = -0.6966624;
e = 252.3742;
} else if ( PDGCode == 221){
a = 0.10399;
b = 4.35311;
c = -12.17723;
d = -0.01172;
e =1.85140;
}
functionResultMC = a*TMath::Power(mesonPt,-1.*(b+c/(TMath::Power(mesonPt,d)+e)))*1./mesonPt *1./1.6 *1./(2.* TMath::Pi());
} else if (kCaseGen == 3 ){
if ( PDGCode == 111 && fDoReweightHistoMCPi0 && hReweightMCHistPi0!= 0x0){
functionResultMC = hReweightMCHistPi0->Interpolate(mesonPt);
}
if ( PDGCode == 221 && fDoReweightHistoMCEta && hReweightMCHistEta!= 0x0){
functionResultMC = hReweightMCHistEta->Interpolate(mesonPt);
}
if ( PDGCode == 310 && fDoReweightHistoMCK0s && hReweightMCHistK0s!= 0x0){
functionResultMC = hReweightMCHistK0s->Interpolate(mesonPt);
}
}
Float_t functionResultData = 1;
if (kCaseGen == 1 || kCaseGen == 2 || kCaseGen == 4 ){
Float_t dNdyData = 2.2328;
Float_t nData = 7.1473;
Float_t tData = 0.1346;
if ( PDGCode == 111){
dNdyData = 2.2328;
nData = 7.1473;
tData = 0.1346;
} else if ( PDGCode == 221){
dNdyData = 0.38992;
nData = 5.72778;
tData = 0.13835;
}
functionResultData = dNdyData / ( 2 * TMath::Pi())*(nData-1.)*(nData-2.) / (nData*tData*(nData*tData+mesonMass*(nData-2.))) * TMath::Power(1.+(TMath::Sqrt(mesonPt*mesonPt+mesonMass*mesonMass)-mesonMass)/(nData*tData), -nData);
} else {
if ( PDGCode == 111 && fDoReweightHistoMCPi0 && fFitDataPi0!= 0x0){
functionResultData = fFitDataPi0->Eval(mesonPt);
}
if ( PDGCode == 221 && fDoReweightHistoMCEta && fFitDataEta!= 0x0){
functionResultData = fFitDataEta->Eval(mesonPt);
}
if ( PDGCode == 310 && fDoReweightHistoMCK0s && fFitDataK0s!= 0x0){
functionResultData = fFitDataK0s->Eval(mesonPt);
}
}
Double_t weight = 1;
if (PDGCode == 111 || PDGCode == 221){
if (functionResultData != 0. && functionResultMC != 0. && isfinite(functionResultData) && isfinite(functionResultMC)){
weight = functionResultData/functionResultMC;
if ( kCaseGen == 3){
if (PDGCode == 111){
if (!(fDoReweightHistoMCPi0 && hReweightMCHistPi0!= 0x0 && PDGCode == 111)){
weight = 1.;
}
}
if (PDGCode == 221){
if (!(fDoReweightHistoMCEta && hReweightMCHistEta!= 0x0 && PDGCode == 221)){
weight = 1.;
}
}
}
if (!isfinite(functionResultData)) weight = 1.;
if (!isfinite(weight)) weight = 1.;
}
} else if (PDGCode == 310 && functionResultMC != 0 && isfinite(functionResultMC)){
weight = functionResultMC;
}
return weight;
}
void AliConvEventCuts::GetCorrectEtaShiftFromPeriod(TString periodName){
if(periodName.CompareTo("LHC12g") == 0 ||
periodName.CompareTo("LHC13b") == 0 ||
periodName.CompareTo("LHC13c") == 0 ||
periodName.CompareTo("LHC13d") == 0 ||
periodName.CompareTo("LHC13e") == 0 ||
periodName.CompareTo("LHC13c3") == 0 ||
periodName.CompareTo("LHC13c2") == 0 ||
periodName.CompareTo("LHC13b4") == 0 ||
periodName.CompareTo("LHC13b2_fix_1") == 0 ||
periodName.CompareTo("LHC13b2_efix_p1") == 0 ||
periodName.CompareTo("LHC13b2_efix_p2") == 0 ||
periodName.CompareTo("LHC13b2_efix_p3") == 0 ||
periodName.CompareTo("LHC13b2_efix_p4") == 0 ||
periodName.CompareTo("LHC13e7") == 0 ||
periodName.CompareTo("LHC13b3") == 0 ||
periodName.CompareTo("LHC13b2") == 0 ||
periodName.CompareTo("LHC13b2_plus") == 0 ||
periodName.CompareTo("LHC13c1_bis") == 0 ||
periodName.CompareTo("LHC13c1") == 0 ||
periodName.CompareTo("LHC13b1") == 0 ||
periodName.CompareTo("LHC12g4b_fix") == 0 ||
periodName.CompareTo("LHC12g1_fix") == 0 ||
periodName.CompareTo("LHC12g4c") == 0 ||
periodName.CompareTo("LHC12h6") == 0 ||
periodName.CompareTo("LHC12g4b") == 0 ||
periodName.CompareTo("LHC12g4a") == 0 ||
periodName.CompareTo("LHC12g4") == 0 ||
periodName.CompareTo("LHC12g5") == 0 ||
periodName.CompareTo("LHC12g2") == 0 ||
periodName.CompareTo("LHC12g1") == 0 )
{
printf(" Gamma Conversion Cuts %s :: pPb Run doing Eta Shift of %f \n\n",(GetCutNumber()).Data(),-0.465);
SetEtaShift(-0.465);
}
else if(periodName.CompareTo("LHC13f") == 0 ||
periodName.CompareTo("LHC13c6b") == 0 ||
periodName.CompareTo("LHC13c5") == 0 ||
periodName.CompareTo("LHC13c4") == 0 )
{
printf(" Gamma Conversion Cuts %s :: Pbp Run doing Eta Shift of %f \n\n",(GetCutNumber()).Data(),0.465);
SetEtaShift(+0.465);
}
else printf(" Gamma Conversion Cuts %s :: Automatic Eta Shift requested but Period is not known -> No Shift \n\n",(GetCutNumber()).Data());
}
AliEmcalTriggerPatchInfo* AliConvEventCuts::GetMainTriggerPatch()
{
if (fMainTriggerPatchEMCAL)
return fMainTriggerPatchEMCAL;
if (!fTriggerPatchInfo) {
AliError(Form("%s: fTriggerPatchInfo not available",GetName()));
return 0;
}
Int_t nPatch = fTriggerPatchInfo->GetEntries();
AliEmcalTriggerPatchInfo *patch;
for (Int_t iPatch = 0; iPatch < nPatch; iPatch++) {
patch = (AliEmcalTriggerPatchInfo*)fTriggerPatchInfo->At( iPatch );
if (patch->IsMainTrigger()) {
fMainTriggerPatchEMCAL = patch;
break;
}
}
return fMainTriggerPatchEMCAL;
}
void AliConvEventCuts::InitializeEMCALTrigger(AliVEvent *fInputEvent)
{
if (fCaloTriggersName.IsNull()){
if (fInputEvent->IsA()==AliESDEvent::Class()){
fCaloTriggersName = "EMCALTrigger";
} else {
fCaloTriggersName = "emcalTrigger";
}
}
if (!fCaloTriggersName.IsNull() && !fCaloTriggers) {
fCaloTriggers = dynamic_cast<AliVCaloTrigger*>(fInputEvent->FindListObject(fCaloTriggersName));
if (!fCaloTriggers) {
AliError(Form("%s: Could not retrieve calo triggers %s!", GetName(), fCaloTriggersName.Data()));
return;
}
}
if (fCaloTriggerPatchInfoName.IsNull()){
if (fInputEvent->IsA()==AliESDEvent::Class()){
fCaloTriggerPatchInfoName = "EmcalTriggers";
} else {
fCaloTriggerPatchInfoName = "EmcalTriggers";
}
}
if (!fCaloTriggerPatchInfoName.IsNull() && !fTriggerPatchInfo) {
fTriggerPatchInfo = GetArrayFromEvent(fInputEvent, fCaloTriggerPatchInfoName.Data(), "AliEmcalTriggerPatchInfo");
if (!fTriggerPatchInfo) {
AliError(Form("%s: Could not retrieve calo trigger patch info %s!", GetName(), fCaloTriggerPatchInfoName.Data()));
return;
}
}
fEMCALTrigInitialized = kTRUE;
}
ULong_t AliConvEventCuts::GetTriggerList(){
if (!fTriggerPatchInfo)
return 0;
Int_t nPatch = fTriggerPatchInfo->GetEntries();
Int_t nG1 = 0;
Int_t nG2 = 0;
Int_t nJ1 = 0;
Int_t nJ2 = 0;
Int_t nL0 = 0;
AliEmcalTriggerPatchInfo *patch;
for (Int_t iPatch = 0; iPatch < nPatch; iPatch++) {
patch = (AliEmcalTriggerPatchInfo*)fTriggerPatchInfo->At( iPatch );
if (patch->IsGammaHigh()){
nG1++;
}
if (patch->IsGammaLow()){
nG2++;
}
if (patch->IsJetHigh()){
nJ1++;
}
if (patch->IsJetLow()){
nJ2++;
}
if (patch->IsLevel0()){
nL0++;
}
}
if (nPatch > 0){
AliDebug(2, "Patch summary: ");
AliDebug(2, Form("Number of patches: %d", nPatch));
AliDebug(2, Form("Level0: [%d]" ,nL0));
AliDebug(2, Form("Jet: low[%d], high[%d]" ,nJ2, nJ1));
AliDebug(2, Form("Gamma: low[%d], high[%d]" ,nG2, nG1));
}
ULong_t triggers(0);
if (nG1>0)
SETBIT(triggers, kG1);
if (nG2>0)
SETBIT(triggers, kG2);
if (nJ1>0)
SETBIT(triggers, kJ1);
if (nJ2>0)
SETBIT(triggers, kJ2);
if (nL0>0)
SETBIT(triggers, kL0);
return triggers;
}
Bool_t AliConvEventCuts::HasTriggerType(TriggerTypeEMCAL t){
if(t == kND){
return fTriggersEMCAL == 0;
}
return TESTBIT(fTriggersEMCAL, int(t));
}
TClonesArray *AliConvEventCuts::GetArrayFromEvent(AliVEvent* fInputEvent, const char *name, const char *clname)
{
TClonesArray *arr = 0;
TString sname(name);
if (!sname.IsNull()) {
arr = dynamic_cast<TClonesArray*>(fInputEvent->FindListObject(sname));
if (!arr) {
AliWarning(Form("%s: Could not retrieve array with name %s!", GetName(), name));
return 0;
}
} else {
return 0;
}
if (!clname)
return arr;
TString objname(arr->GetClass()->GetName());
TClass cls(objname);
if (!cls.InheritsFrom(clname)) {
AliWarning(Form("%s: Objects of type %s in %s are not inherited from %s!",
GetName(), cls.GetName(), name, clname));
return 0;
}
return arr;
}
AliConvEventCuts.cxx:1000 AliConvEventCuts.cxx:1001 AliConvEventCuts.cxx:1002 AliConvEventCuts.cxx:1003 AliConvEventCuts.cxx:1004 AliConvEventCuts.cxx:1005 AliConvEventCuts.cxx:1006 AliConvEventCuts.cxx:1007 AliConvEventCuts.cxx:1008 AliConvEventCuts.cxx:1009 AliConvEventCuts.cxx:1010 AliConvEventCuts.cxx:1011 AliConvEventCuts.cxx:1012 AliConvEventCuts.cxx:1013 AliConvEventCuts.cxx:1014 AliConvEventCuts.cxx:1015 AliConvEventCuts.cxx:1016 AliConvEventCuts.cxx:1017 AliConvEventCuts.cxx:1018 AliConvEventCuts.cxx:1019 AliConvEventCuts.cxx:1020 AliConvEventCuts.cxx:1021 AliConvEventCuts.cxx:1022 AliConvEventCuts.cxx:1023 AliConvEventCuts.cxx:1024 AliConvEventCuts.cxx:1025 AliConvEventCuts.cxx:1026 AliConvEventCuts.cxx:1027 AliConvEventCuts.cxx:1028 AliConvEventCuts.cxx:1029 AliConvEventCuts.cxx:1030 AliConvEventCuts.cxx:1031 AliConvEventCuts.cxx:1032 AliConvEventCuts.cxx:1033 AliConvEventCuts.cxx:1034 AliConvEventCuts.cxx:1035 AliConvEventCuts.cxx:1036 AliConvEventCuts.cxx:1037 AliConvEventCuts.cxx:1038 AliConvEventCuts.cxx:1039 AliConvEventCuts.cxx:1040 AliConvEventCuts.cxx:1041 AliConvEventCuts.cxx:1042 AliConvEventCuts.cxx:1043 AliConvEventCuts.cxx:1044 AliConvEventCuts.cxx:1045 AliConvEventCuts.cxx:1046 AliConvEventCuts.cxx:1047 AliConvEventCuts.cxx:1048 AliConvEventCuts.cxx:1049 AliConvEventCuts.cxx:1050 AliConvEventCuts.cxx:1051 AliConvEventCuts.cxx:1052 AliConvEventCuts.cxx:1053 AliConvEventCuts.cxx:1054 AliConvEventCuts.cxx:1055 AliConvEventCuts.cxx:1056 AliConvEventCuts.cxx:1057 AliConvEventCuts.cxx:1058 AliConvEventCuts.cxx:1059 AliConvEventCuts.cxx:1060 AliConvEventCuts.cxx:1061 AliConvEventCuts.cxx:1062 AliConvEventCuts.cxx:1063 AliConvEventCuts.cxx:1064 AliConvEventCuts.cxx:1065 AliConvEventCuts.cxx:1066 AliConvEventCuts.cxx:1067 AliConvEventCuts.cxx:1068 AliConvEventCuts.cxx:1069 AliConvEventCuts.cxx:1070 AliConvEventCuts.cxx:1071 AliConvEventCuts.cxx:1072 AliConvEventCuts.cxx:1073 AliConvEventCuts.cxx:1074 AliConvEventCuts.cxx:1075 AliConvEventCuts.cxx:1076 AliConvEventCuts.cxx:1077 AliConvEventCuts.cxx:1078 AliConvEventCuts.cxx:1079 AliConvEventCuts.cxx:1080 AliConvEventCuts.cxx:1081 AliConvEventCuts.cxx:1082 AliConvEventCuts.cxx:1083 AliConvEventCuts.cxx:1084 AliConvEventCuts.cxx:1085 AliConvEventCuts.cxx:1086 AliConvEventCuts.cxx:1087 AliConvEventCuts.cxx:1088 AliConvEventCuts.cxx:1089 AliConvEventCuts.cxx:1090 AliConvEventCuts.cxx:1091 AliConvEventCuts.cxx:1092 AliConvEventCuts.cxx:1093 AliConvEventCuts.cxx:1094 AliConvEventCuts.cxx:1095 AliConvEventCuts.cxx:1096 AliConvEventCuts.cxx:1097 AliConvEventCuts.cxx:1098 AliConvEventCuts.cxx:1099 AliConvEventCuts.cxx:1100 AliConvEventCuts.cxx:1101 AliConvEventCuts.cxx:1102 AliConvEventCuts.cxx:1103 AliConvEventCuts.cxx:1104 AliConvEventCuts.cxx:1105 AliConvEventCuts.cxx:1106 AliConvEventCuts.cxx:1107 AliConvEventCuts.cxx:1108 AliConvEventCuts.cxx:1109 AliConvEventCuts.cxx:1110 AliConvEventCuts.cxx:1111 AliConvEventCuts.cxx:1112 AliConvEventCuts.cxx:1113 AliConvEventCuts.cxx:1114 AliConvEventCuts.cxx:1115 AliConvEventCuts.cxx:1116 AliConvEventCuts.cxx:1117 AliConvEventCuts.cxx:1118 AliConvEventCuts.cxx:1119 AliConvEventCuts.cxx:1120 AliConvEventCuts.cxx:1121 AliConvEventCuts.cxx:1122 AliConvEventCuts.cxx:1123 AliConvEventCuts.cxx:1124 AliConvEventCuts.cxx:1125 AliConvEventCuts.cxx:1126 AliConvEventCuts.cxx:1127 AliConvEventCuts.cxx:1128 AliConvEventCuts.cxx:1129 AliConvEventCuts.cxx:1130 AliConvEventCuts.cxx:1131 AliConvEventCuts.cxx:1132 AliConvEventCuts.cxx:1133 AliConvEventCuts.cxx:1134 AliConvEventCuts.cxx:1135 AliConvEventCuts.cxx:1136 AliConvEventCuts.cxx:1137 AliConvEventCuts.cxx:1138 AliConvEventCuts.cxx:1139 AliConvEventCuts.cxx:1140 AliConvEventCuts.cxx:1141 AliConvEventCuts.cxx:1142 AliConvEventCuts.cxx:1143 AliConvEventCuts.cxx:1144 AliConvEventCuts.cxx:1145 AliConvEventCuts.cxx:1146 AliConvEventCuts.cxx:1147 AliConvEventCuts.cxx:1148 AliConvEventCuts.cxx:1149 AliConvEventCuts.cxx:1150 AliConvEventCuts.cxx:1151 AliConvEventCuts.cxx:1152 AliConvEventCuts.cxx:1153 AliConvEventCuts.cxx:1154 AliConvEventCuts.cxx:1155 AliConvEventCuts.cxx:1156 AliConvEventCuts.cxx:1157 AliConvEventCuts.cxx:1158 AliConvEventCuts.cxx:1159 AliConvEventCuts.cxx:1160 AliConvEventCuts.cxx:1161 AliConvEventCuts.cxx:1162 AliConvEventCuts.cxx:1163 AliConvEventCuts.cxx:1164 AliConvEventCuts.cxx:1165 AliConvEventCuts.cxx:1166 AliConvEventCuts.cxx:1167 AliConvEventCuts.cxx:1168 AliConvEventCuts.cxx:1169 AliConvEventCuts.cxx:1170 AliConvEventCuts.cxx:1171 AliConvEventCuts.cxx:1172 AliConvEventCuts.cxx:1173 AliConvEventCuts.cxx:1174 AliConvEventCuts.cxx:1175 AliConvEventCuts.cxx:1176 AliConvEventCuts.cxx:1177 AliConvEventCuts.cxx:1178 AliConvEventCuts.cxx:1179 AliConvEventCuts.cxx:1180 AliConvEventCuts.cxx:1181 AliConvEventCuts.cxx:1182 AliConvEventCuts.cxx:1183 AliConvEventCuts.cxx:1184 AliConvEventCuts.cxx:1185 AliConvEventCuts.cxx:1186 AliConvEventCuts.cxx:1187 AliConvEventCuts.cxx:1188 AliConvEventCuts.cxx:1189 AliConvEventCuts.cxx:1190 AliConvEventCuts.cxx:1191 AliConvEventCuts.cxx:1192 AliConvEventCuts.cxx:1193 AliConvEventCuts.cxx:1194 AliConvEventCuts.cxx:1195 AliConvEventCuts.cxx:1196 AliConvEventCuts.cxx:1197 AliConvEventCuts.cxx:1198 AliConvEventCuts.cxx:1199 AliConvEventCuts.cxx:1200 AliConvEventCuts.cxx:1201 AliConvEventCuts.cxx:1202 AliConvEventCuts.cxx:1203 AliConvEventCuts.cxx:1204 AliConvEventCuts.cxx:1205 AliConvEventCuts.cxx:1206 AliConvEventCuts.cxx:1207 AliConvEventCuts.cxx:1208 AliConvEventCuts.cxx:1209 AliConvEventCuts.cxx:1210 AliConvEventCuts.cxx:1211 AliConvEventCuts.cxx:1212 AliConvEventCuts.cxx:1213 AliConvEventCuts.cxx:1214 AliConvEventCuts.cxx:1215 AliConvEventCuts.cxx:1216 AliConvEventCuts.cxx:1217 AliConvEventCuts.cxx:1218 AliConvEventCuts.cxx:1219 AliConvEventCuts.cxx:1220 AliConvEventCuts.cxx:1221 AliConvEventCuts.cxx:1222 AliConvEventCuts.cxx:1223 AliConvEventCuts.cxx:1224 AliConvEventCuts.cxx:1225 AliConvEventCuts.cxx:1226 AliConvEventCuts.cxx:1227 AliConvEventCuts.cxx:1228 AliConvEventCuts.cxx:1229 AliConvEventCuts.cxx:1230 AliConvEventCuts.cxx:1231 AliConvEventCuts.cxx:1232 AliConvEventCuts.cxx:1233 AliConvEventCuts.cxx:1234 AliConvEventCuts.cxx:1235 AliConvEventCuts.cxx:1236 AliConvEventCuts.cxx:1237 AliConvEventCuts.cxx:1238 AliConvEventCuts.cxx:1239 AliConvEventCuts.cxx:1240 AliConvEventCuts.cxx:1241 AliConvEventCuts.cxx:1242 AliConvEventCuts.cxx:1243 AliConvEventCuts.cxx:1244 AliConvEventCuts.cxx:1245 AliConvEventCuts.cxx:1246 AliConvEventCuts.cxx:1247 AliConvEventCuts.cxx:1248 AliConvEventCuts.cxx:1249 AliConvEventCuts.cxx:1250 AliConvEventCuts.cxx:1251 AliConvEventCuts.cxx:1252 AliConvEventCuts.cxx:1253 AliConvEventCuts.cxx:1254 AliConvEventCuts.cxx:1255 AliConvEventCuts.cxx:1256 AliConvEventCuts.cxx:1257 AliConvEventCuts.cxx:1258 AliConvEventCuts.cxx:1259 AliConvEventCuts.cxx:1260 AliConvEventCuts.cxx:1261 AliConvEventCuts.cxx:1262 AliConvEventCuts.cxx:1263 AliConvEventCuts.cxx:1264 AliConvEventCuts.cxx:1265 AliConvEventCuts.cxx:1266 AliConvEventCuts.cxx:1267 AliConvEventCuts.cxx:1268 AliConvEventCuts.cxx:1269 AliConvEventCuts.cxx:1270 AliConvEventCuts.cxx:1271 AliConvEventCuts.cxx:1272 AliConvEventCuts.cxx:1273 AliConvEventCuts.cxx:1274 AliConvEventCuts.cxx:1275 AliConvEventCuts.cxx:1276 AliConvEventCuts.cxx:1277 AliConvEventCuts.cxx:1278 AliConvEventCuts.cxx:1279 AliConvEventCuts.cxx:1280 AliConvEventCuts.cxx:1281 AliConvEventCuts.cxx:1282 AliConvEventCuts.cxx:1283 AliConvEventCuts.cxx:1284 AliConvEventCuts.cxx:1285 AliConvEventCuts.cxx:1286 AliConvEventCuts.cxx:1287 AliConvEventCuts.cxx:1288 AliConvEventCuts.cxx:1289 AliConvEventCuts.cxx:1290 AliConvEventCuts.cxx:1291 AliConvEventCuts.cxx:1292 AliConvEventCuts.cxx:1293 AliConvEventCuts.cxx:1294 AliConvEventCuts.cxx:1295 AliConvEventCuts.cxx:1296 AliConvEventCuts.cxx:1297 AliConvEventCuts.cxx:1298 AliConvEventCuts.cxx:1299 AliConvEventCuts.cxx:1300 AliConvEventCuts.cxx:1301 AliConvEventCuts.cxx:1302 AliConvEventCuts.cxx:1303 AliConvEventCuts.cxx:1304 AliConvEventCuts.cxx:1305 AliConvEventCuts.cxx:1306 AliConvEventCuts.cxx:1307 AliConvEventCuts.cxx:1308 AliConvEventCuts.cxx:1309 AliConvEventCuts.cxx:1310 AliConvEventCuts.cxx:1311 AliConvEventCuts.cxx:1312 AliConvEventCuts.cxx:1313 AliConvEventCuts.cxx:1314 AliConvEventCuts.cxx:1315 AliConvEventCuts.cxx:1316 AliConvEventCuts.cxx:1317 AliConvEventCuts.cxx:1318 AliConvEventCuts.cxx:1319 AliConvEventCuts.cxx:1320 AliConvEventCuts.cxx:1321 AliConvEventCuts.cxx:1322 AliConvEventCuts.cxx:1323 AliConvEventCuts.cxx:1324 AliConvEventCuts.cxx:1325 AliConvEventCuts.cxx:1326 AliConvEventCuts.cxx:1327 AliConvEventCuts.cxx:1328 AliConvEventCuts.cxx:1329 AliConvEventCuts.cxx:1330 AliConvEventCuts.cxx:1331 AliConvEventCuts.cxx:1332 AliConvEventCuts.cxx:1333 AliConvEventCuts.cxx:1334 AliConvEventCuts.cxx:1335 AliConvEventCuts.cxx:1336 AliConvEventCuts.cxx:1337 AliConvEventCuts.cxx:1338 AliConvEventCuts.cxx:1339 AliConvEventCuts.cxx:1340 AliConvEventCuts.cxx:1341 AliConvEventCuts.cxx:1342 AliConvEventCuts.cxx:1343 AliConvEventCuts.cxx:1344 AliConvEventCuts.cxx:1345 AliConvEventCuts.cxx:1346 AliConvEventCuts.cxx:1347 AliConvEventCuts.cxx:1348 AliConvEventCuts.cxx:1349 AliConvEventCuts.cxx:1350 AliConvEventCuts.cxx:1351 AliConvEventCuts.cxx:1352 AliConvEventCuts.cxx:1353 AliConvEventCuts.cxx:1354 AliConvEventCuts.cxx:1355 AliConvEventCuts.cxx:1356 AliConvEventCuts.cxx:1357 AliConvEventCuts.cxx:1358 AliConvEventCuts.cxx:1359 AliConvEventCuts.cxx:1360 AliConvEventCuts.cxx:1361 AliConvEventCuts.cxx:1362 AliConvEventCuts.cxx:1363 AliConvEventCuts.cxx:1364 AliConvEventCuts.cxx:1365 AliConvEventCuts.cxx:1366 AliConvEventCuts.cxx:1367 AliConvEventCuts.cxx:1368 AliConvEventCuts.cxx:1369 AliConvEventCuts.cxx:1370 AliConvEventCuts.cxx:1371 AliConvEventCuts.cxx:1372 AliConvEventCuts.cxx:1373 AliConvEventCuts.cxx:1374 AliConvEventCuts.cxx:1375 AliConvEventCuts.cxx:1376 AliConvEventCuts.cxx:1377 AliConvEventCuts.cxx:1378 AliConvEventCuts.cxx:1379 AliConvEventCuts.cxx:1380 AliConvEventCuts.cxx:1381 AliConvEventCuts.cxx:1382 AliConvEventCuts.cxx:1383 AliConvEventCuts.cxx:1384 AliConvEventCuts.cxx:1385 AliConvEventCuts.cxx:1386 AliConvEventCuts.cxx:1387 AliConvEventCuts.cxx:1388 AliConvEventCuts.cxx:1389 AliConvEventCuts.cxx:1390 AliConvEventCuts.cxx:1391 AliConvEventCuts.cxx:1392 AliConvEventCuts.cxx:1393 AliConvEventCuts.cxx:1394 AliConvEventCuts.cxx:1395 AliConvEventCuts.cxx:1396 AliConvEventCuts.cxx:1397 AliConvEventCuts.cxx:1398 AliConvEventCuts.cxx:1399 AliConvEventCuts.cxx:1400 AliConvEventCuts.cxx:1401 AliConvEventCuts.cxx:1402 AliConvEventCuts.cxx:1403 AliConvEventCuts.cxx:1404 AliConvEventCuts.cxx:1405 AliConvEventCuts.cxx:1406 AliConvEventCuts.cxx:1407 AliConvEventCuts.cxx:1408 AliConvEventCuts.cxx:1409 AliConvEventCuts.cxx:1410 AliConvEventCuts.cxx:1411 AliConvEventCuts.cxx:1412 AliConvEventCuts.cxx:1413 AliConvEventCuts.cxx:1414 AliConvEventCuts.cxx:1415 AliConvEventCuts.cxx:1416 AliConvEventCuts.cxx:1417 AliConvEventCuts.cxx:1418 AliConvEventCuts.cxx:1419 AliConvEventCuts.cxx:1420 AliConvEventCuts.cxx:1421 AliConvEventCuts.cxx:1422 AliConvEventCuts.cxx:1423 AliConvEventCuts.cxx:1424 AliConvEventCuts.cxx:1425 AliConvEventCuts.cxx:1426 AliConvEventCuts.cxx:1427 AliConvEventCuts.cxx:1428 AliConvEventCuts.cxx:1429 AliConvEventCuts.cxx:1430 AliConvEventCuts.cxx:1431 AliConvEventCuts.cxx:1432 AliConvEventCuts.cxx:1433 AliConvEventCuts.cxx:1434 AliConvEventCuts.cxx:1435 AliConvEventCuts.cxx:1436 AliConvEventCuts.cxx:1437 AliConvEventCuts.cxx:1438 AliConvEventCuts.cxx:1439 AliConvEventCuts.cxx:1440 AliConvEventCuts.cxx:1441 AliConvEventCuts.cxx:1442 AliConvEventCuts.cxx:1443 AliConvEventCuts.cxx:1444 AliConvEventCuts.cxx:1445 AliConvEventCuts.cxx:1446 AliConvEventCuts.cxx:1447 AliConvEventCuts.cxx:1448 AliConvEventCuts.cxx:1449 AliConvEventCuts.cxx:1450 AliConvEventCuts.cxx:1451 AliConvEventCuts.cxx:1452 AliConvEventCuts.cxx:1453 AliConvEventCuts.cxx:1454 AliConvEventCuts.cxx:1455 AliConvEventCuts.cxx:1456 AliConvEventCuts.cxx:1457 AliConvEventCuts.cxx:1458 AliConvEventCuts.cxx:1459 AliConvEventCuts.cxx:1460 AliConvEventCuts.cxx:1461 AliConvEventCuts.cxx:1462 AliConvEventCuts.cxx:1463 AliConvEventCuts.cxx:1464 AliConvEventCuts.cxx:1465 AliConvEventCuts.cxx:1466 AliConvEventCuts.cxx:1467 AliConvEventCuts.cxx:1468 AliConvEventCuts.cxx:1469 AliConvEventCuts.cxx:1470 AliConvEventCuts.cxx:1471 AliConvEventCuts.cxx:1472 AliConvEventCuts.cxx:1473 AliConvEventCuts.cxx:1474 AliConvEventCuts.cxx:1475 AliConvEventCuts.cxx:1476 AliConvEventCuts.cxx:1477 AliConvEventCuts.cxx:1478 AliConvEventCuts.cxx:1479 AliConvEventCuts.cxx:1480 AliConvEventCuts.cxx:1481 AliConvEventCuts.cxx:1482 AliConvEventCuts.cxx:1483 AliConvEventCuts.cxx:1484 AliConvEventCuts.cxx:1485 AliConvEventCuts.cxx:1486 AliConvEventCuts.cxx:1487 AliConvEventCuts.cxx:1488 AliConvEventCuts.cxx:1489 AliConvEventCuts.cxx:1490 AliConvEventCuts.cxx:1491 AliConvEventCuts.cxx:1492 AliConvEventCuts.cxx:1493 AliConvEventCuts.cxx:1494 AliConvEventCuts.cxx:1495 AliConvEventCuts.cxx:1496 AliConvEventCuts.cxx:1497 AliConvEventCuts.cxx:1498 AliConvEventCuts.cxx:1499 AliConvEventCuts.cxx:1500 AliConvEventCuts.cxx:1501 AliConvEventCuts.cxx:1502 AliConvEventCuts.cxx:1503 AliConvEventCuts.cxx:1504 AliConvEventCuts.cxx:1505 AliConvEventCuts.cxx:1506 AliConvEventCuts.cxx:1507 AliConvEventCuts.cxx:1508 AliConvEventCuts.cxx:1509 AliConvEventCuts.cxx:1510 AliConvEventCuts.cxx:1511 AliConvEventCuts.cxx:1512 AliConvEventCuts.cxx:1513 AliConvEventCuts.cxx:1514 AliConvEventCuts.cxx:1515 AliConvEventCuts.cxx:1516 AliConvEventCuts.cxx:1517 AliConvEventCuts.cxx:1518 AliConvEventCuts.cxx:1519 AliConvEventCuts.cxx:1520 AliConvEventCuts.cxx:1521 AliConvEventCuts.cxx:1522 AliConvEventCuts.cxx:1523 AliConvEventCuts.cxx:1524 AliConvEventCuts.cxx:1525 AliConvEventCuts.cxx:1526 AliConvEventCuts.cxx:1527 AliConvEventCuts.cxx:1528 AliConvEventCuts.cxx:1529 AliConvEventCuts.cxx:1530 AliConvEventCuts.cxx:1531 AliConvEventCuts.cxx:1532 AliConvEventCuts.cxx:1533 AliConvEventCuts.cxx:1534 AliConvEventCuts.cxx:1535 AliConvEventCuts.cxx:1536 AliConvEventCuts.cxx:1537 AliConvEventCuts.cxx:1538 AliConvEventCuts.cxx:1539 AliConvEventCuts.cxx:1540 AliConvEventCuts.cxx:1541 AliConvEventCuts.cxx:1542 AliConvEventCuts.cxx:1543 AliConvEventCuts.cxx:1544 AliConvEventCuts.cxx:1545 AliConvEventCuts.cxx:1546 AliConvEventCuts.cxx:1547 AliConvEventCuts.cxx:1548 AliConvEventCuts.cxx:1549 AliConvEventCuts.cxx:1550 AliConvEventCuts.cxx:1551 AliConvEventCuts.cxx:1552 AliConvEventCuts.cxx:1553 AliConvEventCuts.cxx:1554 AliConvEventCuts.cxx:1555 AliConvEventCuts.cxx:1556 AliConvEventCuts.cxx:1557 AliConvEventCuts.cxx:1558 AliConvEventCuts.cxx:1559 AliConvEventCuts.cxx:1560 AliConvEventCuts.cxx:1561 AliConvEventCuts.cxx:1562 AliConvEventCuts.cxx:1563 AliConvEventCuts.cxx:1564 AliConvEventCuts.cxx:1565 AliConvEventCuts.cxx:1566 AliConvEventCuts.cxx:1567 AliConvEventCuts.cxx:1568 AliConvEventCuts.cxx:1569 AliConvEventCuts.cxx:1570 AliConvEventCuts.cxx:1571 AliConvEventCuts.cxx:1572 AliConvEventCuts.cxx:1573 AliConvEventCuts.cxx:1574 AliConvEventCuts.cxx:1575 AliConvEventCuts.cxx:1576 AliConvEventCuts.cxx:1577 AliConvEventCuts.cxx:1578 AliConvEventCuts.cxx:1579 AliConvEventCuts.cxx:1580 AliConvEventCuts.cxx:1581 AliConvEventCuts.cxx:1582 AliConvEventCuts.cxx:1583 AliConvEventCuts.cxx:1584 AliConvEventCuts.cxx:1585 AliConvEventCuts.cxx:1586 AliConvEventCuts.cxx:1587 AliConvEventCuts.cxx:1588 AliConvEventCuts.cxx:1589 AliConvEventCuts.cxx:1590 AliConvEventCuts.cxx:1591 AliConvEventCuts.cxx:1592 AliConvEventCuts.cxx:1593 AliConvEventCuts.cxx:1594 AliConvEventCuts.cxx:1595 AliConvEventCuts.cxx:1596 AliConvEventCuts.cxx:1597 AliConvEventCuts.cxx:1598 AliConvEventCuts.cxx:1599 AliConvEventCuts.cxx:1600 AliConvEventCuts.cxx:1601 AliConvEventCuts.cxx:1602 AliConvEventCuts.cxx:1603 AliConvEventCuts.cxx:1604 AliConvEventCuts.cxx:1605 AliConvEventCuts.cxx:1606 AliConvEventCuts.cxx:1607 AliConvEventCuts.cxx:1608 AliConvEventCuts.cxx:1609 AliConvEventCuts.cxx:1610 AliConvEventCuts.cxx:1611 AliConvEventCuts.cxx:1612 AliConvEventCuts.cxx:1613 AliConvEventCuts.cxx:1614 AliConvEventCuts.cxx:1615 AliConvEventCuts.cxx:1616 AliConvEventCuts.cxx:1617 AliConvEventCuts.cxx:1618 AliConvEventCuts.cxx:1619 AliConvEventCuts.cxx:1620 AliConvEventCuts.cxx:1621 AliConvEventCuts.cxx:1622 AliConvEventCuts.cxx:1623 AliConvEventCuts.cxx:1624 AliConvEventCuts.cxx:1625 AliConvEventCuts.cxx:1626 AliConvEventCuts.cxx:1627 AliConvEventCuts.cxx:1628 AliConvEventCuts.cxx:1629 AliConvEventCuts.cxx:1630 AliConvEventCuts.cxx:1631 AliConvEventCuts.cxx:1632 AliConvEventCuts.cxx:1633 AliConvEventCuts.cxx:1634 AliConvEventCuts.cxx:1635 AliConvEventCuts.cxx:1636 AliConvEventCuts.cxx:1637 AliConvEventCuts.cxx:1638 AliConvEventCuts.cxx:1639 AliConvEventCuts.cxx:1640 AliConvEventCuts.cxx:1641 AliConvEventCuts.cxx:1642 AliConvEventCuts.cxx:1643 AliConvEventCuts.cxx:1644 AliConvEventCuts.cxx:1645 AliConvEventCuts.cxx:1646 AliConvEventCuts.cxx:1647 AliConvEventCuts.cxx:1648 AliConvEventCuts.cxx:1649 AliConvEventCuts.cxx:1650 AliConvEventCuts.cxx:1651 AliConvEventCuts.cxx:1652 AliConvEventCuts.cxx:1653 AliConvEventCuts.cxx:1654 AliConvEventCuts.cxx:1655 AliConvEventCuts.cxx:1656 AliConvEventCuts.cxx:1657 AliConvEventCuts.cxx:1658 AliConvEventCuts.cxx:1659 AliConvEventCuts.cxx:1660 AliConvEventCuts.cxx:1661 AliConvEventCuts.cxx:1662 AliConvEventCuts.cxx:1663 AliConvEventCuts.cxx:1664 AliConvEventCuts.cxx:1665 AliConvEventCuts.cxx:1666 AliConvEventCuts.cxx:1667 AliConvEventCuts.cxx:1668 AliConvEventCuts.cxx:1669 AliConvEventCuts.cxx:1670 AliConvEventCuts.cxx:1671 AliConvEventCuts.cxx:1672 AliConvEventCuts.cxx:1673 AliConvEventCuts.cxx:1674 AliConvEventCuts.cxx:1675 AliConvEventCuts.cxx:1676 AliConvEventCuts.cxx:1677 AliConvEventCuts.cxx:1678 AliConvEventCuts.cxx:1679 AliConvEventCuts.cxx:1680 AliConvEventCuts.cxx:1681 AliConvEventCuts.cxx:1682 AliConvEventCuts.cxx:1683 AliConvEventCuts.cxx:1684 AliConvEventCuts.cxx:1685 AliConvEventCuts.cxx:1686 AliConvEventCuts.cxx:1687 AliConvEventCuts.cxx:1688 AliConvEventCuts.cxx:1689 AliConvEventCuts.cxx:1690 AliConvEventCuts.cxx:1691 AliConvEventCuts.cxx:1692 AliConvEventCuts.cxx:1693 AliConvEventCuts.cxx:1694 AliConvEventCuts.cxx:1695 AliConvEventCuts.cxx:1696 AliConvEventCuts.cxx:1697 AliConvEventCuts.cxx:1698 AliConvEventCuts.cxx:1699 AliConvEventCuts.cxx:1700 AliConvEventCuts.cxx:1701 AliConvEventCuts.cxx:1702 AliConvEventCuts.cxx:1703 AliConvEventCuts.cxx:1704 AliConvEventCuts.cxx:1705 AliConvEventCuts.cxx:1706 AliConvEventCuts.cxx:1707 AliConvEventCuts.cxx:1708 AliConvEventCuts.cxx:1709 AliConvEventCuts.cxx:1710 AliConvEventCuts.cxx:1711 AliConvEventCuts.cxx:1712 AliConvEventCuts.cxx:1713 AliConvEventCuts.cxx:1714 AliConvEventCuts.cxx:1715 AliConvEventCuts.cxx:1716 AliConvEventCuts.cxx:1717 AliConvEventCuts.cxx:1718 AliConvEventCuts.cxx:1719 AliConvEventCuts.cxx:1720 AliConvEventCuts.cxx:1721 AliConvEventCuts.cxx:1722 AliConvEventCuts.cxx:1723 AliConvEventCuts.cxx:1724 AliConvEventCuts.cxx:1725 AliConvEventCuts.cxx:1726 AliConvEventCuts.cxx:1727 AliConvEventCuts.cxx:1728 AliConvEventCuts.cxx:1729 AliConvEventCuts.cxx:1730 AliConvEventCuts.cxx:1731 AliConvEventCuts.cxx:1732 AliConvEventCuts.cxx:1733 AliConvEventCuts.cxx:1734 AliConvEventCuts.cxx:1735 AliConvEventCuts.cxx:1736 AliConvEventCuts.cxx:1737 AliConvEventCuts.cxx:1738 AliConvEventCuts.cxx:1739 AliConvEventCuts.cxx:1740 AliConvEventCuts.cxx:1741 AliConvEventCuts.cxx:1742 AliConvEventCuts.cxx:1743 AliConvEventCuts.cxx:1744 AliConvEventCuts.cxx:1745 AliConvEventCuts.cxx:1746 AliConvEventCuts.cxx:1747 AliConvEventCuts.cxx:1748 AliConvEventCuts.cxx:1749 AliConvEventCuts.cxx:1750 AliConvEventCuts.cxx:1751 AliConvEventCuts.cxx:1752 AliConvEventCuts.cxx:1753 AliConvEventCuts.cxx:1754 AliConvEventCuts.cxx:1755 AliConvEventCuts.cxx:1756 AliConvEventCuts.cxx:1757 AliConvEventCuts.cxx:1758 AliConvEventCuts.cxx:1759 AliConvEventCuts.cxx:1760 AliConvEventCuts.cxx:1761 AliConvEventCuts.cxx:1762 AliConvEventCuts.cxx:1763 AliConvEventCuts.cxx:1764 AliConvEventCuts.cxx:1765 AliConvEventCuts.cxx:1766 AliConvEventCuts.cxx:1767 AliConvEventCuts.cxx:1768 AliConvEventCuts.cxx:1769 AliConvEventCuts.cxx:1770 AliConvEventCuts.cxx:1771 AliConvEventCuts.cxx:1772 AliConvEventCuts.cxx:1773 AliConvEventCuts.cxx:1774 AliConvEventCuts.cxx:1775 AliConvEventCuts.cxx:1776 AliConvEventCuts.cxx:1777 AliConvEventCuts.cxx:1778 AliConvEventCuts.cxx:1779 AliConvEventCuts.cxx:1780 AliConvEventCuts.cxx:1781 AliConvEventCuts.cxx:1782 AliConvEventCuts.cxx:1783 AliConvEventCuts.cxx:1784 AliConvEventCuts.cxx:1785 AliConvEventCuts.cxx:1786 AliConvEventCuts.cxx:1787 AliConvEventCuts.cxx:1788 AliConvEventCuts.cxx:1789 AliConvEventCuts.cxx:1790 AliConvEventCuts.cxx:1791 AliConvEventCuts.cxx:1792 AliConvEventCuts.cxx:1793 AliConvEventCuts.cxx:1794 AliConvEventCuts.cxx:1795 AliConvEventCuts.cxx:1796 AliConvEventCuts.cxx:1797 AliConvEventCuts.cxx:1798 AliConvEventCuts.cxx:1799 AliConvEventCuts.cxx:1800 AliConvEventCuts.cxx:1801 AliConvEventCuts.cxx:1802 AliConvEventCuts.cxx:1803 AliConvEventCuts.cxx:1804 AliConvEventCuts.cxx:1805 AliConvEventCuts.cxx:1806 AliConvEventCuts.cxx:1807 AliConvEventCuts.cxx:1808 AliConvEventCuts.cxx:1809 AliConvEventCuts.cxx:1810 AliConvEventCuts.cxx:1811 AliConvEventCuts.cxx:1812 AliConvEventCuts.cxx:1813 AliConvEventCuts.cxx:1814 AliConvEventCuts.cxx:1815 AliConvEventCuts.cxx:1816 AliConvEventCuts.cxx:1817 AliConvEventCuts.cxx:1818 AliConvEventCuts.cxx:1819 AliConvEventCuts.cxx:1820 AliConvEventCuts.cxx:1821 AliConvEventCuts.cxx:1822 AliConvEventCuts.cxx:1823 AliConvEventCuts.cxx:1824 AliConvEventCuts.cxx:1825 AliConvEventCuts.cxx:1826 AliConvEventCuts.cxx:1827 AliConvEventCuts.cxx:1828 AliConvEventCuts.cxx:1829 AliConvEventCuts.cxx:1830 AliConvEventCuts.cxx:1831 AliConvEventCuts.cxx:1832 AliConvEventCuts.cxx:1833 AliConvEventCuts.cxx:1834 AliConvEventCuts.cxx:1835 AliConvEventCuts.cxx:1836 AliConvEventCuts.cxx:1837 AliConvEventCuts.cxx:1838 AliConvEventCuts.cxx:1839 AliConvEventCuts.cxx:1840 AliConvEventCuts.cxx:1841 AliConvEventCuts.cxx:1842 AliConvEventCuts.cxx:1843 AliConvEventCuts.cxx:1844 AliConvEventCuts.cxx:1845 AliConvEventCuts.cxx:1846 AliConvEventCuts.cxx:1847 AliConvEventCuts.cxx:1848 AliConvEventCuts.cxx:1849 AliConvEventCuts.cxx:1850 AliConvEventCuts.cxx:1851 AliConvEventCuts.cxx:1852 AliConvEventCuts.cxx:1853 AliConvEventCuts.cxx:1854 AliConvEventCuts.cxx:1855 AliConvEventCuts.cxx:1856 AliConvEventCuts.cxx:1857 AliConvEventCuts.cxx:1858 AliConvEventCuts.cxx:1859 AliConvEventCuts.cxx:1860 AliConvEventCuts.cxx:1861 AliConvEventCuts.cxx:1862 AliConvEventCuts.cxx:1863 AliConvEventCuts.cxx:1864 AliConvEventCuts.cxx:1865 AliConvEventCuts.cxx:1866 AliConvEventCuts.cxx:1867 AliConvEventCuts.cxx:1868 AliConvEventCuts.cxx:1869 AliConvEventCuts.cxx:1870 AliConvEventCuts.cxx:1871 AliConvEventCuts.cxx:1872 AliConvEventCuts.cxx:1873 AliConvEventCuts.cxx:1874 AliConvEventCuts.cxx:1875 AliConvEventCuts.cxx:1876 AliConvEventCuts.cxx:1877 AliConvEventCuts.cxx:1878 AliConvEventCuts.cxx:1879 AliConvEventCuts.cxx:1880 AliConvEventCuts.cxx:1881 AliConvEventCuts.cxx:1882 AliConvEventCuts.cxx:1883 AliConvEventCuts.cxx:1884 AliConvEventCuts.cxx:1885 AliConvEventCuts.cxx:1886 AliConvEventCuts.cxx:1887 AliConvEventCuts.cxx:1888 AliConvEventCuts.cxx:1889 AliConvEventCuts.cxx:1890 AliConvEventCuts.cxx:1891 AliConvEventCuts.cxx:1892 AliConvEventCuts.cxx:1893 AliConvEventCuts.cxx:1894 AliConvEventCuts.cxx:1895 AliConvEventCuts.cxx:1896 AliConvEventCuts.cxx:1897 AliConvEventCuts.cxx:1898 AliConvEventCuts.cxx:1899 AliConvEventCuts.cxx:1900 AliConvEventCuts.cxx:1901 AliConvEventCuts.cxx:1902 AliConvEventCuts.cxx:1903 AliConvEventCuts.cxx:1904 AliConvEventCuts.cxx:1905 AliConvEventCuts.cxx:1906 AliConvEventCuts.cxx:1907 AliConvEventCuts.cxx:1908 AliConvEventCuts.cxx:1909 AliConvEventCuts.cxx:1910 AliConvEventCuts.cxx:1911 AliConvEventCuts.cxx:1912 AliConvEventCuts.cxx:1913 AliConvEventCuts.cxx:1914 AliConvEventCuts.cxx:1915 AliConvEventCuts.cxx:1916 AliConvEventCuts.cxx:1917 AliConvEventCuts.cxx:1918 AliConvEventCuts.cxx:1919 AliConvEventCuts.cxx:1920 AliConvEventCuts.cxx:1921 AliConvEventCuts.cxx:1922 AliConvEventCuts.cxx:1923 AliConvEventCuts.cxx:1924 AliConvEventCuts.cxx:1925 AliConvEventCuts.cxx:1926 AliConvEventCuts.cxx:1927 AliConvEventCuts.cxx:1928 AliConvEventCuts.cxx:1929 AliConvEventCuts.cxx:1930 AliConvEventCuts.cxx:1931 AliConvEventCuts.cxx:1932 AliConvEventCuts.cxx:1933 AliConvEventCuts.cxx:1934 AliConvEventCuts.cxx:1935 AliConvEventCuts.cxx:1936 AliConvEventCuts.cxx:1937 AliConvEventCuts.cxx:1938 AliConvEventCuts.cxx:1939 AliConvEventCuts.cxx:1940 AliConvEventCuts.cxx:1941 AliConvEventCuts.cxx:1942 AliConvEventCuts.cxx:1943 AliConvEventCuts.cxx:1944 AliConvEventCuts.cxx:1945 AliConvEventCuts.cxx:1946 AliConvEventCuts.cxx:1947 AliConvEventCuts.cxx:1948 AliConvEventCuts.cxx:1949 AliConvEventCuts.cxx:1950 AliConvEventCuts.cxx:1951 AliConvEventCuts.cxx:1952 AliConvEventCuts.cxx:1953 AliConvEventCuts.cxx:1954 AliConvEventCuts.cxx:1955 AliConvEventCuts.cxx:1956 AliConvEventCuts.cxx:1957 AliConvEventCuts.cxx:1958 AliConvEventCuts.cxx:1959 AliConvEventCuts.cxx:1960 AliConvEventCuts.cxx:1961 AliConvEventCuts.cxx:1962 AliConvEventCuts.cxx:1963 AliConvEventCuts.cxx:1964 AliConvEventCuts.cxx:1965 AliConvEventCuts.cxx:1966 AliConvEventCuts.cxx:1967 AliConvEventCuts.cxx:1968 AliConvEventCuts.cxx:1969 AliConvEventCuts.cxx:1970 AliConvEventCuts.cxx:1971 AliConvEventCuts.cxx:1972 AliConvEventCuts.cxx:1973 AliConvEventCuts.cxx:1974 AliConvEventCuts.cxx:1975 AliConvEventCuts.cxx:1976 AliConvEventCuts.cxx:1977 AliConvEventCuts.cxx:1978 AliConvEventCuts.cxx:1979 AliConvEventCuts.cxx:1980 AliConvEventCuts.cxx:1981 AliConvEventCuts.cxx:1982 AliConvEventCuts.cxx:1983 AliConvEventCuts.cxx:1984 AliConvEventCuts.cxx:1985 AliConvEventCuts.cxx:1986 AliConvEventCuts.cxx:1987 AliConvEventCuts.cxx:1988 AliConvEventCuts.cxx:1989 AliConvEventCuts.cxx:1990 AliConvEventCuts.cxx:1991 AliConvEventCuts.cxx:1992 AliConvEventCuts.cxx:1993 AliConvEventCuts.cxx:1994 AliConvEventCuts.cxx:1995 AliConvEventCuts.cxx:1996 AliConvEventCuts.cxx:1997 AliConvEventCuts.cxx:1998 AliConvEventCuts.cxx:1999 AliConvEventCuts.cxx:2000 AliConvEventCuts.cxx:2001 AliConvEventCuts.cxx:2002 AliConvEventCuts.cxx:2003 AliConvEventCuts.cxx:2004 AliConvEventCuts.cxx:2005 AliConvEventCuts.cxx:2006 AliConvEventCuts.cxx:2007 AliConvEventCuts.cxx:2008 AliConvEventCuts.cxx:2009 AliConvEventCuts.cxx:2010 AliConvEventCuts.cxx:2011 AliConvEventCuts.cxx:2012 AliConvEventCuts.cxx:2013 AliConvEventCuts.cxx:2014 AliConvEventCuts.cxx:2015 AliConvEventCuts.cxx:2016 AliConvEventCuts.cxx:2017 AliConvEventCuts.cxx:2018 AliConvEventCuts.cxx:2019 AliConvEventCuts.cxx:2020 AliConvEventCuts.cxx:2021 AliConvEventCuts.cxx:2022 AliConvEventCuts.cxx:2023 AliConvEventCuts.cxx:2024 AliConvEventCuts.cxx:2025 AliConvEventCuts.cxx:2026 AliConvEventCuts.cxx:2027 AliConvEventCuts.cxx:2028 AliConvEventCuts.cxx:2029 AliConvEventCuts.cxx:2030 AliConvEventCuts.cxx:2031 AliConvEventCuts.cxx:2032 AliConvEventCuts.cxx:2033 AliConvEventCuts.cxx:2034 AliConvEventCuts.cxx:2035 AliConvEventCuts.cxx:2036 AliConvEventCuts.cxx:2037 AliConvEventCuts.cxx:2038 AliConvEventCuts.cxx:2039 AliConvEventCuts.cxx:2040 AliConvEventCuts.cxx:2041 AliConvEventCuts.cxx:2042 AliConvEventCuts.cxx:2043 AliConvEventCuts.cxx:2044 AliConvEventCuts.cxx:2045 AliConvEventCuts.cxx:2046 AliConvEventCuts.cxx:2047 AliConvEventCuts.cxx:2048 AliConvEventCuts.cxx:2049 AliConvEventCuts.cxx:2050 AliConvEventCuts.cxx:2051 AliConvEventCuts.cxx:2052 AliConvEventCuts.cxx:2053 AliConvEventCuts.cxx:2054 AliConvEventCuts.cxx:2055 AliConvEventCuts.cxx:2056 AliConvEventCuts.cxx:2057 AliConvEventCuts.cxx:2058 AliConvEventCuts.cxx:2059 AliConvEventCuts.cxx:2060 AliConvEventCuts.cxx:2061 AliConvEventCuts.cxx:2062 AliConvEventCuts.cxx:2063 AliConvEventCuts.cxx:2064 AliConvEventCuts.cxx:2065 AliConvEventCuts.cxx:2066 AliConvEventCuts.cxx:2067 AliConvEventCuts.cxx:2068 AliConvEventCuts.cxx:2069 AliConvEventCuts.cxx:2070 AliConvEventCuts.cxx:2071 AliConvEventCuts.cxx:2072 AliConvEventCuts.cxx:2073 AliConvEventCuts.cxx:2074 AliConvEventCuts.cxx:2075 AliConvEventCuts.cxx:2076 AliConvEventCuts.cxx:2077 AliConvEventCuts.cxx:2078 AliConvEventCuts.cxx:2079 AliConvEventCuts.cxx:2080 AliConvEventCuts.cxx:2081 AliConvEventCuts.cxx:2082 AliConvEventCuts.cxx:2083 AliConvEventCuts.cxx:2084 AliConvEventCuts.cxx:2085 AliConvEventCuts.cxx:2086 AliConvEventCuts.cxx:2087 AliConvEventCuts.cxx:2088 AliConvEventCuts.cxx:2089 AliConvEventCuts.cxx:2090 AliConvEventCuts.cxx:2091 AliConvEventCuts.cxx:2092 AliConvEventCuts.cxx:2093 AliConvEventCuts.cxx:2094 AliConvEventCuts.cxx:2095 AliConvEventCuts.cxx:2096 AliConvEventCuts.cxx:2097 AliConvEventCuts.cxx:2098 AliConvEventCuts.cxx:2099 AliConvEventCuts.cxx:2100 AliConvEventCuts.cxx:2101 AliConvEventCuts.cxx:2102 AliConvEventCuts.cxx:2103 AliConvEventCuts.cxx:2104 AliConvEventCuts.cxx:2105 AliConvEventCuts.cxx:2106 AliConvEventCuts.cxx:2107 AliConvEventCuts.cxx:2108 AliConvEventCuts.cxx:2109 AliConvEventCuts.cxx:2110 AliConvEventCuts.cxx:2111 AliConvEventCuts.cxx:2112 AliConvEventCuts.cxx:2113 AliConvEventCuts.cxx:2114 AliConvEventCuts.cxx:2115 AliConvEventCuts.cxx:2116 AliConvEventCuts.cxx:2117 AliConvEventCuts.cxx:2118 AliConvEventCuts.cxx:2119 AliConvEventCuts.cxx:2120 AliConvEventCuts.cxx:2121 AliConvEventCuts.cxx:2122 AliConvEventCuts.cxx:2123 AliConvEventCuts.cxx:2124 AliConvEventCuts.cxx:2125 AliConvEventCuts.cxx:2126 AliConvEventCuts.cxx:2127 AliConvEventCuts.cxx:2128 AliConvEventCuts.cxx:2129 AliConvEventCuts.cxx:2130 AliConvEventCuts.cxx:2131 AliConvEventCuts.cxx:2132 AliConvEventCuts.cxx:2133 AliConvEventCuts.cxx:2134 AliConvEventCuts.cxx:2135 AliConvEventCuts.cxx:2136 AliConvEventCuts.cxx:2137 AliConvEventCuts.cxx:2138 AliConvEventCuts.cxx:2139 AliConvEventCuts.cxx:2140 AliConvEventCuts.cxx:2141 AliConvEventCuts.cxx:2142 AliConvEventCuts.cxx:2143 AliConvEventCuts.cxx:2144 AliConvEventCuts.cxx:2145 AliConvEventCuts.cxx:2146 AliConvEventCuts.cxx:2147 AliConvEventCuts.cxx:2148 AliConvEventCuts.cxx:2149 AliConvEventCuts.cxx:2150 AliConvEventCuts.cxx:2151 AliConvEventCuts.cxx:2152 AliConvEventCuts.cxx:2153 AliConvEventCuts.cxx:2154 AliConvEventCuts.cxx:2155 AliConvEventCuts.cxx:2156 AliConvEventCuts.cxx:2157 AliConvEventCuts.cxx:2158 AliConvEventCuts.cxx:2159 AliConvEventCuts.cxx:2160 AliConvEventCuts.cxx:2161 AliConvEventCuts.cxx:2162 AliConvEventCuts.cxx:2163 AliConvEventCuts.cxx:2164 AliConvEventCuts.cxx:2165 AliConvEventCuts.cxx:2166 AliConvEventCuts.cxx:2167 AliConvEventCuts.cxx:2168 AliConvEventCuts.cxx:2169 AliConvEventCuts.cxx:2170 AliConvEventCuts.cxx:2171 AliConvEventCuts.cxx:2172 AliConvEventCuts.cxx:2173 AliConvEventCuts.cxx:2174 AliConvEventCuts.cxx:2175 AliConvEventCuts.cxx:2176 AliConvEventCuts.cxx:2177 AliConvEventCuts.cxx:2178 AliConvEventCuts.cxx:2179 AliConvEventCuts.cxx:2180 AliConvEventCuts.cxx:2181 AliConvEventCuts.cxx:2182 AliConvEventCuts.cxx:2183 AliConvEventCuts.cxx:2184 AliConvEventCuts.cxx:2185 AliConvEventCuts.cxx:2186 AliConvEventCuts.cxx:2187 AliConvEventCuts.cxx:2188 AliConvEventCuts.cxx:2189 AliConvEventCuts.cxx:2190 AliConvEventCuts.cxx:2191 AliConvEventCuts.cxx:2192 AliConvEventCuts.cxx:2193 AliConvEventCuts.cxx:2194 AliConvEventCuts.cxx:2195 AliConvEventCuts.cxx:2196 AliConvEventCuts.cxx:2197 AliConvEventCuts.cxx:2198 AliConvEventCuts.cxx:2199 AliConvEventCuts.cxx:2200 AliConvEventCuts.cxx:2201 AliConvEventCuts.cxx:2202 AliConvEventCuts.cxx:2203 AliConvEventCuts.cxx:2204 AliConvEventCuts.cxx:2205 AliConvEventCuts.cxx:2206 AliConvEventCuts.cxx:2207 AliConvEventCuts.cxx:2208 AliConvEventCuts.cxx:2209 AliConvEventCuts.cxx:2210 AliConvEventCuts.cxx:2211 AliConvEventCuts.cxx:2212 AliConvEventCuts.cxx:2213 AliConvEventCuts.cxx:2214 AliConvEventCuts.cxx:2215 AliConvEventCuts.cxx:2216 AliConvEventCuts.cxx:2217 AliConvEventCuts.cxx:2218 AliConvEventCuts.cxx:2219 AliConvEventCuts.cxx:2220 AliConvEventCuts.cxx:2221 AliConvEventCuts.cxx:2222 AliConvEventCuts.cxx:2223 AliConvEventCuts.cxx:2224 AliConvEventCuts.cxx:2225 AliConvEventCuts.cxx:2226 AliConvEventCuts.cxx:2227 AliConvEventCuts.cxx:2228 AliConvEventCuts.cxx:2229 AliConvEventCuts.cxx:2230 AliConvEventCuts.cxx:2231 AliConvEventCuts.cxx:2232 AliConvEventCuts.cxx:2233 AliConvEventCuts.cxx:2234 AliConvEventCuts.cxx:2235 AliConvEventCuts.cxx:2236 AliConvEventCuts.cxx:2237 AliConvEventCuts.cxx:2238 AliConvEventCuts.cxx:2239 AliConvEventCuts.cxx:2240 AliConvEventCuts.cxx:2241 AliConvEventCuts.cxx:2242 AliConvEventCuts.cxx:2243 AliConvEventCuts.cxx:2244 AliConvEventCuts.cxx:2245 AliConvEventCuts.cxx:2246 AliConvEventCuts.cxx:2247 AliConvEventCuts.cxx:2248 AliConvEventCuts.cxx:2249 AliConvEventCuts.cxx:2250 AliConvEventCuts.cxx:2251 AliConvEventCuts.cxx:2252 AliConvEventCuts.cxx:2253 AliConvEventCuts.cxx:2254 AliConvEventCuts.cxx:2255 AliConvEventCuts.cxx:2256 AliConvEventCuts.cxx:2257 AliConvEventCuts.cxx:2258 AliConvEventCuts.cxx:2259 AliConvEventCuts.cxx:2260 AliConvEventCuts.cxx:2261 AliConvEventCuts.cxx:2262 AliConvEventCuts.cxx:2263 AliConvEventCuts.cxx:2264 AliConvEventCuts.cxx:2265 AliConvEventCuts.cxx:2266 AliConvEventCuts.cxx:2267 AliConvEventCuts.cxx:2268 AliConvEventCuts.cxx:2269 AliConvEventCuts.cxx:2270 AliConvEventCuts.cxx:2271 AliConvEventCuts.cxx:2272 AliConvEventCuts.cxx:2273 AliConvEventCuts.cxx:2274 AliConvEventCuts.cxx:2275 AliConvEventCuts.cxx:2276 AliConvEventCuts.cxx:2277 AliConvEventCuts.cxx:2278 AliConvEventCuts.cxx:2279 AliConvEventCuts.cxx:2280 AliConvEventCuts.cxx:2281 AliConvEventCuts.cxx:2282 AliConvEventCuts.cxx:2283 AliConvEventCuts.cxx:2284 AliConvEventCuts.cxx:2285 AliConvEventCuts.cxx:2286 AliConvEventCuts.cxx:2287 AliConvEventCuts.cxx:2288 AliConvEventCuts.cxx:2289 AliConvEventCuts.cxx:2290 AliConvEventCuts.cxx:2291 AliConvEventCuts.cxx:2292 AliConvEventCuts.cxx:2293 AliConvEventCuts.cxx:2294 AliConvEventCuts.cxx:2295 AliConvEventCuts.cxx:2296 AliConvEventCuts.cxx:2297 AliConvEventCuts.cxx:2298 AliConvEventCuts.cxx:2299 AliConvEventCuts.cxx:2300 AliConvEventCuts.cxx:2301 AliConvEventCuts.cxx:2302 AliConvEventCuts.cxx:2303 AliConvEventCuts.cxx:2304 AliConvEventCuts.cxx:2305 AliConvEventCuts.cxx:2306 AliConvEventCuts.cxx:2307 AliConvEventCuts.cxx:2308 AliConvEventCuts.cxx:2309 AliConvEventCuts.cxx:2310 AliConvEventCuts.cxx:2311 AliConvEventCuts.cxx:2312 AliConvEventCuts.cxx:2313 AliConvEventCuts.cxx:2314 AliConvEventCuts.cxx:2315 AliConvEventCuts.cxx:2316 AliConvEventCuts.cxx:2317 AliConvEventCuts.cxx:2318 AliConvEventCuts.cxx:2319 AliConvEventCuts.cxx:2320 AliConvEventCuts.cxx:2321 AliConvEventCuts.cxx:2322 AliConvEventCuts.cxx:2323 AliConvEventCuts.cxx:2324 AliConvEventCuts.cxx:2325 AliConvEventCuts.cxx:2326 AliConvEventCuts.cxx:2327 AliConvEventCuts.cxx:2328 AliConvEventCuts.cxx:2329 AliConvEventCuts.cxx:2330 AliConvEventCuts.cxx:2331 AliConvEventCuts.cxx:2332 AliConvEventCuts.cxx:2333 AliConvEventCuts.cxx:2334 AliConvEventCuts.cxx:2335 AliConvEventCuts.cxx:2336 AliConvEventCuts.cxx:2337 AliConvEventCuts.cxx:2338 AliConvEventCuts.cxx:2339 AliConvEventCuts.cxx:2340 AliConvEventCuts.cxx:2341 AliConvEventCuts.cxx:2342 AliConvEventCuts.cxx:2343 AliConvEventCuts.cxx:2344 AliConvEventCuts.cxx:2345 AliConvEventCuts.cxx:2346 AliConvEventCuts.cxx:2347 AliConvEventCuts.cxx:2348 AliConvEventCuts.cxx:2349 AliConvEventCuts.cxx:2350 AliConvEventCuts.cxx:2351 AliConvEventCuts.cxx:2352 AliConvEventCuts.cxx:2353 AliConvEventCuts.cxx:2354 AliConvEventCuts.cxx:2355 AliConvEventCuts.cxx:2356 AliConvEventCuts.cxx:2357 AliConvEventCuts.cxx:2358 AliConvEventCuts.cxx:2359 AliConvEventCuts.cxx:2360 AliConvEventCuts.cxx:2361 AliConvEventCuts.cxx:2362 AliConvEventCuts.cxx:2363 AliConvEventCuts.cxx:2364 AliConvEventCuts.cxx:2365 AliConvEventCuts.cxx:2366 AliConvEventCuts.cxx:2367 AliConvEventCuts.cxx:2368 AliConvEventCuts.cxx:2369 AliConvEventCuts.cxx:2370 AliConvEventCuts.cxx:2371 AliConvEventCuts.cxx:2372 AliConvEventCuts.cxx:2373 AliConvEventCuts.cxx:2374 AliConvEventCuts.cxx:2375 AliConvEventCuts.cxx:2376 AliConvEventCuts.cxx:2377 AliConvEventCuts.cxx:2378 AliConvEventCuts.cxx:2379 AliConvEventCuts.cxx:2380 AliConvEventCuts.cxx:2381 AliConvEventCuts.cxx:2382 AliConvEventCuts.cxx:2383 AliConvEventCuts.cxx:2384 AliConvEventCuts.cxx:2385 AliConvEventCuts.cxx:2386 AliConvEventCuts.cxx:2387 AliConvEventCuts.cxx:2388 AliConvEventCuts.cxx:2389 AliConvEventCuts.cxx:2390 AliConvEventCuts.cxx:2391 AliConvEventCuts.cxx:2392 AliConvEventCuts.cxx:2393 AliConvEventCuts.cxx:2394 AliConvEventCuts.cxx:2395 AliConvEventCuts.cxx:2396 AliConvEventCuts.cxx:2397 AliConvEventCuts.cxx:2398 AliConvEventCuts.cxx:2399 AliConvEventCuts.cxx:2400 AliConvEventCuts.cxx:2401 AliConvEventCuts.cxx:2402 AliConvEventCuts.cxx:2403 AliConvEventCuts.cxx:2404 AliConvEventCuts.cxx:2405 AliConvEventCuts.cxx:2406 AliConvEventCuts.cxx:2407 AliConvEventCuts.cxx:2408 AliConvEventCuts.cxx:2409 AliConvEventCuts.cxx:2410 AliConvEventCuts.cxx:2411 AliConvEventCuts.cxx:2412 AliConvEventCuts.cxx:2413 AliConvEventCuts.cxx:2414 AliConvEventCuts.cxx:2415 AliConvEventCuts.cxx:2416 AliConvEventCuts.cxx:2417 AliConvEventCuts.cxx:2418 AliConvEventCuts.cxx:2419 AliConvEventCuts.cxx:2420 AliConvEventCuts.cxx:2421 AliConvEventCuts.cxx:2422 AliConvEventCuts.cxx:2423 AliConvEventCuts.cxx:2424 AliConvEventCuts.cxx:2425 AliConvEventCuts.cxx:2426 AliConvEventCuts.cxx:2427 AliConvEventCuts.cxx:2428 AliConvEventCuts.cxx:2429 AliConvEventCuts.cxx:2430 AliConvEventCuts.cxx:2431 AliConvEventCuts.cxx:2432 AliConvEventCuts.cxx:2433 AliConvEventCuts.cxx:2434 AliConvEventCuts.cxx:2435 AliConvEventCuts.cxx:2436 AliConvEventCuts.cxx:2437 AliConvEventCuts.cxx:2438 AliConvEventCuts.cxx:2439 AliConvEventCuts.cxx:2440 AliConvEventCuts.cxx:2441 AliConvEventCuts.cxx:2442 AliConvEventCuts.cxx:2443 AliConvEventCuts.cxx:2444 AliConvEventCuts.cxx:2445 AliConvEventCuts.cxx:2446 AliConvEventCuts.cxx:2447 AliConvEventCuts.cxx:2448 AliConvEventCuts.cxx:2449 AliConvEventCuts.cxx:2450 AliConvEventCuts.cxx:2451 AliConvEventCuts.cxx:2452 AliConvEventCuts.cxx:2453 AliConvEventCuts.cxx:2454 AliConvEventCuts.cxx:2455 AliConvEventCuts.cxx:2456 AliConvEventCuts.cxx:2457 AliConvEventCuts.cxx:2458 AliConvEventCuts.cxx:2459 AliConvEventCuts.cxx:2460 AliConvEventCuts.cxx:2461 AliConvEventCuts.cxx:2462 AliConvEventCuts.cxx:2463 AliConvEventCuts.cxx:2464 AliConvEventCuts.cxx:2465 AliConvEventCuts.cxx:2466 AliConvEventCuts.cxx:2467 AliConvEventCuts.cxx:2468 AliConvEventCuts.cxx:2469 AliConvEventCuts.cxx:2470 AliConvEventCuts.cxx:2471 AliConvEventCuts.cxx:2472 AliConvEventCuts.cxx:2473 AliConvEventCuts.cxx:2474 AliConvEventCuts.cxx:2475 AliConvEventCuts.cxx:2476