6def LArToCoolInlineCfg(flags,inputFolders,singleV=True):
7
8 from LArCalibProcessing.LArCalibBaseConfig import LArCalibBaseCfg
9 result=LArCalibBaseCfg(flags)
10 from LArCabling.LArCablingConfig import LArOnOffIdMappingCfg
11 result.merge(LArOnOffIdMappingCfg(flags))
12 if flags.LArCalib.isSC:
13 from LArCabling.LArCablingConfig import LArOnOffIdMappingSCCfg
14 result.merge(LArOnOffIdMappingSCCfg(flags))
15
16 theLArCompleteToFlat = CompFactory.LArCompleteToFlat(FakeEMBPSLowGain = not flags.LArCalib.isSC, isSC=flags.LArCalib.isSC)
17 theLArCompleteToFlat.OutputLevel = 2
18
19 outTypes = []
20 overrides = []
21 outTags=[]
22 for (fldr,ftag,key,classtype) in inputFolders:
23 if "Pedestal" in fldr:
24 outTypes.append("Pedestal")
25 theLArCompleteToFlat.PedestalInput=key
26 overrides.extend(["Pedestal", "PedestalRMS"])
27 elif "Ramp" in fldr:
28 outTypes.append("Ramp")
29 theLArCompleteToFlat.RampInput=key
30 overrides.extend(["RampVec"])
31 elif "OFC" in fldr:
32 if 'CaliWave' in fldr:
33 outTypes.append("OFCCali")
34 theLArCompleteToFlat.OFCCaliInput=key
35 else:
36 outTypes.append("OFC")
37 theLArCompleteToFlat.OFCInput=key
38 overrides.extend(["OFCa", "OFCb","TimeOffset"])
39 elif "MphysOverMcal" in fldr:
40 outTypes.append("MphysOverMcal")
41 theLArCompleteToFlat.MphysOverMcalInput=key
42 overrides.extend(["MphysOverMcal"])
43 elif "Shape" in fldr:
44 outTypes.append("Shape")
45 theLArCompleteToFlat.ShapeInput=key
46 overrides.extend(["Shape","ShapeDer"])
47
48 from IOVDbSvc.IOVDbSvcConfig import addFolders
49 if len(ftag):
50 result.merge(addFolders(flags,fldr,detDb=flags.LArCalib.Input.Database,tag=ftag))
51 if not singleV:
52 outTags.append(ftag)
53 else:
54 outTags.append("")
55 else:
56 result.merge(addFolders(flags,fldr,detDb=flags.LArCalib.Input.Database))
57 outTags.append("")
58 pass
59
60 result.addEventAlgo(theLArCompleteToFlat)
61
62 flatName="ElecCalibFlat"
63 if flags.LArCalib.isSC:
64 flatName+="SC"
65 if "outObjects" not in dir():
66 outObjects=["CondAttrListCollection#/LAR/"+flatName+"/"+ot for ot in outTypes]
67
68 print(
"outObjects are: ",outObjects)
69
70 from RegistrationServices.OutputConditionsAlgConfig import OutputConditionsAlgCfg
71 result.merge(OutputConditionsAlgCfg(flags,
72 outputFile="dummy.root",
73 ObjectList=outObjects,
74 IOVTagList=outTags,
75 Run1=flags.LArCalib.IOVStart,
76 Run2=flags.LArCalib.IOVEnd
77 ))
78
79 print(
"OVERRIDES ARE:",overrides)
80 types=[]
81 for i in range(len(overrides)):
82 types.append("Blob16M")
83 result.addService(CompFactory.IOVRegistrationSvc(RecreateFolders = True, SVFolder=True,OverrideNames = overrides, OverrideTypes = types))
84 result.getService("IOVDbSvc").DBInstance=""
85
86
87 from McEventSelector.McEventSelectorConfig import McEventSelectorCfg
88 result.merge(McEventSelectorCfg(flags,
89 RunNumber = flags.LArCalib.Input.RunNumbers[0],
90 EventsPerRun = 1,
91 FirstEvent = 1,
92 InitialTimeStamp = 0,
93 TimeStampInterval = 1))
94
95
96 return result
97
void print(char *figname, TCanvas *c1)