3from AthenaConfiguration.Enums
import LHCPeriod, ProductionStep, Format
11 acc = LArADC2MeVCondAlgCfg(flags)
13 kwargs.setdefault(
"name",
"LArRawChannelBuilder")
14 kwargs.setdefault(
"firstSample", flags.LAr.ROD.nPreceedingSamples
if flags.LAr.ROD.nPreceedingSamples!=0
else flags.LAr.ROD.FirstSample)
15 obj =
"AthenaAttributeList"
16 dspkey =
'Run2DSPThresholdsKey'
17 from IOVDbSvc.IOVDbSvcConfig
import addFolders
18 if flags.Input.isMC
and flags.Input.Format != Format.BS:
20 acc.merge(LArOFCCondAlgCfg(flags))
21 kwargs.setdefault(
"LArRawChannelKey",
"LArRawChannels")
22 kwargs.setdefault(
"ShapeKey",
"LArShapeSym")
23 if flags.GeoModel.Run
is LHCPeriod.Run1:
24 kwargs.setdefault(
"useDB",
False)
27 fld=
"/LAR/NoiseOfl/DSPThresholds"
31 acc.merge(addFolders(flags,fld, dbInstance, className=obj, db=dbString))
33 if flags.Common.ProductionStep
in [ProductionStep.PileUpPresampling, ProductionStep.PileUpPretracking]:
34 kwargs.setdefault(
"LArDigitKey", flags.Overlay.BkgPrefix +
"LArDigitContainer_MC")
36 kwargs.setdefault(
"LArDigitKey",
"LArDigitContainer_MC")
38 acc.merge(LArElecCalibDBCfg(flags,(
"OFC",
"Shape",
"Pedestal")))
39 if flags.Common.ProductionStep
is ProductionStep.MinbiasPreprocessing:
40 kwargs.setdefault(
"LArDigitKey", f
"{flags.Overlay.BkgPrefix}LArDigitContainer_data")
41 kwargs.setdefault(
"LArRawChannelKey",
"LArRawChannels_FromDigits")
42 elif flags.Overlay.DataOverlay:
43 kwargs.setdefault(
"LArDigitKey",
"LArDigitContainer_MC")
44 kwargs.setdefault(
"LArRawChannelKey",
"LArRawChannels")
46 kwargs.setdefault(
"LArRawChannelKey",
"LArRawChannels_FromDigits")
47 if 'COMP200' in flags.IOVDb.DatabaseInstance:
48 fld=
'/LAR/Configuration/DSPThreshold/Thresholds'
49 obj=
'LArDSPThresholdsComplete'
50 dspkey =
'Run1DSPThresholdsKey'
51 sgkey=
'LArDSPThresholds'
54 fld=
"/LAR/Configuration/DSPThresholdFlat/Thresholds"
58 acc.merge(addFolders(flags,fld, dbInstance, className=obj, db=dbString))
61 kwargs.setdefault(dspkey, sgkey)
63 if flags.LAr.ROD.forceIter
or flags.LAr.RawChannelSource
is RawChannelSource.Calculated:
65 kwargs.setdefault(
'minSample',2)
66 kwargs.setdefault(
'maxSample',12)
67 kwargs.setdefault(
'minADCforIterInSigma',4)
68 kwargs.setdefault(
'minADCforIter',15)
69 kwargs.setdefault(
'defaultPhase',12)
72 larformat=getLArFormatForRun(flags.Input.RunNumbers[0],connstring=
"COOLONL_LAR/"+flags.IOVDb.DatabaseInstance)
73 if larformat
is not None:
74 nominalPeakSample = larformat.firstSample()
76 print(
"WARNING: larformat not found, use nominalPeakSample = 2")
78 if (nominalPeakSample > 1) :
79 kwargs.setdefault(
'DefaultShiftTimeSample',nominalPeakSample-2)
81 kwargs.setdefault(
'DefaultShiftTimeSample',0)
83 acc.addEventAlgo(CompFactory.LArRawChannelBuilderIterAlg(**kwargs))
86 acc.addEventAlgo(CompFactory.LArRawChannelBuilderAlg(**kwargs))
98 from AthenaConfiguration.TestDefaults
import defaultConditionsTags, defaultGeometryTags, defaultTestFiles