CMS 3D CMS Logo

Classes | Functions | Variables

confdb Namespace Reference

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

Function Documentation

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 496 of file confdb.py.

00497                                   :
00498     """arguments:
00499         name:     parameter name (optional)
00500         type:     parameter type (look for tracked and untracked variants)
00501         value:    original value
00502         replace:  replacement value
00503     """
00504     if 'name' in args:
00505       self.data = re.sub(
00506           r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
00507           r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
00508           self.data)
00509     else:
00510       self.data = re.sub(
00511           r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
00512           r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
00513           self.data)
00514 

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 478 of file confdb.py.

00479                             :
00480     # add global options
00481     self.data += """
00482 # limit the number of events to be processed
00483 %%(process)smaxEvents = cms.untracked.PSet(
00484     input = cms.untracked.int32( %d )
00485 )
00486 """ % self.config.events
00487 
00488     if not self.config.profiling:
00489       self.data += """
00490 # enable the TrigReport and TimeReport
00491 %(process)soptions = cms.untracked.PSet(
00492     wantSummary = cms.untracked.bool( True )
00493 )
00494 """
00495 

def confdb::build_source (   self)

Definition at line 1325 of file confdb.py.

01326                         :
01327     if self.config.input:
01328       # if a dataset or a list of input files was given, use it
01329       if self.config.input[0:8] == 'dataset:':
01330         from dbsFileQuery import dbsFileQuery
01331         # extract the dataset name, and use DBS to fine the list of LFNs
01332         dataset = self.config.input[8:]
01333         query   = 'find file where dataset=' + dataset
01334         files   = dbsFileQuery(query)
01335         self.source = files
01336       else:
01337         # assume a list of input files
01338         self.source = self.config.input.split(',')
01339     elif self.config.online:
01340       # online we always run on data
01341       self.source = [ "file:/tmp/InputCollection.root" ]
01342     elif self.config.data:
01343       # offline we can run on data...
01344       self.source = [ "file:RelVal_Raw_%s_DATA.root" % self.config.type ]
01345     else:
01346       # ...or on mc
01347       self.source = [ "file:RelVal_Raw_%s_STARTUP.root" % self.config.type ]
01348 
01349     self.data += """
01350 %(process)ssource = cms.Source( "PoolSource",
01351     fileNames = cms.untracked.vstring(
01352 """
01353     if self.source: 
01354       for line in self.source:
01355         self.data += "        '%s',\n" % line
01356     self.data += """    ),
01357     secondaryFileNames = cms.untracked.vstring(
01358 """
01359     if self.parent: 
01360       for line in self.parent:
01361         self.data += "        '%s',\n" % line
01362     self.data += """    ),
01363     inputCommands = cms.untracked.vstring(
01364         'keep *'
01365     )
01366 )
01367 """
def confdb::buildOptions (   self)

Definition at line 1041 of file confdb.py.

01042                         :
01043     # common configuration for all scenarios
01044     self.options['services'].append( "-FUShmDQMOutputService" )
01045 
01046     if self.config.fragment:
01047       # extract a configuration file fragment
01048       self.options['essources'].append( "-GlobalTag" )
01049       self.options['essources'].append( "-HepPDTESSource" )
01050       self.options['essources'].append( "-XMLIdealGeometryESSource" )
01051       self.options['essources'].append( "-eegeom" )
01052       self.options['essources'].append( "-es_hardcode" )
01053       self.options['essources'].append( "-magfield" )
01054 
01055       self.options['esmodules'].append( "-AutoMagneticFieldESProducer" )
01056       self.options['esmodules'].append( "-SlaveField0" )
01057       self.options['esmodules'].append( "-SlaveField20" )
01058       self.options['esmodules'].append( "-SlaveField30" )
01059       self.options['esmodules'].append( "-SlaveField35" )
01060       self.options['esmodules'].append( "-SlaveField38" )
01061       self.options['esmodules'].append( "-SlaveField40" )
01062       self.options['esmodules'].append( "-VBF0" )
01063       self.options['esmodules'].append( "-VBF20" )
01064       self.options['esmodules'].append( "-VBF30" )
01065       self.options['esmodules'].append( "-VBF35" )
01066       self.options['esmodules'].append( "-VBF38" )
01067       self.options['esmodules'].append( "-VBF40" )
01068       self.options['esmodules'].append( "-CSCGeometryESModule" )
01069       self.options['esmodules'].append( "-CaloGeometryBuilder" )
01070       self.options['esmodules'].append( "-CaloTowerHardcodeGeometryEP" )
01071       self.options['esmodules'].append( "-CastorHardcodeGeometryEP" )
01072       self.options['esmodules'].append( "-DTGeometryESModule" )
01073       self.options['esmodules'].append( "-EcalBarrelGeometryEP" )
01074       self.options['esmodules'].append( "-EcalElectronicsMappingBuilder" )
01075       self.options['esmodules'].append( "-EcalEndcapGeometryEP" )
01076       self.options['esmodules'].append( "-EcalLaserCorrectionService" )
01077       self.options['esmodules'].append( "-EcalPreshowerGeometryEP" )
01078       self.options['esmodules'].append( "-HcalHardcodeGeometryEP" )
01079       self.options['esmodules'].append( "-HcalTopologyIdealEP" )
01080       self.options['esmodules'].append( "-MuonNumberingInitialization" )
01081       self.options['esmodules'].append( "-ParametrizedMagneticFieldProducer" )
01082       self.options['esmodules'].append( "-RPCGeometryESModule" )
01083       self.options['esmodules'].append( "-SiStripGainESProducer" )
01084       self.options['esmodules'].append( "-SiStripRecHitMatcherESProducer" )
01085       self.options['esmodules'].append( "-SiStripQualityESProducer" )
01086       self.options['esmodules'].append( "-StripCPEfromTrackAngleESProducer" )
01087       self.options['esmodules'].append( "-TrackerDigiGeometryESModule" )
01088       self.options['esmodules'].append( "-TrackerGeometricDetESModule" )
01089       self.options['esmodules'].append( "-VolumeBasedMagneticFieldESProducer" )
01090       self.options['esmodules'].append( "-ZdcHardcodeGeometryEP" )
01091       self.options['esmodules'].append( "-hcal_db_producer" )
01092       self.options['esmodules'].append( "-L1GtTriggerMaskAlgoTrigTrivialProducer" )
01093       self.options['esmodules'].append( "-L1GtTriggerMaskTechTrigTrivialProducer" )
01094       self.options['esmodules'].append( "-hltESPEcalTrigTowerConstituentsMapBuilder" )
01095       self.options['esmodules'].append( "-hltESPGlobalTrackingGeometryESProducer" )
01096       self.options['esmodules'].append( "-hltESPMuonDetLayerGeometryESProducer" )
01097       self.options['esmodules'].append( "-hltESPTrackerRecoGeometryESProducer" )
01098       if not self.config.fastsim:
01099         self.options['esmodules'].append( "-CaloTowerGeometryFromDBEP" )
01100         self.options['esmodules'].append( "-CastorGeometryFromDBEP" )
01101         self.options['esmodules'].append( "-EcalBarrelGeometryFromDBEP" )
01102         self.options['esmodules'].append( "-EcalEndcapGeometryFromDBEP" )
01103         self.options['esmodules'].append( "-EcalPreshowerGeometryFromDBEP" )
01104         self.options['esmodules'].append( "-HcalGeometryFromDBEP" )
01105         self.options['esmodules'].append( "-ZdcGeometryFromDBEP" )
01106         self.options['esmodules'].append( "-XMLFromDBSource" )
01107         self.options['esmodules'].append( "-sistripconn" )
01108 
01109       self.options['services'].append( "-PrescaleService" )
01110       self.options['services'].append( "-MessageLogger" )
01111       self.options['services'].append( "-DQM" )
01112       self.options['services'].append( "-DQMStore" )
01113       self.options['services'].append( "-MicroStateService" )
01114       self.options['services'].append( "-ModuleWebRegistry" )
01115       self.options['services'].append( "-TimeProfilerService" )
01116       self.options['services'].append( "-FastTimerService" )
01117 
01118       self.options['psets'].append( "-maxEvents" )
01119       self.options['psets'].append( "-options" )
01120 
01121     if self.config.fastsim:
01122       # remove components not supported or needed by fastsim
01123       self.options['esmodules'].append( "-navigationSchoolESProducer" )
01124       self.options['esmodules'].append( "-TransientTrackBuilderESProducer" )
01125       self.options['esmodules'].append( "-SteppingHelixPropagatorAny" )
01126       self.options['esmodules'].append( "-OppositeMaterialPropagator" )
01127       self.options['esmodules'].append( "-MaterialPropagator" )
01128       self.options['esmodules'].append( "-CaloTowerConstituentsMapBuilder" )
01129       self.options['esmodules'].append( "-CaloTopologyBuilder" )
01130 
01131       self.options['services'].append( "-UpdaterService" )
01132 
01133       self.options['modules'].append( "hltL3MuonIsolations" )
01134       self.options['modules'].append( "hltPixelVertices" )
01135       # 2011 start
01136       self.options['modules'].append( "-hltCkfL1IsoTrackCandidates" )
01137       self.options['modules'].append( "-hltCtfL1IsoWithMaterialTracks" )
01138       self.options['modules'].append( "-hltCkfL1NonIsoTrackCandidates" )
01139       self.options['modules'].append( "-hltCtfL1NonIsoWithMaterialTracks" )
01140       self.options['modules'].append( "-hltCkf3HitL1IsoTrackCandidates" )
01141       self.options['modules'].append( "-hltCtf3HitL1IsoWithMaterialTracks" )
01142       self.options['modules'].append( "-hltCkf3HitL1NonIsoTrackCandidates" )
01143       self.options['modules'].append( "-hltCtf3HitL1NonIsoWithMaterialTracks" )
01144       # 2011 stop
01145       self.options['modules'].append( "-hltCkfL1SeededTrackCandidates" )
01146       self.options['modules'].append( "-hltCtfL1SeededithMaterialTracks" )
01147       self.options['modules'].append( "-hltCkf3HitL1SeededTrackCandidates" )
01148       self.options['modules'].append( "-hltCtf3HitL1SeededWithMaterialTracks" )
01149       self.options['modules'].append( "-hltCkf3HitActivityTrackCandidates" )
01150       self.options['modules'].append( "-hltCtf3HitActivityWithMaterialTracks" )
01151       self.options['modules'].append( "-hltActivityCkfTrackCandidatesForGSF" )
01152       self.options['modules'].append( "-hltL1SeededCkfTrackCandidatesForGSF" )
01153       self.options['modules'].append( "-hltMuCkfTrackCandidates" )
01154       self.options['modules'].append( "-hltMuCtfTracks" )
01155       self.options['modules'].append( "-hltTau3MuCkfTrackCandidates" )
01156       self.options['modules'].append( "-hltTau3MuCtfWithMaterialTracks" )
01157       self.options['modules'].append( "-hltMuTrackJpsiCkfTrackCandidates" )
01158       self.options['modules'].append( "-hltMuTrackJpsiCtfTracks" )
01159       self.options['modules'].append( "-hltMuTrackJpsiEffCkfTrackCandidates" )
01160       self.options['modules'].append( "-hltMuTrackJpsiEffCtfTracks" )
01161       self.options['modules'].append( "-hltJpsiTkPixelSeedFromL3Candidate" )
01162       self.options['modules'].append( "-hltCkfTrackCandidatesJpsiTk" )
01163       self.options['modules'].append( "-hltCtfWithMaterialTracksJpsiTk" )
01164       self.options['modules'].append( "-hltMuTrackCkfTrackCandidatesOnia" )
01165       self.options['modules'].append( "-hltMuTrackCtfTracksOnia" )
01166       
01167       self.options['modules'].append( "-hltESRegionalEgammaRecHit" )
01168       self.options['modules'].append( "-hltEcalRegionalJetsFEDs" )
01169       self.options['modules'].append( "-hltEcalRegionalMuonsFEDs" )
01170       self.options['modules'].append( "-hltEcalRegionalEgammaFEDs" )
01171       self.options['modules'].append( "-hltFEDSelector" )
01172       self.options['modules'].append( "-hltL3TrajSeedOIHit" )
01173       self.options['modules'].append( "-hltL3TrajSeedIOHit" )
01174       self.options['modules'].append( "-hltL3TrackCandidateFromL2OIState" )
01175       self.options['modules'].append( "-hltL3TrackCandidateFromL2OIHit" )
01176       self.options['modules'].append( "-hltL3TrackCandidateFromL2IOHit" )
01177       self.options['modules'].append( "-hltL3TrackCandidateFromL2NoVtx" )
01178       self.options['modules'].append( "-hltHcalDigis" )
01179       self.options['modules'].append( "-hltHoreco" )
01180       self.options['modules'].append( "-hltHfreco" )
01181       self.options['modules'].append( "-hltHbhereco" )
01182       self.options['modules'].append( "-hltEcalRegionalRestFEDs" )
01183       self.options['modules'].append( "-hltEcalRegionalESRestFEDs" )
01184       self.options['modules'].append( "-hltEcalRawToRecHitFacility" )
01185       self.options['modules'].append( "-hltESRawToRecHitFacility" )
01186       self.options['modules'].append( "-hltEcalRegionalJetsRecHit" )
01187       self.options['modules'].append( "-hltEcalRegionalMuonsRecHit" )
01188       self.options['modules'].append( "-hltEcalRegionalEgammaRecHit" )
01189       self.options['modules'].append( "-hltEcalRecHitAll" )
01190       self.options['modules'].append( "-hltESRecHitAll" )
01191       # === hltPF
01192       self.options['modules'].append( "-hltPFJetCkfTrackCandidates" )
01193       self.options['modules'].append( "-hltPFJetCtfWithMaterialTracks" )
01194       self.options['modules'].append( "-hltPFlowTrackSelectionHighPurity" )
01195       # === hltFastJet
01196       self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" )
01197       self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" )
01198       self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" )     
01199       self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" )
01200       self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" )
01201       self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" )     
01202       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" )
01203       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" )
01204       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" )     
01205       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" )
01206       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" )
01207       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" )
01208       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
01209       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
01210       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
01211       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
01212       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
01213       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
01214 
01215       # === hltBLifetimeRegional
01216 
01217       # 2011 start
01218       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorSingleTop" )
01219       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksSingleTop" )
01220       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesSingleTop" )
01221       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorEleJetSingleTop" )
01222       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesEleJetSingleTop" )
01223       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksEleJetSingleTop" )
01224       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorIsoEleJetSingleTop" )
01225       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesIsoEleJetSingleTop" )
01226       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksIsoEleJetSingleTop" )
01227       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorRA2b" )
01228       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesRA2b" )
01229       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksRA2b" )
01230       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorRAzr" )
01231       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesRAzr" )
01232       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksRAzr" )
01233       self.options['modules'].append( "-hltBLifetimeRegionalPixel3DSeedGeneratorJet30Hbb" )
01234       self.options['modules'].append( "-hltBLifetimeRegional3DCkfTrackCandidatesJet30Hbb" )
01235       self.options['modules'].append( "-hltBLifetimeRegional3DCtfWithMaterialTracksJet30Hbb" )
01236       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorGammaB" )
01237       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesGammaB" )
01238       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksGammaB" )
01239       # 2011 stop
01240                                                                                          
01241       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbb" )
01242       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbb" )
01243       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbb" )
01244       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" )
01245       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" )
01246       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" )
01247       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
01248       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
01249       self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
01250       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
01251       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
01252       self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
01253       self.options['modules'].append( "-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" )
01254       self.options['modules'].append( "-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" )
01255       self.options['modules'].append( "-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" )
01256       self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" )
01257       self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" )
01258       self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" )
01259       self.options['modules'].append( "-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" )
01260       self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" )
01261       self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" )
01262                   
01263       self.options['modules'].append( "-hltPixelTracksForMinBias" )
01264       self.options['modules'].append( "-hltPixelTracksForHighMult" )
01265       self.options['modules'].append( "-hltRegionalPixelTracks" )
01266       self.options['modules'].append( "-hltPixelTracksReg" )
01267       self.options['modules'].append( "-hltIter4Merged" )
01268       self.options['modules'].append( "-hltFastPixelHitsVertex" )
01269       self.options['modules'].append( "-hltFastPixelTracks")
01270       self.options['modules'].append( "-hltFastPixelTracksRecover")
01271       
01272       self.options['modules'].append( "-hltFastPrimaryVertexbbPhi")
01273       self.options['modules'].append( "-hltPixelTracksFastPVbbPhi")
01274       self.options['modules'].append( "-hltPixelTracksRecoverbbPhi" )
01275       self.options['modules'].append( "-hltFastPixelHitsVertexVHbb" )
01276       self.options['modules'].append( "-hltFastPixelTracksVHbb" )
01277       self.options['modules'].append( "-hltFastPixelTracksRecoverVHbb" )
01278 
01279       self.options['modules'].append( "-hltFastPrimaryVertex")
01280       self.options['modules'].append( "-hltFastPVPixelTracks")
01281       self.options['modules'].append( "-hltFastPVPixelTracksRecover" )
01282 
01283       self.options['modules'].append( "-hltIter4Tau3MuMerged" )
01284       self.options['modules'].append( "hltPixelMatchElectronsActivity" )
01285 
01286       self.options['modules'].append( "-hltMuonCSCDigis" )
01287       self.options['modules'].append( "-hltMuonDTDigis" )
01288       self.options['modules'].append( "-hltMuonRPCDigis" )
01289       self.options['modules'].append( "-hltGtDigis" )
01290       self.options['modules'].append( "-hltL1GtTrigReport" )
01291       self.options['modules'].append( "hltCsc2DRecHits" )
01292       self.options['modules'].append( "hltDt1DRecHits" )
01293       self.options['modules'].append( "hltRpcRecHits" )
01294       self.options['modules'].append( "-hltScalersRawToDigi" )
01295 
01296       # 2011 start
01297       self.options['sequences'].append( "-HLTL1IsoEgammaRegionalRecoTrackerSequence" )
01298       self.options['sequences'].append( "-HLTL1NonIsoEgammaRegionalRecoTrackerSequence" )
01299       # 2011 stop
01300       self.options['sequences'].append( "-HLTL1SeededEgammaRegionalRecoTrackerSequence" )
01301       self.options['sequences'].append( "-HLTEcalActivityEgammaRegionalRecoTrackerSequence" )
01302       self.options['sequences'].append( "-HLTPixelMatchElectronActivityTrackingSequence" )
01303       self.options['sequences'].append( "-HLTDoLocalStripSequence" )
01304       self.options['sequences'].append( "-HLTDoLocalPixelSequence" )
01305       self.options['sequences'].append( "-HLTDoLocalPixelSequenceRegL2Tau" )
01306       self.options['sequences'].append( "-hltSiPixelDigis" )
01307       self.options['sequences'].append( "-hltSiPixelClusters" )
01308       self.options['sequences'].append( "-hltSiPixelRecHits" )
01309       self.options['sequences'].append( "-HLTRecopixelvertexingSequence" )
01310       self.options['sequences'].append( "-HLTEndSequence" )
01311       self.options['sequences'].append( "-HLTBeginSequence" )
01312       self.options['sequences'].append( "-HLTBeginSequenceNZS" )
01313       self.options['sequences'].append( "-HLTBeginSequenceBPTX" )
01314       self.options['sequences'].append( "-HLTBeginSequenceAntiBPTX" )
01315       self.options['sequences'].append( "-HLTHBHENoiseSequence" )
01316       self.options['sequences'].append( "-HLTIterativeTracking" )
01317       self.options['sequences'].append( "-HLTIterativeTrackingTau3Mu" )
01318       self.options['sequences'].append( "-HLTRegionalCKFTracksForL3Isolation" )
01319       self.options['sequences'].append( "-HLTHBHENoiseCleanerSequence" )
01320 
01321       # remove HLTAnalyzerEndpath from fastsim cff's
01322       if self.config.fragment:
01323         self.options['paths'].append( "-HLTAnalyzerEndpath" )
01324 

def confdb::buildPathList (   self)

Definition at line 984 of file confdb.py.

00985                          :
00986     self.all_paths = self.getPathList()
00987 
00988     if self.config.paths:
00989       # no path list was requested, dump the full table, minus unsupported / unwanted paths
00990       paths = self.config.paths.split(',')
00991     else:
00992       # dump only the requested paths, plus the eventual output endpaths
00993       paths = []
00994 
00995     if self.config.fragment or self.config.output in ('none', 'full'):
00996       # 'full' removes all outputs (same as 'none') and then adds a single "keep *" output (see the overrideOutput method)
00997       if self.config.paths:
00998         # paths are removed by default
00999         pass    
01000       else:
01001         # drop all output endpaths
01002         paths.append( "-*Output" )
01003     elif self.config.output == 'minimal':
01004       # drop all output endpaths but HLTDQMResultsOutput
01005       if self.config.paths:
01006         paths.append( "HLTDQMResultsOutput" )
01007       else:
01008         paths.append( "-*Output" )
01009         paths.append( "HLTDQMResultsOutput" )
01010     else:
01011       # keep / add back all output endpaths
01012       if self.config.paths:
01013         paths.append( "*Output" )
01014       else:
01015         pass    # paths are kepy by default
01016 
01017     # drop paths unsupported by fastsim
01018     if self.config.fastsim:
01019       paths.extend( "-%s" % path for path in self.fastsimUnsupportedPaths )
01020 
01021     # drop unwanted paths for profiling (and timing studies)
01022     if self.config.profiling:
01023       paths.append( "-HLTriggerFirstPath" )
01024       paths.append( "-HLTAnalyzerEndpath" )
01025 
01026     # this should never be in any dump (nor online menu)
01027     paths.append( "-OfflineOutput" )
01028 
01029     # expand all wildcards
01030     paths = self.expandWildcards(paths, self.all_paths)
01031 
01032     if self.config.paths:
01033       # do an "additive" consolidation
01034       self.options['paths'] = self.consolidatePositiveList(paths)
01035       if not self.options['paths']:
01036         raise RuntimeError('Error: option "--paths %s" does not select any valid paths' % self.config.paths)
01037     else:
01038       # do a "subtractive" consolidation
01039       self.options['paths'] = self.consolidateNegativeList(paths)
01040 

def confdb::dumppaths (   paths)

Definition at line 978 of file confdb.py.

00979                       :
00980     sys.stderr.write('Path selection:\n')
00981     for path in paths:
00982       sys.stderr.write('\t%s\n' % path)
00983     sys.stderr.write('\n\n')

def confdb::fixForFastSim (   self)

Definition at line 526 of file confdb.py.

00527                          :
00528     if self.config.fastsim:
00529       # adapt the hle configuration (fragment) to run under fastsim
00530       self.data = re.sub( r'import FWCore.ParameterSet.Config as cms', r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data)
00531 
00532       # remove the definition of streams and datasets
00533       self.data = re.compile( r'^streams.*\n(.*\n)*?^\)\s*\n',  re.MULTILINE ).sub( '', self.data )
00534       self.data = re.compile( r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data )
00535 
00536       # fix the definition of module
00537       # FIXME: this should be updated to take into accout the --l1-emulator option
00538       self._fix_parameter(                               type = 'InputTag', value = 'hltL1extraParticles',  replace = 'l1extraParticles')
00539       self._fix_parameter(name = 'GMTReadoutCollection', type = 'InputTag', value = 'hltGtDigis',           replace = 'gmtDigis')
00540       self._fix_parameter(                               type = 'InputTag', value = 'hltGtDigis',           replace = 'gtDigis')
00541       self._fix_parameter(                               type = 'InputTag', value = 'hltL1GtObjectMap',     replace = 'gtDigis')
00542       self._fix_parameter(name = 'initialSeeds',         type = 'InputTag', value = 'noSeedsHere',          replace = 'globalPixelSeeds:GlobalPixel')
00543       self._fix_parameter(name = 'preFilteredSeeds',     type = 'bool',     value = 'True',                 replace = 'False')
00544       self._fix_parameter(                               type = 'InputTag', value = 'hltOfflineBeamSpot',   replace = 'offlineBeamSpot')
00545       self._fix_parameter(                               type = 'InputTag', value = 'hltOnlineBeamSpot',    replace = 'offlineBeamSpot')
00546       self._fix_parameter(                               type = 'InputTag', value = 'hltMuonCSCDigis',      replace = 'simMuonCSCDigis')
00547       self._fix_parameter(                               type = 'InputTag', value = 'hltMuonDTDigis',       replace = 'simMuonDTDigis')
00548       self._fix_parameter(                               type = 'InputTag', value = 'hltMuonRPCDigis',      replace = 'simMuonRPCDigis')
00549       self._fix_parameter(                               type = 'InputTag', value = 'hltRegionalTracksForL3MuonIsolation', replace = 'hltPixelTracks')
00550       self._fix_parameter(name = 'src',                  type = 'InputTag', value = 'hltHcalTowerNoiseCleaner', replace = 'hltTowerMakerForAll')
00551       self._fix_parameter(name = 'src',                  type = 'InputTag', value = 'hltIter4Tau3MuMerged', replace = 'hltIter4Merged')
00552 
00553       # fix the definition of sequences and paths
00554       self.data = re.sub( r'hltMuonCSCDigis', r'cms.SequencePlaceholder( "simMuonCSCDigis" )',  self.data )
00555       self.data = re.sub( r'hltMuonDTDigis',  r'cms.SequencePlaceholder( "simMuonDTDigis" )',   self.data )
00556       self.data = re.sub( r'hltMuonRPCDigis', r'cms.SequencePlaceholder( "simMuonRPCDigis" )',  self.data )
00557       self.data = re.sub( r'HLTEndSequence',  r'cms.SequencePlaceholder( "HLTEndSequence" )',   self.data )
00558       self.data = re.sub( r'hltGtDigis',      r'HLTBeginSequence',                              self.data )
00559 

def confdb::fixForMC (   self)

Definition at line 515 of file confdb.py.

00516                     :
00517     if not self.config.data:
00518       # customise the HLT menu for running on MC
00519       if not self.config.fragment:
00520         self.data += """
00521 # customise the HLT menu for running on MC
00522 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC
00523 process = customizeHLTforMC(process)
00524 """
00525 

def confdb::fixPrescales (   self)

Definition at line 560 of file confdb.py.

00561                         :
00562     # update the PrescaleService to match the new list of paths
00563     if self.options['paths']:
00564       if self.options['paths'][0][0] == '-':
00565         # drop requested paths
00566         for minuspath in self.options['paths']:
00567           path = minuspath[1:]
00568           self.data = re.sub(r'      cms.PSet\(  pathName = cms.string\( "%s" \),\n        prescales = cms.vuint32\( .* \)\n      \),?\n' % path, '', self.data)
00569       else:
00570         # keep requested paths
00571         for path in self.all_paths:
00572           if path not in self.options['paths']:
00573             self.data = re.sub(r'      cms.PSet\(  pathName = cms.string\( "%s" \),\n        prescales = cms.vuint32\( .* \)\n      \),?\n' % path, '', self.data)
00574 
00575     if self.config.unprescale:
00576       self.data += """
00577 # remove the HLT prescales
00578 if 'PrescaleService' in %(dict)s:
00579     %(process)sPrescaleService.lvl1DefaultLabel = cms.string( '0' )
00580     %(process)sPrescaleService.lvl1Labels       = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' )
00581     %(process)sPrescaleService.prescaleTable    = cms.VPSet( )
00582 """
00583 

def confdb::instrumentErrorEventType (   self)

Definition at line 598 of file confdb.py.

00599                                     :
00600     if self.config.errortype:
00601       # change all HLTTriggerTypeFilter EDFilters to accept only error events (SelectedTriggerType = 0)
00602       self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '1', replace = '0')
00603       self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '2', replace = '0')
00604       self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '3', replace = '0')
00605 

def confdb::instrumentOpenMode (   self)

Definition at line 584 of file confdb.py.

00585                               :
00586     if self.config.open:
00587       # find all EDfilters
00588       filters = [ match[1] for match in re.findall(r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ]
00589       re_sequence = re.compile( r'cms\.(Path|Sequence)\((.*)\)' )
00590       # remove existing 'cms.ingore' and '~' modifiers
00591       self.data = re_sequence.sub( lambda line: re.sub( r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)', r'\1', line.group(0) ), self.data )
00592       self.data = re_sequence.sub( lambda line: re.sub( r'~', '', line.group(0) ), self.data )
00593       # wrap all EDfilters with "cms.ignore( ... )", 1000 at a time (python 2.6 complains for too-big regular expressions)
00594       for some in splitter(filters, 1000):
00595         re_filters  = re.compile( r'\b((process\.)?(' + r'|'.join(some) + r'))\b' )
00596         self.data = re_sequence.sub( lambda line: re_filters.sub( r'cms.ignore( \1 )', line.group(0) ), self.data )
00597 

def confdb::instrumentTiming (   self)

Definition at line 870 of file confdb.py.

00871                             :
00872     if self.config.profiling:
00873       # instrument the menu for profiling: remove the HLTAnalyzerEndpath, add/override the HLTriggerFirstPath, with hltGetRaw and hltGetConditions
00874       text = ''
00875 
00876       if not 'hltGetRaw' in self.data:
00877         # add hltGetRaw
00878         text += """
00879 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw",
00880     RawDataCollection = cms.InputTag( "rawDataCollector" )
00881 )
00882 """
00883 
00884       if not 'hltGetConditions' in self.data:
00885         # add hltGetConditions
00886         text += """
00887 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter',
00888     verbose = cms.untracked.bool( False ),
00889     toGet = cms.VPSet( )
00890 )
00891 """
00892 
00893       if not 'hltBoolFalse' in self.data:
00894         # add hltBoolFalse
00895         text += """
00896 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
00897     result = cms.bool( False )
00898 )
00899 """
00900 
00901       # add the definition of HLTriggerFirstPath
00902       # FIXME in a cff, should also update the HLTSchedule
00903       text += """
00904 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse )
00905 """
00906       self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1)
00907 
00908 
00909     # instrument the menu with the Service, EDProducer and EndPath needed for timing studies
00910     # FIXME in a cff, should also update the HLTSchedule
00911     if self.config.timing:
00912       self.data += """
00913 # instrument the menu with the modules and EndPath needed for timing studies
00914 """
00915 
00916       hasFST = False
00917       if 'FastTimerService' in self.data:
00918         hasFST = True
00919 
00920       self.data += '\n# configure the FastTimerService\n'
00921       if not hasFST:
00922         self.loadCff('HLTrigger.Timer.FastTimerService_cfi')
00923       self.data += """%(process)sFastTimerService.useRealTimeClock          = False
00924 %(process)sFastTimerService.enableTimingPaths         = True
00925 %(process)sFastTimerService.enableTimingModules       = True
00926 %(process)sFastTimerService.enableTimingExclusive     = True
00927 %(process)sFastTimerService.enableTimingSummary       = True
00928 %(process)sFastTimerService.skipFirstPath             = True
00929 %(process)sFastTimerService.enableDQM                 = True
00930 %(process)sFastTimerService.enableDQMbyPathActive     = True
00931 %(process)sFastTimerService.enableDQMbyPathTotal      = True
00932 %(process)sFastTimerService.enableDQMbyPathOverhead   = True
00933 %(process)sFastTimerService.enableDQMbyPathDetails    = True
00934 %(process)sFastTimerService.enableDQMbyPathCounters   = True
00935 %(process)sFastTimerService.enableDQMbyPathExclusive  = True
00936 %(process)sFastTimerService.enableDQMbyModule         = True
00937 %(process)sFastTimerService.enableDQMSummary          = True
00938 %(process)sFastTimerService.enableDQMbyLuminosity     = True
00939 %(process)sFastTimerService.enableDQMbyLumiSection    = True
00940 %(process)sFastTimerService.enableDQMbyProcesses      = False
00941 %(process)sFastTimerService.dqmTimeRange              =  1000. 
00942 %(process)sFastTimerService.dqmTimeResolution         =     5. 
00943 %(process)sFastTimerService.dqmPathTimeRange          =   100. 
00944 %(process)sFastTimerService.dqmPathTimeResolution     =     0.5
00945 %(process)sFastTimerService.dqmModuleTimeRange        =    40. 
00946 %(process)sFastTimerService.dqmModuleTimeResolution   =     0.2
00947 %(process)sFastTimerService.dqmLuminosityRange        = 1e+34
00948 %(process)sFastTimerService.dqmLuminosityResolution   = 1e+31
00949 %(process)sFastTimerService.dqmLumiSectionsRange      =  2500
00950 %(process)sFastTimerService.dqmPath                   = 'HLT/TimerService'
00951 %(process)sFastTimerService.luminosityProduct         = cms.untracked.InputTag( 'hltScalersRawToDigi' )
00952 %(process)sFastTimerService.supportedProcesses        = cms.untracked.vuint32( )
00953 """
00954 
00955       self.data += """
00956 # FastTimerServiceClient
00957 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient",
00958     dqmPath = cms.untracked.string( "HLT/TimerService" )
00959 )
00960 
00961 # DQM file saver
00962 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver",
00963     convention        = cms.untracked.string( "Offline" ),
00964     workflow          = cms.untracked.string( "/HLT/FastTimerService/All" ),
00965     dirName           = cms.untracked.string( "." ),
00966     saveByRun         = cms.untracked.int32(1),
00967     saveByLumiSection = cms.untracked.int32(-1),
00968     saveByEvent       = cms.untracked.int32(-1),
00969     saveByTime        = cms.untracked.int32(-1),
00970     saveByMinute      = cms.untracked.int32(-1),
00971     saveAtJobEnd      = cms.untracked.bool(False),
00972     forceRunNumber    = cms.untracked.int32(-1),
00973 )
00974 
00975 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver )
00976 """

def confdb::loadAdditionalConditions (   self,
  comment,
  conditions 
)

Definition at line 836 of file confdb.py.

00837                                                           :
00838     # load additional conditions
00839     self.data += """
00840 # %s
00841 if 'GlobalTag' in %%(dict)s:
00842 """ % comment
00843     for condition in conditions:
00844       self.data += """    %%(process)sGlobalTag.toGet.append(
00845         cms.PSet(
00846             record  = cms.string( '%(record)s' ),
00847             tag     = cms.string( '%(tag)s' ),
00848             label   = cms.untracked.string( '%(label)s' ),
00849             connect = cms.untracked.string( '%(connect)s' )
00850         )
00851     )
00852 """ % condition
00853 

def confdb::loadCff (   self,
  module 
)

Definition at line 854 of file confdb.py.

00855                            :
00856     # load a cfi or cff module
00857     if self.config.fragment:
00858       self.data += 'from %s import *\n' % module
00859     else:
00860       self.data += 'process.load( "%s" )\n' % module
00861 

def confdb::overrideGlobalTag (   self)

Definition at line 606 of file confdb.py.

00607                              :
00608     # overwrite GlobalTag
00609     # the logic is:
00610     #   - always set the correct connection string and pfnPrefix
00611     #   - if a GlobalTag is specified on the command line:
00612     #      - override the global tag
00613     #      - if the GT is "auto:...", insert the code to read it from Configuration.AlCa.autoCond
00614     #   - if a GlobalTag is NOT  specified on the command line:
00615     #      - when running on data, do nothing, and keep the global tag in the menu
00616     #      - when running on mc, take the GT from the configuration.type
00617 
00618     # override the GlobalTag connection string and pfnPrefix
00619     text = """
00620 # override the GlobalTag, connection string and pfnPrefix
00621 if 'GlobalTag' in %(dict)s:
00622 """
00623 
00624     # when running on MC, override the global tag even if not specified on the command line
00625     if not self.config.data and not self.config.globaltag:
00626       if self.config.type in globalTag:
00627         self.config.globaltag = globalTag[self.config.type]
00628       else:
00629         self.config.globaltag = globalTag['GRun']
00630 
00631     # if requested, override the L1 menu from the GlobalTag (using the same connect as the GlobalTag itself)
00632     if self.config.l1.override:
00633       self.config.l1.record = 'L1GtTriggerMenuRcd'
00634       self.config.l1.label  = ''
00635       self.config.l1.tag    = self.config.l1.override
00636       if not self.config.l1.connect:
00637         self.config.l1.connect = '%(connect)s/CMS_COND_31X_L1T'
00638       self.config.l1cond = '%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__
00639     else:
00640       self.config.l1cond = None
00641 
00642     if self.config.globaltag or self.config.l1cond:
00643       text += "    from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n"
00644       text += "    %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag"
00645       if self.config.globaltag:
00646         text += ", globaltag = %s"  % repr(self.config.globaltag)
00647       if self.config.l1cond:
00648         text += ", conditions = %s" % repr(self.config.l1cond)
00649       text += ")\n"
00650 
00651     text += """    %(process)sGlobalTag.connect   = '%(connect)s/CMS_COND_31X_GLOBALTAG'
00652     %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/')
00653     for pset in process.GlobalTag.toGet.value():
00654         pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/')
00655 """
00656     self.data += text

def confdb::overrideL1MenuXml (   self)

Definition at line 657 of file confdb.py.

00658                              :
00659     # if requested, override the L1 menu from the GlobalTag (Xml file)
00660     if self.config.l1Xml.XmlFile:
00661       text = """
00662 # override the L1 menu from an Xml file
00663 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer",
00664   TriggerMenuLuminosity = cms.string('%(LumiDir)s'),
00665   DefXmlFile = cms.string('%(XmlFile)s'),
00666   VmeXmlFile = cms.string('')
00667 )
00668 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource",
00669   recordName = cms.string('L1GtTriggerMenuRcd'),
00670   iovIsRunNotTime = cms.bool(True),
00671   firstValid = cms.vuint32(1)
00672 )
00673 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml') 
00674 """
00675       self.data += text % self.config.l1Xml.__dict__

def confdb::overrideOutput (   self)

Definition at line 755 of file confdb.py.

00756                           :
00757     # override the "online" ShmStreamConsumer output modules with "offline" PoolOutputModule's
00758     self.data = re.sub(
00759       r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,',
00760       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    ),',
00761       self.data
00762     )
00763 
00764     if not self.config.fragment and self.config.output == 'full':
00765       # add a single "keep *" output
00766       self.data += """
00767 # add a single "keep *" output
00768 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule",
00769     fileName = cms.untracked.string( "outputFULL.root" ),
00770     fastCloning = cms.untracked.bool( False ),
00771     dataset = cms.untracked.PSet(
00772         dataTier = cms.untracked.string( 'RECO' ),
00773         filterName = cms.untracked.string( '' )
00774     ),
00775     outputCommands = cms.untracked.vstring( 'keep *' )
00776 )
00777 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL )
00778 """
00779 

def confdb::overrideParameters (   self,
  module,
  parameters 
)

Definition at line 862 of file confdb.py.

00863                                                   :
00864     # override a module's parameter if the module is present in the configuration
00865     self.data += "if '%s' in %%(dict)s:\n" % module
00866     for (parameter, value) in parameters:
00867       self.data += "    %%(process)s%s.%s = %s\n" % (module, parameter, value)
00868     self.data += "\n"
00869 

def confdb::overrideProcessName (   self)

Definition at line 781 of file confdb.py.

00782                                :
00783     if self.config.name is None:
00784       return
00785 
00786     # override the process name
00787     quote = '[\'\"]'
00788     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)
00789 
00790     # the following was stolen and adapted from HLTrigger.Configuration.customL1THLT_Options
00791     self.data += """
00792 # adapt HLT modules to the correct process name
00793 if 'hltTrigReport' in %%(dict)s:
00794     %%(process)shltTrigReport.HLTriggerResults                    = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00795 
00796 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s:
00797     %%(process)shltPreExpressCosmicsOutputSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00798 
00799 if 'hltPreExpressOutputSmart' in %%(dict)s:
00800     %%(process)shltPreExpressOutputSmart.TriggerResultsTag        = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00801 
00802 if 'hltPreDQMForHIOutputSmart' in %%(dict)s:
00803     %%(process)shltPreDQMForHIOutputSmart.TriggerResultsTag       = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00804 
00805 if 'hltPreDQMForPPOutputSmart' in %%(dict)s:
00806     %%(process)shltPreDQMForPPOutputSmart.TriggerResultsTag       = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00807 
00808 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s:
00809     %%(process)shltPreHLTDQMResultsOutputSmart.TriggerResultsTag  = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00810 
00811 if 'hltPreHLTDQMOutputSmart' in %%(dict)s:
00812     %%(process)shltPreHLTDQMOutputSmart.TriggerResultsTag         = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00813 
00814 if 'hltPreHLTMONOutputSmart' in %%(dict)s:
00815     %%(process)shltPreHLTMONOutputSmart.TriggerResultsTag         = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00816 
00817 if 'hltDQMHLTScalers' in %%(dict)s:
00818     %%(process)shltDQMHLTScalers.triggerResults                   = cms.InputTag( 'TriggerResults', '', '%(name)s' )
00819     %%(process)shltDQMHLTScalers.processname                      = '%(name)s'
00820 
00821 if 'hltDQML1SeedLogicScalers' in %%(dict)s:
00822     %%(process)shltDQML1SeedLogicScalers.processname              = '%(name)s'
00823 """ % self.config.__dict__
00824 

def confdb::runL1Emulator (   self)

Definition at line 707 of file confdb.py.

00708                          :
00709     # if requested, run (part of) the L1 emulator
00710     if self.config.emulator:
00711       # FIXME this fragment used "process" explicitly
00712       emulator = {
00713         'RawToDigi': '',
00714         'CustomL1T': '',
00715         'CustomHLT': ''
00716       }
00717 
00718       if self.config.data:
00719         emulator['RawToDigi'] = 'RawToDigi_Data_cff'
00720       else:
00721         emulator['RawToDigi'] = 'RawToDigi_cff'
00722 
00723       if self.config.emulator == 'gt':
00724         emulator['CustomL1T'] = 'customiseL1GtEmulatorFromRaw'
00725         emulator['CustomHLT'] = 'switchToSimGtDigis'
00726       elif self.config.emulator == 'gct,gt':
00727         emulator['CustomL1T'] = 'customiseL1CaloAndGtEmulatorsFromRaw'
00728         emulator['CustomHLT'] = 'switchToSimGctGtDigis'
00729       elif self.config.emulator == 'gmt,gt':
00730         # XXX currently unsupported
00731         emulator['CustomL1T'] = 'customiseL1MuonAndGtEmulatorsFromRaw'
00732         emulator['CustomHLT'] = 'switchToSimGmtGtDigis'
00733       elif self.config.emulator in ('gmt,gct,gt', 'gct,gmt,gt', 'all'):
00734         emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw'
00735         emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis'
00736       else:
00737         # unsupported argument, default to running the whole emulator
00738         emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw'
00739         emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis'
00740 
00741       self.data += """
00742 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s
00743 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' )
00744 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' )
00745 import L1Trigger.Configuration.L1Trigger_custom
00746 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process )
00747 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process )
00748 
00749 # customize the HLT to use the emulated results
00750 import HLTrigger.Configuration.customizeHLTforL1Emulator
00751 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process )
00752 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process )
00753 """ % emulator
00754 

def confdb::runL1EmulatorGT (   self)

Definition at line 676 of file confdb.py.

00677                            :
00678     # if requested, run (part of) the L1 emulator, then repack the data into a new RAW collection, to be used by the HLT
00679     if not self.config.emulator:
00680       return
00681 
00682     if self.config.emulator != 'gt':
00683       # only the GT emulator is currently supported
00684       return
00685 
00686     # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
00687     text = """
00688 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
00689 """
00690     if self.config.fragment:
00691       # FIXME in a cff, should also update the HLTSchedule
00692       text += "import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n"
00693     else:
00694       text += "process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n"
00695 
00696     if not 'hltBoolFalse' in self.data:
00697       # add hltBoolFalse
00698       text += """
00699 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
00700     result = cms.bool( False )
00701 )
00702 """
00703     text += "process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n"
00704 
00705     self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1)
00706 

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().

00012                          :
00013   i = iterator.__iter__()
00014   while True:
00015     l = list(islice(i, n))
00016     if l:
00017       yield l
00018     else:
00019       break
00020 

def confdb::updateMessageLogger (   self)

Definition at line 825 of file confdb.py.

00826                                :
00827     # request summary informations from the MessageLogger
00828     self.data += """
00829 if 'MessageLogger' in %(dict)s:
00830     %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD')
00831     %(process)sMessageLogger.categories.append('L1GtTrigReport')
00832     %(process)sMessageLogger.categories.append('HLTrigReport')
00833     %(process)sMessageLogger.categories.append('FastReport')
00834 """
00835 


Variable Documentation

Definition at line 984 of file confdb.py.

Definition at line 501 of file confdb.py.

Definition at line 1325 of file confdb.py.