]>
Commit | Line | Data |
---|---|---|
62ee50a2 | 1 | createTriggerDescriptor_PbPb() |
2 | { | |
3 | // create Trigger Descriptor for Pb-Pb interactions | |
4 | ||
5 | ||
6 | AliTriggerDescriptor descrip( "Pb-Pb", "Default Pb-Pb Descriptor" ); | |
7 | ||
8 | // Define a Cluster Detector | |
9 | //descrip.AddDetectorCluster( "ALL" ); | |
b384f8a4 | 10 | descrip.AddDetectorCluster( "ITS TRD PHOS EMCAL MUON ZDC T0 VZERO" ); // no ACORDE yet |
62ee50a2 | 11 | |
12 | // Define the trigger conditions form Table 4.2 TDR DAQ, Trigger pag 59 | |
13 | ||
14 | // TRD_pre_L0 input is not generated in simulation as it is a no busy signal, so, it is not | |
15 | // include in the conditions. | |
16 | ||
17 | // 1 | |
18 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & ZDC_1_L1",// & TRD_pre_L0 | |
19 | "MB", "Minimum Bias", | |
20 | (ULong64_t)0x1 ); | |
21 | // 2 | |
22 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & ZDC_2_L1",// & TRD_pre_L0 | |
23 | "SC", "Semi Central", | |
24 | (ULong64_t)0x1 << 1 ); | |
25 | // 3 | |
26 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & ZDC_3_L1",// & TRD_pre_L0 | |
27 | "CE", "Central", | |
28 | (ULong64_t)0x1 << 2 ); | |
29 | // 4 | |
30 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Unlike_HPt_L0 & ZDC_1_L1", // & TRD_pre_L0 | |
31 | "DMUnlikeHPt_TPC_MB", "Di Muon Unlike High Pt TPC Minimum Bias", | |
32 | (ULong64_t)0x1 << 3 ); | |
33 | // 5 | |
34 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & MUON_Unlike_HPt_L0 & ZDC_2_L1", // & TRD_pre_L0 | |
35 | "DMUnlikeHPt_TPC_SC", "Di Muon Unlike High Pt TPC Semi Central", | |
36 | (ULong64_t)0x1 << 4 ); | |
37 | // 6 same as 4 | |
38 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Unlike_HPt_L0 & ZDC_1_L1", | |
39 | "DMUnlikeHPt_noTPC_MB", "Di Muon Unlike High Pt no TPC Minimum Bias", | |
40 | (ULong64_t)0x1 << 5 ); | |
41 | // 7 | |
42 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Unlike_LPt_L0 & ZDC_1_L1", | |
43 | "DMUnlikeLPt_noTPC_MB", "Di Muon Unlike Low Pt no TPC Minimum Bias", | |
44 | (ULong64_t)0x1 << 6 ); | |
45 | // 8 | |
46 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & MUON_Unlike_LPt_L0 & ZDC_2_L1", | |
47 | "DMUnlikeLPt_noTPC_SC", "Di Muon Unlike Low Pt no TPC Semi Central", | |
48 | (ULong64_t)0x1 << 7 ); | |
49 | // 9 | |
50 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Like_HPt_L0 & ZDC_1_L1", // & TRD_pre_L0 | |
51 | "DMLikeHPt_TPC_MB", "Di Muon Like Low Pt TPC Minimum Bias", | |
52 | (ULong64_t)0x1 << 8 ); | |
53 | // 10 | |
54 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & MUON_Like_HPt_L0 & ZDC_2_L1", // & TRD_pre_L0 | |
55 | "DMLikeHPt_TPC_SC", "Di Muon Like High Pt TPC Semi Central", | |
56 | (ULong64_t)0x1 << 9 ); | |
57 | // 11 same as 9 | |
58 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Like_HPt_L0 & ZDC_1_L1", | |
59 | "DMLikeHPt_noTPC_MB", "Di Muon Like High Pt no TPC Minimum Bias", | |
60 | (ULong64_t)0x1 << 10 ); | |
61 | // 12 | |
62 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Like_LPt_L0 & ZDC_1_L1", | |
63 | "DMLikeLPt_noTPC_MB", "Di Muon Like Low Pt no TPC Minimum Bias", | |
64 | (ULong64_t)0x1 << 11 ); | |
65 | // 13 | |
66 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & MUON_Like_LPt_L0 & ZDC_2_L1", | |
67 | "DMLikeLPt_noTPC_SC", "Di Muon Like Low Pt no TPC Semi Central", | |
68 | (ULong64_t)0x1 << 12 ); | |
69 | ||
70 | // the current implementation of MUON trigger class has to change the inputs to match the following conditions | |
71 | // now they have 9 inputs instead of 1 for MUON single | |
72 | // "MUON_SPlus_LPt_L0", "Single Plus Low Pt", | |
73 | // "MUON_SPlus_HPt_L0", "Single Plus High Pt", | |
74 | // "MUON_SPlus_All_L0", "Single Plus All", | |
75 | // "MUON_SMinus_LPt_L0", "Single Minus Low Pt", | |
76 | // "MUON_SMinus_HPt_L0", "Single Minus High Pt", | |
77 | // "MUON_SMinus_All_L0", "Single Minus All", | |
78 | // "MUON_SUndef_LPt_L0", "Single Undefined Low Pt", | |
79 | // "MUON_SUndef_HPt_L0", "Single Undefined High Pt", | |
80 | // "MUON_SUndef_All_L0", "Single Undefined All", | |
81 | ||
82 | // 14 | |
83 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & MUON_Single_L0 & TRD_Electron_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
84 | // "DMSingleTDRe_MB", "Di Muon Single TDR electron Minimum Bias", | |
85 | // (ULong64_t)0x1 << 13 ); | |
86 | // 15 | |
87 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & MUON_Single_L0 & TRD_Electron_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
88 | // "DMSingleTDRe_SC", "Di Muon Single TDR electron Semi Central", | |
89 | // (ULong64_t)0x1 << 14 ); | |
90 | // 16 | |
91 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Electron_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
92 | "TDRe_MB", "TDR electron Minimum Bias", | |
93 | (ULong64_t)0x1 << 15 ); | |
94 | // 17 | |
95 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_HadrLPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
96 | "TDRLPt_MB", "TDR Low Pt Minimum Bias", | |
97 | (ULong64_t)0x1 << 16 ); | |
98 | // 18 | |
99 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_HadrHPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
100 | "TDRHPt_MB", "TDR High Pt Minimum Bias", | |
101 | (ULong64_t)0x1 << 17 ); | |
102 | // 19 | |
729ba10b | 103 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Unlike_EPair_L1 & ZDC_1_L1", // & TRD_pre_L0 |
5ea55104 | 104 | "TDRUnlikeHPt_MB", "TDR Unlike Electron Pair High Pt Minimum Bias", |
105 | (ULong64_t)0x1 << 18 ); | |
62ee50a2 | 106 | // 20 |
729ba10b | 107 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Unlike_EPair_L1 & ZDC_2_L1", // & TRD_pre_L0 |
108 | "TDRUnlikeHPt_SC", "TDR Unlike Electron Pair High Pt Semi Central", | |
5ea55104 | 109 | (ULong64_t)0x1 << 19 ); |
62ee50a2 | 110 | // 21 |
729ba10b | 111 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Like_EPair_L1 & ZDC_1_L1", // & TRD_pre_L0 |
5ea55104 | 112 | "TDRLikeHPt_MB", "TDR Like Electron Pair High Pt Minimum Bias", |
113 | (ULong64_t)0x1 << 20 ); | |
62ee50a2 | 114 | // 22 |
729ba10b | 115 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Like_EPair_L1 & ZDC_2_L1", // & TRD_pre_L0 |
5ea55104 | 116 | "TDRLikeHPt_SC", "TDR Like Electron Pair High Pt Semi Central", |
117 | (ULong64_t)0x1 << 21 ); | |
62ee50a2 | 118 | |
119 | // 23 | |
5ea55104 | 120 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Jet_HPt_L1 & ZDC_2_L1", // & TRD_pre_L0 |
121 | "TDRJetHPt_SC", "TDR Jet High Pt Semi Central", | |
122 | (ULong64_t)0x1 << 22 ); | |
62ee50a2 | 123 | // 24 |
5ea55104 | 124 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Jet_LPt_L1 & ZDC_1_L1", // & TRD_pre_L0 |
125 | "TDRJetLPt_MB", "TDR Jet Low Pt Minimum Bias", | |
126 | (ULong64_t)0x1 << 23 ); | |
62ee50a2 | 127 | // 25 |
5ea55104 | 128 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Jet_LPt_L1 & ZDC_2_L1", // & TRD_pre_L0 |
129 | "TDRJetLPt_SC", "TDR Jet Low Pt Semi Central", | |
130 | (ULong64_t)0x1 << 24 ); | |
62ee50a2 | 131 | |
132 | // 26 | |
729ba10b | 133 | descrip.AddCondition( "(START_Vertex_L0 & VZERO_AND) & PHOS_JetHPt_L1 & ZDC_1_L1", // & TRD_pre_L0 |
5ea55104 | 134 | "PHOSHPt_MB", "PHOS High Pt Minimum Bias", |
135 | (ULong64_t)0x1 << 25 ); | |
62ee50a2 | 136 | // 27 |
729ba10b | 137 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & PHOS_JetLPt_L1 & ZDC_1_L1", // & TRD_pre_L0 |
5ea55104 | 138 | "PHOSLPt_MB", "PHOS Low Pt Minimum Bias", |
139 | (ULong64_t)0x1 << 26 ); | |
62ee50a2 | 140 | // 28 |
729ba10b | 141 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & PHOS_JetLPt_L1 & ZDC_2_L1", // & TRD_pre_L0 |
5ea55104 | 142 | "PHOSLPt_SC", "PHOS Low Pt Semi Central", |
143 | (ULong64_t)0x1 << 27 ); | |
62ee50a2 | 144 | // 29 |
729ba10b | 145 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & PHOS_L0 & ZDC_1_L1", |
5ea55104 | 146 | "PHOSStand-along", "PHOS Stand-along Minimum Bias", |
147 | (ULong64_t)0x1 << 28 ); | |
62ee50a2 | 148 | // 30 |
729ba10b | 149 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_JetHPt_L1 & ZDC_1_L1", |
5ea55104 | 150 | "EMCALJetHPt_MB", "EMCAL Jet High Pt Minimum Bias", |
151 | (ULong64_t)0x1 << 29 ); | |
62ee50a2 | 152 | // 31 |
729ba10b | 153 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_JetMPt_L1 & ZDC_1_L1", |
5ea55104 | 154 | "EMCALJetMPt_MB", "EMCAL Jet Medium Pt Minimum Bias", |
155 | (ULong64_t)0x1 << 30 ); | |
62ee50a2 | 156 | // 32 |
729ba10b | 157 | descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_JetLPt_L1 & ZDC_1_L1", |
5ea55104 | 158 | "EMCALJetLPt_MB", "EMCAL Jet Low Pt Minimum Bias", |
159 | (ULong64_t)0x1 << 31 ); | |
62ee50a2 | 160 | // 33 |
729ba10b | 161 | descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & EMCAL_JetLPt_L1 & ZDC_2_L1", |
5ea55104 | 162 | "EMCALJetLPt_SC", "EMCAL Jet Low Pt Semi Central", |
163 | (ULong64_t)0x1 << 32 ); | |
62ee50a2 | 164 | // 34 |
b384f8a4 | 165 | descrip.AddCondition( "ZDC_EMD_L1", // ACORDE_L0 |
62ee50a2 | 166 | "ZDC_diss", "ZDC EMD Event", |
167 | (ULong64_t)0x1 << 33 ); | |
168 | // 35 | |
b384f8a4 | 169 | // descrip.AddCondition( "ACORDE_cosmic_L0", |
170 | // "ACORDE_cosmic", "ACORDE cosmic telescope", | |
62ee50a2 | 171 | // (ULong64_t)0x1 << 34 ); |
172 | ||
173 | // 36 | |
174 | descrip.AddCondition( "!START_Vertex_L0", | |
175 | "Beam-gas", "Beam Gas Event", | |
176 | (ULong64_t)0x1 << 35 ); | |
177 | ||
178 | ||
179 | cout << endl << endl; | |
180 | ||
181 | if( !descrip.CheckInputsConditions("Config.C") ) { | |
182 | cerr << "\n ERROR: There are some problems on descriptor definition..." << endl; | |
183 | return; | |
184 | } | |
185 | ||
186 | cout << endl << endl; | |
187 | ||
188 | cout << "************************************************************" << endl; | |
189 | cout << "New Trigger descriptor" << endl; | |
190 | cout << "************************************************************" << endl; | |
191 | descrip.Print(); | |
192 | ||
193 | // save the descriptor to file | |
194 | descrip.WriteDescriptor(); | |
195 | ||
196 | cout << endl << endl << endl; | |
197 | cout << "************************************************************" << endl; | |
198 | cout << "Available Trigger descriptors" << endl; | |
199 | cout << "************************************************************" << endl; | |
200 | ||
201 | // Get and print all available descriptors | |
202 | TObjArray* desc = AliTriggerDescriptor::GetAvailableDescriptors(); | |
203 | ||
204 | if( !desc || !desc->GetEntriesFast() ) { | |
205 | cerr << "Not descriptors availables" << endl; | |
206 | return; | |
207 | } | |
208 | ||
209 | Int_t ndesc = desc->GetEntriesFast(); | |
210 | for( Int_t j=0; j<ndesc; j++ ) { | |
211 | AliTriggerDescriptor* de = (AliTriggerDescriptor*)desc->At(j); | |
212 | de->Print(); | |
213 | } | |
214 | ||
215 | } | |
216 |