3 AliAnalysisTaskSEDmesonsFilterCJ *AddTaskSEDmesonsFilterCJ(TString sCutDzero = "", TString sCutDstar = "")
5 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
8 ::Error("AddTaskSEDmesonsFilterCJ.C::AddTaskSEDmesonsFilterCJ", "No analysis manager to connect to.");
12 TString type = mgr->GetInputEventHandler()->GetDataType();
13 if (!type.Contains("ESD") && !type.Contains("AOD")) {
14 ::Error("AddTaskSEDmesonsFilterCJ.C::AddTaskSEDmesonsFilterCJ", "Task manager to have an ESD or AOD input handler.");
18 if (!mgr->GetInputEventHandler()) {
19 ::Error("AddTaskSEEAddTaskSEDmesonsFilterCJ.C::AddTaskSEEAddTaskSEDmesonsFilterCJ", "This task requires an input event handler");
22 //=============================================================================
25 AliRDHFCutsD0toKpi *cutDzero = 0;
26 AliRDHFCutsDStartoKpipi *cutDstar = 0;
28 if (!sCutDzero.IsNull()) {
29 file = TFile::Open(sCutDzero.Data(), "READ");
30 cutDzero = dynamic_cast<AliRDHFCutsD0toKpi*>(file->Get("D0toKpiCuts"));
34 if (!sCutDstar.IsNull()) {
35 file = TFile::Open(sCutDstar.Data(), "READ");
36 cutDstar = dynamic_cast<AliRDHFCutsDStartoKpipi*>(file->Get("DStartoKpipiCuts"));
40 AliAnalysisTaskSEDmesonsFilterCJ *taskDemsonFilterCJ = new AliAnalysisTaskSEDmesonsFilterCJ("AliAnalysisTaskSEDmesonsFilterCJ");
41 taskDemsonFilterCJ->SetCutDzero(cutDzero);
42 taskDemsonFilterCJ->SetCutDstar(cutDstar);
43 mgr->AddTask(taskDemsonFilterCJ);
45 mgr->ConnectInput( taskDemsonFilterCJ, 0, mgr->GetCommonInputContainer());
46 //mgr->ConnectOutput(taskDemsonFilterCJ, 0, mgr->GetCommonOutputContainer());
48 TString sCommon = AliAnalysisManager::GetCommonFileName();
49 TString sCutName = "AnalysisCutsDmeson.root";
50 TString sOutput1 = "AliAnalysisTaskSEDmesonsFilterCJ_ListDmesonCuts";
51 TString sOutput2 = "AliAnalysisTaskSEDmesonsFilterCJ_Dzero_ControlHistograms";
52 TString sOutput3 = "AliAnalysisTaskSEDmesonsFilterCJ_Dstar_ControlHistograms";
53 mgr->ConnectOutput(taskDemsonFilterCJ, 1, mgr->CreateContainer(sOutput1.Data(),TList::Class(),AliAnalysisManager::kOutputContainer,sCutName.Data()));
54 mgr->ConnectOutput(taskDemsonFilterCJ, 2, mgr->CreateContainer(sOutput2.Data(),TList::Class(),AliAnalysisManager::kOutputContainer, sCommon.Data()));
55 mgr->ConnectOutput(taskDemsonFilterCJ, 3, mgr->CreateContainer(sOutput3.Data(),TList::Class(),AliAnalysisManager::kOutputContainer, sCommon.Data()));
56 return taskDemsonFilterCJ;