3 AliAnalysisTaskSEDmesonsFilterCJ *AddTaskSEDmesonsFilterCJ(
4 AliAnalysisTaskSEDmesonsForJetCorrelations::ECandidateType cand = AliAnalysisTaskSEDmesonsForJetCorrelations::kDstartoKpipi,
5 TString filename = "DStartoKpipiCuts.root",
6 Bool_t theMCon = kFALSE,
9 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
11 ::Error("AddTaskSEDmesonsFilterCJ", "No analysis manager to connect to.");
15 Bool_t useStdC = kFALSE;
16 TFile* filecuts=TFile::Open(filename);
17 if(!filecuts || (filecuts && !filecuts->IsOpen())) {
18 cout<<"Input file not found: use std cuts"<<endl;
22 AliRDHFCuts *analysiscuts=0x0;
26 analysiscuts = new AliRDHFCutsD0toKpi();
27 analysiscuts->SetStandardCutsPP2010();
29 analysiscuts = (AliRDHFCutsD0toKpi*)filecuts->Get("D0toKpiCuts");
33 analysiscuts = new AliRDHFCutsDStartoKpipi();
34 analysiscuts->SetStandardCutsPP2010();
36 analysiscuts = (AliRDHFCutsDStartoKpipi*)filecuts->Get("DStartoKpipiCuts");
37 analysiscuts->SetName("DStartoKpipiCuts");
41 if (!analysiscuts) { // mm let's see if everything is ok
42 AliFatal("Specific AliRDHFCuts not found");
46 printf("CREATE TASK\n"); //CREATE THE TASK
49 AliAnalysisTaskSEDmesonsFilterCJ *task = new AliAnalysisTaskSEDmesonsFilterCJ("AnaTaskSEDmesonsFilterCJ",analysiscuts,cand);
50 task->SetMC(theMCon); //D meson settings
53 // Create and connect containers for input/output
54 TString outputfile = AliAnalysisManager::GetCommonFileName();
55 outputfile += ":PWG3_D2H_DmesonsForJetCorrelations";
58 TString nameContainer0="histograms";
59 TString nameContainer1="cuts";
60 //TString nameContainer2="DcandidatesSel";
62 nameContainer0 += suffix;
63 nameContainer1 += suffix;
64 //nameContainer2 += suffix;
66 // ------ input data ------
67 AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
69 // ----- output data -----
71 // output TH1I for event counting
72 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(nameContainer0, TList::Class(),AliAnalysisManager::kOutputContainer,outputfile.Data());
73 AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(nameContainer1, AliRDHFCuts::Class(),AliAnalysisManager::kOutputContainer, outputfile.Data());
74 //AliAnalysisDataContainer *coutput3 = mgr->CreateContainer(nameContainer2, TList::Class(),AliAnalysisManager::kExchangeContainer, outputfile.Data());
76 mgr->ConnectInput(task,0,mgr->GetCommonInputContainer());
77 mgr->ConnectOutput(task,1,coutput1);
78 mgr->ConnectOutput(task,2,coutput2);
79 //mgr->ConnectOutput(task,3,coutput3);
81 Printf("Input and Output connected to the manager");