230def channelSelectionFromString(Partition,PartitionType, PartitionTypeGeneric, GainList):
231 print(
'LArExtendedSubDetGrouping')
232 print(
'Partition: ',Partition)
233 print(
'PGen: ',PartitionTypeGeneric)
234
235
236
237
238
239
240
241 if ( GainList[0]=="HIGH" ):
242 gain= [0]
243
244
245 elif ( GainList[0]=="MEDIUM" ) :
246 gain= [1]
247
248
249 elif ( GainList[0]=="LOW" ) :
250 gain= [2]
251
252 else:
253 gain=[0,1,2]
254
255
256
257
258 if ( Partition=='EB-EMBA' and ( PartitionTypeGeneric!='EMBPS' ) ) :
259 partition =['EMBA']
260 print(
'EMBA partition')
261 elif ( Partition=='EB-EMBC' and ( PartitionTypeGeneric!='EMBPS' ) ) :
262 partition =['EMBC']
263 print(
'EMBC partition')
264 elif ( Partition=='EB-EMB' and ( PartitionTypeGeneric!='EMBPS' ) ) :
265 partition =['EMBA','EMBC']
266 print(
'EMB partition')
267
268
269 if ( Partition=='EB-EMBA' and ( PartitionTypeGeneric=='EMBPS' ) ) :
270 partition =['EMBAPS']
271 print(
'EMBAPS partition')
272 elif ( Partition=='EB-EMBC' and ( PartitionTypeGeneric=='EMBPS' ) ) :
273 partition =['EMBCPS']
274 print(
'EMBCPS partition')
275 elif ( Partition=='EB-PS' and ( PartitionTypeGeneric=='EMBPS' ) ) :
276 partition =['EMBAPS','EMBCPS']
277 print(
'EMBAPS and EMBCPS partition')
278
279 if ( Partition=='EB-EM' ) :
280 partition =['EMBAPS','EMBCPS','EMBA','EMBC','EMECAPS','EMECA','EMECCPS','EMECC']
281 print(
'EM partition')
282
283
284 if ( Partition=='EB-EMECA' ) :
285 partition =['EMECAPS','EMECA']
286 elif ( Partition=='EB-EMECC' ) :
287 partition =['EMECCPS','EMECC']
288 elif ( Partition=='EB-EMEC' ) :
289 partition =['EMECAPS','EMECA','EMECCPS','EMECC']
290
291 elif ( PartitionType=='HEC'):
292 partition =['HECA','HECC']
293
294
295 elif ( PartitionType=='FCAL') :
296 partition =['FCALA','FCALC']
297
298 elif ( Partition=='HECFCALC') :
299 partition =['HECC','FCALC']
300
301 selection = _lArExtendedSubDetGrouping.getChannelSelection(partition,gain)
302 ChannelSelection='<channelSelection>'+selection+'</channelSelection>'
303 print(ChannelSelection)
304 print(
"CoolChannel Selection for ", partition,
" and ",gain,
" gain. ")
305 return ChannelSelection
void print(char *figname, TCanvas *c1)