1 AliAnalysisTaskNorm *AddTaskNorm ( Bool_t isESD = kFALSE, Bool_t isMC = kFALSE, TString sBeamConf = "p-Pb" )
3 /// Add AliAnalysisTaskDimuon to the train
4 Info("AddTaskNorm", Form("beamConf %s isESD %d, isMC %d", sBeamConf.Data(), isESD, isMC));
6 // Get the pointer to the existing analysis manager via the static access method.
7 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
9 Error("AddTaskNorm","AliAnalysisManager not set!");
13 // This task run on AOD and ESD
14 TString type = mgr->GetInputEventHandler()->GetDataType();
15 if (!type.Contains("AOD") && !isESD) {
16 Error("AddTaskNorm", "AOD input handler needed!");
19 if ( !type.Contains("ESD") && isESD ) {
20 Error("AddTaskNorm","ESD input handler needed!");
24 AliAnalysisTaskNorm *task = new AliAnalysisTaskNorm("TaskNorm");
26 Error("AddTaskNorm", "Analysis task Norm cannot be created!");
30 task->SetIsESD(isESD);
31 task->SetBeamConf(sBeamConf);
32 ((AliMuonEventCuts*) task->GetMuonEventCuts())->SetFilterMask ( AliMuonEventCuts::kSelectedTrig );
33 ((AliMuonEventCuts*) task->GetMuonEventCuts())->SetTrigInputsMap("0MSL:12,0MUL:14");
34 ((AliMuonEventCuts*) task->GetMuonEventCuts())->SetTrigClassPatterns("CINT7-B-NOPF-ALLNOTRD,CINT7-B-NOPF-ALLNOTRD&0MSL,CINT7-B-NOPF-ALLNOTRD&0MUL,CMSL7-B-NOPF-MUON,CMSL7-B-NOPF-MUON&0MUL,CMUL7-B-NOPF-MUON,CMUL7-B-NOPF-ALLNOTRD");
35 // Add task to analysis manager
38 // Connect input container
39 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
41 // Define output file directory
42 TString outputFile = AliAnalysisManager::GetCommonFileName();
43 if ( outputFile.IsNull() ) {
44 Error("AddTaskMuon", "Common output file is not defined!");
49 outputFile = "Norm.ESD.Rec.root";
51 outputFile = "Norm.AOD.Rec.root";
53 // Create and connect output containers
54 AliAnalysisDataContainer *coutputeventcounter = mgr->CreateContainer("eventCounters", AliCounterCollection::Class(), AliAnalysisManager::kOutputContainer, outputFile);
55 AliAnalysisDataContainer *coutputruncounter = mgr->CreateContainer("runCounters", AliCounterCollection::Class(), AliAnalysisManager::kOutputContainer, outputFile);
56 AliAnalysisDataContainer *coutputvertexlist = mgr->CreateContainer("vertex", TObjArray::Class(), AliAnalysisManager::kOutputContainer, outputFile);
57 AliAnalysisDataContainer *coutputv0alist = mgr->CreateContainer("V0A", TObjArray::Class(), AliAnalysisManager::kOutputContainer, outputFile);
58 AliAnalysisDataContainer *coutputznlist = mgr->CreateContainer("ZN", TObjArray::Class(), AliAnalysisManager::kOutputContainer, outputFile);
60 mgr->ConnectOutput(task, 1, coutputeventcounter);
61 mgr->ConnectOutput(task, 2, coutputruncounter);
62 mgr->ConnectOutput(task, 3, coutputvertexlist);
63 mgr->ConnectOutput(task, 4, coutputv0alist);
64 mgr->ConnectOutput(task, 5, coutputznlist);