CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 ) """ More...
 
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 327 of file confdb.py.

328  def _fix_parameter(self, **args):
329  """arguments:
330  name: parameter name (optional)
331  type: parameter type (look for tracked and untracked variants)
332  value: original value
333  replace: replacement value
334  """
335  if 'name' in args:
336  self.data = re.sub(
337  r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
338  r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
339  self.data)
340  else:
341  self.data = re.sub(
342  r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args,
343  r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args,
344  self.data)
345 
def _fix_parameter
Definition: confdb.py:327
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.

310  def addGlobalOptions(self):
311  # add global options
312  self.data += """
313 # limit the number of events to be processed
314 %%(process)smaxEvents = cms.untracked.PSet(
315  input = cms.untracked.int32( %d )
316 )
317 """ % self.config.events
318 
319  if not self.config.profiling:
320  self.data += """
321 # enable the TrigReport and TimeReport
322 %(process)soptions = cms.untracked.PSet(
323  wantSummary = cms.untracked.bool( True )
324 )
325 """
326 
def addGlobalOptions
untracked parameters with NO default in the code if &#39;hltHcalDataIntegrityMonitor&#39; in %(dict)s: %(proc...
Definition: confdb.py:309
def confdb.build_source (   self)

Definition at line 1129 of file confdb.py.

1130  def build_source(self):
1131  if self.config.input:
1132  # if a dataset or a list of input files was given, use it
1133  if self.config.input[0:8] == 'dataset:':
1134  from dbsFileQuery import dbsFileQuery
1135  # extract the dataset name, and use DBS to fine the list of LFNs
1136  dataset = self.config.input[8:]
1137  query = 'find file where dataset=' + dataset
1138  files = dbsFileQuery(query)
1139  self.source = files
1140  else:
1141  # assume a list of input files
1142  self.source = self.config.input.split(',')
1143  elif self.config.online:
1144  # online we always run on data
1145  self.source = [ "file:/tmp/InputCollection.root" ]
1146  elif self.config.data:
1147  # offline we can run on data...
1148  self.source = [ "file:RelVal_Raw_%s_DATA.root" % self.config.type ]
1149  else:
1150  # ...or on mc
1151  self.source = [ "file:RelVal_Raw_%s_STARTUP.root" % self.config.type ]
1152 
1153  self.data += """
1154 %(process)ssource = cms.Source( "PoolSource",
1155  fileNames = cms.untracked.vstring(
1156 """
1157  if self.source:
1158  for line in self.source:
1159  self.data += " '%s',\n" % line
1160  self.data += """ ),
1161  secondaryFileNames = cms.untracked.vstring(
1162 """
1163  if self.parent:
1164  for line in self.parent:
1165  self.data += " '%s',\n" % line
1166  self.data += """ ),
1167  inputCommands = cms.untracked.vstring(
1168  'keep *'
1169  )
1170 )
1171 """
def build_source
Definition: confdb.py:1129
def confdb.buildOptions (   self)

Definition at line 880 of file confdb.py.

References python.multivaluedict.append().

881  def buildOptions(self):
882  # common configuration for all scenarios
883  self.options['services'].append( "-FUShmDQMOutputService" )
884 
885  if self.config.fragment:
886  # extract a configuration file fragment
887  self.options['essources'].append( "-GlobalTag" )
888  self.options['essources'].append( "-HepPDTESSource" )
889  self.options['essources'].append( "-XMLIdealGeometryESSource" )
890  self.options['essources'].append( "-eegeom" )
891  self.options['essources'].append( "-es_hardcode" )
892  self.options['essources'].append( "-magfield" )
893 
894  self.options['esmodules'].append( "-AutoMagneticFieldESProducer" )
895  self.options['esmodules'].append( "-SlaveField0" )
896  self.options['esmodules'].append( "-SlaveField20" )
897  self.options['esmodules'].append( "-SlaveField30" )
898  self.options['esmodules'].append( "-SlaveField35" )
899  self.options['esmodules'].append( "-SlaveField38" )
900  self.options['esmodules'].append( "-SlaveField40" )
901  self.options['esmodules'].append( "-VBF0" )
902  self.options['esmodules'].append( "-VBF20" )
903  self.options['esmodules'].append( "-VBF30" )
904  self.options['esmodules'].append( "-VBF35" )
905  self.options['esmodules'].append( "-VBF38" )
906  self.options['esmodules'].append( "-VBF40" )
907  self.options['esmodules'].append( "-CSCGeometryESModule" )
908  self.options['esmodules'].append( "-CaloGeometryBuilder" )
909  self.options['esmodules'].append( "-CaloTowerHardcodeGeometryEP" )
910  self.options['esmodules'].append( "-CastorHardcodeGeometryEP" )
911  self.options['esmodules'].append( "-DTGeometryESModule" )
912  self.options['esmodules'].append( "-EcalBarrelGeometryEP" )
913  self.options['esmodules'].append( "-EcalElectronicsMappingBuilder" )
914  self.options['esmodules'].append( "-EcalEndcapGeometryEP" )
915  self.options['esmodules'].append( "-EcalLaserCorrectionService" )
916  self.options['esmodules'].append( "-EcalPreshowerGeometryEP" )
917  self.options['esmodules'].append( "-HcalHardcodeGeometryEP" )
918  self.options['esmodules'].append( "-HcalTopologyIdealEP" )
919  self.options['esmodules'].append( "-MuonNumberingInitialization" )
920  self.options['esmodules'].append( "-ParametrizedMagneticFieldProducer" )
921  self.options['esmodules'].append( "-RPCGeometryESModule" )
922  self.options['esmodules'].append( "-SiStripGainESProducer" )
923  self.options['esmodules'].append( "-SiStripRecHitMatcherESProducer" )
924  self.options['esmodules'].append( "-SiStripQualityESProducer" )
925  self.options['esmodules'].append( "-StripCPEfromTrackAngleESProducer" )
926  self.options['esmodules'].append( "-TrackerDigiGeometryESModule" )
927  self.options['esmodules'].append( "-TrackerGeometricDetESModule" )
928  self.options['esmodules'].append( "-VolumeBasedMagneticFieldESProducer" )
929  self.options['esmodules'].append( "-ZdcHardcodeGeometryEP" )
930  self.options['esmodules'].append( "-hcal_db_producer" )
931  self.options['esmodules'].append( "-L1GtTriggerMaskAlgoTrigTrivialProducer" )
932  self.options['esmodules'].append( "-L1GtTriggerMaskTechTrigTrivialProducer" )
933  self.options['esmodules'].append( "-hltESPEcalTrigTowerConstituentsMapBuilder" )
934  self.options['esmodules'].append( "-hltESPGlobalTrackingGeometryESProducer" )
935  self.options['esmodules'].append( "-hltESPMuonDetLayerGeometryESProducer" )
936  self.options['esmodules'].append( "-hltESPTrackerRecoGeometryESProducer" )
937  if not self.config.fastsim:
938  self.options['esmodules'].append( "-CaloTowerGeometryFromDBEP" )
939  self.options['esmodules'].append( "-CastorGeometryFromDBEP" )
940  self.options['esmodules'].append( "-EcalBarrelGeometryFromDBEP" )
941  self.options['esmodules'].append( "-EcalEndcapGeometryFromDBEP" )
942  self.options['esmodules'].append( "-EcalPreshowerGeometryFromDBEP" )
943  self.options['esmodules'].append( "-HcalGeometryFromDBEP" )
944  self.options['esmodules'].append( "-ZdcGeometryFromDBEP" )
945  self.options['esmodules'].append( "-XMLFromDBSource" )
946  self.options['esmodules'].append( "-sistripconn" )
947 
948  self.options['services'].append( "-PrescaleService" )
949  self.options['services'].append( "-MessageLogger" )
950  self.options['services'].append( "-DQM" )
951  self.options['services'].append( "-DQMStore" )
952  self.options['services'].append( "-MicroStateService" )
953  self.options['services'].append( "-ModuleWebRegistry" )
954  self.options['services'].append( "-TimeProfilerService" )
955  self.options['services'].append( "-FastTimerService" )
956 
957  self.options['psets'].append( "-maxEvents" )
958  self.options['psets'].append( "-options" )
959 
960  if self.config.fastsim:
961  # remove components not supported or needed by fastsim
962  self.options['esmodules'].append( "-navigationSchoolESProducer" )
963  self.options['esmodules'].append( "-TransientTrackBuilderESProducer" )
964  self.options['esmodules'].append( "-SteppingHelixPropagatorAny" )
965  self.options['esmodules'].append( "-OppositeMaterialPropagator" )
966  self.options['esmodules'].append( "-MaterialPropagator" )
967  self.options['esmodules'].append( "-CaloTowerConstituentsMapBuilder" )
968  self.options['esmodules'].append( "-CaloTopologyBuilder" )
969 
970  self.options['modules'].append( "hltL3MuonIsolations" )
971  self.options['modules'].append( "hltPixelVertices" )
972  self.options['modules'].append( "-hltCkfL1SeededTrackCandidates" )
973  self.options['modules'].append( "-hltCtfL1SeededithMaterialTracks" )
974  self.options['modules'].append( "-hltCkf3HitL1SeededTrackCandidates" )
975  self.options['modules'].append( "-hltCtf3HitL1SeededWithMaterialTracks" )
976  self.options['modules'].append( "-hltCkf3HitActivityTrackCandidates" )
977  self.options['modules'].append( "-hltCtf3HitActivityWithMaterialTracks" )
978  self.options['modules'].append( "-hltActivityCkfTrackCandidatesForGSF" )
979  self.options['modules'].append( "-hltL1SeededCkfTrackCandidatesForGSF" )
980  self.options['modules'].append( "-hltMuCkfTrackCandidates" )
981  self.options['modules'].append( "-hltMuCtfTracks" )
982  self.options['modules'].append( "-hltTau3MuCkfTrackCandidates" )
983  self.options['modules'].append( "-hltTau3MuCtfWithMaterialTracks" )
984  self.options['modules'].append( "-hltMuTrackJpsiCkfTrackCandidates" )
985  self.options['modules'].append( "-hltMuTrackJpsiCtfTracks" )
986  self.options['modules'].append( "-hltMuTrackJpsiEffCkfTrackCandidates" )
987  self.options['modules'].append( "-hltMuTrackJpsiEffCtfTracks" )
988  self.options['modules'].append( "-hltJpsiTkPixelSeedFromL3Candidate" )
989  self.options['modules'].append( "-hltCkfTrackCandidatesJpsiTk" )
990  self.options['modules'].append( "-hltCtfWithMaterialTracksJpsiTk" )
991  self.options['modules'].append( "-hltMuTrackCkfTrackCandidatesOnia" )
992  self.options['modules'].append( "-hltMuTrackCtfTracksOnia" )
993 
994  self.options['modules'].append( "-hltESRegionalEgammaRecHit" )
995  self.options['modules'].append( "-hltEcalRegionalJetsFEDs" )
996  self.options['modules'].append( "-hltEcalRegionalMuonsFEDs" )
997  self.options['modules'].append( "-hltEcalRegionalEgammaFEDs" )
998  self.options['modules'].append( "-hltFEDSelector" )
999  self.options['modules'].append( "-hltL3TrajSeedOIHit" )
1000  self.options['modules'].append( "-hltL3TrajSeedIOHit" )
1001  self.options['modules'].append( "-hltL3TrackCandidateFromL2OIState" )
1002  self.options['modules'].append( "-hltL3TrackCandidateFromL2OIHit" )
1003  self.options['modules'].append( "-hltL3TrackCandidateFromL2IOHit" )
1004  self.options['modules'].append( "-hltL3TrackCandidateFromL2NoVtx" )
1005  self.options['modules'].append( "-hltHcalDigis" )
1006  self.options['modules'].append( "-hltHoreco" )
1007  self.options['modules'].append( "-hltHfreco" )
1008  self.options['modules'].append( "-hltHbhereco" )
1009  self.options['modules'].append( "-hltEcalRegionalRestFEDs" )
1010  self.options['modules'].append( "-hltEcalRegionalESRestFEDs" )
1011  self.options['modules'].append( "-hltEcalRawToRecHitFacility" )
1012  self.options['modules'].append( "-hltESRawToRecHitFacility" )
1013  self.options['modules'].append( "-hltEcalRegionalJetsRecHit" )
1014  self.options['modules'].append( "-hltEcalRegionalMuonsRecHit" )
1015  self.options['modules'].append( "-hltEcalRegionalEgammaRecHit" )
1016  self.options['modules'].append( "-hltEcalRecHitAll" )
1017  self.options['modules'].append( "-hltESRecHitAll" )
1018  # === hltPF
1019  self.options['modules'].append( "-hltPFJetCkfTrackCandidates" )
1020  self.options['modules'].append( "-hltPFJetCtfWithMaterialTracks" )
1021  self.options['modules'].append( "-hltPFlowTrackSelectionHighPurity" )
1022  # === hltFastJet
1023  self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator" )
1024  self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates" )
1025  self.options['modules'].append( "-hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks" )
1026  self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator" )
1027  self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates" )
1028  self.options['modules'].append( "-hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks" )
1029  self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet" )
1030  self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet" )
1031  self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet" )
1032  self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbbVBF" )
1033  self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbbVBF" )
1034  self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF" )
1035  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1036  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1037  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1038  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet" )
1039  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet" )
1040  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet" )
1041  # === hltBLifetimeRegional
1042  self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorHbb" )
1043  self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesHbb" )
1044  self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksHbb" )
1045  self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhi" )
1046  self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhi" )
1047  self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhi" )
1048  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1049  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1050  self.options['modules'].append( "-hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1051  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb" )
1052  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb" )
1053  self.options['modules'].append( "-hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb" )
1054  self.options['modules'].append( "-hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF" )
1055  self.options['modules'].append( "-hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF" )
1056  self.options['modules'].append( "-hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF" )
1057  self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV" )
1058  self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV" )
1059  self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV" )
1060  self.options['modules'].append( "-hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb" )
1061  self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb" )
1062  self.options['modules'].append( "-hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb" )
1063 
1064  self.options['modules'].append( "-hltPixelTracksForMinBias" )
1065  self.options['modules'].append( "-hltPixelTracksForHighMult" )
1066  self.options['modules'].append( "-hltRegionalPixelTracks" )
1067  self.options['modules'].append( "-hltPixelTracksReg" )
1068  self.options['modules'].append( "-hltIter4Merged" )
1069  self.options['modules'].append( "-hltFastPixelHitsVertex" )
1070  self.options['modules'].append( "-hltFastPixelTracks")
1071  self.options['modules'].append( "-hltFastPixelTracksRecover")
1072 
1073  self.options['modules'].append( "-hltPixelLayerPairs" )
1074  self.options['modules'].append( "-hltPixelLayerTriplets" )
1075  self.options['modules'].append( "-hltPixelLayerTripletsReg" )
1076  self.options['modules'].append( "-hltPixelLayerTripletsHITHB" )
1077  self.options['modules'].append( "-hltPixelLayerTripletsHITHE" )
1078  self.options['modules'].append( "-hltMixedLayerPairs" )
1079 
1080  self.options['modules'].append( "-hltFastPrimaryVertexbbPhi")
1081  self.options['modules'].append( "-hltPixelTracksFastPVbbPhi")
1082  self.options['modules'].append( "-hltPixelTracksRecoverbbPhi" )
1083  self.options['modules'].append( "-hltFastPixelHitsVertexVHbb" )
1084  self.options['modules'].append( "-hltFastPixelTracksVHbb" )
1085  self.options['modules'].append( "-hltFastPixelTracksRecoverVHbb" )
1086 
1087  self.options['modules'].append( "-hltFastPrimaryVertex")
1088  self.options['modules'].append( "-hltFastPVPixelTracks")
1089  self.options['modules'].append( "-hltFastPVPixelTracksRecover" )
1090 
1091  self.options['modules'].append( "-hltIter4Tau3MuMerged" )
1092  self.options['modules'].append( "hltPixelMatchElectronsActivity" )
1093 
1094  self.options['modules'].append( "-hltMuonCSCDigis" )
1095  self.options['modules'].append( "-hltMuonDTDigis" )
1096  self.options['modules'].append( "-hltMuonRPCDigis" )
1097  self.options['modules'].append( "-hltGtDigis" )
1098  self.options['modules'].append( "-hltL1GtTrigReport" )
1099  self.options['modules'].append( "hltCsc2DRecHits" )
1100  self.options['modules'].append( "hltDt1DRecHits" )
1101  self.options['modules'].append( "hltRpcRecHits" )
1102  self.options['modules'].append( "-hltScalersRawToDigi" )
1103 
1104  self.options['sequences'].append( "-HLTL1SeededEgammaRegionalRecoTrackerSequence" )
1105  self.options['sequences'].append( "-HLTEcalActivityEgammaRegionalRecoTrackerSequence" )
1106  self.options['sequences'].append( "-HLTPixelMatchElectronActivityTrackingSequence" )
1107  self.options['sequences'].append( "-HLTDoLocalStripSequence" )
1108  self.options['sequences'].append( "-HLTDoLocalPixelSequence" )
1109  self.options['sequences'].append( "-HLTDoLocalPixelSequenceRegL2Tau" )
1110  self.options['sequences'].append( "-hltSiPixelDigis" )
1111  self.options['sequences'].append( "-hltSiPixelClusters" )
1112  self.options['sequences'].append( "-hltSiPixelRecHits" )
1113  self.options['sequences'].append( "-HLTRecopixelvertexingSequence" )
1114  self.options['sequences'].append( "-HLTEndSequence" )
1115  self.options['sequences'].append( "-HLTBeginSequence" )
1116  self.options['sequences'].append( "-HLTBeginSequenceNZS" )
1117  self.options['sequences'].append( "-HLTBeginSequenceBPTX" )
1118  self.options['sequences'].append( "-HLTBeginSequenceAntiBPTX" )
1119  self.options['sequences'].append( "-HLTHBHENoiseSequence" )
1120  self.options['sequences'].append( "-HLTIterativeTracking" )
1121  self.options['sequences'].append( "-HLTIterativeTrackingTau3Mu" )
1122  self.options['sequences'].append( "-HLTRegionalCKFTracksForL3Isolation" )
1123  self.options['sequences'].append( "-HLTHBHENoiseCleanerSequence" )
1124 
1125  # remove HLTAnalyzerEndpath from fastsim cff's
1126  if self.config.fragment:
1127  self.options['paths'].append( "-HLTAnalyzerEndpath" )
1128 
def buildOptions
Definition: confdb.py:880
def confdb.buildPathList (   self)

Definition at line 823 of file confdb.py.

824  def buildPathList(self):
825  self.all_paths = self.getPathList()
826 
827  if self.config.paths:
828  # no path list was requested, dump the full table, minus unsupported / unwanted paths
829  paths = self.config.paths.split(',')
830  else:
831  # dump only the requested paths, plus the eventual output endpaths
832  paths = []
833 
834  if self.config.fragment or self.config.output in ('none', 'full'):
835  # 'full' removes all outputs (same as 'none') and then adds a single "keep *" output (see the overrideOutput method)
836  if self.config.paths:
837  # paths are removed by default
838  pass
839  else:
840  # drop all output endpaths
841  paths.append( "-*Output" )
842  elif self.config.output == 'minimal':
843  # drop all output endpaths but HLTDQMResultsOutput
844  if self.config.paths:
845  paths.append( "HLTDQMResultsOutput" )
846  else:
847  paths.append( "-*Output" )
848  paths.append( "HLTDQMResultsOutput" )
849  else:
850  # keep / add back all output endpaths
851  if self.config.paths:
852  paths.append( "*Output" )
853  else:
854  pass # paths are kepy by default
855 
856  # drop paths unsupported by fastsim
857  if self.config.fastsim:
858  paths.extend( "-%s" % path for path in self.fastsimUnsupportedPaths )
859 
860  # drop unwanted paths for profiling (and timing studies)
861  if self.config.profiling:
862  paths.append( "-HLTriggerFirstPath" )
863  paths.append( "-HLTAnalyzerEndpath" )
864 
865  # this should never be in any dump (nor online menu)
866  paths.append( "-OfflineOutput" )
867 
868  # expand all wildcards
869  paths = self.expandWildcards(paths, self.all_paths)
870 
871  if self.config.paths:
872  # do an "additive" consolidation
873  self.options['paths'] = self.consolidatePositiveList(paths)
874  if not self.options['paths']:
875  raise RuntimeError('Error: option "--paths %s" does not select any valid paths' % self.config.paths)
876  else:
877  # do a "subtractive" consolidation
878  self.options['paths'] = self.consolidateNegativeList(paths)
879 
def buildPathList
Definition: confdb.py:823
def confdb.dumppaths (   paths)
static

Definition at line 817 of file confdb.py.

818  def dumppaths(paths):
819  sys.stderr.write('Path selection:\n')
820  for path in paths:
821  sys.stderr.write('\t%s\n' % path)
822  sys.stderr.write('\n\n')
def dumppaths
Definition: confdb.py:817
def confdb.fixForFastSim (   self)

Definition at line 357 of file confdb.py.

358  def fixForFastSim(self):
359  if self.config.fastsim:
360  # adapt the hle configuration (fragment) to run under fastsim
361  self.data = re.sub( r'import FWCore.ParameterSet.Config as cms', r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data)
362 
363  # remove the definition of streams and datasets
364  self.data = re.compile( r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data )
365  self.data = re.compile( r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data )
366 
367  # fix the definition of module
368  # FIXME: this should be updated to take into accout the --l1-emulator option
369  self._fix_parameter( type = 'InputTag', value = 'hltL1extraParticles', replace = 'l1extraParticles')
370  self._fix_parameter(name = 'GMTReadoutCollection', type = 'InputTag', value = 'hltGtDigis', replace = 'gmtDigis')
371  self._fix_parameter( type = 'InputTag', value = 'hltGtDigis', replace = 'gtDigis')
372  self._fix_parameter( type = 'InputTag', value = 'hltL1GtObjectMap', replace = 'gtDigis')
373  self._fix_parameter(name = 'initialSeeds', type = 'InputTag', value = 'noSeedsHere', replace = 'globalPixelSeeds:GlobalPixel')
374  self._fix_parameter(name = 'preFilteredSeeds', type = 'bool', value = 'True', replace = 'False')
375  self._fix_parameter( type = 'InputTag', value = 'hltOfflineBeamSpot', replace = 'offlineBeamSpot')
376  self._fix_parameter( type = 'InputTag', value = 'hltOnlineBeamSpot', replace = 'offlineBeamSpot')
377  self._fix_parameter( type = 'InputTag', value = 'hltMuonCSCDigis', replace = 'simMuonCSCDigis')
378  self._fix_parameter( type = 'InputTag', value = 'hltMuonDTDigis', replace = 'simMuonDTDigis')
379  self._fix_parameter( type = 'InputTag', value = 'hltMuonRPCDigis', replace = 'simMuonRPCDigis')
380  self._fix_parameter( type = 'InputTag', value = 'hltRegionalTracksForL3MuonIsolation', replace = 'hltPixelTracks')
381  self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltHcalTowerNoiseCleaner', replace = 'hltTowerMakerForAll')
382  self._fix_parameter(name = 'src', type = 'InputTag', value = 'hltIter4Tau3MuMerged', replace = 'hltIter4Merged')
383 
384  # MeasurementTrackerEvent
385  self._fix_parameter( type = 'InputTag', value = 'hltSiStripClusters', replace = 'MeasurementTrackerEvent')
386 
387  # fix the definition of sequences and paths
388  self.data = re.sub( r'hltMuonCSCDigis', r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data )
389  self.data = re.sub( r'hltMuonDTDigis', r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data )
390  self.data = re.sub( r'hltMuonRPCDigis', r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data )
391  self.data = re.sub( r'HLTEndSequence', r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data )
392  self.data = re.sub( r'hltGtDigis', r'HLTBeginSequence', self.data )
393 
def fixForFastSim
Definition: confdb.py:357
def confdb.fixForMC (   self)

Definition at line 346 of file confdb.py.

347  def fixForMC(self):
348  if not self.config.data:
349  # customise the HLT menu for running on MC
350  if not self.config.fragment:
351  self.data += """
352 # customise the HLT menu for running on MC
353 from HLTrigger.Configuration.customizeHLTforMC import customizeHLTforMC
354 process = customizeHLTforMC(process)
355 """
356 
def fixForMC
Definition: confdb.py:346
def confdb.fixPrescales (   self)

Definition at line 394 of file confdb.py.

395  def fixPrescales(self):
396  # update the PrescaleService to match the new list of paths
397  if self.options['paths']:
398  if self.options['paths'][0][0] == '-':
399  # drop requested paths
400  for minuspath in self.options['paths']:
401  path = minuspath[1:]
402  self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data)
403  else:
404  # keep requested paths
405  for path in self.all_paths:
406  if path not in self.options['paths']:
407  self.data = re.sub(r' cms.PSet\( pathName = cms.string\( "%s" \),\n prescales = cms.vuint32\( .* \)\n \),?\n' % path, '', self.data)
408 
409  if self.config.unprescale:
410  self.data += """
411 # remove the HLT prescales
412 if 'PrescaleService' in %(dict)s:
413  %(process)sPrescaleService.lvl1DefaultLabel = cms.string( '0' )
414  %(process)sPrescaleService.lvl1Labels = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' )
415  %(process)sPrescaleService.prescaleTable = cms.VPSet( )
416 """
417 
def fixPrescales
Definition: confdb.py:394
def confdb.instrumentErrorEventType (   self)

Definition at line 432 of file confdb.py.

433  def instrumentErrorEventType(self):
434  if self.config.errortype:
435  # change all HLTTriggerTypeFilter EDFilters to accept only error events (SelectedTriggerType = 0)
436  self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '1', replace = '0')
437  self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '2', replace = '0')
438  self._fix_parameter(name = 'SelectedTriggerType', type ='int32', value = '3', replace = '0')
439 
def instrumentErrorEventType
Definition: confdb.py:432
def confdb.instrumentOpenMode (   self)

Definition at line 418 of file confdb.py.

References join().

419  def instrumentOpenMode(self):
420  if self.config.open:
421  # find all EDfilters
422  filters = [ match[1] for match in re.findall(r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ]
423  re_sequence = re.compile( r'cms\.(Path|Sequence)\((.*)\)' )
424  # remove existing 'cms.ingore' and '~' modifiers
425  self.data = re_sequence.sub( lambda line: re.sub( r'cms\.ignore *\( *((process\.)?\b(\w+)) *\)', r'\1', line.group(0) ), self.data )
426  self.data = re_sequence.sub( lambda line: re.sub( r'~', '', line.group(0) ), self.data )
427  # wrap all EDfilters with "cms.ignore( ... )", 1000 at a time (python 2.6 complains for too-big regular expressions)
428  for some in splitter(filters, 1000):
429  re_filters = re.compile( r'\b((process\.)?(' + r'|'.join(some) + r'))\b' )
430  self.data = re_sequence.sub( lambda line: re_filters.sub( r'cms.ignore( \1 )', line.group(0) ), self.data )
431 
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def instrumentOpenMode
Definition: confdb.py:418
def confdb.instrumentTiming (   self)

Definition at line 708 of file confdb.py.

709  def instrumentTiming(self):
710  if self.config.profiling:
711  # instrument the menu for profiling: remove the HLTAnalyzerEndpath, add/override the HLTriggerFirstPath, with hltGetRaw and hltGetConditions
712  text = ''
713 
714  if not 'hltGetRaw' in self.data:
715  # add hltGetRaw
716  text += """
717 %(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw",
718  RawDataCollection = cms.InputTag( "rawDataCollector" )
719 )
720 """
721 
722  if not 'hltGetConditions' in self.data:
723  # add hltGetConditions
724  text += """
725 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter',
726  verbose = cms.untracked.bool( False ),
727  toGet = cms.VPSet( )
728 )
729 """
730 
731  if not 'hltBoolFalse' in self.data:
732  # add hltBoolFalse
733  text += """
734 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
735  result = cms.bool( False )
736 )
737 """
738 
739  # add the definition of HLTriggerFirstPath
740  # FIXME in a cff, should also update the HLTSchedule
741  text += """
742 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse )
743 """
744  self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1)
745 
746 
747  # instrument the menu with the Service, EDProducer and EndPath needed for timing studies
748  # FIXME in a cff, should also update the HLTSchedule
749  if self.config.timing:
750  self.data += """
751 # instrument the menu with the modules and EndPath needed for timing studies
752 """
753 
754  hasFST = False
755  if 'FastTimerService' in self.data:
756  hasFST = True
757 
758  self.data += '\n# configure the FastTimerService\n'
759  if not hasFST:
760  self.loadCff('HLTrigger.Timer.FastTimerService_cfi')
761  self.data += """%(process)sFastTimerService.useRealTimeClock = False
762 %(process)sFastTimerService.enableTimingPaths = True
763 %(process)sFastTimerService.enableTimingModules = True
764 %(process)sFastTimerService.enableTimingExclusive = True
765 %(process)sFastTimerService.enableTimingSummary = True
766 %(process)sFastTimerService.skipFirstPath = True
767 %(process)sFastTimerService.enableDQM = True
768 %(process)sFastTimerService.enableDQMbyPathActive = True
769 %(process)sFastTimerService.enableDQMbyPathTotal = True
770 %(process)sFastTimerService.enableDQMbyPathOverhead = True
771 %(process)sFastTimerService.enableDQMbyPathDetails = True
772 %(process)sFastTimerService.enableDQMbyPathCounters = True
773 %(process)sFastTimerService.enableDQMbyPathExclusive = True
774 %(process)sFastTimerService.enableDQMbyModule = True
775 %(process)sFastTimerService.enableDQMbyModuleType = True
776 %(process)sFastTimerService.enableDQMSummary = True
777 %(process)sFastTimerService.enableDQMbyLuminosity = True
778 %(process)sFastTimerService.enableDQMbyLumiSection = True
779 %(process)sFastTimerService.enableDQMbyProcesses = False
780 %(process)sFastTimerService.dqmTimeRange = 1000.
781 %(process)sFastTimerService.dqmTimeResolution = 5.
782 %(process)sFastTimerService.dqmPathTimeRange = 100.
783 %(process)sFastTimerService.dqmPathTimeResolution = 0.5
784 %(process)sFastTimerService.dqmModuleTimeRange = 40.
785 %(process)sFastTimerService.dqmModuleTimeResolution = 0.2
786 %(process)sFastTimerService.dqmLuminosityRange = 1e+34
787 %(process)sFastTimerService.dqmLuminosityResolution = 1e+31
788 %(process)sFastTimerService.dqmLumiSectionsRange = 2500
789 %(process)sFastTimerService.dqmPath = 'HLT/TimerService'
790 %(process)sFastTimerService.luminosityProduct = cms.untracked.InputTag( 'hltScalersRawToDigi' )
791 %(process)sFastTimerService.supportedProcesses = cms.untracked.vuint32( )
792 """
793 
794  self.data += """
795 # FastTimerServiceClient
796 %(process)sfastTimerServiceClient = cms.EDAnalyzer( "FastTimerServiceClient",
797  dqmPath = cms.untracked.string( "HLT/TimerService" )
798 )
799 
800 # DQM file saver
801 %(process)sdqmFileSaver = cms.EDAnalyzer( "DQMFileSaver",
802  convention = cms.untracked.string( "Offline" ),
803  workflow = cms.untracked.string( "/HLT/FastTimerService/All" ),
804  dirName = cms.untracked.string( "." ),
805  saveByRun = cms.untracked.int32(1),
806  saveByLumiSection = cms.untracked.int32(-1),
807  saveByEvent = cms.untracked.int32(-1),
808  saveByTime = cms.untracked.int32(-1),
809  saveByMinute = cms.untracked.int32(-1),
810  saveAtJobEnd = cms.untracked.bool(False),
811  forceRunNumber = cms.untracked.int32(-1),
812 )
813 
814 %(process)sTimingOutput = cms.EndPath( %(process)sfastTimerServiceClient + %(process)sdqmFileSaver )
815 """
def instrumentTiming
Definition: confdb.py:708
def confdb.loadAdditionalConditions (   self,
  comment,
  conditions 
)

Definition at line 674 of file confdb.py.

675  def loadAdditionalConditions(self, comment, *conditions):
676  # load additional conditions
677  self.data += """
678 # %s
679 if 'GlobalTag' in %%(dict)s:
680 """ % comment
681  for condition in conditions:
682  self.data += """ %%(process)sGlobalTag.toGet.append(
683  cms.PSet(
684  record = cms.string( '%(record)s' ),
685  tag = cms.string( '%(tag)s' ),
686  label = cms.untracked.string( '%(label)s' ),
687  connect = cms.untracked.string( '%(connect)s' )
688  )
689  )
690 """ % condition
691 
def loadAdditionalConditions
Definition: confdb.py:674
def confdb.loadCff (   self,
  module 
)

Definition at line 692 of file confdb.py.

693  def loadCff(self, module):
694  # load a cfi or cff module
695  if self.config.fragment:
696  self.data += 'from %s import *\n' % module
697  else:
698  self.data += 'process.load( "%s" )\n' % module
699 
def loadCff
Definition: confdb.py:692
def confdb.overrideGlobalTag (   self)

Definition at line 440 of file confdb.py.

441  def overrideGlobalTag(self):
442  # overwrite GlobalTag
443  # the logic is:
444  # - always set the correct connection string and pfnPrefix
445  # - if a GlobalTag is specified on the command line:
446  # - override the global tag
447  # - if the GT is "auto:...", insert the code to read it from Configuration.AlCa.autoCond
448  # - if a GlobalTag is NOT specified on the command line:
449  # - when running on data, do nothing, and keep the global tag in the menu
450  # - when running on mc, take the GT from the configuration.type
451 
452  # override the GlobalTag connection string and pfnPrefix
453  text = """
454 # override the GlobalTag, connection string and pfnPrefix
455 if 'GlobalTag' in %(dict)s:
456 """
457 
458  # when running on MC, override the global tag even if not specified on the command line
459  if not self.config.data and not self.config.globaltag:
460  if self.config.type in globalTag:
461  self.config.globaltag = globalTag[self.config.type]
462  else:
463  self.config.globaltag = globalTag['GRun']
464 
465  # if requested, override the L1 menu from the GlobalTag (using the same connect as the GlobalTag itself)
466  if self.config.l1.override:
467  self.config.l1.record = 'L1GtTriggerMenuRcd'
468  self.config.l1.label = ''
469  self.config.l1.tag = self.config.l1.override
470  if not self.config.l1.connect:
471  self.config.l1.connect = '%(connect)s/CMS_COND_31X_L1T'
472  self.config.l1cond = '%(tag)s,%(record)s,%(connect)s' % self.config.l1.__dict__
473  else:
474  self.config.l1cond = None
475 
476  if self.config.globaltag or self.config.l1cond:
477  text += " from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag\n"
478  text += " %(process)sGlobalTag = customiseGlobalTag(%(process)sGlobalTag"
479  if self.config.globaltag:
480  text += ", globaltag = %s" % repr(self.config.globaltag)
481  if self.config.l1cond:
482  text += ", conditions = %s" % repr(self.config.l1cond)
483  text += ")\n"
484 
485  text += """ %(process)sGlobalTag.connect = '%(connect)s/CMS_COND_31X_GLOBALTAG'
486  %(process)sGlobalTag.pfnPrefix = cms.untracked.string('%(connect)s/')
487  for pset in process.GlobalTag.toGet.value():
488  pset.connect = pset.connect.value().replace('frontier://FrontierProd/', '%(connect)s/')
489 # Fix for multi-run processing:
490  %(process)sGlobalTag.RefreshEachRun = cms.untracked.bool( False )
491  %(process)sGlobalTag.ReconnectEachRun = cms.untracked.bool( False )
492 #
493 """
494  self.data += text
def overrideGlobalTag
Definition: confdb.py:440
def confdb.overrideL1MenuXml (   self)

Definition at line 495 of file confdb.py.

496  def overrideL1MenuXml(self):
497  # if requested, override the L1 menu from the GlobalTag (Xml file)
498  if self.config.l1Xml.XmlFile:
499  text = """
500 # override the L1 menu from an Xml file
501 %%(process)sl1GtTriggerMenuXml = cms.ESProducer("L1GtTriggerMenuXmlProducer",
502  TriggerMenuLuminosity = cms.string('%(LumiDir)s'),
503  DefXmlFile = cms.string('%(XmlFile)s'),
504  VmeXmlFile = cms.string('')
505 )
506 %%(process)sL1GtTriggerMenuRcdSource = cms.ESSource("EmptyESSource",
507  recordName = cms.string('L1GtTriggerMenuRcd'),
508  iovIsRunNotTime = cms.bool(True),
509  firstValid = cms.vuint32(1)
510 )
511 %%(process)ses_prefer_l1GtParameters = cms.ESPrefer('L1GtTriggerMenuXmlProducer','l1GtTriggerMenuXml')
512 """
513  self.data += text % self.config.l1Xml.__dict__
def overrideL1MenuXml
Definition: confdb.py:495
def confdb.overrideOutput (   self)

Definition at line 593 of file confdb.py.

594  def overrideOutput(self):
595  # override the "online" ShmStreamConsumer output modules with "offline" PoolOutputModule's
596  self.data = re.sub(
597  r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,',
598  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 ),',
599  self.data
600  )
601 
602  if not self.config.fragment and self.config.output == 'full':
603  # add a single "keep *" output
604  self.data += """
605 # add a single "keep *" output
606 %(process)shltOutputFULL = cms.OutputModule( "PoolOutputModule",
607  fileName = cms.untracked.string( "outputFULL.root" ),
608  fastCloning = cms.untracked.bool( False ),
609  dataset = cms.untracked.PSet(
610  dataTier = cms.untracked.string( 'RECO' ),
611  filterName = cms.untracked.string( '' )
612  ),
613  outputCommands = cms.untracked.vstring( 'keep *' )
614 )
615 %(process)sFULLOutput = cms.EndPath( %(process)shltOutputFULL )
616 """
617 
def overrideOutput
Definition: confdb.py:593
def confdb.overrideParameters (   self,
  module,
  parameters 
)

Definition at line 700 of file confdb.py.

701  def overrideParameters(self, module, parameters):
702  # override a module's parameter if the module is present in the configuration
703  self.data += "if '%s' in %%(dict)s:\n" % module
704  for (parameter, value) in parameters:
705  self.data += " %%(process)s%s.%s = %s\n" % (module, parameter, value)
706  self.data += "\n"
707 
def overrideParameters
Definition: confdb.py:700
def confdb.overrideProcessName (   self)

Definition at line 619 of file confdb.py.

620  def overrideProcessName(self):
621  if self.config.name is None:
622  return
623 
624  # override the process name
625  quote = '[\'\"]'
626  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)
627 
628  # the following was stolen and adapted from HLTrigger.Configuration.customL1THLT_Options
629  self.data += """
630 # adapt HLT modules to the correct process name
631 if 'hltTrigReport' in %%(dict)s:
632  %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
633 
634 if 'hltPreExpressCosmicsOutputSmart' in %%(dict)s:
635  %%(process)shltPreExpressCosmicsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
636 
637 if 'hltPreExpressOutputSmart' in %%(dict)s:
638  %%(process)shltPreExpressOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
639 
640 if 'hltPreDQMForHIOutputSmart' in %%(dict)s:
641  %%(process)shltPreDQMForHIOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
642 
643 if 'hltPreDQMForPPOutputSmart' in %%(dict)s:
644  %%(process)shltPreDQMForPPOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
645 
646 if 'hltPreHLTDQMResultsOutputSmart' in %%(dict)s:
647  %%(process)shltPreHLTDQMResultsOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
648 
649 if 'hltPreHLTDQMOutputSmart' in %%(dict)s:
650  %%(process)shltPreHLTDQMOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
651 
652 if 'hltPreHLTMONOutputSmart' in %%(dict)s:
653  %%(process)shltPreHLTMONOutputSmart.hltResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
654 
655 if 'hltDQMHLTScalers' in %%(dict)s:
656  %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' )
657  %%(process)shltDQMHLTScalers.processname = '%(name)s'
658 
659 if 'hltDQML1SeedLogicScalers' in %%(dict)s:
660  %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s'
661 """ % self.config.__dict__
662 
def overrideProcessName
Definition: confdb.py:619
def confdb.runL1Emulator (   self)

Definition at line 545 of file confdb.py.

546  def runL1Emulator(self):
547  # if requested, run (part of) the L1 emulator
548  if self.config.emulator:
549  # FIXME this fragment used "process" explicitly
550  emulator = {
551  'RawToDigi': '',
552  'CustomL1T': '',
553  'CustomHLT': ''
554  }
555 
556  if self.config.data:
557  emulator['RawToDigi'] = 'RawToDigi_Data_cff'
558  else:
559  emulator['RawToDigi'] = 'RawToDigi_cff'
560 
561  if self.config.emulator == 'gt':
562  emulator['CustomL1T'] = 'customiseL1GtEmulatorFromRaw'
563  emulator['CustomHLT'] = 'switchToSimGtDigis'
564  elif self.config.emulator == 'gct,gt':
565  emulator['CustomL1T'] = 'customiseL1CaloAndGtEmulatorsFromRaw'
566  emulator['CustomHLT'] = 'switchToSimGctGtDigis'
567  elif self.config.emulator == 'gmt,gt':
568  # XXX currently unsupported
569  emulator['CustomL1T'] = 'customiseL1MuonAndGtEmulatorsFromRaw'
570  emulator['CustomHLT'] = 'switchToSimGmtGtDigis'
571  elif self.config.emulator in ('gmt,gct,gt', 'gct,gmt,gt', 'all'):
572  emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw'
573  emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis'
574  else:
575  # unsupported argument, default to running the whole emulator
576  emulator['CustomL1T'] = 'customiseL1EmulatorFromRaw'
577  emulator['CustomHLT'] = 'switchToSimGmtGctGtDigis'
578 
579  self.data += """
580 # customize the L1 emulator to run %(CustomL1T)s with HLT to %(CustomHLT)s
581 process.load( 'Configuration.StandardSequences.%(RawToDigi)s' )
582 process.load( 'Configuration.StandardSequences.SimL1Emulator_cff' )
583 import L1Trigger.Configuration.L1Trigger_custom
584 process = L1Trigger.Configuration.L1Trigger_custom.%(CustomL1T)s( process )
585 process = L1Trigger.Configuration.L1Trigger_custom.customiseResetPrescalesAndMasks( process )
586 
587 # customize the HLT to use the emulated results
588 import HLTrigger.Configuration.customizeHLTforL1Emulator
589 process = HLTrigger.Configuration.customizeHLTforL1Emulator.switchToL1Emulator( process )
590 process = HLTrigger.Configuration.customizeHLTforL1Emulator.%(CustomHLT)s( process )
591 """ % emulator
592 
def runL1Emulator
Definition: confdb.py:545
def confdb.runL1EmulatorGT (   self)

Definition at line 514 of file confdb.py.

515  def runL1EmulatorGT(self):
516  # if requested, run (part of) the L1 emulator, then repack the data into a new RAW collection, to be used by the HLT
517  if not self.config.emulator:
518  return
519 
520  if self.config.emulator != 'gt':
521  # only the GT emulator is currently supported
522  return
523 
524  # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
525  text = """
526 # run the L1 GT emulator, then repack the data into a new RAW collection, to be used by the HLT
527 """
528  if self.config.fragment:
529  # FIXME in a cff, should also update the HLTSchedule
530  text += "import Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff\n"
531  else:
532  text += "process.load( 'Configuration.StandardSequences.SimL1EmulatorRepack_GT_cff' )\n"
533 
534  if not 'hltBoolFalse' in self.data:
535  # add hltBoolFalse
536  text += """
537 %(process)shltBoolFalse = cms.EDFilter( "HLTBool",
538  result = cms.bool( False )
539 )
540 """
541  text += "process.L1Emulator = cms.Path( process.SimL1Emulator + process.hltBoolFalse )\n\n"
542 
543  self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1)
544 
def runL1EmulatorGT
Definition: confdb.py:514
def confdb.splitter (   iterator,
  n 
)

Definition at line 11 of file confdb.py.

References list().

Referenced by TotemT1Organization._FromUnitIDToData(), SplittingConfigurableHisto.fill(), HLTLogMonitorFilter.filter(), FWTriggerTableView.saveImageTo(), FWTableView.saveImageTo(), and SplittingConfigurableHisto.SplittingConfigurableHisto().

11 
12 def splitter(iterator, n):
13  i = iterator.__iter__()
14  while True:
15  l = list(islice(i, n))
16  if l:
17  yield l
18  else:
19  break
20 
def splitter
Definition: confdb.py:11
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
def confdb.updateMessageLogger (   self)

Definition at line 663 of file confdb.py.

664  def updateMessageLogger(self):
665  # request summary informations from the MessageLogger
666  self.data += """
667 if 'MessageLogger' in %(dict)s:
668  %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD')
669  %(process)sMessageLogger.categories.append('L1GtTrigReport')
670  %(process)sMessageLogger.categories.append('HLTrigReport')
671  %(process)sMessageLogger.categories.append('FastReport')
672 """
673 
def updateMessageLogger
Definition: confdb.py:663

Variable Documentation

confdb.all_paths

Definition at line 824 of file confdb.py.

confdb.data

Definition at line 335 of file confdb.py.

confdb.source

Definition at line 1138 of file confdb.py.