]>
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" ); | |
10 | descrip.AddDetectorCluster( "ITS TRD PHOS EMCAL MUON ZDC START VZERO" ); // no CRT yet | |
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 | |
103 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Unlike_EPair_HPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
104 | // "TDRUnlikeHPt_MB", "TDR Unlike Electron Pair High Pt Minimum Bias", | |
105 | // (ULong64_t)0x1 << 18 ); | |
106 | // 20 | |
107 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Unlike_EPair_HPt_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
108 | // "TDRUnlikeHPt_SC", "TDR Unlike Electron Pair High Pt Semi Central", | |
109 | // (ULong64_t)0x1 << 19 ); | |
110 | // 21 | |
111 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Like_EPair_HPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
112 | // "TDRLikeHPt_MB", "TDR Like Electron Pair High Pt Minimum Bias", | |
113 | // (ULong64_t)0x1 << 20 ); | |
114 | // 22 | |
115 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Like_EPair_HPt_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
116 | // "TDRLikeHPt_SC", "TDR Like Electron Pair High Pt Semi Central", | |
117 | // (ULong64_t)0x1 << 21 ); | |
118 | ||
119 | // TRD Jet inputs are not yet implemented | |
120 | ||
121 | // 23 | |
122 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Jet_HPt_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
123 | // "TDRJetHPt_SC", "TDR Jet High Pt Semi Central", | |
124 | // (ULong64_t)0x1 << 22 ); | |
125 | // 24 | |
126 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & TRD_Jet_LPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
127 | // "TDRJetLPt_MB", "TDR Jet Low Pt Minimum Bias", | |
128 | // (ULong64_t)0x1 << 23 ); | |
129 | // 25 | |
130 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & TRD_Jet_LPt_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
131 | // "TDRJetLPt_SC", "TDR Jet Low Pt Semi Central", | |
132 | // (ULong64_t)0x1 << 24 ); | |
133 | ||
134 | // 26 | |
135 | // descrip.AddCondition( "(START_Vertex_L0 & VZERO_AND) & PHOS_PbPb_JetHPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
136 | // "PHOSHPt_MB", "PHOS High Pt Minimum Bias", | |
137 | // (ULong64_t)0x1 << 25 ); | |
138 | // 27 | |
139 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & PHOS_PbPb_JetLPt_L1 & ZDC_1_L1", // & TRD_pre_L0 | |
140 | // "PHOSLPt_MB", "PHOS Low Pt Minimum Bias", | |
141 | // (ULong64_t)0x1 << 26 ); | |
142 | // 28 | |
143 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & PHOS_PbPb_JetLPt_L1 & ZDC_2_L1", // & TRD_pre_L0 | |
144 | // "PHOSLPt_SC", "PHOS Low Pt Semi Central", | |
145 | // (ULong64_t)0x1 << 27 ); | |
146 | // 29 | |
147 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & PHOS_MB_PbPb_L0 & ZDC_1_L1", | |
148 | // "PHOSStand-along", "PHOS Stand-along Minimum Bias", | |
149 | // (ULong64_t)0x1 << 28 ); | |
150 | // 30 | |
151 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_PbPb_JetHPt_L1 & ZDC_1_L1", | |
152 | // "EMCALJetHPt_MB", "EMCAL Jet High Pt Minimum Bias", | |
153 | // (ULong64_t)0x1 << 29 ); | |
154 | // 31 | |
155 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_PbPb_JetMPt_L1 & ZDC_1_L1", | |
156 | // "EMCALJetMPt_MB", "EMCAL Jet Medium Pt Minimum Bias", | |
157 | // (ULong64_t)0x1 << 30 ); | |
158 | // 32 | |
159 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_AND & EMCAL_PbPb_JetLPt_L1 & ZDC_1_L1", | |
160 | // "EMCALJetLPt_MB", "EMCAL Jet Low Pt Minimum Bias", | |
161 | // (ULong64_t)0x1 << 31 ); | |
162 | // 33 | |
163 | // descrip.AddCondition( "START_Vertex_L0 & VZERO_OR & EMCAL_PbPb_JetLPt_L1 & ZDC_2_L1", | |
164 | // "EMCALJetLPt_SC", "EMCAL Jet Low Pt Semi Central", | |
165 | // (ULong64_t)0x1 << 32 ); | |
166 | // 34 | |
167 | descrip.AddCondition( "ZDC_EMD_L1", // CRT_L0 | |
168 | "ZDC_diss", "ZDC EMD Event", | |
169 | (ULong64_t)0x1 << 33 ); | |
170 | // 35 | |
171 | // descrip.AddCondition( "CRT_cosmic_L0", | |
172 | // "CRT_cosmic", "CRT cosmic telescope", | |
173 | // (ULong64_t)0x1 << 34 ); | |
174 | ||
175 | // 36 | |
176 | descrip.AddCondition( "!START_Vertex_L0", | |
177 | "Beam-gas", "Beam Gas Event", | |
178 | (ULong64_t)0x1 << 35 ); | |
179 | ||
180 | ||
181 | cout << endl << endl; | |
182 | ||
183 | if( !descrip.CheckInputsConditions("Config.C") ) { | |
184 | cerr << "\n ERROR: There are some problems on descriptor definition..." << endl; | |
185 | return; | |
186 | } | |
187 | ||
188 | cout << endl << endl; | |
189 | ||
190 | cout << "************************************************************" << endl; | |
191 | cout << "New Trigger descriptor" << endl; | |
192 | cout << "************************************************************" << endl; | |
193 | descrip.Print(); | |
194 | ||
195 | // save the descriptor to file | |
196 | descrip.WriteDescriptor(); | |
197 | ||
198 | cout << endl << endl << endl; | |
199 | cout << "************************************************************" << endl; | |
200 | cout << "Available Trigger descriptors" << endl; | |
201 | cout << "************************************************************" << endl; | |
202 | ||
203 | // Get and print all available descriptors | |
204 | TObjArray* desc = AliTriggerDescriptor::GetAvailableDescriptors(); | |
205 | ||
206 | if( !desc || !desc->GetEntriesFast() ) { | |
207 | cerr << "Not descriptors availables" << endl; | |
208 | return; | |
209 | } | |
210 | ||
211 | Int_t ndesc = desc->GetEntriesFast(); | |
212 | for( Int_t j=0; j<ndesc; j++ ) { | |
213 | AliTriggerDescriptor* de = (AliTriggerDescriptor*)desc->At(j); | |
214 | de->Print(); | |
215 | } | |
216 | ||
217 | } | |
218 |