16 ''' Function to configure TileAANtuple algorithm.'''
19 cisRun = flags.Tile.RunType
is TileRunType.CIS
20 laserRun = flags.Tile.RunType
is TileRunType.LAS
21 pedestalRun = flags.Tile.RunType
is TileRunType.PED
22 physicsRun = flags.Tile.RunType
is TileRunType.PHY
24 readDigits = flags.Tile.readDigits
26 kwargs.setdefault(
'UseDspUnits',
False)
27 useDspUnits = kwargs[
'UseDspUnits']
34 elif not (pedestalRun
or physicsRun):
37 kwargs.setdefault(
'TileDigitsContainer',
'TileDigitsCnt' if readDigits
else "")
38 kwargs.setdefault(
'TileDigitsContainerFlt',
'TileDigitsFlt' if not readDigits
else "")
39 kwargs.setdefault(
'TileRawChannelContainer', flags.Tile.RawChannelContainer)
40 kwargs.setdefault(
'TileRawChannelContainerFit',
'TileRawChannelFit' if flags.Tile.doFit
else "")
41 kwargs.setdefault(
'TileRawChannelContainerFitCool',
'TileRawChannelFitCool' if flags.Tile.doFitCOOL
else "")
42 kwargs.setdefault(
'TileRawChannelContainerOpt',
"")
43 kwargs.setdefault(
'TileRawChannelContainerQIE',
'TileRawChannelQIE' if flags.Tile.doQIE
else "")
44 kwargs.setdefault(
'TileRawChannelContainerOF1',
'TileRawChannelOF1' if flags.Tile.doOF1
else "")
45 kwargs.setdefault(
'TileRawChannelContainerMF',
'TileRawChannelMF' if flags.Tile.doMF
else "")
46 kwargs.setdefault(
'TileRawChannelContainerWiener',
"")
47 kwargs.setdefault(
'TileRawChannelContainerDsp',
"")
48 kwargs.setdefault(
'TileLaserObject',
'TileLaserObj' if laserRun
else "")
49 kwargs.setdefault(
'TileBeamElemContainer',
'TileBeamElemCnt' if not physicsRun
else "")
51 kwargs.setdefault(
'TileMuRcvRawChannelContainer',
'MuRcvRawChCnt' if saveTMDB
else "")
52 kwargs.setdefault(
'TileMuRcvDigitsContainer',
'MuRcvDigitsCnt' if saveTMDB
else "")
53 kwargs.setdefault(
'TileMuRcvContainer',
"TileMuRcvCnt" if saveTMDB
else "")
55 kwargs.setdefault(
'CheckDCS', flags.Tile.useDCS)
56 kwargs.setdefault(
'BSInput', flags.Input.Format
is Format.BS
and not physicsRun)
57 kwargs.setdefault(
'CalibMode', pedestalRun
or cisRun)
58 kwargs.setdefault(
'CalibrateEnergy', flags.Input.isMC
or useDspUnits
or not cisRun)
59 kwargs.setdefault(
'OfflineUnits', offlineUnits)
63 from TileGeoModel.TileGMConfig
import TileGMCfg
66 from LArGeoAlgsNV.LArGMConfig
import LArGMCfg
69 from TileConditions.TileCablingSvcConfig
import TileCablingSvcCfg
72 if 'TileBadChanTool' not in kwargs:
73 from TileConditions.TileBadChannelsConfig
import TileBadChannelsCondAlgCfg
76 if 'TileCondToolEmscale' not in kwargs:
77 from TileConditions.TileEMScaleConfig
import TileCondToolEmscaleCfg
79 kwargs[
'TileCondToolEmscale'] = emScaleTool
81 if kwargs[
'CheckDCS']:
82 from TileConditions.TileDCSConfig
import TileDCSCondAlgCfg
85 from TileRecUtils.TileDQstatusConfig
import TileDQstatusAlgCfg
89 run =
str(flags.Input.RunNumbers[0])
90 outputFile =
'tile_{}.aan.root'.
format(run)
91 histsvc = CompFactory.THistSvc()
92 histsvc.Output += [
"%s DATAFILE='%s' OPT='RECREATE'" % (
'AANT', outputFile)]
93 acc.addService(histsvc)
95 TileAANtuple = CompFactory.TileAANtuple
96 acc.addEventAlgo(
TileAANtuple(
'TileNtuple', **kwargs), primary =
True)