00214 :
00215
00216 self.data += """
00217 # CMSSW version specific customizations
00218 import os
00219 cmsswVersion = os.environ['CMSSW_VERSION']
00220
00221 # customization for CMSSW_5_2_X
00222 if cmsswVersion.startswith('CMSSW_5_2_'):
00223
00224 # force the use of the correct calo jet energy corrections
00225 if 'hltESPL1FastJetCorrectionESProducer' in %(dict)s:
00226 %(process)shltESPL1FastJetCorrectionESProducer.algorithm = "AK5CaloHLT"
00227
00228 if 'hltESPL2RelativeCorrectionESProducer' in %(dict)s:
00229 %(process)shltESPL2RelativeCorrectionESProducer.algorithm = "AK5CaloHLT"
00230
00231 if 'hltESPL3AbsoluteCorrectionESProducer' in %(dict)s:
00232 %(process)shltESPL3AbsoluteCorrectionESProducer.algorithm = "AK5CaloHLT"
00233
00234
00235 # customization for CMSSW_5_3_X
00236 if cmsswVersion.startswith('CMSSW_5_3_'):
00237
00238 # do not override the calo jet energy corrections in 5.3.x for consistency with the current MC samples
00239 pass
00240
00241
00242 # customization for CMSSW_6_1_X and 6_2_X
00243 if cmsswVersion.startswith('CMSSW_6_1_') or cmsswVersion.startswith('CMSSW_6_2_'):
00244
00245 # force the use of the correct calo jet energy corrections
00246 if 'hltESPL1FastJetCorrectionESProducer' in %(dict)s:
00247 %(process)shltESPL1FastJetCorrectionESProducer.algorithm = "AK5CaloHLT"
00248
00249 if 'hltESPL2RelativeCorrectionESProducer' in %(dict)s:
00250 %(process)shltESPL2RelativeCorrectionESProducer.algorithm = "AK5CaloHLT"
00251
00252 if 'hltESPL3AbsoluteCorrectionESProducer' in %(dict)s:
00253 %(process)shltESPL3AbsoluteCorrectionESProducer.algorithm = "AK5CaloHLT"
00254
00255 # adapt the HLT menu to the "prototype for Event Interpretation" development
00256 if 'hltPFPileUp' in %(dict)s:
00257 # define new PFCandidateFwdPtrProducer module
00258 %(process)shltParticleFlowPtrs = cms.EDProducer("PFCandidateFwdPtrProducer",
00259 src = cms.InputTag('hltParticleFlow')
00260 )
00261 # add the new module before the hltPFPileUp module
00262 _sequence = None
00263 for _sequence in [ _sequence for _sequence in %(dict)s.itervalues() if isinstance(_sequence, cms._ModuleSequenceType)]:
00264 try:
00265 _sequence.insert( _sequence.index(%(process)shltPFPileUp), %(process)shltParticleFlowPtrs )
00266 except ValueError:
00267 pass
00268 # reconfigure hltPFPileUp and hltPFNoPileUp to use the new module
00269 %(process)shltPFPileUp.PFCandidates = cms.InputTag( "hltParticleFlowPtrs" )
00270 %(process)shltPFNoPileUp.bottomCollection = cms.InputTag( "hltParticleFlowPtrs" )
00271
00272
00273 # customization for CMSSW_6_2_X only
00274 if cmsswVersion.startswith('CMSSW_6_2_'):
00275 # /Geometry/TrackerNumberingBuilder/trackerTopologyConstants_cfi.py
00276 %(process)strackerTopologyConstants = cms.ESProducer('TrackerTopologyEP',
00277 pxb_layerStartBit = cms.uint32(16),
00278 pxb_ladderStartBit = cms.uint32(8),
00279 pxb_moduleStartBit = cms.uint32(2),
00280 pxb_layerMask = cms.uint32(15),
00281 pxb_ladderMask = cms.uint32(255),
00282 pxb_moduleMask = cms.uint32(63),
00283 pxf_sideStartBit = cms.uint32(23),
00284 pxf_diskStartBit = cms.uint32(16),
00285 pxf_bladeStartBit = cms.uint32(10),
00286 pxf_panelStartBit = cms.uint32(8),
00287 pxf_moduleStartBit = cms.uint32(2),
00288 pxf_sideMask = cms.uint32(3),
00289 pxf_diskMask = cms.uint32(15),
00290 pxf_bladeMask = cms.uint32(63),
00291 pxf_panelMask = cms.uint32(3),
00292 pxf_moduleMask = cms.uint32(63),
00293 tec_sideStartBit = cms.uint32(18),
00294 tec_wheelStartBit = cms.uint32(14),
00295 tec_petal_fw_bwStartBit = cms.uint32(12),
00296 tec_petalStartBit = cms.uint32(8),
00297 tec_ringStartBit = cms.uint32(5),
00298 tec_moduleStartBit = cms.uint32(2),
00299 tec_sterStartBit = cms.uint32(0),
00300 tec_sideMask = cms.uint32(3),
00301 tec_wheelMask = cms.uint32(15),
00302 tec_petal_fw_bwMask = cms.uint32(3),
00303 tec_petalMask = cms.uint32(15),
00304 tec_ringMask = cms.uint32(7),
00305 tec_moduleMask = cms.uint32(7),
00306 tec_sterMask = cms.uint32(3),
00307 tib_layerStartBit = cms.uint32(14),
00308 tib_str_fw_bwStartBit = cms.uint32(12),
00309 tib_str_int_extStartBit = cms.uint32(10),
00310 tib_strStartBit = cms.uint32(4),
00311 tib_moduleStartBit = cms.uint32(2),
00312 tib_sterStartBit = cms.uint32(0),
00313 tib_layerMask = cms.uint32(7),
00314 tib_str_fw_bwMask = cms.uint32(3),
00315 tib_str_int_extMask = cms.uint32(3),
00316 tib_strMask = cms.uint32(63),
00317 tib_moduleMask = cms.uint32(3),
00318 tib_sterMask = cms.uint32(3),
00319 tid_sideStartBit = cms.uint32(13),
00320 tid_wheelStartBit = cms.uint32(11),
00321 tid_ringStartBit = cms.uint32(9),
00322 tid_module_fw_bwStartBit = cms.uint32(7),
00323 tid_moduleStartBit = cms.uint32(2),
00324 tid_sterStartBit = cms.uint32(0),
00325 tid_sideMask = cms.uint32(3),
00326 tid_wheelMask = cms.uint32(3),
00327 tid_ringMask = cms.uint32(3),
00328 tid_module_fw_bwMask = cms.uint32(3),
00329 tid_moduleMask = cms.uint32(31),
00330 tid_sterMask = cms.uint32(3),
00331 tob_layerStartBit = cms.uint32(14),
00332 tob_rod_fw_bwStartBit = cms.uint32(12),
00333 tob_rodStartBit = cms.uint32(5),
00334 tob_moduleStartBit = cms.uint32(2),
00335 tob_sterStartBit = cms.uint32(0),
00336 tob_layerMask = cms.uint32(7),
00337 tob_rod_fw_bwMask = cms.uint32(3),
00338 tob_rodMask = cms.uint32(127),
00339 tob_moduleMask = cms.uint32(7),
00340 tob_sterMask = cms.uint32(3),
00341 appendToDataLabel = cms.string('')
00342 )
00343
00344 """