-AliAnalysisTask *AddTaskHFECalPbPbSys(int trigtype, int TPCclust, int Nits, int ITSstat,double nSigMim, double Mimeop, double Maxeop, int PIDorder, int sysID){
- //get the current analysis manager
+AliAnalysisTask *AddTaskHFECalPbPbSys(Bool_t MassConst, Bool_t MassWidthCut, Double_t angleCut, TString ID="phoSys0")
+{
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
- Error("AddTaskHFE", "No analysis manager found.");
+ Error("AddTaskHFEECalPbPbSys", "No analysis manager found.");
return NULL;
}
+
if (!mgr->GetInputEventHandler()) {
- ::Error("AddTaskHFE", "This task requires an input event handler");
+ ::Error("AddTaskHFECalPbPbSys", "This task requires an input event handler");
return NULL;
- }
+ }
TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
if (type=="AOD"){
- ::Error("AddTaskHFE", "The tasks exits because AODs are in input");
+ ::Error("AddTaskHFECalPbPbSys", "The tasks exits because AODs are in input");
return NULL;
}
Bool_t MCthere=kFALSE;
}else{
MCthere=kTRUE;
}
- cout<<"AddTaskHFE - MC config is: "<<MCthere<<endl;
-
- //============= Set Task Name ===================
- //TString taskName=("AliAnalysisTaskHFE.cxx+");
- //===============================================
- gROOT->LoadMacro("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/ConfigHFECalSys_PbPb.C");
-
- AliAnalysisTaskHFE *hfetask = ConfigHFECalSys_PbPb(MCthere,TPCclust,Nits,ITSstat,nSigMim,Mimeop,Maxeop,PIDorder);
- //RequestMemory(hfetask, 250*1024);
- if(trigtype==0)hfetask->SelectCollisionCandidates(AliVEvent::kEMCEGA);
- if(trigtype==1)hfetask->SelectCollisionCandidates(AliVEvent::kCentral);
- if(trigtype==2)hfetask->SelectCollisionCandidates(AliVEvent::kSemiCentral);
- if(trigtype==3)hfetask->SelectCollisionCandidates(AliVEvent::kMB);
- if(trigtype==4)hfetask->SelectCollisionCandidates(AliVEvent::kEMCEJE);
+ //analysis task
+ gROOT->LoadMacro("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/ConfigHFECal.C");
+ AliAnalysisTaskHFECal *hfetask = ConfigHFECal(MCthere,MassConst,MassWidthCut,angleCut);
mgr->AddTask(hfetask);
-
- int inSig = (int)(nSigMim*10.0);
- int iMimeop = (int)(Mimeop*10.0);
- int iMaxeop = (int)(Maxeop*10.0);
-
- //find input container
- AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
- TString containerName = mgr->GetCommonFileName();
- TString appendix(TString::Format(":PWGHF_hfeCalPbPbTrig%dTPC%dITS%dITSLay%dnSig%dMimeop%dMaxeop%dPID%d",trigtype,TPCclust,Nits,ITSstat,inSig,iMimeop,iMaxeop,PIDorder));
- //if(trigtype==1)appendix(TString::Format(":PWGHF_hfeCentTPC%dITS%dnSig%dMimeop%dMaxeop%dPID%d",TPCclust,Nits,inSig,iMimeop,iMaxeop,PIDorder));
- //if(trigtype==2)appendix(TString::Format(":PWGHF_hfeSemiTPC%dITS%dnSig%dMimeop%dMaxeop%dPID%d",TPCclust,Nits,inSig,iMimeop,iMaxeop,PIDorder));
- //if(trigtype==3)appendix(TString::Format(":PWGHF_hfekMBTPC%dITS%dnSig%dMimeop%dMaxeop%dPID%d",TPCclust,Nits,inSig,iMimeop,iMaxeop,PIDorder));
- //containerName += ":PWGHF_hfeCalPbPbEGA";
- containerName += appendix;
-
-
- TString Output1(TString::Format("HFE_Results_EMCALSys_SysID%d",sysID));
- TString Output2(TString::Format("HFE_QA_EMCALSYS_SysID%d",sysID));
-
- hfetask->ConnectOutput(1, mgr->CreateContainer(Output1, TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
- hfetask->ConnectOutput(2, mgr->CreateContainer(Output2, TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
-
- /*
- hfetask->ConnectOutput(1, mgr->CreateContainer("HFE_Results_EMCALSys", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
- hfetask->ConnectOutput(2, mgr->CreateContainer("HFE_QA_EMCALSys", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
- */
- mgr->ConnectInput (hfetask, 0, cinput );
+ // semi-central
+ hfetask->SelectCollisionCandidates(AliVEvent::kSemiCentral);
+ TString containerName3 = mgr->GetCommonFileName();
+ containerName3 += ":PWGHF_hfeCalSemiCentral";
+ containerName3 += ID;
+ AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
+ AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFE_Results_SemiCentral_%s",ID.Data()), TList::Class(),AliAnalysisManager::kOutputContainer, containerName3.Data());
+ mgr->ConnectInput(hfetask, 0, cinput);
+ mgr->ConnectOutput(hfetask, 1, coutput1);
- /*
- //<--- task2 for central trigger
-
- AliAnalysisTaskHFE *hfetask2 = ConfigHFECalstandard_PbPb(MCthere,TPCclust);
- hfetask2->SelectCollisionCandidates(AliVEvent::kCentral);
- mgr->AddTask(hfetask2);
- //find input container
- TString containerName2 = mgr->GetCommonFileName();
- containerName2 += ":PWGHF_hfeCalPbPbCent";
+ //MB trigger
+ AliAnalysisTaskHFECal *hfetaskMB = ConfigHFECal(MCthere,MassConst,MassWidthCut,angleCut);
+ mgr->AddTask(hfetaskMB);
+ hfetaskMB->SelectCollisionCandidates(AliVEvent::kMB);
+ TString containerName4 = mgr->GetCommonFileName();
+ containerName4 += ":PWGHF_hfeCalkMB";
+ containerName4 += ID;
+ AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
+ AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HFE_Results_EMCalMB_%s",ID.Data()), TList::Class(),AliAnalysisManager::kOutputContainer, containerName4.Data());
+ mgr->ConnectInput(hfetaskMB, 0, cinput);
+ mgr->ConnectOutput(hfetaskMB, 1, coutput1);
- hfetask2->ConnectOutput(1, mgr->CreateContainer("HFE_Results_EMCALCent", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName2.Data()));
- hfetask2->ConnectOutput(2, mgr->CreateContainer("HFE_QA_EMCALCent", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName2.Data()));
-
- mgr->ConnectInput (hfetask2, 0, cinput );
- */
-
-/*
- AliAnalysisTaskHFE *trdtask = ConfigHFEtrd(MCthere);
-
- //----------------------
- //create data containers
- //----------------------
-
- trdtask->ConnectOutput(1, mgr->CreateContainer("HFE_Results", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
- trdtask->ConnectOutput(2, mgr->CreateContainer("HFE_QA", TList::Class(),
- AliAnalysisManager::kOutputContainer, containerName.Data()));
- mgr->ConnectInput (trdtask, 0, cinput );
-*/
- //return hfetask;
return NULL;
}