6def LArDTMonitoringConfig(flags,STREAM):
7
8 acc=ComponentAccumulator()
9
10 from LArGeoAlgsNV.LArGMConfig import LArGMCfg
11 acc.merge(LArGMCfg(flags))
12
13 from LArCabling.LArCablingConfig import LArLATOMEMappingCfg
14 acc.merge(LArLATOMEMappingCfg(flags))
15
16 LArRawSCDataReadingAlg=CompFactory.LArRawSCDataReadingAlg
17 acc.addEventAlgo(
LArRawSCDataReadingAlg(LATOMEDecoder = CompFactory.LArLATOMEDecoder(
"LArLATOMEDecoder",ProtectSourceId =
True)))
18
19 from TileGeoModel.TileGMConfig import TileGMCfg
20 acc.merge(TileGMCfg(flags))
21 acc.addCondAlgo(CompFactory.CaloSuperCellAlignCondAlg('CaloSuperCellAlignCondAlg'))
22
23 from LArBadChannelTool.LArBadChannelConfig import LArBadChannelCfg
24 acc.merge(LArBadChannelCfg(flags, isSC=True))
25
26 from AthenaCommon.Logging import logging
27 mlog = logging.getLogger( 'RecoPT_Phase1' )
28
30 mlog.info("Run number: "+str(flags.Input.RunNumbers[0]))
31
32 try:
33 runinfo=getLArDTInfoForRun(flags.Input.RunNumbers[0], connstring="COOLONL_LAR/CONDBR2")
34 if 'PEB' in STREAM:
35 streams=runinfo.streamTypesPEB()
36 nsamples=int(runinfo.streamLengthsPEB()[0])
37 else:
38 streams=runinfo.streamTypes()
39 nsamples=int(runinfo.streamLengths()[0])
40 except Exception as e:
41 mlog.warning("Could not get DT run info")
42 mlog(e)
43 streams=["ADC","SelectedEnergy"]
44 nsamples=32
45
46 if nsamples >= 4:
47 nenergies=1
48 else:
49 nenergies=0
50
51 larLATOMEBuilderAlg=CompFactory.LArLATOMEBuilderAlg("LArLATOMEBuilderAlg",LArDigitKey="SC", isADCBas=False, nEnergies=nenergies)
52 acc.addEventAlgo(larLATOMEBuilderAlg)
53
54 from LArMonitoring.LArDigitalTriggMonAlg import LArDigitalTriggMonConfig
55 acc.merge(LArDigitalTriggMonConfig(flags, larLATOMEBuilderAlg, nsamples, streams))
56
57 return acc
58
59
60
61