]>
Commit | Line | Data |
---|---|---|
09e00674 | 1 | // Configuration of simple task counting events |
2 | // Gets the cross section from file pyxsec if requested | |
3 | ||
67b98f1b | 4 | //___________________________________________________________________ |
09e00674 | 5 | AliAnalysisTaskCounter * AddTaskCounter(const TString trigger = "", |
6 | Bool_t xsOn = kFALSE) | |
8bd000ef | 7 | { |
8 | ||
9 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
10 | ||
11 | AliAnalysisTaskCounter * counter = new AliAnalysisTaskCounter(Form("Counter%s",trigger.Data())); | |
12 | //if(kRun > 140000 && kRun < 146900) counter ->RejectFastCluster(); | |
13 | //if (kCollision=="pp" ) counter->SetZVertexCut(10.); //Open cut | |
14 | //else if(kCollision=="PbPb") counter->SetZVertexCut(10.); //Centrality defined in this range. | |
15 | ||
09e00674 | 16 | if(xsOn) counter->SwitchOnMCCrossSectionCalculation(); |
17 | else counter->SwitchOffMCCrossSectionCalculation(); | |
18 | ||
279d76dc | 19 | if(trigger=="EMC8") |
20 | { | |
21 | printf("counter trigger EMC8\n"); | |
22 | counter->SelectCollisionCandidates(AliVEvent::kEMC8); | |
23 | } | |
24 | else if(trigger=="EMC7") | |
8bd000ef | 25 | { |
26 | printf("counter trigger EMC7\n"); | |
27 | counter->SelectCollisionCandidates(AliVEvent::kEMC7); | |
28 | } | |
29 | else if (trigger=="INT7") | |
30 | { | |
31 | printf("counter trigger INT7\n"); | |
32 | counter->SelectCollisionCandidates(AliVEvent::kINT7); | |
33 | } | |
34 | if(trigger=="EMC1") | |
35 | { | |
36 | printf("counter trigger EMC1\n"); | |
37 | counter->SelectCollisionCandidates(AliVEvent::kEMC1); | |
38 | } | |
39 | else if(trigger=="MB") | |
40 | { | |
41 | printf("counter trigger MB\n"); | |
42 | counter->SelectCollisionCandidates(AliVEvent::kMB); | |
43 | } | |
44 | else if(trigger=="PHOS") | |
45 | { | |
46 | printf("counter trigger PHOS\n"); | |
47 | counter->SelectCollisionCandidates(AliVEvent::kPHI7); | |
48 | } | |
49 | else if(trigger=="PHOSPb") | |
50 | { | |
51 | printf("counter trigger PHOSPb\n"); | |
52 | counter->SelectCollisionCandidates(AliVEvent::kPHOSPb); | |
53 | } | |
54 | else if(trigger=="AnyINT") | |
55 | { | |
56 | printf("counter trigger AnyINT\n"); | |
57 | counter->SelectCollisionCandidates(AliVEvent::kAnyINT); | |
58 | } | |
59 | else if(trigger=="INT") | |
60 | { | |
61 | printf("counter trigger AnyINT\n"); | |
62 | counter->SelectCollisionCandidates(AliVEvent::kAny); | |
63 | } | |
64 | else if(trigger=="EMCEGA") | |
65 | { | |
66 | printf("counter trigger EMC Gamma\n"); | |
67 | counter->SelectCollisionCandidates(AliVEvent::kEMCEGA); | |
68 | } | |
69 | else if(trigger=="EMCEJE") | |
70 | { | |
71 | printf("counter trigger EMC Jet\n"); | |
72 | counter->SelectCollisionCandidates(AliVEvent::kEMCEJE); | |
73 | } | |
74 | else if(trigger=="Central") | |
75 | { | |
76 | printf("counter trigger Central\n"); | |
77 | counter->SelectCollisionCandidates(AliVEvent::kCentral); | |
78 | } | |
79 | else if(trigger=="SemiCentral") | |
80 | { | |
81 | printf("counter trigger SemiCentral\n"); | |
82 | counter->SelectCollisionCandidates(AliVEvent::kSemiCentral); | |
83 | } | |
67b98f1b | 84 | else if(trigger=="SemiOrCentral") |
85 | { | |
86 | printf("counter trigger SemiCentral Or Central\n"); | |
87 | counter->SelectCollisionCandidates(AliVEvent::kSemiCentral | AliVEvent::kCentral); | |
88 | } | |
8bd000ef | 89 | |
90 | TString outputFile = AliAnalysisManager::GetCommonFileName(); | |
91 | AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer(); | |
92 | ||
93 | AliAnalysisDataContainer *coutput = | |
94 | mgr->CreateContainer(Form("Counter%s",trigger.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, outputFile.Data()); | |
95 | mgr->AddTask(counter); | |
96 | mgr->ConnectInput (counter, 0, cinput1); | |
97 | mgr->ConnectOutput (counter, 1, coutput); | |
98 | ||
67b98f1b | 99 | return counter; |
100 | ||
8bd000ef | 101 | } |
102 |