Classes | |
class | HLTProcess |
Functions | |
def | _fix_parameter |
def | addGlobalOptions |
untracked parameters with NO default in the code if 'hltHcalDataIntegrityMonitor' in %(dict)s: %(process)shltHcalDataIntegrityMonitor.RawDataLabel = cms.untracked.InputTag("rawDataCollector") if 'hltDt4DSegments' in %(dict)s: %(process)shltDt4DSegments.debug = cms.untracked.bool( False ) """ | |
def | build_source |
def | buildOptions |
def | buildPathList |
def | dumppaths |
def | fixForFastSim |
def | fixForMC |
def | fixPrescales |
def | instrumentErrorEventType |
def | instrumentOpenMode |
def | instrumentTiming |
def | loadAdditionalConditions |
def | loadCff |
def | overrideGlobalTag |
def | overrideL1MenuXml |
def | overrideOutput |
def | overrideParameters |
def | overrideProcessName |
def | runL1Emulator |
def | runL1EmulatorGT |
def | splitter |
def | updateMessageLogger |
Variables | |
all_paths | |
data | |
source |
def confdb::_fix_parameter | ( | self, | |
args | |||
) | [private] |
arguments: name: parameter name (optional) type: parameter type (look for tracked and untracked variants) value: original value replace: replacement value
Definition at line 468 of file confdb.py.
00469 : 00470 """arguments: 00471 name: parameter name (optional) 00472 type: parameter type (look for tracked and untracked variants) 00473 value: original value 00474 replace: replacement value 00475 """ 00476 if 'name' in args: 00477 self.data = re.sub( 00478 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00479 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00480 self.data) 00481 else: 00482 self.data = re.sub( 00483 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00484 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00485 self.data) 00486
def confdb::addGlobalOptions | ( | self | ) |
untracked parameters with NO default in the code if 'hltHcalDataIntegrityMonitor' in %(dict)s: %(process)shltHcalDataIntegrityMonitor.RawDataLabel = cms.untracked.InputTag("rawDataCollector") if 'hltDt4DSegments' in %(dict)s: %(process)shltDt4DSegments.debug = cms.untracked.bool( False ) """
dummyfy hltGetConditions in cff's if 'hltGetConditions' in %(dict)s and 'HLTriggerFirstPath' in %(dict)s : %(process)shltDummyConditions = cms.EDFilter( "HLTBool", result = cms.bool( True ) ) %(process)sHLTriggerFirstPath.replace(%(process)shltGetConditions,%(process)shltDummyConditions) """
Definition at line 450 of file confdb.py.
00451 : 00452 # add global options 00453 self.data += """ 00454 # limit the number of events to be processed 00455 %%(process)smaxEvents = cms.untracked.PSet( 00456 input = cms.untracked.int32( %d ) 00457 ) 00458 """ % self.config.events 00459 00460 if not self.config.profiling: 00461 self.data += """ 00462 # enable the TrigReport and TimeReport 00463 %(process)soptions = cms.untracked.PSet( 00464 wantSummary = cms.untracked.bool( True ) 00465 ) 00466 """ 00467
def confdb::build_source | ( | self | ) |
Definition at line 1254 of file confdb.py.
01255 : 01256 if self.config.input: 01257 # if a dataset or a list of input files was given, use it 01258 if self.config.input[0:8] == 'dataset:': 01259 from dbsFileQuery import dbsFileQuery 01260 # extract the dataset name, and use DBS to fine the list of LFNs 01261 dataset = self.config.input[8:] 01262 query = 'find file where dataset=' + dataset 01263 files = dbsFileQuery(query) 01264 self.source = files 01265 else: 01266 # assume a list of input files 01267 self.source = self.config.input.split(',') 01268 elif self.config.online: 01269 # online we always run on data 01270 self.source = [ "file:/tmp/InputCollection.root" ] 01271 elif self.config.data: 01272 # offline we can run on data... 01273 self.source = [ "file:RelVal_Raw_%s_DATA.root" % self.config.type ] 01274 else: 01275 # ...or on mc 01276 self.source = [ "file:RelVal_Raw_%s_STARTUP.root" % self.config.type ] 01277 01278 self.data += """ 01279 %(process)ssource = cms.Source( "PoolSource", 01280 fileNames = cms.untracked.vstring( 01281 """ 01282 if self.source: 01283 for line in self.source: 01284 self.data += " '%s',\n" % line 01285 self.data += """ ), 01286 secondaryFileNames = cms.untracked.vstring( 01287 """ 01288 if self.parent: 01289 for line in self.parent: 01290 self.data += " '%s',\n" % line 01291 self.data += """ ), 01292 inputCommands = cms.untracked.vstring( 01293 'keep *' 01294 ) 01295 ) 01296 """
def confdb::buildOptions | ( | self | ) |
Definition at line 1010 of file confdb.py.
01011 : 01012 # common configuration for all scenarios 01013 self.options['services'].append( "-FUShmDQMOutputService" ) 01014 01015 if self.config.fragment: 01016 # extract a configuration file fragment 01017 self.options['essources'].append( "-GlobalTag" ) 01018 self.options['essources'].append( "-HepPDTESSource" ) 01019 self.options['essources'].append( "-XMLIdealGeometryESSource" ) 01020 self.options['essources'].append( "-eegeom" ) 01021 self.options['essources'].append( "-es_hardcode" ) 01022 self.options['essources'].append( "-magfield" ) 01023 01024 self.options['esmodules'].append( "-AutoMagneticFieldESProducer" ) 01025 self.options['esmodules'].append( "-SlaveField0" ) 01026 self.options['esmodules'].append( "-SlaveField20" ) 01027 self.options['esmodules'].append( "-SlaveField30" ) 01028 self.options['esmodules'].append( "-SlaveField35" ) 01029 self.options['esmodules'].append( "-SlaveField38" ) 01030 self.options['esmodules'].append( "-SlaveField40" ) 01031 self.options['esmodules'].append( "-VBF0" ) 01032 self.options['esmodules'].append( "-VBF20" ) 01033 self.options['esmodules'].append( "-VBF30" ) 01034 self.options['esmodules'].append( "-VBF35" ) 01035 self.options['esmodules'].append( "-VBF38" ) 01036 self.options['esmodules'].append( "-VBF40" ) 01037 self.options['esmodules'].append( "-CSCGeometryESModule" ) 01038 self.options['esmodules'].append( "-CaloGeometryBuilder" ) 01039 self.options['esmodules'].append( "-CaloTowerHardcodeGeometryEP" ) 01040 self.options['esmodules'].append( "-CastorHardcodeGeometryEP" ) 01041 self.options['esmodules'].append( "-DTGeometryESModule" ) 01042 self.options['esmodules'].append( "-EcalBarrelGeometryEP" ) 01043 self.options['esmodules'].append( "-EcalElectronicsMappingBuilder" ) 01044 self.options['esmodules'].append( "-EcalEndcapGeometryEP" ) 01045 self.options['esmodules'].append( "-EcalLaserCorrectionService" ) 01046 self.options['esmodules'].append( "-EcalPreshowerGeometryEP" ) 01047 self.options['esmodules'].append( "-HcalHardcodeGeometryEP" ) 01048 self.options['esmodules'].append( "-HcalTopologyIdealEP" ) 01049 self.options['esmodules'].append( "-MuonNumberingInitialization" ) 01050 self.options['esmodules'].append( "-ParametrizedMagneticFieldProducer" ) 01051 self.options['esmodules'].append( "-RPCGeometryESModule" ) 01052 self.options['esmodules'].append( "-SiStripGainESProducer" ) 01053 self.options['esmodules'].append( "-SiStripRecHitMatcherESProducer" ) 01054 self.options['esmodules'].append( "-SiStripQualityESProducer" ) 01055 self.options['esmodules'].append( "-StripCPEfromTrackAngleESProducer" ) 01056 self.options['esmodules'].append( "-TrackerDigiGeometryESModule" ) 01057 self.options['esmodules'].append( "-TrackerGeometricDetESModule" ) 01058 self.options['esmodules'].append( "-VolumeBasedMagneticFieldESProducer" ) 01059 self.options['esmodules'].append( "-ZdcHardcodeGeometryEP" ) 01060 self.options['esmodules'].append( "-hcal_db_producer" ) 01061 self.options['esmodules'].append( "-L1GtTriggerMaskAlgoTrigTrivialProducer" ) 01062 self.options['esmodules'].append( "-L1GtTriggerMaskTechTrigTrivialProducer" ) 01063 self.options['esmodules'].append( "-hltESPEcalTrigTowerConstituentsMapBuilder" ) 01064 self.options['esmodules'].append( "-hltESPGlobalTrackingGeometryESProducer" ) 01065 self.options['esmodules'].append( "-hltESPMuonDetLayerGeometryESProducer" ) 01066 self.options['esmodules'].append( "-hltESPTrackerRecoGeometryESProducer" ) 01067 if not self.config.fastsim: 01068 self.options['esmodules'].append( "-CaloTowerGeometryFromDBEP" ) 01069 self.options['esmodules'].append( "-CastorGeometryFromDBEP" ) 01070 self.options['esmodules'].append( "-EcalBarrelGeometryFromDBEP" ) 01071 self.options['esmodules'].append( "-EcalEndcapGeometryFromDBEP" ) 01072 self.options['esmodules'].append( "-EcalPreshowerGeometryFromDBEP" ) 01073 self.options['esmodules'].append( "-HcalGeometryFromDBEP" ) 01074 self.options['esmodules'].append( "-ZdcGeometryFromDBEP" ) 01075 self.options['esmodules'].append( "-XMLFromDBSource" ) 01076 self.options['esmodules'].append( "-sistripconn" ) 01077 01078 self.options['services'].append( "-PrescaleService" ) 01079 self.options['services'].append( "-MessageLogger" ) 01080 self.options['services'].append( "-DQM" ) 01081 self.options['services'].append( "-DQMStore" ) 01082 self.options['services'].append( "-MicroStateService" ) 01083 self.options['services'].append( "-ModuleWebRegistry" ) 01084 self.options['services'].append( "-TimeProfilerService" ) 01085 self.options['services'].append( "-FastTimerService" ) 01086 01087 self.options['psets'].append( "-maxEvents" ) 01088 self.options['psets'].append( "-options" ) 01089 01090 if self.config.fastsim: 01091 # remove components not supported or needed by fastsim 01092 self.options['esmodules'].append( "-navigationSchoolESProducer" ) 01093 self.options['esmodules'].append( "-TransientTrackBuilderESProducer" ) 01094 self.options['esmodules'].append( "-SteppingHelixPropagatorAny" ) 01095 self.options['esmodules'].append( "-OppositeMaterialPropagator" ) 01096 self.options['esmodules'].append( "-MaterialPropagator" ) 01097 self.options['esmodules'].append( "-CaloTowerConstituentsMapBuilder" ) 01098 self.options['esmodules'].append( "-CaloTopologyBuilder" ) 01099 01100 self.options['services'].append( "-UpdaterService" ) 01101 01102 self.options['modules'].append( "hltL3MuonIsolations" ) 01103 self.options['modules'].append( "hltPixelVertices" ) 01104 self.options['modules'].append( "-hltCkfL1SeededTrackCandidates" ) 01105 self.options['modules'].append( "-hltCtfL1SeededithMaterialTracks" ) 01106 self.options['modules'].append( "-hltCkf3HitL1SeededTrackCandidates" ) 01107 self.options['modules'].append( "-hltCtf3HitL1SeededWithMaterialTracks" ) 01108 self.options['modules'].append( "-hltCkf3HitActivityTrackCandidates" ) 01109 self.options['modules'].append( "-hltCtf3HitActivityWithMaterialTracks" ) 01110 self.options['modules'].append( "-hltActivityCkfTrackCandidatesForGSF" ) 01111 self.options['modules'].append( "-hltL1SeededCkfTrackCandidatesForGSF" ) 01112 self.options['modules'].append( "-hltMuCkfTrackCandidates" ) 01113 self.options['modules'].append( "-hltMuCtfTracks" ) 01114 self.options['modules'].append( "-hltTau3MuCkfTrackCandidates" ) 01115 self.options['modules'].append( "-hltTau3MuCtfWithMaterialTracks" ) 01116 self.options['modules'].append( "-hltMuTrackJpsiCkfTrackCandidates" ) 01117 self.options['modules'].append( "-hltMuTrackJpsiCtfTracks" ) 01118 self.options['modules'].append( "-hltMuTrackJpsiEffCkfTrackCandidates" ) 01119 self.options['modules'].append( "-hltMuTrackJpsiEffCtfTracks" ) 01120 self.options['modules'].append( "-hltJpsiTkPixelSeedFromL3Candidate" ) 01121 self.options['modules'].append( "-hltCkfTrackCandidatesJpsiTk" ) 01122 self.options['modules'].append( "-hltCtfWithMaterialTracksJpsiTk" ) 01123 self.options['modules'].append( "-hltMuTrackCkfTrackCandidatesOnia" ) 01124 self.options['modules'].append( "-hltMuTrackCtfTracksOnia" ) 01125 01126 self.options['modules'].append( "-hltESRegionalEgammaRecHit" ) 01127 self.options['modules'].append( "-hltEcalRegionalJetsFEDs" ) 01128 self.options['modules'].append( "-hltEcalRegionalMuonsFEDs" ) 01129 self.options['modules'].append( "-hltEcalRegionalEgammaFEDs" ) 01130 self.options['modules'].append( "-hltFEDSelector" ) 01131 self.options['modules'].append( "-hltL3TrajSeedOIHit" ) 01132 self.options['modules'].append( "-hltL3TrajSeedIOHit" ) 01133 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIState" ) 01134 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIHit" ) 01135 self.options['modules'].append( "-hltL3TrackCandidateFromL2IOHit" ) 01136 self.options['modules'].append( "-hltL3TrackCandidateFromL2NoVtx" ) 01137 self.options['modules'].append( "-hltHcalDigis" ) 01138 self.options['modules'].append( "-hltHoreco" ) 01139 self.options['modules'].append( "-hltHfreco" ) 01140 self.options['modules'].append( "-hltHbhereco" ) 01141 self.options['modules'].append( "-hltEcalRegionalRestFEDs" ) 01142 self.options['modules'].append( "-hltEcalRegionalESRestFEDs" ) 01143 self.options['modules'].append( "-hltEcalRawToRecHitFacility" ) 01144 self.options['modules'].append( "-hltESRawToRecHitFacility" ) 01145 self.options['modules'].append( "-hltEcalRegionalJetsRecHit" ) 01146 self.options['modules'].append( "-hltEcalRegionalMuonsRecHit" ) 01147 self.options['modules'].append( "-hltEcalRegionalEgammaRecHit" ) 01148 self.options['modules'].append( "-hltEcalRecHitAll" ) 01149 self.options['modules'].append( "-hltESRecHitAll" ) 01150 # === hltPF 01151 self.options['modules'].append( "-hltPFJetCkfTrackCandidates" ) 01152 self.options['modules'].append( "-hltPFJetCtfWithMaterialTracks" ) 01153 self.options['modules'].append( "-hltPFlowTrackSelectionHighPurity" ) 01154 # === hltFastJet 01155 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" ) 01156 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" ) 01157 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" ) 01158 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" ) 01159 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" ) 01160 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" ) 01161 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" ) 01162 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" ) 01163 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" ) 01164 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" ) 01165 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" ) 01166 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" ) 01167 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" ) 01168 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" ) 01169 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" ) 01170 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" ) 01171 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" ) 01172 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" ) 01173 # === hltBLifetimeRegional 01174 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbb" ) 01175 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbb" ) 01176 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbb" ) 01177 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" ) 01178 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" ) 01179 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" ) 01180 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" ) 01181 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" ) 01182 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" ) 01183 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" ) 01184 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" ) 01185 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" ) 01186 self.options['modules'].append( "-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" ) 01187 self.options['modules'].append( "-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" ) 01188 self.options['modules'].append( "-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" ) 01189 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" ) 01190 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" ) 01191 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" ) 01192 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" ) 01193 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" ) 01194 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" ) 01195 01196 self.options['modules'].append( "-hltPixelTracksForMinBias" ) 01197 self.options['modules'].append( "-hltPixelTracksForHighMult" ) 01198 self.options['modules'].append( "-hltRegionalPixelTracks" ) 01199 self.options['modules'].append( "-hltPixelTracksReg" ) 01200 self.options['modules'].append( "-hltIter4Merged" ) 01201 self.options['modules'].append( "-hltFastPixelHitsVertex" ) 01202 self.options['modules'].append( "-hltFastPixelTracks") 01203 self.options['modules'].append( "-hltFastPixelTracksRecover") 01204 01205 self.options['modules'].append( "-hltFastPrimaryVertexbbPhi") 01206 self.options['modules'].append( "-hltPixelTracksFastPVbbPhi") 01207 self.options['modules'].append( "-hltPixelTracksRecoverbbPhi" ) 01208 self.options['modules'].append( "-hltFastPixelHitsVertexVHbb" ) 01209 self.options['modules'].append( "-hltFastPixelTracksVHbb" ) 01210 self.options['modules'].append( "-hltFastPixelTracksRecoverVHbb" ) 01211 01212 self.options['modules'].append( "-hltFastPrimaryVertex") 01213 self.options['modules'].append( "-hltFastPVPixelTracks") 01214 self.options['modules'].append( "-hltFastPVPixelTracksRecover" ) 01215 01216 self.options['modules'].append( "-hltIter4Tau3MuMerged" ) 01217 self.options['modules'].append( "hltPixelMatchElectronsActivity" ) 01218 01219 self.options['modules'].append( "-hltMuonCSCDigis" ) 01220 self.options['modules'].append( "-hltMuonDTDigis" ) 01221 self.options['modules'].append( "-hltMuonRPCDigis" ) 01222 self.options['modules'].append( "-hltGtDigis" ) 01223 self.options['modules'].append( "-hltL1GtTrigReport" ) 01224 self.options['modules'].append( "hltCsc2DRecHits" ) 01225 self.options['modules'].append( "hltDt1DRecHits" ) 01226 self.options['modules'].append( "hltRpcRecHits" ) 01227 self.options['modules'].append( "-hltScalersRawToDigi" ) 01228 01229 self.options['sequences'].append( "-HLTL1SeededEgammaRegionalRecoTrackerSequence" ) 01230 self.options['sequences'].append( "-HLTEcalActivityEgammaRegionalRecoTrackerSequence" ) 01231 self.options['sequences'].append( "-HLTPixelMatchElectronActivityTrackingSequence" ) 01232 self.options['sequences'].append( "-HLTDoLocalStripSequence" ) 01233 self.options['sequences'].append( "-HLTDoLocalPixelSequence" ) 01234 self.options['sequences'].append( "-HLTDoLocalPixelSequenceRegL2Tau" ) 01235 self.options['sequences'].append( "-hltSiPixelDigis" ) 01236 self.options['sequences'].append( "-hltSiPixelClusters" ) 01237 self.options['sequences'].append( "-hltSiPixelRecHits" ) 01238 self.options['sequences'].append( "-HLTRecopixelvertexingSequence" ) 01239 self.options['sequences'].append( "-HLTEndSequence" ) 01240 self.options['sequences'].append( "-HLTBeginSequence" ) 01241 self.options['sequences'].append( "-HLTBeginSequenceNZS" ) 01242 self.options['sequences'].append( "-HLTBeginSequenceBPTX" ) 01243 self.options['sequences'].append( "-HLTBeginSequenceAntiBPTX" ) 01244 self.options['sequences'].append( "-HLTHBHENoiseSequence" ) 01245 self.options['sequences'].append( "-HLTIterativeTracking" ) 01246 self.options['sequences'].append( "-HLTIterativeTrackingTau3Mu" ) 01247 self.options['sequences'].append( "-HLTRegionalCKFTracksForL3Isolation" ) 01248 self.options['sequences'].append( "-HLTHBHENoiseCleanerSequence" ) 01249 01250 # remove HLTAnalyzerEndpath from fastsim cff's 01251 if self.config.fragment: 01252 self.options['paths'].append( "-HLTAnalyzerEndpath" ) 01253
def confdb::buildPathList | ( | self | ) |
Definition at line 953 of file confdb.py.
00954 : 00955 self.all_paths = self.getPathList() 00956 00957 if self.config.paths: 00958 # no path list was requested, dump the full table, minus unsupported / unwanted paths 00959 paths = self.config.paths.split(',') 00960 else: 00961 # dump only the requested paths, plus the eventual output endpaths 00962 paths = [] 00963 00964 if self.config.fragment or self.config.output in ('none', 'full'): 00965 # 'full' removes all outputs (same as 'none') and then adds a single "keep *" output (see the overrideOutput method) 00966 if self.config.paths: 00967 # paths are removed by default 00968 pass 00969 else: 00970 # drop all output endpaths 00971 paths.append( "-*Output" ) 00972 elif self.config.output == 'minimal': 00973 # drop all output endpaths but HLTDQMResultsOutput 00974 if self.config.paths: 00975 paths.append( "HLTDQMResultsOutput" ) 00976 else: 00977 paths.append( "-*Output" ) 00978 paths.append( "HLTDQMResultsOutput" ) 00979 else: 00980 # keep / add back all output endpaths 00981 if self.config.paths: 00982 paths.append( "*Output" ) 00983 else: 00984 pass # paths are kepy by default 00985 00986 # drop paths unsupported by fastsim 00987 if self.config.fastsim: 00988 paths.extend( "-%s" % path for path in self.fastsimUnsupportedPaths ) 00989 00990 # drop unwanted paths for profiling (and timing studies) 00991 if self.config.profiling: 00992 paths.append( "-HLTriggerFirstPath" ) 00993 paths.append( "-HLTAnalyzerEndpath" ) 00994 00995 # this should never be in any dump (nor online menu) 00996 paths.append( "-OfflineOutput" ) 00997 00998 # expand all wildcards 00999 paths = self.expandWildcards(paths, self.all_paths) 01000 01001 if self.config.paths: 01002 # do an "additive" consolidation 01003 self.options['paths'] = self.consolidatePositiveList(paths) 01004 if not self.options['paths']: 01005 raise RuntimeError('Error: option "--paths %s" does not select any valid paths' % self.config.paths) 01006 else: 01007 # do a "subtractive" consolidation 01008 self.options['paths'] = self.consolidateNegativeList(paths) 01009
def confdb::dumppaths | ( | paths | ) |
def confdb::fixForFastSim | ( | self | ) |
Definition at line 498 of file confdb.py.
00499 : 00500 if self.config.fastsim: 00501 # adapt the hle configuration (fragment) to run under fastsim 00502 self.data = re.sub( r'import FWCore.ParameterSet.Config as cms', r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data) 00503 00504 # remove the definition of streams and datasets 00505 self.data = re.compile( r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00506 self.data = re.compile( r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00507 00508 # fix the definition of module 00509 # FIXME: this should be updated to take into accout the --l1-emulator option 00510 self._fix_parameter( type = 'InputTag', value = 'hltL1extraParticles', replace = 'l1extraParticles') 00511 self._fix_parameter(name = 'GMTReadoutCollection', type = 'InputTag', value = 'hltGtDigis', replace = 'gmtDigis') 00512 self._fix_parameter( type = 'InputTag', value = 'hltGtDigis', replace = 'gtDigis') 00513 self._fix_parameter( type = 'InputTag', value = 'hltL1GtObjectMap', replace = 'gtDigis') 00514 self._fix_parameter(name = 'initialSeeds', type = 'InputTag', value = 'noSeedsHere', replace = 'globalPixelSeeds:GlobalPixel') 00515 self._fix_parameter(name = 'preFilteredSeeds', type = 'bool', value = 'True', replace = 'False') 00516 self._fix_parameter( type = 'InputTag', value = 'hltOfflineBeamSpot', replace = 'offlineBeamSpot') 00517 self._fix_parameter( type = 'InputTag', value = 'hltOnlineBeamSpot', replace = 'offlineBeamSpot') 00518 self._fix_parameter( type = 'InputTag', value = 'hltMuonCSCDigis', replace = 'simMuonCSCDigis') 00519 self._fix_parameter( type = 'InputTag', value = 'hltMuonDTDigis', replace = 'simMuonDTDigis') 00520 self._fix_parameter( type = 'InputTag', value = 'hltMuonRPCDigis', replace = 'simMuonRPCDigis') 00521 self._fix_parameter( type = 'InputTag', value = 'hltRegionalTracksForL3MuonIsolation', replace = 'hltPixelTracks') 00522 self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltHcalTowerNoiseCleaner', replace = 'hltTowerMakerForAll') 00523 self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltIter4Tau3MuMerged', replace = 'hltIter4Merged') 00524 00525 # fix the definition of sequences and paths 00526 self.data = re.sub( r'hltMuonCSCDigis', r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data ) 00527 self.data = re.sub( r'hltMuonDTDigis', r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data ) 00528 self.data = re.sub( r'hltMuonRPCDigis', r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data ) 00529 self.data = re.sub( r'HLTEndSequence', r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data ) 00530 self.data = re.sub( r'hltGtDigis', r'HLTBeginSequence', self.data ) 00531
def confdb::fixForMC | ( | self | ) |
Definition at line 487 of file confdb.py.
00488 : 00489 if not self.config.data: 00490 # customise the HLT menu for running on MC 00491 if not self.config.fragment: 00492 self.data += """ 00493 # customise the HLT menu for running on MC 00494 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC 00495 process = customizeHLTforMC(process) 00496 """ 00497
def confdb::fixPrescales | ( | self | ) |
Definition at line 532 of file confdb.py.
00533 : 00534 # update the PrescaleService to match the new list of paths 00535 if self.options['paths']: 00536 if self.options['paths'][0][0] == '-': 00537 # drop requested paths 00538 for minuspath in self.options['paths']: 00539 path = minuspath[1:] 00540 self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data) 00541 else: 00542 # keep requested paths 00543 for path in self.all_paths: 00544 if path not in self.options['paths']: 00545 self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data) 00546 00547 if self.config.unprescale: 00548 self.data += """ 00549 # remove the HLT prescales 00550 if 'PrescaleService' in %(dict)s: 00551 %(process)sPrescaleService.lvl1DefaultLabel = cms.string( '0' ) 00552 %(process)sPrescaleService.lvl1Labels = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ) 00553 %(process)sPrescaleService.prescaleTable = cms.VPSet( ) 00554 """ 00555
def confdb::instrumentErrorEventType | ( | self | ) |
Definition at line 570 of file confdb.py.
00571 : 00572 if self.config.errortype: 00573 # change all HLTTriggerTypeFilter EDFilters to accept only error events (SelectedTriggerType = 0) 00574 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '1', replace = '0') 00575 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '2', replace = '0') 00576 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '3', replace = '0') 00577
def confdb::instrumentOpenMode | ( | self | ) |
Definition at line 556 of file confdb.py.
00557 : 00558 if self.config.open: 00559 # find all EDfilters 00560 filters = [ match[1] for match in re.findall(r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ] 00561 re_sequence = re.compile( r'cms\.(Path|Sequence)\((.*)\)' ) 00562 # remove existing 'cms.ingore' and '~' modifiers 00563 self.data = re_sequence.sub( lambda line: re.sub( r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)', r'\1', line.group(0) ), self.data ) 00564 self.data = re_sequence.sub( lambda line: re.sub( r'~', '', line.group(0) ), self.data ) 00565 # wrap all EDfilters with "cms.ignore( ... )", 1000 at a time (python 2.6 complains for too-big regular expressions) 00566 for some in splitter(filters, 1000): 00567 re_filters = re.compile( r'\b((process\.)?(' + r'|'.join(some) + r'))\b' ) 00568 self.data = re_sequence.sub( lambda line: re_filters.sub( r'cms.ignore( \1 )', line.group(0) ), self.data ) 00569
def confdb::instrumentTiming | ( | self | ) |
Definition at line 839 of file confdb.py.
00840 : 00841 if self.config.profiling: 00842 # instrument the menu for profiling: remove the HLTAnalyzerEndpath, add/override the HLTriggerFirstPath, with hltGetRaw and hltGetConditions 00843 text = '' 00844 00845 if not 'hltGetRaw' in self.data: 00846 # add hltGetRaw 00847 text += """ 00848 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw", 00849 RawDataCollection = cms.InputTag( "rawDataCollector" ) 00850 ) 00851 """ 00852 00853 if not 'hltGetConditions' in self.data: 00854 # add hltGetConditions 00855 text += """ 00856 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter', 00857 verbose = cms.untracked.bool( False ), 00858 toGet = cms.VPSet( ) 00859 ) 00860 """ 00861 00862 if not 'hltBoolFalse' in self.data: 00863 # add hltBoolFalse 00864 text += """ 00865 %(process)shltBoolFalse = cms.EDFilter( "HLTBool", 00866 result = cms.bool( False ) 00867 ) 00868 """ 00869 00870 # add the definition of HLTriggerFirstPath 00871 # FIXME in a cff, should also update the HLTSchedule 00872 text += """ 00873 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse ) 00874 """ 00875 self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1) 00876 00877 00878 # instrument the menu with the Service, EDProducer and EndPath needed for timing studies 00879 # FIXME in a cff, should also update the HLTSchedule 00880 if self.config.timing: 00881 self.data += """ 00882 # instrument the menu with the modules and EndPath needed for timing studies 00883 """ 00884 00885 hasFST = False 00886 if 'FastTimerService' in self.data: 00887 hasFST = True 00888 00889 self.data += '\n# configure the FastTimerService\n' 00890 if not hasFST: 00891 self.loadCff('HLTrigger.Timer.FastTimerService_cfi') 00892 self.data += """%(process)sFastTimerService.useRealTimeClock = False 00893 %(process)sFastTimerService.enableTimingPaths = True 00894 %(process)sFastTimerService.enableTimingModules = True 00895 %(process)sFastTimerService.enableTimingExclusive = True 00896 %(process)sFastTimerService.enableTimingSummary = True 00897 %(process)sFastTimerService.skipFirstPath = True 00898 %(process)sFastTimerService.enableDQM = True 00899 %(process)sFastTimerService.enableDQMbyPathActive = True 00900 %(process)sFastTimerService.enableDQMbyPathTotal = True 00901 %(process)sFastTimerService.enableDQMbyPathOverhead = True 00902 %(process)sFastTimerService.enableDQMbyPathDetails = True 00903 %(process)sFastTimerService.enableDQMbyPathCounters = True 00904 %(process)sFastTimerService.enableDQMbyPathExclusive = True 00905 %(process)sFastTimerService.enableDQMbyModule = True 00906 %(process)sFastTimerService.enableDQMSummary = True 00907 %(process)sFastTimerService.enableDQMbyLuminosity = True 00908 %(process)sFastTimerService.enableDQMbyLumiSection = True 00909 %(process)sFastTimerService.enableDQMbyProcesses = False 00910 %(process)sFastTimerService.dqmTimeRange = 1000. 00911 %(process)sFastTimerService.dqmTimeResolution = 5. 00912 %(process)sFastTimerService.dqmPathTimeRange = 100. 00913 %(process)sFastTimerService.dqmPathTimeResolution = 0.5 00914 %(process)sFastTimerService.dqmModuleTimeRange = 40. 00915 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2 00916 %(process)sFastTimerService.dqmLuminosityRange = 1e+34 00917 %(process)sFastTimerService.dqmLuminosityResolution = 1e+31 00918 %(process)sFastTimerService.dqmLumiSectionsRange = 2500 00919 %(process)sFastTimerService.dqmPath = 'HLT/TimerService' 00920 %(process)sFastTimerService.luminosityProduct = cms.untracked.InputTag( 'hltScalersRawToDigi' ) 00921 %(process)sFastTimerService.supportedProcesses = cms.untracked.vuint32( ) 00922 """ 00923 00924 self.data += """ 00925 # FastTimerServiceClient 00926 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient", 00927 dqmPath = cms.untracked.string( "HLT/TimerService" ) 00928 ) 00929 00930 # DQM file saver 00931 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver", 00932 convention = cms.untracked.string( "Offline" ), 00933 workflow = cms.untracked.string( "/HLT/FastTimerService/All" ), 00934 dirName = cms.untracked.string( "." ), 00935 saveByRun = cms.untracked.int32(1), 00936 saveByLumiSection = cms.untracked.int32(-1), 00937 saveByEvent = cms.untracked.int32(-1), 00938 saveByTime = cms.untracked.int32(-1), 00939 saveByMinute = cms.untracked.int32(-1), 00940 saveAtJobEnd = cms.untracked.bool(False), 00941 forceRunNumber = cms.untracked.int32(-1), 00942 ) 00943 00944 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver ) 00945 """
def confdb::loadAdditionalConditions | ( | self, | |
comment, | |||
conditions | |||
) |
Definition at line 805 of file confdb.py.
00806 : 00807 # load additional conditions 00808 self.data += """ 00809 # %s 00810 if 'GlobalTag' in %%(dict)s: 00811 """ % comment 00812 for condition in conditions: 00813 self.data += """ %%(process)sGlobalTag.toGet.append( 00814 cms.PSet( 00815 record = cms.string( '%(record)s' ), 00816 tag = cms.string( '%(tag)s' ), 00817 label = cms.untracked.string( '%(label)s' ), 00818 connect = cms.untracked.string( '%(connect)s' ) 00819 ) 00820 ) 00821 """ % condition 00822
def confdb::loadCff | ( | self, | |
module | |||
) |
def confdb::overrideGlobalTag | ( | self | ) |
Definition at line 578 of file confdb.py.
00579 : 00580 # overwrite GlobalTag 00581 # the logic is: 00582 # - always set the correct connection string and pfnPrefix 00583 # - if a GlobalTag is specified on the command line: 00584 # - override the global tag 00585 # - if the GT is "auto:...", insert the code to read it from Configuration.AlCa.autoCond 00586 # - if a GlobalTag is NOT specified on the command line: 00587 # - when running on data, do nothing, and keep the global tag in the menu 00588 # - when running on mc, take the GT from the configuration.type 00589 00590 # override the GlobalTag connection string and pfnPrefix 00591 text = """ 00592 # override the GlobalTag, connection string and pfnPrefix 00593 if 'GlobalTag' in %(dict)s: 00594 %(process)sGlobalTag.connect = '%(connect)s/CMS_COND_31X_GLOBALTAG' 00595 %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/') 00596 """ 00597 00598 # when running on MC, override the global tag even if not specified on the command line 00599 if not self.config.data and not self.config.globaltag: 00600 if self.config.type in globalTag: 00601 self.config.globaltag = globalTag[self.config.type] 00602 else: 00603 self.config.globaltag = globalTag['GRun'] 00604 00605 # if requested, override the L1 menu from the GlobalTag (using the same connect as the GlobalTag itself) 00606 if self.config.l1.override: 00607 self.config.l1.record = 'L1GtTriggerMenuRcd' 00608 self.config.l1.label = '' 00609 self.config.l1.tag = self.config.l1.override 00610 if not self.config.l1.connect: 00611 self.config.l1.connect = '%(connect)s/CMS_COND_31X_L1T' 00612 self.config.l1cond = '%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__ 00613 else: 00614 self.config.l1cond = None 00615 00616 if self.config.globaltag or self.config.l1cond: 00617 text += " from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n" 00618 text += " %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag" 00619 if self.config.globaltag: 00620 text += ", globaltag = %s" % repr(self.config.globaltag) 00621 if self.config.l1cond: 00622 text += ", conditions = %s" % repr(self.config.l1cond) 00623 text += ")\n" 00624 00625 self.data += text
def confdb::overrideL1MenuXml | ( | self | ) |
Definition at line 626 of file confdb.py.
00627 : 00628 # if requested, override the L1 menu from the GlobalTag (Xml file) 00629 if self.config.l1Xml.XmlFile: 00630 text = """ 00631 # override the L1 menu from an Xml file 00632 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer", 00633 TriggerMenuLuminosity = cms.string('%(LumiDir)s'), 00634 DefXmlFile = cms.string('%(XmlFile)s'), 00635 VmeXmlFile = cms.string('') 00636 ) 00637 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource", 00638 recordName = cms.string('L1GtTriggerMenuRcd'), 00639 iovIsRunNotTime = cms.bool(True), 00640 firstValid = cms.vuint32(1) 00641 ) 00642 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml') 00643 """ 00644 self.data += text % self.config.l1Xml.__dict__
def confdb::overrideOutput | ( | self | ) |
Definition at line 724 of file confdb.py.
00725 : 00726 # override the "online" ShmStreamConsumer output modules with "offline" PoolOutputModule's 00727 self.data = re.sub( 00728 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,', 00729 r'%(process)shltOutput\2 = cms.OutputModule( "PoolOutputModule",\n fileName = cms.untracked.string( "output\2.root" ),\n fastCloning = cms.untracked.bool( False ),\n dataset = cms.untracked.PSet(\n filterName = cms.untracked.string( "" ),\n dataTier = cms.untracked.string( "RAW" )\n ),', 00730 self.data 00731 ) 00732 00733 if not self.config.fragment and self.config.output == 'full': 00734 # add a single "keep *" output 00735 self.data += """ 00736 # add a single "keep *" output 00737 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule", 00738 fileName = cms.untracked.string( "outputFULL.root" ), 00739 fastCloning = cms.untracked.bool( False ), 00740 dataset = cms.untracked.PSet( 00741 dataTier = cms.untracked.string( 'RECO' ), 00742 filterName = cms.untracked.string( '' ) 00743 ), 00744 outputCommands = cms.untracked.vstring( 'keep *' ) 00745 ) 00746 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL ) 00747 """ 00748
def confdb::overrideParameters | ( | self, | |
module, | |||
parameters | |||
) |
def confdb::overrideProcessName | ( | self | ) |
Definition at line 750 of file confdb.py.
00751 : 00752 if self.config.name is None: 00753 return 00754 00755 # override the process name 00756 quote = '[\'\"]' 00757 self.data = re.compile(r'^(process\s*=\s*cms\.Process\(\s*' + quote + r')\w+(' + quote + r'\s*\).*)$', re.MULTILINE).sub(r'\1%s\2' % self.config.name, self.data, 1) 00758 00759 # the following was stolen and adapted from HLTrigger.Configuration.customL1THLT_Options 00760 self.data += """ 00761 # adapt HLT modules to the correct process name 00762 if 'hltTrigReport' in %%(dict)s: 00763 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00764 00765 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s: 00766 %%(process)shltPreExpressCosmicsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00767 00768 if 'hltPreExpressOutputSmart' in %%(dict)s: 00769 %%(process)shltPreExpressOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00770 00771 if 'hltPreDQMForHIOutputSmart' in %%(dict)s: 00772 %%(process)shltPreDQMForHIOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00773 00774 if 'hltPreDQMForPPOutputSmart' in %%(dict)s: 00775 %%(process)shltPreDQMForPPOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00776 00777 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s: 00778 %%(process)shltPreHLTDQMResultsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00779 00780 if 'hltPreHLTDQMOutputSmart' in %%(dict)s: 00781 %%(process)shltPreHLTDQMOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00782 00783 if 'hltPreHLTMONOutputSmart' in %%(dict)s: 00784 %%(process)shltPreHLTMONOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00785 00786 if 'hltDQMHLTScalers' in %%(dict)s: 00787 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00788 %%(process)shltDQMHLTScalers.processname = '%(name)s' 00789 00790 if 'hltDQML1SeedLogicScalers' in %%(dict)s: 00791 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s' 00792 """ % self.config.__dict__ 00793
def confdb::runL1Emulator | ( | self | ) |
Definition at line 676 of file confdb.py.
00677 : 00678 # if requested, run (part of) the L1 emulator 00679 if self.config.emulator: 00680 # FIXME this fragment used "process" explicitly 00681 emulator = { 00682 'RawToDigi': '', 00683 'CustomL1T': '', 00684 'CustomHLT': '' 00685 } 00686 00687 if self.config.data: 00688 emulator['RawToDigi'] = 'RawToDigi_Data_cff' 00689 else: 00690 emulator['RawToDigi'] = 'RawToDigi_cff' 00691 00692 if self.config.emulator == 'gt': 00693 emulator['CustomL1T'] = 'customiseL1GtEmulatorFromRaw' 00694 emulator['CustomHLT'] = 'switchToSimGtDigis' 00695 elif self.config.emulator == 'gct,gt': 00696 emulator['CustomL1T'] = 'customiseL1CaloAndGtEmulatorsFromRaw' 00697 emulator['CustomHLT'] = 'switchToSimGctGtDigis' 00698 elif self.config.emulator == 'gmt,gt': 00699 # XXX currently unsupported 00700 emulator['CustomL1T'] = 'customiseL1MuonAndGtEmulatorsFromRaw' 00701 emulator['CustomHLT'] = 'switchToSimGmtGtDigis' 00702 elif self.config.emulator in ('gmt,gct,gt', 'gct,gmt,gt', 'all'): 00703 emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw' 00704 emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis' 00705 else: 00706 # unsupported argument, default to running the whole emulator 00707 emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw' 00708 emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis' 00709 00710 self.data += """ 00711 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s 00712 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' ) 00713 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' ) 00714 import L1Trigger.Configuration.L1Trigger_custom 00715 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process ) 00716 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process ) 00717 00718 # customize the HLT to use the emulated results 00719 import HLTrigger.Configuration.customizeHLTforL1Emulator 00720 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process ) 00721 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process ) 00722 """ % emulator 00723
def confdb::runL1EmulatorGT | ( | self | ) |
Definition at line 645 of file confdb.py.
00646 : 00647 # if requested, run (part of) the L1 emulator, then repack the data into a new RAW collection, to be used by the HLT 00648 if not self.config.emulator: 00649 return 00650 00651 if self.config.emulator != 'gt': 00652 # only the GT emulator is currently supported 00653 return 00654 00655 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT 00656 text = """ 00657 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT 00658 """ 00659 if self.config.fragment: 00660 # FIXME in a cff, should also update the HLTSchedule 00661 text += "import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n" 00662 else: 00663 text += "process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n" 00664 00665 if not 'hltBoolFalse' in self.data: 00666 # add hltBoolFalse 00667 text += """ 00668 %(process)shltBoolFalse = cms.EDFilter( "HLTBool", 00669 result = cms.bool( False ) 00670 ) 00671 """ 00672 text += "process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n" 00673 00674 self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1) 00675
def confdb::splitter | ( | iterator, | |
n | |||
) |
Definition at line 10 of file confdb.py.
Referenced by TotemT1Organization::_FromUnitIDToData(), SplittingConfigurableHisto::fill(), HLTLogMonitorFilter::filter(), and SplittingConfigurableHisto::SplittingConfigurableHisto().
def confdb::updateMessageLogger | ( | self | ) |
Definition at line 794 of file confdb.py.
00795 : 00796 # request summary informations from the MessageLogger 00797 self.data += """ 00798 if 'MessageLogger' in %(dict)s: 00799 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD') 00800 %(process)sMessageLogger.categories.append('L1GtTrigReport') 00801 %(process)sMessageLogger.categories.append('HLTrigReport') 00802 %(process)sMessageLogger.categories.append('FastReport') 00803 """ 00804