9def LArRawChannelBuilderAlgCfg(flags, **kwargs):
10
11 acc = LArADC2MeVCondAlgCfg(flags)
12
13 kwargs.setdefault("name", "LArRawChannelBuilder")
14 kwargs.setdefault("firstSample", flags.LAr.ROD.FirstSample)
15 obj = "AthenaAttributeList"
16 dspkey = 'Run2DSPThresholdsKey'
17 from IOVDbSvc.IOVDbSvcConfig import addFolders
18 if flags.Input.isMC:
19
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)
25 dspkey = ''
26 else:
27 fld="/LAR/NoiseOfl/DSPThresholds"
28 sgkey=fld
29 dbString="OFLP200"
30 dbInstance="LAR_OFL"
31 acc.merge(addFolders(flags,fld, dbInstance, className=obj, db=dbString))
32
33 if flags.Common.ProductionStep is ProductionStep.PileUpPresampling:
34 kwargs.setdefault("LArDigitKey", flags.Overlay.BkgPrefix + "LArDigitContainer_MC")
35 else:
36 kwargs.setdefault("LArDigitKey", "LArDigitContainer_MC")
37 else:
38 acc.merge(LArElecCalibDBCfg(flags,("OFC","Shape","Pedestal")))
39 if flags.Overlay.DataOverlay:
40 kwargs.setdefault("LArDigitKey", "LArDigitContainer_MC")
41 kwargs.setdefault("LArRawChannelKey", "LArRawChannels")
42 else:
43 kwargs.setdefault("LArRawChannelKey", "LArRawChannels_FromDigits")
44 if 'COMP200' in flags.IOVDb.DatabaseInstance:
45 fld='/LAR/Configuration/DSPThreshold/Thresholds'
46 obj='LArDSPThresholdsComplete'
47 dspkey = 'Run1DSPThresholdsKey'
48 sgkey='LArDSPThresholds'
49 dbString = 'COMP200'
50 else:
51 fld="/LAR/Configuration/DSPThresholdFlat/Thresholds"
52 sgkey=fld
53 dbString="CONDBR2"
54 dbInstance="LAR_ONL"
55 acc.merge(addFolders(flags,fld, dbInstance, className=obj, db=dbString))
56
57 kwargs.setdefault(dspkey, sgkey)
58
59 if flags.LAr.ROD.forceIter or flags.LAr.RawChannelSource is RawChannelSource.Calculated:
60
61 kwargs.setdefault('minSample',2)
62 kwargs.setdefault('maxSample',12)
63 kwargs.setdefault('minADCforIterInSigma',4)
64 kwargs.setdefault('minADCforIter',15)
65 kwargs.setdefault('defaultPhase',12)
66 nominalPeakSample=2
68 larformat=getLArFormatForRun(flags.Input.RunNumbers[0],connstring="COOLONL_LAR/"+flags.IOVDb.DatabaseInstance)
69 if larformat is not None:
70 nominalPeakSample = larformat.firstSample()
71 else:
72 print(
"WARNING: larformat not found, use nominalPeakSample = 2")
73 nominalPeakSample = 2
74 if (nominalPeakSample > 1) :
75 kwargs.setdefault('DefaultShiftTimeSample',nominalPeakSample-2)
76 else :
77 kwargs.setdefault('DefaultShiftTimeSample',0)
78
79 acc.addEventAlgo(CompFactory.LArRawChannelBuilderIterAlg(**kwargs))
80 else:
81
82 acc.addEventAlgo(CompFactory.LArRawChannelBuilderAlg(**kwargs))
83
84 return acc
85
86
void print(char *figname, TCanvas *c1)