File indexing completed on 2024-12-01 23:40:05
0001
0002
0003 import FWCore.ParameterSet.Config as cms
0004
0005 process = cms.Process("L1ConfigWritePayloadDummy")
0006 process.load("FWCore.MessageLogger.MessageLogger_cfi")
0007 process.MessageLogger.cout.enable = cms.untracked.bool(True)
0008 process.MessageLogger.cout.threshold = cms.untracked.string('DEBUG')
0009 process.MessageLogger.debugModules = cms.untracked.vstring('*')
0010
0011 import FWCore.ParameterSet.VarParsing as VarParsing
0012 options = VarParsing.VarParsing()
0013 options.register('objectKey',
0014 'dummy',
0015 VarParsing.VarParsing.multiplicity.singleton,
0016 VarParsing.VarParsing.varType.string,
0017 "object key")
0018 options.register('objectType',
0019 'L1RCTParameters',
0020 VarParsing.VarParsing.multiplicity.singleton,
0021 VarParsing.VarParsing.varType.string,
0022 "object C++ type")
0023 options.register('recordName',
0024 'L1RCTParametersRcd',
0025 VarParsing.VarParsing.multiplicity.singleton,
0026 VarParsing.VarParsing.varType.string,
0027 "Name of EventSetup record")
0028 options.register('tagBase',
0029 'IDEAL',
0030 VarParsing.VarParsing.multiplicity.singleton,
0031 VarParsing.VarParsing.varType.string,
0032 "IOV tags = object_{tagBase}")
0033 options.register('useO2OTags',
0034 0,
0035 VarParsing.VarParsing.multiplicity.singleton,
0036 VarParsing.VarParsing.varType.int,
0037 "0 = use uniform tags, 1 = ignore tagBase and use O2O tags")
0038 options.register('genFromOMDS',
0039 0,
0040 VarParsing.VarParsing.multiplicity.singleton,
0041 VarParsing.VarParsing.varType.int,
0042 "0 = use dummy payloads, 1 = generate payloads from OMDS")
0043 options.register('outputDBConnect',
0044 'sqlite_file:l1config.db',
0045 VarParsing.VarParsing.multiplicity.singleton,
0046 VarParsing.VarParsing.varType.string,
0047 "Connection string for output DB")
0048 options.register('outputDBAuth',
0049 '.',
0050 VarParsing.VarParsing.multiplicity.singleton,
0051 VarParsing.VarParsing.varType.string,
0052 "Authentication path for outputDB")
0053 options.register('overwriteKey',
0054 0,
0055 VarParsing.VarParsing.multiplicity.singleton,
0056 VarParsing.VarParsing.varType.int,
0057 "Overwrite existing key")
0058 options.register('startup',
0059 0,
0060 VarParsing.VarParsing.multiplicity.singleton,
0061 VarParsing.VarParsing.varType.int,
0062 "Use L1StartupConfig_cff instead of L1DummyConfig_cff")
0063 options.register('rpcFileDir',
0064 '',
0065 VarParsing.VarParsing.multiplicity.singleton,
0066 VarParsing.VarParsing.varType.string,
0067 "Replacement value of rpcconf.filedir; no replacement by default")
0068 options.register('rpcPACsPerTower',
0069 -999,
0070 VarParsing.VarParsing.multiplicity.singleton,
0071 VarParsing.VarParsing.varType.int,
0072 "Replacement value of rpcconf.PACsPerTower; no replacement by default")
0073 options.register('rpcBxOrFirstBx',
0074 -999,
0075 VarParsing.VarParsing.multiplicity.singleton,
0076 VarParsing.VarParsing.varType.int,
0077 "Replacement value of l1RPCBxOrConfig.firstBX; no replacement by default")
0078 options.register('rpcBxOrLastBx',
0079 -999,
0080 VarParsing.VarParsing.multiplicity.singleton,
0081 VarParsing.VarParsing.varType.int,
0082 "Replacement value of l1RPCBxOrConfig.lastBX; no replacement by default")
0083 options.register('rpcHsb0Mask',
0084 [-999],
0085 VarParsing.VarParsing.multiplicity.list,
0086 VarParsing.VarParsing.varType.int,
0087 "Replacement value of l1RPCHsbConfig.hsb0Mask; no replacement by default")
0088 options.register('rpcHsb1Mask',
0089 [-999],
0090 VarParsing.VarParsing.multiplicity.list,
0091 VarParsing.VarParsing.varType.int,
0092 "Replacement value of l1RPCHsbConfig.hsb1Mask; no replacement by default")
0093 options.register('gmtVersionSortRankEtaQLUT',
0094 -999,
0095 VarParsing.VarParsing.multiplicity.singleton,
0096 VarParsing.VarParsing.varType.int,
0097 "Replacement value of L1MuGMTParameters.VersionSortRankEtaQLUT; no replacement by default")
0098 options.parseArguments()
0099
0100
0101 if options.useO2OTags == 0:
0102 from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum
0103 from CondTools.L1Trigger.L1UniformTags_cfi import initL1UniformTags
0104 initL1UniformTags( tagBase = options.tagBase )
0105 tagBaseVec = initL1UniformTags.tagBaseVec
0106 else:
0107 from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum
0108 from CondTools.L1Trigger.L1O2OTags_cfi import initL1O2OTags
0109 initL1O2OTags()
0110 tagBaseVec = initL1O2OTags.tagBaseVec
0111
0112
0113 process.load("CondTools.L1Trigger.L1TriggerKeyDummy_cff")
0114 process.L1TriggerKeyDummy.objectKeys = cms.VPSet(cms.PSet(
0115 record = cms.string(options.recordName),
0116 type = cms.string(options.objectType),
0117 key = cms.string(options.objectKey)
0118 ))
0119
0120
0121 process.load("CondCore.DBCommon.CondDBCommon_cfi")
0122 process.outputDB = cms.ESSource("PoolDBESSource",
0123 process.CondDBCommon,
0124 toGet = cms.VPSet(cms.PSet(
0125 record = cms.string('L1TriggerKeyListRcd'),
0126 tag = cms.string('L1TriggerKeyList_' + tagBaseVec[ L1CondEnum.L1TriggerKeyList ])
0127 ))
0128 )
0129 process.es_prefer_outputDB = cms.ESPrefer("PoolDBESSource","outputDB")
0130 process.outputDB.connect = cms.string(options.outputDBConnect)
0131 process.outputDB.DBParameters.authenticationPath = cms.untracked.string(options.outputDBAuth)
0132
0133 if options.genFromOMDS == 0:
0134
0135 if options.startup == 0:
0136 process.load("L1Trigger.Configuration.L1DummyConfig_cff")
0137 process.load("L1TriggerConfig.L1GtConfigProducers.Luminosity.lumi1031.L1Menu_MC2009_v2_L1T_Scales_20090624_Imp0_Unprescaled_cff")
0138 else:
0139 process.load("L1Trigger.Configuration.L1StartupConfig_cff")
0140 process.load("L1TriggerConfig.L1GtConfigProducers.Luminosity.startup.L1Menu_Commissioning2009_v3_L1T_Scales_20080926_startup_Imp0_Unprescaled_cff")
0141
0142 process.l1CSCTFConfig.ptLUT_path = '/afs/cern.ch/cms/MUON/csc/fast1/track_finder/luts/PtLUT.dat'
0143
0144
0145 if options.rpcFileDir != "":
0146 process.rpcconf.filedir = options.rpcFileDir
0147 print("New rpcconf.filedir =", process.rpcconf.filedir)
0148 if options.rpcPACsPerTower != -999:
0149 process.rpcconf.PACsPerTower = options.rpcPACsPerTower
0150 print("New rpcconf.PACsPerTower =", process.rpcconf.PACsPerTower)
0151 if options.rpcBxOrFirstBx != -999:
0152 process.l1RPCBxOrConfig.firstBX = options.rpcBxOrFirstBx
0153 print("New l1RPCBxOrConfig.firstBX =", process.l1RPCBxOrConfig.firstBX)
0154 if options.rpcBxOrLastBx != -999:
0155 process.l1RPCBxOrConfig.lastBX = options.rpcBxOrLastBx
0156 print("New l1RPCBxOrConfig.lastBX =", process.l1RPCBxOrConfig.lastBX)
0157 if options.rpcHsb0Mask != [[-999]]:
0158 process.l1RPCHsbConfig.hsb0Mask = options.rpcHsb0Mask
0159 print("New l1RPCHsbConfig.hsb0Mask =", process.l1RPCHsbConfig.hsb0Mask)
0160 if options.rpcHsb1Mask != [[-999]]:
0161 process.l1RPCHsbConfig.hsb1Mask = options.rpcHsb1Mask
0162 print("New l1RPCHsbConfig.hsb1Mask =", process.l1RPCHsbConfig.hsb1Mask)
0163 if options.gmtVersionSortRankEtaQLUT != -999:
0164 process.L1MuGMTParameters.VersionSortRankEtaQLUT = options.gmtVersionSortRankEtaQLUT
0165 print("New L1MuGMTParameters.VersionSortRankEtaQLUT =", options.gmtVersionSortRankEtaQLUT)
0166 else:
0167
0168 process.load("CondTools.L1Trigger.L1ConfigTSCPayloads_cff")
0169 process.load("CondTools.L1Trigger.L1ConfigRSPayloads_cff")
0170
0171
0172 from CondTools.L1Trigger.L1CondDBPayloadWriter_cff import initPayloadWriter
0173 initPayloadWriter( process,
0174 outputDBConnect = options.outputDBConnect,
0175 outputDBAuth = options.outputDBAuth,
0176 tagBaseVec = tagBaseVec )
0177 process.L1CondDBPayloadWriter.writeL1TriggerKey = False
0178
0179 if options.overwriteKey == 0:
0180 process.L1CondDBPayloadWriter.overwriteKeys = False
0181 else:
0182 process.L1CondDBPayloadWriter.overwriteKeys = True
0183 if options.genFromOMDS != 0:
0184 process.CSCTFConfigOnline.forceGeneration = True
0185 process.L1MuCSCPtLutConfigOnline.forceGeneration = True
0186 process.L1MuDTEtaPatternLutOnline.forceGeneration = True
0187 process.L1MuDTExtLutOnline.forceGeneration = True
0188 process.L1MuDTPhiLutOnline.forceGeneration = True
0189 process.L1MuDTPtaLutOnline.forceGeneration = True
0190 process.L1MuDTQualPatternLutOnline.forceGeneration = True
0191 process.L1RPCConfigOnline.forceGeneration = True
0192 process.L1RPCConeDefinitionOnline.forceGeneration = True
0193 process.L1RPCHsbConfigOnline.forceGeneration = True
0194 process.L1RPCBxOrConfigOnline.forceGeneration = True
0195 process.L1MuGMTParametersOnlineProducer.forceGeneration = True
0196 process.L1MuTriggerPtScaleOnlineProducer.forceGeneration = True
0197 process.L1MuTriggerScalesOnlineProducer.forceGeneration = True
0198 process.L1RCTParametersOnline.forceGeneration = True
0199 process.L1EmEtScaleConfigOnline.forceGeneration = True
0200 process.L1CaloEcalScaleConfigOnline.forceGeneration = True
0201 process.L1CaloHcalScaleConfigOnline.forceGeneration = True
0202 process.L1GctJetFinderParamsOnline.forceGeneration = True
0203 process.L1HtMissScaleOnline.forceGeneration = True
0204 process.L1HfRingEtScaleOnline.forceGeneration = True
0205 process.L1JetEtScaleOnline.forceGeneration = True
0206 process.l1GtParametersOnline.forceGeneration = True
0207 process.l1GtPsbSetupOnline.forceGeneration = True
0208 process.l1GtTriggerMenuOnline.forceGeneration = True
0209 process.L1MuDTTFMasksOnline.forceGeneration = True
0210 process.L1RCTChannelMaskOnline.forceGeneration = True
0211 process.L1GctChannelMaskOnline.forceGeneration = True
0212 process.L1MuGMTChannelMaskConfigOnline.forceGeneration = True
0213 process.l1GtPrescaleFactorsAlgoTrigOnline.forceGeneration = True
0214 process.l1GtPrescaleFactorsTechTrigOnline.forceGeneration = True
0215 process.l1GtTriggerMaskAlgoTrigOnline.forceGeneration = True
0216 process.l1GtTriggerMaskTechTrigOnline.forceGeneration = True
0217 process.l1GtTriggerMaskVetoTechTrigOnline.forceGeneration = True
0218
0219 process.maxEvents = cms.untracked.PSet(
0220 input = cms.untracked.int32(1)
0221 )
0222 process.source = cms.Source("EmptySource")
0223
0224 process.p = cms.Path(process.L1CondDBPayloadWriter)