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 327 of file confdb.py.
00328 : 00329 """arguments: 00330 name: parameter name (optional) 00331 type: parameter type (look for tracked and untracked variants) 00332 value: original value 00333 replace: replacement value 00334 """ 00335 if 'name' in args: 00336 self.data = re.sub( 00337 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00338 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00339 self.data) 00340 else: 00341 self.data = re.sub( 00342 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00343 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00344 self.data) 00345
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 309 of file confdb.py.
00310 : 00311 # add global options 00312 self.data += """ 00313 # limit the number of events to be processed 00314 %%(process)smaxEvents = cms.untracked.PSet( 00315 input = cms.untracked.int32( %d ) 00316 ) 00317 """ % self.config.events 00318 00319 if not self.config.profiling: 00320 self.data += """ 00321 # enable the TrigReport and TimeReport 00322 %(process)soptions = cms.untracked.PSet( 00323 wantSummary = cms.untracked.bool( True ) 00324 ) 00325 """ 00326
def confdb::build_source | ( | self | ) |
Definition at line 1117 of file confdb.py.
01118 : 01119 if self.config.input: 01120 # if a dataset or a list of input files was given, use it 01121 if self.config.input[0:8] == 'dataset:': 01122 from dbsFileQuery import dbsFileQuery 01123 # extract the dataset name, and use DBS to fine the list of LFNs 01124 dataset = self.config.input[8:] 01125 query = 'find file where dataset=' + dataset 01126 files = dbsFileQuery(query) 01127 self.source = files 01128 else: 01129 # assume a list of input files 01130 self.source = self.config.input.split(',') 01131 elif self.config.online: 01132 # online we always run on data 01133 self.source = [ "file:/tmp/InputCollection.root" ] 01134 elif self.config.data: 01135 # offline we can run on data... 01136 self.source = [ "file:RelVal_Raw_%s_DATA.root" % self.config.type ] 01137 else: 01138 # ...or on mc 01139 self.source = [ "file:RelVal_Raw_%s_STARTUP.root" % self.config.type ] 01140 01141 self.data += """ 01142 %(process)ssource = cms.Source( "PoolSource", 01143 fileNames = cms.untracked.vstring( 01144 """ 01145 if self.source: 01146 for line in self.source: 01147 self.data += " '%s',\n" % line 01148 self.data += """ ), 01149 secondaryFileNames = cms.untracked.vstring( 01150 """ 01151 if self.parent: 01152 for line in self.parent: 01153 self.data += " '%s',\n" % line 01154 self.data += """ ), 01155 inputCommands = cms.untracked.vstring( 01156 'keep *' 01157 ) 01158 ) 01159 """
def confdb::buildOptions | ( | self | ) |
Definition at line 873 of file confdb.py.
00874 : 00875 # common configuration for all scenarios 00876 self.options['services'].append( "-FUShmDQMOutputService" ) 00877 00878 if self.config.fragment: 00879 # extract a configuration file fragment 00880 self.options['essources'].append( "-GlobalTag" ) 00881 self.options['essources'].append( "-HepPDTESSource" ) 00882 self.options['essources'].append( "-XMLIdealGeometryESSource" ) 00883 self.options['essources'].append( "-eegeom" ) 00884 self.options['essources'].append( "-es_hardcode" ) 00885 self.options['essources'].append( "-magfield" ) 00886 00887 self.options['esmodules'].append( "-AutoMagneticFieldESProducer" ) 00888 self.options['esmodules'].append( "-SlaveField0" ) 00889 self.options['esmodules'].append( "-SlaveField20" ) 00890 self.options['esmodules'].append( "-SlaveField30" ) 00891 self.options['esmodules'].append( "-SlaveField35" ) 00892 self.options['esmodules'].append( "-SlaveField38" ) 00893 self.options['esmodules'].append( "-SlaveField40" ) 00894 self.options['esmodules'].append( "-VBF0" ) 00895 self.options['esmodules'].append( "-VBF20" ) 00896 self.options['esmodules'].append( "-VBF30" ) 00897 self.options['esmodules'].append( "-VBF35" ) 00898 self.options['esmodules'].append( "-VBF38" ) 00899 self.options['esmodules'].append( "-VBF40" ) 00900 self.options['esmodules'].append( "-CSCGeometryESModule" ) 00901 self.options['esmodules'].append( "-CaloGeometryBuilder" ) 00902 self.options['esmodules'].append( "-CaloTowerHardcodeGeometryEP" ) 00903 self.options['esmodules'].append( "-CastorHardcodeGeometryEP" ) 00904 self.options['esmodules'].append( "-DTGeometryESModule" ) 00905 self.options['esmodules'].append( "-EcalBarrelGeometryEP" ) 00906 self.options['esmodules'].append( "-EcalElectronicsMappingBuilder" ) 00907 self.options['esmodules'].append( "-EcalEndcapGeometryEP" ) 00908 self.options['esmodules'].append( "-EcalLaserCorrectionService" ) 00909 self.options['esmodules'].append( "-EcalPreshowerGeometryEP" ) 00910 self.options['esmodules'].append( "-HcalHardcodeGeometryEP" ) 00911 self.options['esmodules'].append( "-HcalTopologyIdealEP" ) 00912 self.options['esmodules'].append( "-MuonNumberingInitialization" ) 00913 self.options['esmodules'].append( "-ParametrizedMagneticFieldProducer" ) 00914 self.options['esmodules'].append( "-RPCGeometryESModule" ) 00915 self.options['esmodules'].append( "-SiStripGainESProducer" ) 00916 self.options['esmodules'].append( "-SiStripRecHitMatcherESProducer" ) 00917 self.options['esmodules'].append( "-SiStripQualityESProducer" ) 00918 self.options['esmodules'].append( "-StripCPEfromTrackAngleESProducer" ) 00919 self.options['esmodules'].append( "-TrackerDigiGeometryESModule" ) 00920 self.options['esmodules'].append( "-TrackerGeometricDetESModule" ) 00921 self.options['esmodules'].append( "-VolumeBasedMagneticFieldESProducer" ) 00922 self.options['esmodules'].append( "-ZdcHardcodeGeometryEP" ) 00923 self.options['esmodules'].append( "-hcal_db_producer" ) 00924 self.options['esmodules'].append( "-L1GtTriggerMaskAlgoTrigTrivialProducer" ) 00925 self.options['esmodules'].append( "-L1GtTriggerMaskTechTrigTrivialProducer" ) 00926 self.options['esmodules'].append( "-hltESPEcalTrigTowerConstituentsMapBuilder" ) 00927 self.options['esmodules'].append( "-hltESPGlobalTrackingGeometryESProducer" ) 00928 self.options['esmodules'].append( "-hltESPMuonDetLayerGeometryESProducer" ) 00929 self.options['esmodules'].append( "-hltESPTrackerRecoGeometryESProducer" ) 00930 if not self.config.fastsim: 00931 self.options['esmodules'].append( "-CaloTowerGeometryFromDBEP" ) 00932 self.options['esmodules'].append( "-CastorGeometryFromDBEP" ) 00933 self.options['esmodules'].append( "-EcalBarrelGeometryFromDBEP" ) 00934 self.options['esmodules'].append( "-EcalEndcapGeometryFromDBEP" ) 00935 self.options['esmodules'].append( "-EcalPreshowerGeometryFromDBEP" ) 00936 self.options['esmodules'].append( "-HcalGeometryFromDBEP" ) 00937 self.options['esmodules'].append( "-ZdcGeometryFromDBEP" ) 00938 self.options['esmodules'].append( "-XMLFromDBSource" ) 00939 self.options['esmodules'].append( "-sistripconn" ) 00940 00941 self.options['services'].append( "-PrescaleService" ) 00942 self.options['services'].append( "-MessageLogger" ) 00943 self.options['services'].append( "-DQM" ) 00944 self.options['services'].append( "-DQMStore" ) 00945 self.options['services'].append( "-MicroStateService" ) 00946 self.options['services'].append( "-ModuleWebRegistry" ) 00947 self.options['services'].append( "-TimeProfilerService" ) 00948 self.options['services'].append( "-FastTimerService" ) 00949 00950 self.options['psets'].append( "-maxEvents" ) 00951 self.options['psets'].append( "-options" ) 00952 00953 if self.config.fastsim: 00954 # remove components not supported or needed by fastsim 00955 self.options['esmodules'].append( "-navigationSchoolESProducer" ) 00956 self.options['esmodules'].append( "-TransientTrackBuilderESProducer" ) 00957 self.options['esmodules'].append( "-SteppingHelixPropagatorAny" ) 00958 self.options['esmodules'].append( "-OppositeMaterialPropagator" ) 00959 self.options['esmodules'].append( "-MaterialPropagator" ) 00960 self.options['esmodules'].append( "-CaloTowerConstituentsMapBuilder" ) 00961 self.options['esmodules'].append( "-CaloTopologyBuilder" ) 00962 00963 self.options['services'].append( "-UpdaterService" ) 00964 00965 self.options['modules'].append( "hltL3MuonIsolations" ) 00966 self.options['modules'].append( "hltPixelVertices" ) 00967 self.options['modules'].append( "-hltCkfL1SeededTrackCandidates" ) 00968 self.options['modules'].append( "-hltCtfL1SeededithMaterialTracks" ) 00969 self.options['modules'].append( "-hltCkf3HitL1SeededTrackCandidates" ) 00970 self.options['modules'].append( "-hltCtf3HitL1SeededWithMaterialTracks" ) 00971 self.options['modules'].append( "-hltCkf3HitActivityTrackCandidates" ) 00972 self.options['modules'].append( "-hltCtf3HitActivityWithMaterialTracks" ) 00973 self.options['modules'].append( "-hltActivityCkfTrackCandidatesForGSF" ) 00974 self.options['modules'].append( "-hltL1SeededCkfTrackCandidatesForGSF" ) 00975 self.options['modules'].append( "-hltMuCkfTrackCandidates" ) 00976 self.options['modules'].append( "-hltMuCtfTracks" ) 00977 self.options['modules'].append( "-hltTau3MuCkfTrackCandidates" ) 00978 self.options['modules'].append( "-hltTau3MuCtfWithMaterialTracks" ) 00979 self.options['modules'].append( "-hltMuTrackJpsiCkfTrackCandidates" ) 00980 self.options['modules'].append( "-hltMuTrackJpsiCtfTracks" ) 00981 self.options['modules'].append( "-hltMuTrackJpsiEffCkfTrackCandidates" ) 00982 self.options['modules'].append( "-hltMuTrackJpsiEffCtfTracks" ) 00983 self.options['modules'].append( "-hltJpsiTkPixelSeedFromL3Candidate" ) 00984 self.options['modules'].append( "-hltCkfTrackCandidatesJpsiTk" ) 00985 self.options['modules'].append( "-hltCtfWithMaterialTracksJpsiTk" ) 00986 self.options['modules'].append( "-hltMuTrackCkfTrackCandidatesOnia" ) 00987 self.options['modules'].append( "-hltMuTrackCtfTracksOnia" ) 00988 00989 self.options['modules'].append( "-hltESRegionalEgammaRecHit" ) 00990 self.options['modules'].append( "-hltEcalRegionalJetsFEDs" ) 00991 self.options['modules'].append( "-hltEcalRegionalMuonsFEDs" ) 00992 self.options['modules'].append( "-hltEcalRegionalEgammaFEDs" ) 00993 self.options['modules'].append( "-hltFEDSelector" ) 00994 self.options['modules'].append( "-hltL3TrajSeedOIHit" ) 00995 self.options['modules'].append( "-hltL3TrajSeedIOHit" ) 00996 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIState" ) 00997 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIHit" ) 00998 self.options['modules'].append( "-hltL3TrackCandidateFromL2IOHit" ) 00999 self.options['modules'].append( "-hltL3TrackCandidateFromL2NoVtx" ) 01000 self.options['modules'].append( "-hltHcalDigis" ) 01001 self.options['modules'].append( "-hltHoreco" ) 01002 self.options['modules'].append( "-hltHfreco" ) 01003 self.options['modules'].append( "-hltHbhereco" ) 01004 self.options['modules'].append( "-hltEcalRegionalRestFEDs" ) 01005 self.options['modules'].append( "-hltEcalRegionalESRestFEDs" ) 01006 self.options['modules'].append( "-hltEcalRawToRecHitFacility" ) 01007 self.options['modules'].append( "-hltESRawToRecHitFacility" ) 01008 self.options['modules'].append( "-hltEcalRegionalJetsRecHit" ) 01009 self.options['modules'].append( "-hltEcalRegionalMuonsRecHit" ) 01010 self.options['modules'].append( "-hltEcalRegionalEgammaRecHit" ) 01011 self.options['modules'].append( "-hltEcalRecHitAll" ) 01012 self.options['modules'].append( "-hltESRecHitAll" ) 01013 # === hltPF 01014 self.options['modules'].append( "-hltPFJetCkfTrackCandidates" ) 01015 self.options['modules'].append( "-hltPFJetCtfWithMaterialTracks" ) 01016 self.options['modules'].append( "-hltPFlowTrackSelectionHighPurity" ) 01017 # === hltFastJet 01018 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" ) 01019 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" ) 01020 self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" ) 01021 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" ) 01022 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" ) 01023 self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" ) 01024 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" ) 01025 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" ) 01026 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" ) 01027 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" ) 01028 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" ) 01029 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" ) 01030 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" ) 01031 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" ) 01032 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" ) 01033 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" ) 01034 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" ) 01035 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" ) 01036 # === hltBLifetimeRegional 01037 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbb" ) 01038 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbb" ) 01039 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbb" ) 01040 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" ) 01041 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" ) 01042 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" ) 01043 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" ) 01044 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" ) 01045 self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" ) 01046 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" ) 01047 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" ) 01048 self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" ) 01049 self.options['modules'].append( "-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" ) 01050 self.options['modules'].append( "-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" ) 01051 self.options['modules'].append( "-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" ) 01052 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" ) 01053 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" ) 01054 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" ) 01055 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" ) 01056 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" ) 01057 self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" ) 01058 01059 self.options['modules'].append( "-hltPixelTracksForMinBias" ) 01060 self.options['modules'].append( "-hltPixelTracksForHighMult" ) 01061 self.options['modules'].append( "-hltRegionalPixelTracks" ) 01062 self.options['modules'].append( "-hltPixelTracksReg" ) 01063 self.options['modules'].append( "-hltIter4Merged" ) 01064 self.options['modules'].append( "-hltFastPixelHitsVertex" ) 01065 self.options['modules'].append( "-hltFastPixelTracks") 01066 self.options['modules'].append( "-hltFastPixelTracksRecover") 01067 01068 self.options['modules'].append( "-hltFastPrimaryVertexbbPhi") 01069 self.options['modules'].append( "-hltPixelTracksFastPVbbPhi") 01070 self.options['modules'].append( "-hltPixelTracksRecoverbbPhi" ) 01071 self.options['modules'].append( "-hltFastPixelHitsVertexVHbb" ) 01072 self.options['modules'].append( "-hltFastPixelTracksVHbb" ) 01073 self.options['modules'].append( "-hltFastPixelTracksRecoverVHbb" ) 01074 01075 self.options['modules'].append( "-hltFastPrimaryVertex") 01076 self.options['modules'].append( "-hltFastPVPixelTracks") 01077 self.options['modules'].append( "-hltFastPVPixelTracksRecover" ) 01078 01079 self.options['modules'].append( "-hltIter4Tau3MuMerged" ) 01080 self.options['modules'].append( "hltPixelMatchElectronsActivity" ) 01081 01082 self.options['modules'].append( "-hltMuonCSCDigis" ) 01083 self.options['modules'].append( "-hltMuonDTDigis" ) 01084 self.options['modules'].append( "-hltMuonRPCDigis" ) 01085 self.options['modules'].append( "-hltGtDigis" ) 01086 self.options['modules'].append( "-hltL1GtTrigReport" ) 01087 self.options['modules'].append( "hltCsc2DRecHits" ) 01088 self.options['modules'].append( "hltDt1DRecHits" ) 01089 self.options['modules'].append( "hltRpcRecHits" ) 01090 self.options['modules'].append( "-hltScalersRawToDigi" ) 01091 01092 self.options['sequences'].append( "-HLTL1SeededEgammaRegionalRecoTrackerSequence" ) 01093 self.options['sequences'].append( "-HLTEcalActivityEgammaRegionalRecoTrackerSequence" ) 01094 self.options['sequences'].append( "-HLTPixelMatchElectronActivityTrackingSequence" ) 01095 self.options['sequences'].append( "-HLTDoLocalStripSequence" ) 01096 self.options['sequences'].append( "-HLTDoLocalPixelSequence" ) 01097 self.options['sequences'].append( "-HLTDoLocalPixelSequenceRegL2Tau" ) 01098 self.options['sequences'].append( "-hltSiPixelDigis" ) 01099 self.options['sequences'].append( "-hltSiPixelClusters" ) 01100 self.options['sequences'].append( "-hltSiPixelRecHits" ) 01101 self.options['sequences'].append( "-HLTRecopixelvertexingSequence" ) 01102 self.options['sequences'].append( "-HLTEndSequence" ) 01103 self.options['sequences'].append( "-HLTBeginSequence" ) 01104 self.options['sequences'].append( "-HLTBeginSequenceNZS" ) 01105 self.options['sequences'].append( "-HLTBeginSequenceBPTX" ) 01106 self.options['sequences'].append( "-HLTBeginSequenceAntiBPTX" ) 01107 self.options['sequences'].append( "-HLTHBHENoiseSequence" ) 01108 self.options['sequences'].append( "-HLTIterativeTracking" ) 01109 self.options['sequences'].append( "-HLTIterativeTrackingTau3Mu" ) 01110 self.options['sequences'].append( "-HLTRegionalCKFTracksForL3Isolation" ) 01111 self.options['sequences'].append( "-HLTHBHENoiseCleanerSequence" ) 01112 01113 # remove HLTAnalyzerEndpath from fastsim cff's 01114 if self.config.fragment: 01115 self.options['paths'].append( "-HLTAnalyzerEndpath" ) 01116
def confdb::buildPathList | ( | self | ) |
Definition at line 816 of file confdb.py.
00817 : 00818 self.all_paths = self.getPathList() 00819 00820 if self.config.paths: 00821 # no path list was requested, dump the full table, minus unsupported / unwanted paths 00822 paths = self.config.paths.split(',') 00823 else: 00824 # dump only the requested paths, plus the eventual output endpaths 00825 paths = [] 00826 00827 if self.config.fragment or self.config.output in ('none', 'full'): 00828 # 'full' removes all outputs (same as 'none') and then adds a single "keep *" output (see the overrideOutput method) 00829 if self.config.paths: 00830 # paths are removed by default 00831 pass 00832 else: 00833 # drop all output endpaths 00834 paths.append( "-*Output" ) 00835 elif self.config.output == 'minimal': 00836 # drop all output endpaths but HLTDQMResultsOutput 00837 if self.config.paths: 00838 paths.append( "HLTDQMResultsOutput" ) 00839 else: 00840 paths.append( "-*Output" ) 00841 paths.append( "HLTDQMResultsOutput" ) 00842 else: 00843 # keep / add back all output endpaths 00844 if self.config.paths: 00845 paths.append( "*Output" ) 00846 else: 00847 pass # paths are kepy by default 00848 00849 # drop paths unsupported by fastsim 00850 if self.config.fastsim: 00851 paths.extend( "-%s" % path for path in self.fastsimUnsupportedPaths ) 00852 00853 # drop unwanted paths for profiling (and timing studies) 00854 if self.config.profiling: 00855 paths.append( "-HLTriggerFirstPath" ) 00856 paths.append( "-HLTAnalyzerEndpath" ) 00857 00858 # this should never be in any dump (nor online menu) 00859 paths.append( "-OfflineOutput" ) 00860 00861 # expand all wildcards 00862 paths = self.expandWildcards(paths, self.all_paths) 00863 00864 if self.config.paths: 00865 # do an "additive" consolidation 00866 self.options['paths'] = self.consolidatePositiveList(paths) 00867 if not self.options['paths']: 00868 raise RuntimeError('Error: option "--paths %s" does not select any valid paths' % self.config.paths) 00869 else: 00870 # do a "subtractive" consolidation 00871 self.options['paths'] = self.consolidateNegativeList(paths) 00872
def confdb::dumppaths | ( | paths | ) |
def confdb::fixForFastSim | ( | self | ) |
Definition at line 357 of file confdb.py.
00358 : 00359 if self.config.fastsim: 00360 # adapt the hle configuration (fragment) to run under fastsim 00361 self.data = re.sub( r'import FWCore.ParameterSet.Config as cms', r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data) 00362 00363 # remove the definition of streams and datasets 00364 self.data = re.compile( r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00365 self.data = re.compile( r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00366 00367 # fix the definition of module 00368 # FIXME: this should be updated to take into accout the --l1-emulator option 00369 self._fix_parameter( type = 'InputTag', value = 'hltL1extraParticles', replace = 'l1extraParticles') 00370 self._fix_parameter(name = 'GMTReadoutCollection', type = 'InputTag', value = 'hltGtDigis', replace = 'gmtDigis') 00371 self._fix_parameter( type = 'InputTag', value = 'hltGtDigis', replace = 'gtDigis') 00372 self._fix_parameter( type = 'InputTag', value = 'hltL1GtObjectMap', replace = 'gtDigis') 00373 self._fix_parameter(name = 'initialSeeds', type = 'InputTag', value = 'noSeedsHere', replace = 'globalPixelSeeds:GlobalPixel') 00374 self._fix_parameter(name = 'preFilteredSeeds', type = 'bool', value = 'True', replace = 'False') 00375 self._fix_parameter( type = 'InputTag', value = 'hltOfflineBeamSpot', replace = 'offlineBeamSpot') 00376 self._fix_parameter( type = 'InputTag', value = 'hltOnlineBeamSpot', replace = 'offlineBeamSpot') 00377 self._fix_parameter( type = 'InputTag', value = 'hltMuonCSCDigis', replace = 'simMuonCSCDigis') 00378 self._fix_parameter( type = 'InputTag', value = 'hltMuonDTDigis', replace = 'simMuonDTDigis') 00379 self._fix_parameter( type = 'InputTag', value = 'hltMuonRPCDigis', replace = 'simMuonRPCDigis') 00380 self._fix_parameter( type = 'InputTag', value = 'hltRegionalTracksForL3MuonIsolation', replace = 'hltPixelTracks') 00381 self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltHcalTowerNoiseCleaner', replace = 'hltTowerMakerForAll') 00382 self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltIter4Tau3MuMerged', replace = 'hltIter4Merged') 00383 00384 # fix the definition of sequences and paths 00385 self.data = re.sub( r'hltMuonCSCDigis', r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data ) 00386 self.data = re.sub( r'hltMuonDTDigis', r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data ) 00387 self.data = re.sub( r'hltMuonRPCDigis', r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data ) 00388 self.data = re.sub( r'HLTEndSequence', r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data ) 00389 self.data = re.sub( r'hltGtDigis', r'HLTBeginSequence', self.data ) 00390
def confdb::fixForMC | ( | self | ) |
Definition at line 346 of file confdb.py.
00347 : 00348 if not self.config.data: 00349 # customise the HLT menu for running on MC 00350 if not self.config.fragment: 00351 self.data += """ 00352 # customise the HLT menu for running on MC 00353 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC 00354 process = customizeHLTforMC(process) 00355 """ 00356
def confdb::fixPrescales | ( | self | ) |
Definition at line 391 of file confdb.py.
00392 : 00393 # update the PrescaleService to match the new list of paths 00394 if self.options['paths']: 00395 if self.options['paths'][0][0] == '-': 00396 # drop requested paths 00397 for minuspath in self.options['paths']: 00398 path = minuspath[1:] 00399 self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data) 00400 else: 00401 # keep requested paths 00402 for path in self.all_paths: 00403 if path not in self.options['paths']: 00404 self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data) 00405 00406 if self.config.unprescale: 00407 self.data += """ 00408 # remove the HLT prescales 00409 if 'PrescaleService' in %(dict)s: 00410 %(process)sPrescaleService.lvl1DefaultLabel = cms.string( '0' ) 00411 %(process)sPrescaleService.lvl1Labels = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ) 00412 %(process)sPrescaleService.prescaleTable = cms.VPSet( ) 00413 """ 00414
def confdb::instrumentErrorEventType | ( | self | ) |
Definition at line 429 of file confdb.py.
00430 : 00431 if self.config.errortype: 00432 # change all HLTTriggerTypeFilter EDFilters to accept only error events (SelectedTriggerType = 0) 00433 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '1', replace = '0') 00434 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '2', replace = '0') 00435 self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '3', replace = '0') 00436
def confdb::instrumentOpenMode | ( | self | ) |
Definition at line 415 of file confdb.py.
00416 : 00417 if self.config.open: 00418 # find all EDfilters 00419 filters = [ match[1] for match in re.findall(r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ] 00420 re_sequence = re.compile( r'cms\.(Path|Sequence)\((.*)\)' ) 00421 # remove existing 'cms.ingore' and '~' modifiers 00422 self.data = re_sequence.sub( lambda line: re.sub( r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)', r'\1', line.group(0) ), self.data ) 00423 self.data = re_sequence.sub( lambda line: re.sub( r'~', '', line.group(0) ), self.data ) 00424 # wrap all EDfilters with "cms.ignore( ... )", 1000 at a time (python 2.6 complains for too-big regular expressions) 00425 for some in splitter(filters, 1000): 00426 re_filters = re.compile( r'\b((process\.)?(' + r'|'.join(some) + r'))\b' ) 00427 self.data = re_sequence.sub( lambda line: re_filters.sub( r'cms.ignore( \1 )', line.group(0) ), self.data ) 00428
def confdb::instrumentTiming | ( | self | ) |
Definition at line 701 of file confdb.py.
00702 : 00703 if self.config.profiling: 00704 # instrument the menu for profiling: remove the HLTAnalyzerEndpath, add/override the HLTriggerFirstPath, with hltGetRaw and hltGetConditions 00705 text = '' 00706 00707 if not 'hltGetRaw' in self.data: 00708 # add hltGetRaw 00709 text += """ 00710 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw", 00711 RawDataCollection = cms.InputTag( "rawDataCollector" ) 00712 ) 00713 """ 00714 00715 if not 'hltGetConditions' in self.data: 00716 # add hltGetConditions 00717 text += """ 00718 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter', 00719 verbose = cms.untracked.bool( False ), 00720 toGet = cms.VPSet( ) 00721 ) 00722 """ 00723 00724 if not 'hltBoolFalse' in self.data: 00725 # add hltBoolFalse 00726 text += """ 00727 %(process)shltBoolFalse = cms.EDFilter( "HLTBool", 00728 result = cms.bool( False ) 00729 ) 00730 """ 00731 00732 # add the definition of HLTriggerFirstPath 00733 # FIXME in a cff, should also update the HLTSchedule 00734 text += """ 00735 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse ) 00736 """ 00737 self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1) 00738 00739 00740 # instrument the menu with the Service, EDProducer and EndPath needed for timing studies 00741 # FIXME in a cff, should also update the HLTSchedule 00742 if self.config.timing: 00743 self.data += """ 00744 # instrument the menu with the modules and EndPath needed for timing studies 00745 """ 00746 00747 hasFST = False 00748 if 'FastTimerService' in self.data: 00749 hasFST = True 00750 00751 self.data += '\n# configure the FastTimerService\n' 00752 if not hasFST: 00753 self.loadCff('HLTrigger.Timer.FastTimerService_cfi') 00754 self.data += """%(process)sFastTimerService.useRealTimeClock = False 00755 %(process)sFastTimerService.enableTimingPaths = True 00756 %(process)sFastTimerService.enableTimingModules = True 00757 %(process)sFastTimerService.enableTimingExclusive = True 00758 %(process)sFastTimerService.enableTimingSummary = True 00759 %(process)sFastTimerService.skipFirstPath = True 00760 %(process)sFastTimerService.enableDQM = True 00761 %(process)sFastTimerService.enableDQMbyPathActive = True 00762 %(process)sFastTimerService.enableDQMbyPathTotal = True 00763 %(process)sFastTimerService.enableDQMbyPathOverhead = True 00764 %(process)sFastTimerService.enableDQMbyPathDetails = True 00765 %(process)sFastTimerService.enableDQMbyPathCounters = True 00766 %(process)sFastTimerService.enableDQMbyPathExclusive = True 00767 %(process)sFastTimerService.enableDQMbyModule = True 00768 %(process)sFastTimerService.enableDQMbyModuleType = True 00769 %(process)sFastTimerService.enableDQMSummary = True 00770 %(process)sFastTimerService.enableDQMbyLuminosity = True 00771 %(process)sFastTimerService.enableDQMbyLumiSection = True 00772 %(process)sFastTimerService.enableDQMbyProcesses = False 00773 %(process)sFastTimerService.dqmTimeRange = 1000. 00774 %(process)sFastTimerService.dqmTimeResolution = 5. 00775 %(process)sFastTimerService.dqmPathTimeRange = 100. 00776 %(process)sFastTimerService.dqmPathTimeResolution = 0.5 00777 %(process)sFastTimerService.dqmModuleTimeRange = 40. 00778 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2 00779 %(process)sFastTimerService.dqmLuminosityRange = 1e+34 00780 %(process)sFastTimerService.dqmLuminosityResolution = 1e+31 00781 %(process)sFastTimerService.dqmLumiSectionsRange = 2500 00782 %(process)sFastTimerService.dqmPath = 'HLT/TimerService' 00783 %(process)sFastTimerService.luminosityProduct = cms.untracked.InputTag( 'hltScalersRawToDigi' ) 00784 %(process)sFastTimerService.supportedProcesses = cms.untracked.vuint32( ) 00785 """ 00786 00787 self.data += """ 00788 # FastTimerServiceClient 00789 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient", 00790 dqmPath = cms.untracked.string( "HLT/TimerService" ) 00791 ) 00792 00793 # DQM file saver 00794 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver", 00795 convention = cms.untracked.string( "Offline" ), 00796 workflow = cms.untracked.string( "/HLT/FastTimerService/All" ), 00797 dirName = cms.untracked.string( "." ), 00798 saveByRun = cms.untracked.int32(1), 00799 saveByLumiSection = cms.untracked.int32(-1), 00800 saveByEvent = cms.untracked.int32(-1), 00801 saveByTime = cms.untracked.int32(-1), 00802 saveByMinute = cms.untracked.int32(-1), 00803 saveAtJobEnd = cms.untracked.bool(False), 00804 forceRunNumber = cms.untracked.int32(-1), 00805 ) 00806 00807 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver ) 00808 """
def confdb::loadAdditionalConditions | ( | self, | |
comment, | |||
conditions | |||
) |
Definition at line 667 of file confdb.py.
00668 : 00669 # load additional conditions 00670 self.data += """ 00671 # %s 00672 if 'GlobalTag' in %%(dict)s: 00673 """ % comment 00674 for condition in conditions: 00675 self.data += """ %%(process)sGlobalTag.toGet.append( 00676 cms.PSet( 00677 record = cms.string( '%(record)s' ), 00678 tag = cms.string( '%(tag)s' ), 00679 label = cms.untracked.string( '%(label)s' ), 00680 connect = cms.untracked.string( '%(connect)s' ) 00681 ) 00682 ) 00683 """ % condition 00684
def confdb::loadCff | ( | self, | |
module | |||
) |
def confdb::overrideGlobalTag | ( | self | ) |
Definition at line 437 of file confdb.py.
00438 : 00439 # overwrite GlobalTag 00440 # the logic is: 00441 # - always set the correct connection string and pfnPrefix 00442 # - if a GlobalTag is specified on the command line: 00443 # - override the global tag 00444 # - if the GT is "auto:...", insert the code to read it from Configuration.AlCa.autoCond 00445 # - if a GlobalTag is NOT specified on the command line: 00446 # - when running on data, do nothing, and keep the global tag in the menu 00447 # - when running on mc, take the GT from the configuration.type 00448 00449 # override the GlobalTag connection string and pfnPrefix 00450 text = """ 00451 # override the GlobalTag, connection string and pfnPrefix 00452 if 'GlobalTag' in %(dict)s: 00453 """ 00454 00455 # when running on MC, override the global tag even if not specified on the command line 00456 if not self.config.data and not self.config.globaltag: 00457 if self.config.type in globalTag: 00458 self.config.globaltag = globalTag[self.config.type] 00459 else: 00460 self.config.globaltag = globalTag['GRun'] 00461 00462 # if requested, override the L1 menu from the GlobalTag (using the same connect as the GlobalTag itself) 00463 if self.config.l1.override: 00464 self.config.l1.record = 'L1GtTriggerMenuRcd' 00465 self.config.l1.label = '' 00466 self.config.l1.tag = self.config.l1.override 00467 if not self.config.l1.connect: 00468 self.config.l1.connect = '%(connect)s/CMS_COND_31X_L1T' 00469 self.config.l1cond = '%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__ 00470 else: 00471 self.config.l1cond = None 00472 00473 if self.config.globaltag or self.config.l1cond: 00474 text += " from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n" 00475 text += " %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag" 00476 if self.config.globaltag: 00477 text += ", globaltag = %s" % repr(self.config.globaltag) 00478 if self.config.l1cond: 00479 text += ", conditions = %s" % repr(self.config.l1cond) 00480 text += ")\n" 00481 00482 text += """ %(process)sGlobalTag.connect = '%(connect)s/CMS_COND_31X_GLOBALTAG' 00483 %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/') 00484 for pset in process.GlobalTag.toGet.value(): 00485 pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/') 00486 """ 00487 self.data += text
def confdb::overrideL1MenuXml | ( | self | ) |
Definition at line 488 of file confdb.py.
00489 : 00490 # if requested, override the L1 menu from the GlobalTag (Xml file) 00491 if self.config.l1Xml.XmlFile: 00492 text = """ 00493 # override the L1 menu from an Xml file 00494 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer", 00495 TriggerMenuLuminosity = cms.string('%(LumiDir)s'), 00496 DefXmlFile = cms.string('%(XmlFile)s'), 00497 VmeXmlFile = cms.string('') 00498 ) 00499 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource", 00500 recordName = cms.string('L1GtTriggerMenuRcd'), 00501 iovIsRunNotTime = cms.bool(True), 00502 firstValid = cms.vuint32(1) 00503 ) 00504 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml') 00505 """ 00506 self.data += text % self.config.l1Xml.__dict__
def confdb::overrideOutput | ( | self | ) |
Definition at line 586 of file confdb.py.
00587 : 00588 # override the "online" ShmStreamConsumer output modules with "offline" PoolOutputModule's 00589 self.data = re.sub( 00590 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,', 00591 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 ),', 00592 self.data 00593 ) 00594 00595 if not self.config.fragment and self.config.output == 'full': 00596 # add a single "keep *" output 00597 self.data += """ 00598 # add a single "keep *" output 00599 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule", 00600 fileName = cms.untracked.string( "outputFULL.root" ), 00601 fastCloning = cms.untracked.bool( False ), 00602 dataset = cms.untracked.PSet( 00603 dataTier = cms.untracked.string( 'RECO' ), 00604 filterName = cms.untracked.string( '' ) 00605 ), 00606 outputCommands = cms.untracked.vstring( 'keep *' ) 00607 ) 00608 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL ) 00609 """ 00610
def confdb::overrideParameters | ( | self, | |
module, | |||
parameters | |||
) |
def confdb::overrideProcessName | ( | self | ) |
Definition at line 612 of file confdb.py.
00613 : 00614 if self.config.name is None: 00615 return 00616 00617 # override the process name 00618 quote = '[\'\"]' 00619 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) 00620 00621 # the following was stolen and adapted from HLTrigger.Configuration.customL1THLT_Options 00622 self.data += """ 00623 # adapt HLT modules to the correct process name 00624 if 'hltTrigReport' in %%(dict)s: 00625 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00626 00627 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s: 00628 %%(process)shltPreExpressCosmicsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00629 00630 if 'hltPreExpressOutputSmart' in %%(dict)s: 00631 %%(process)shltPreExpressOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00632 00633 if 'hltPreDQMForHIOutputSmart' in %%(dict)s: 00634 %%(process)shltPreDQMForHIOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00635 00636 if 'hltPreDQMForPPOutputSmart' in %%(dict)s: 00637 %%(process)shltPreDQMForPPOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00638 00639 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s: 00640 %%(process)shltPreHLTDQMResultsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00641 00642 if 'hltPreHLTDQMOutputSmart' in %%(dict)s: 00643 %%(process)shltPreHLTDQMOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00644 00645 if 'hltPreHLTMONOutputSmart' in %%(dict)s: 00646 %%(process)shltPreHLTMONOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00647 00648 if 'hltDQMHLTScalers' in %%(dict)s: 00649 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00650 %%(process)shltDQMHLTScalers.processname = '%(name)s' 00651 00652 if 'hltDQML1SeedLogicScalers' in %%(dict)s: 00653 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s' 00654 """ % self.config.__dict__ 00655
def confdb::runL1Emulator | ( | self | ) |
Definition at line 538 of file confdb.py.
00539 : 00540 # if requested, run (part of) the L1 emulator 00541 if self.config.emulator: 00542 # FIXME this fragment used "process" explicitly 00543 emulator = { 00544 'RawToDigi': '', 00545 'CustomL1T': '', 00546 'CustomHLT': '' 00547 } 00548 00549 if self.config.data: 00550 emulator['RawToDigi'] = 'RawToDigi_Data_cff' 00551 else: 00552 emulator['RawToDigi'] = 'RawToDigi_cff' 00553 00554 if self.config.emulator == 'gt': 00555 emulator['CustomL1T'] = 'customiseL1GtEmulatorFromRaw' 00556 emulator['CustomHLT'] = 'switchToSimGtDigis' 00557 elif self.config.emulator == 'gct,gt': 00558 emulator['CustomL1T'] = 'customiseL1CaloAndGtEmulatorsFromRaw' 00559 emulator['CustomHLT'] = 'switchToSimGctGtDigis' 00560 elif self.config.emulator == 'gmt,gt': 00561 # XXX currently unsupported 00562 emulator['CustomL1T'] = 'customiseL1MuonAndGtEmulatorsFromRaw' 00563 emulator['CustomHLT'] = 'switchToSimGmtGtDigis' 00564 elif self.config.emulator in ('gmt,gct,gt', 'gct,gmt,gt', 'all'): 00565 emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw' 00566 emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis' 00567 else: 00568 # unsupported argument, default to running the whole emulator 00569 emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw' 00570 emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis' 00571 00572 self.data += """ 00573 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s 00574 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' ) 00575 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' ) 00576 import L1Trigger.Configuration.L1Trigger_custom 00577 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process ) 00578 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process ) 00579 00580 # customize the HLT to use the emulated results 00581 import HLTrigger.Configuration.customizeHLTforL1Emulator 00582 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process ) 00583 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process ) 00584 """ % emulator 00585
def confdb::runL1EmulatorGT | ( | self | ) |
Definition at line 507 of file confdb.py.
00508 : 00509 # if requested, run (part of) the L1 emulator, then repack the data into a new RAW collection, to be used by the HLT 00510 if not self.config.emulator: 00511 return 00512 00513 if self.config.emulator != 'gt': 00514 # only the GT emulator is currently supported 00515 return 00516 00517 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT 00518 text = """ 00519 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT 00520 """ 00521 if self.config.fragment: 00522 # FIXME in a cff, should also update the HLTSchedule 00523 text += "import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n" 00524 else: 00525 text += "process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n" 00526 00527 if not 'hltBoolFalse' in self.data: 00528 # add hltBoolFalse 00529 text += """ 00530 %(process)shltBoolFalse = cms.EDFilter( "HLTBool", 00531 result = cms.bool( False ) 00532 ) 00533 """ 00534 text += "process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n" 00535 00536 self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1) 00537
def confdb::splitter | ( | iterator, | |
n | |||
) |
Definition at line 11 of file confdb.py.
Referenced by TotemT1Organization::_FromUnitIDToData(), SplittingConfigurableHisto::fill(), HLTLogMonitorFilter::filter(), FWTriggerTableView::saveImageTo(), FWTableView::saveImageTo(), and SplittingConfigurableHisto::SplittingConfigurableHisto().
def confdb::updateMessageLogger | ( | self | ) |
Definition at line 656 of file confdb.py.
00657 : 00658 # request summary informations from the MessageLogger 00659 self.data += """ 00660 if 'MessageLogger' in %(dict)s: 00661 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD') 00662 %(process)sMessageLogger.categories.append('L1GtTrigReport') 00663 %(process)sMessageLogger.categories.append('HLTrigReport') 00664 %(process)sMessageLogger.categories.append('FastReport') 00665 """ 00666