1 AliAnalysisTaskCombinHF *AddTaskCombinHF(Int_t meson=0, TString containerStr="",Bool_t readMC=kTRUE, TString cutObjFile="",TString cutObjNam="")
4 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6 ::Error("AddTaskCombinHF", "No analysis manager to connect to.");
12 AliRDHFCuts* analysiscuts=0x0;
14 if(!cutObjFile.IsNull()){
15 TFile *f=TFile::Open(cutObjFile.Data(),"READ");
17 analysiscuts=(AliRDHFCuts*)f->Get(cutObjNam.Data());
18 pid=analysiscuts->GetPidHF();
22 if(meson==0) analysiscuts=new AliRDHFCutsD0toKpi();
23 else analysiscuts=new AliRDHFCutsDplustoKpipi();
24 analysiscuts->SetStandardCutsPP2010();
25 pid=new AliAODPidHF();
27 pid->SetTPCnSigmaRangeForPions(-3.,3.);
28 pid->SetTPCnSigmaRangeForKaons(-2.,3.);
29 pid->SetTPCnSigmaRangeForProtons(-3.,3.);
30 pid->SetTOFnSigmaRangeForPions(-3.,3.);
31 pid->SetTOFnSigmaRangeForKaons(-2.,2.);
32 pid->SetTOFnSigmaRangeForProtons(-3.,3.);
36 Printf("Wrong file or cut object name set");
40 AliAnalysisTaskCombinHF *dTask = new AliAnalysisTaskCombinHF(meson,analysiscuts);
41 dTask->SetReadMC(readMC);
42 dTask->SetDebugLevel(0);
48 // Create containers for input/output
50 TString mesname="Dzero";
51 if(meson==1) mesname="Dplus";
52 TString inname = Form("cinput%s",mesname.Data());
53 TString outname = Form("coutput%s%s",mesname.Data(),containerStr.Data());
54 TString normname = Form("coutput%sNorm%s",mesname.Data(),containerStr.Data());
56 AliAnalysisDataContainer *cinput = mgr->CreateContainer(inname,TChain::Class(),
57 AliAnalysisManager::kInputContainer);
58 TString outputfile = AliAnalysisManager::GetCommonFileName();
59 outputfile += Form(":PWG3_D2H_InvMass%sLowPt%s",mesname.Data(),containerStr.Data());
62 AliAnalysisDataContainer *coutput = mgr->CreateContainer(outname,TList::Class(),
63 AliAnalysisManager::kOutputContainer,
65 AliAnalysisDataContainer *coutputNorm = mgr->CreateContainer(normname,AliNormalizationCounter::Class(),
66 AliAnalysisManager::kOutputContainer,
69 mgr->ConnectInput(dTask,0,mgr->GetCommonInputContainer());
71 mgr->ConnectOutput(dTask,1,coutput);
73 mgr->ConnectOutput(dTask,2,coutputNorm);