]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/macros/AddTaskMinijet.C
Removing the tasks from the digitization (Ruben)
[u/mrichter/AliRoot.git] / PWG4 / macros / AddTaskMinijet.C
CommitLineData
8855d81c 1AliAnalysisTaskMinijet* AddTaskMinijet(Int_t runNumber = -1,
2 TString format = "esd",
3 Bool_t useMC = false,
4 Bool_t mcOnly = false,
5 Bool_t useHighMult = false
6 )
631d01ff 7{
8855d81c 8 //Seetings
9 Float_t ptTrigMin = 0.7;
10 Float_t ptAssocMin = 0.4;
11 Float_t maxVtxZ = 10.;
12 Int_t filterBit = 128;
13 Int_t debugLevel = 0;
b7c0438e 14
631d01ff 15 // Get the pointer to the existing analysis manager via the static access method.
631d01ff 16 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
17 if (!mgr) mgr = new AliAnalysisManager("Analysis train");
b7c0438e 18
8855d81c 19 // Set TPC track cuts (used for ESDs)
20 AliESDtrackCuts* esdTrackCutsTPC=0x0;
b7c0438e 21 if(!format.CompareTo("esd")){
8855d81c 22 esdTrackCutsTPC = AliESDtrackCuts::GetStandardTPCOnlyTrackCuts();
23 esdTrackCutsTPC->SetMinNClustersTPC(80);
b7c0438e 24 }
25
8855d81c 26 // First task for min bias events
27 AliAnalysisTaskMinijet *taskMB =
28 new AliAnalysisTaskMinijet("AliAnalysisTaskMinijet Min bias");
29 taskMB->SetUseMC(useMC,mcOnly);
30 taskMB->SetTriggerPtCut(ptTrigMin);
31 taskMB->SetAssociatePtCut(ptAssocMin);
32 taskMB->SetMaxVertexZ(maxVtxZ);
33 taskMB->SetTriggerMask(AliVEvent::kMB);
34 // taskMB->SelectCollisionCandidates(AliVEvent::kMB);//MB //now inside task
35 taskMB->SetFilterBit(filterBit); // used only in AOD case
36 taskMB->SetDebugLevel(debugLevel);
37
b7c0438e 38 if(!format.CompareTo("esd")){
8855d81c 39 taskMB->SetCuts(esdTrackCutsTPC);
40 taskMB->SetModeEsdAod(0); // 0 = reading ESDs
41 }
42 else if (!format.CompareTo("aod")){
43 // Cuts already applied through esd filter
44 taskMB->SetModeEsdAod(1); // 1 = reading AODs
b7c0438e 45 }
631d01ff 46
8855d81c 47 // Second task for high multipliciy events
631d01ff 48 AliAnalysisTaskMinijet *taskHM =0x0;
8855d81c 49 if(useHighMult){
631d01ff 50 taskHM = new AliAnalysisTaskMinijet("AliAnalysisTaskMinijet HighMult");
8855d81c 51 taskHM->SetUseMC(useMC, mcOnly);
52 taskHM->SetTriggerPtCut(ptTrigMin);
53 taskHM->SetAssociatePtCut(ptAssocMin);
54 taskHM->SetMaxVertexZ(maxVtxZ);
55 taskHM->SetTriggerMask(AliVEvent::kHighMult);
56 //taskHM->SelectCollisionCandidates(AliVEvent::kHighMult); // now inside task
57 taskMB->SetFilterBit(filterBit); // used only in AOD case
58 taskHM->SetDebugLevel(debugLevel);
631d01ff 59
8855d81c 60 if(!format.CompareTo("esd")){
61 taskHM->SetCuts(esdTrackCutsTPC);
62 taskHM->SetModeEsdAod(0); // 0 = reading ESDs
63 }
64 else if (!format.CompareTo("aod")){
65 //cuts already applied through esd filter during writing of AODs
66 taskHM->SetModeEsdAod(1); // 1 = reading AODs
67 }
68
631d01ff 69 }
70
c2e7f32d 71 //create output containers
8855d81c 72 AliAnalysisDataContainer *outputMB = 0x0;
c2e7f32d 73 AliAnalysisDataContainer *outputHM = 0x0;
74
75 if(runNumber>0){
8855d81c 76 outputMB = mgr->CreateContainer("MiniJets",TList::Class(),
77 AliAnalysisManager::kOutputContainer,
78 Form("run%d.root",runNumber));
79 if(useHighMult){
8b096658 80 outputHM = mgr->CreateContainer("MiniJets_HighMult",TList::Class(),
8b096658 81 AliAnalysisManager::kOutputContainer,
8855d81c 82 Form("run%d.root",runNumber));
83 }
84 }
85 else{
86 outputMB = mgr->CreateContainer("MiniJets",TList::Class(),
87 AliAnalysisManager::kOutputContainer,
88 Form("%s:PWG4_MiniJets",
89 AliAnalysisManager::GetCommonFileName()));
90 if(useHighMult){
91 outputHM = mgr->CreateContainer("MiniJets_HighMult",TList::Class(),
92 AliAnalysisManager::kOutputContainer,
93 Form("%s:PWG4_MiniJets",
94 AliAnalysisManager::GetCommonFileName()));
95 }
96 }
631d01ff 97
8855d81c 98
99 // Add first task to the manager and connect container
100 mgr->AddTask(taskMB);
101 mgr->ConnectInput(taskMB, 0, mgr->GetCommonInputContainer());
102 mgr->ConnectOutput(taskMB, 1, outputMB);
c2e7f32d 103
104
8855d81c 105 // Add second task to the manager and connect container
106 if(useHighMult){
631d01ff 107 mgr->AddTask(taskHM);
631d01ff 108 mgr->ConnectInput (taskHM, 0, mgr->GetCommonInputContainer());
109 mgr->ConnectOutput(taskHM, 1, outputHM);
110 }
111
8855d81c 112 return taskMB;
631d01ff 113
114}
115