Public Member Functions | |
def | __init__ |
def | addGlobalOptions |
def | build_source |
def | buildOptions |
def | customize |
def | dump |
def | expandWildcardOptions |
def | expandWildcards |
def | fixForFastSim |
def | fixForMC |
def | getPathList |
def | getRawConfigurationFromDB |
def | instrumentOpenMode |
def | instrumentTiming |
def | loadAdditionalConditions |
def | overrideGlobalTag |
def | overrideL1Menu |
def | overrideOutput |
def | overrideProcessName |
def | unprescale |
def | updateMessageLogger |
Public Attributes | |
config | |
data | |
labels | |
options | |
source | |
Private Member Functions | |
def | _build_cmdline |
def | _build_options |
def | _build_query |
def | _build_source |
def | _fix_parameter |
def confdb::HLTProcess::__init__ | ( | self, | |
configuration | |||
) |
Definition at line 10 of file confdb.py.
00011 : 00012 self.config = configuration 00013 self.data = None 00014 self.source = None 00015 00016 self.options = { 00017 'essources' : [], 00018 'esmodules' : [], 00019 'modules' : [], 00020 'sequences' : [], 00021 'services' : [], 00022 'paths' : [], 00023 'psets' : [], 00024 'blocks' : [], 00025 } 00026 00027 self.labels = {} 00028 if self.config.fragment: 00029 self.labels['process'] = '' 00030 self.labels['dict'] = 'locals()' 00031 else: 00032 self.labels['process'] = 'process.' 00033 self.labels['dict'] = 'process.__dict__' 00034 00035 if self.config.online: 00036 self.labels['connect'] = 'frontier://(proxyurl=https://localhost:3128)(serverurl=https://localhost:8000/FrontierOnProd)(serverurl=https://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)' 00037 else: 00038 self.labels['connect'] = 'frontier://FrontierProd' 00039 00040 # get the configuration from ConfdB 00041 self.buildOptions() 00042 self.expandWildcardOptions() 00043 self.getRawConfigurationFromDB() 00044 self.customize() 00045
def confdb::HLTProcess::_build_cmdline | ( | self | ) | [private] |
def confdb::HLTProcess::_build_options | ( | self | ) | [private] |
def confdb::HLTProcess::_build_query | ( | self | ) | [private] |
def confdb::HLTProcess::_build_source | ( | self | ) | [private] |
def confdb::HLTProcess::_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 208 of file confdb.py.
00209 : 00210 """arguments: 00211 name: parameter name (optional) 00212 type: parameter type (look for tracked and untracked variants) 00213 value: original value 00214 replace: replacement value 00215 """ 00216 if 'name' in args: 00217 self.data = re.sub( 00218 r'%(name)s = cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00219 r'%(name)s = cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00220 self.data) 00221 else: 00222 self.data = re.sub( 00223 r'cms(?P<tracked>(?:\.untracked)?)\.%(type)s\( (?P<quote>["\']?)%(value)s(?P=quote)' % args, 00224 r'cms\g<tracked>.%(type)s( \g<quote>%(replace)s\g<quote>' % args, 00225 self.data) 00226
def confdb::HLTProcess::addGlobalOptions | ( | self | ) |
Definition at line 195 of file confdb.py.
00196 : 00197 # add global options 00198 self.data += """ 00199 # add global options 00200 %(process)smaxEvents = cms.untracked.PSet( 00201 input = cms.untracked.int32( 100 ) 00202 ) 00203 %(process)soptions = cms.untracked.PSet( 00204 wantSummary = cms.untracked.bool( True ) 00205 ) 00206 """ 00207
def confdb::HLTProcess::build_source | ( | self | ) |
Definition at line 810 of file confdb.py.
00811 : 00812 if self.config.online: 00813 # online we always run on data 00814 self.source = "file:/tmp/InputCollection.root" 00815 elif self.config.data: 00816 # offline we can run on data... 00817 self.source = "/store/data/Run2011A/MinimumBias/RAW/v1/000/161/312/FEE65985-EF55-E011-A137-001617E30F50.root" 00818 else: 00819 # ...or on mc 00820 self.source = "file:RelVal_DigiL1Raw_%s.root" % self.config.type 00821
def confdb::HLTProcess::buildOptions | ( | self | ) |
Definition at line 492 of file confdb.py.
00493 : 00494 # common configuration for all scenarios 00495 self.options['services'].append( "-FUShmDQMOutputService" ) 00496 self.options['paths'].append( "-OfflineOutput" ) 00497 00498 # adapt source and options to the current scenario 00499 if not self.config.fragment: 00500 self.build_source() 00501 00502 if self.config.fragment: 00503 # extract a configuration file fragment 00504 self.options['essources'].append( "-GlobalTag" ) 00505 self.options['essources'].append( "-HepPDTESSource" ) 00506 self.options['essources'].append( "-XMLIdealGeometryESSource" ) 00507 self.options['essources'].append( "-eegeom" ) 00508 self.options['essources'].append( "-es_hardcode" ) 00509 self.options['essources'].append( "-magfield" ) 00510 00511 self.options['esmodules'].append( "-AutoMagneticFieldESProducer" ) 00512 self.options['esmodules'].append( "-SlaveField0" ) 00513 self.options['esmodules'].append( "-SlaveField20" ) 00514 self.options['esmodules'].append( "-SlaveField30" ) 00515 self.options['esmodules'].append( "-SlaveField35" ) 00516 self.options['esmodules'].append( "-SlaveField38" ) 00517 self.options['esmodules'].append( "-SlaveField40" ) 00518 self.options['esmodules'].append( "-VBF0" ) 00519 self.options['esmodules'].append( "-VBF20" ) 00520 self.options['esmodules'].append( "-VBF30" ) 00521 self.options['esmodules'].append( "-VBF35" ) 00522 self.options['esmodules'].append( "-VBF38" ) 00523 self.options['esmodules'].append( "-VBF40" ) 00524 self.options['esmodules'].append( "-CSCGeometryESModule" ) 00525 self.options['esmodules'].append( "-CaloGeometryBuilder" ) 00526 self.options['esmodules'].append( "-CaloTowerHardcodeGeometryEP" ) 00527 self.options['esmodules'].append( "-CastorHardcodeGeometryEP" ) 00528 self.options['esmodules'].append( "-DTGeometryESModule" ) 00529 self.options['esmodules'].append( "-EcalBarrelGeometryEP" ) 00530 self.options['esmodules'].append( "-EcalElectronicsMappingBuilder" ) 00531 self.options['esmodules'].append( "-EcalEndcapGeometryEP" ) 00532 self.options['esmodules'].append( "-EcalLaserCorrectionService" ) 00533 self.options['esmodules'].append( "-EcalPreshowerGeometryEP" ) 00534 self.options['esmodules'].append( "-HcalHardcodeGeometryEP" ) 00535 self.options['esmodules'].append( "-HcalTopologyIdealEP" ) 00536 self.options['esmodules'].append( "-MuonNumberingInitialization" ) 00537 self.options['esmodules'].append( "-ParametrizedMagneticFieldProducer" ) 00538 self.options['esmodules'].append( "-RPCGeometryESModule" ) 00539 self.options['esmodules'].append( "-SiStripGainESProducer" ) 00540 self.options['esmodules'].append( "-SiStripRecHitMatcherESProducer" ) 00541 self.options['esmodules'].append( "-SiStripQualityESProducer" ) 00542 self.options['esmodules'].append( "-StripCPEfromTrackAngleESProducer" ) 00543 self.options['esmodules'].append( "-TrackerDigiGeometryESModule" ) 00544 self.options['esmodules'].append( "-TrackerGeometricDetESModule" ) 00545 self.options['esmodules'].append( "-VolumeBasedMagneticFieldESProducer" ) 00546 self.options['esmodules'].append( "-ZdcHardcodeGeometryEP" ) 00547 self.options['esmodules'].append( "-hcal_db_producer" ) 00548 self.options['esmodules'].append( "-L1GtTriggerMaskAlgoTrigTrivialProducer" ) 00549 self.options['esmodules'].append( "-L1GtTriggerMaskTechTrigTrivialProducer" ) 00550 self.options['esmodules'].append( "-hltESPEcalTrigTowerConstituentsMapBuilder" ) 00551 self.options['esmodules'].append( "-hltESPGlobalTrackingGeometryESProducer" ) 00552 self.options['esmodules'].append( "-hltESPMuonDetLayerGeometryESProducer" ) 00553 self.options['esmodules'].append( "-hltESPTrackerRecoGeometryESProducer" ) 00554 if not self.config.fastsim: 00555 self.options['esmodules'].append( "-CaloTowerGeometryFromDBEP" ) 00556 self.options['esmodules'].append( "-CastorGeometryFromDBEP" ) 00557 self.options['esmodules'].append( "-EcalBarrelGeometryFromDBEP" ) 00558 self.options['esmodules'].append( "-EcalEndcapGeometryFromDBEP" ) 00559 self.options['esmodules'].append( "-EcalPreshowerGeometryFromDBEP" ) 00560 self.options['esmodules'].append( "-HcalGeometryFromDBEP" ) 00561 self.options['esmodules'].append( "-ZdcGeometryFromDBEP" ) 00562 self.options['esmodules'].append( "-XMLFromDBSource" ) 00563 self.options['esmodules'].append( "-sistripconn" ) 00564 00565 self.options['services'].append( "-PrescaleService" ) 00566 self.options['services'].append( "-MessageLogger" ) 00567 self.options['services'].append( "-DQM" ) 00568 self.options['services'].append( "-MicroStateService" ) 00569 self.options['services'].append( "-ModuleWebRegistry" ) 00570 self.options['services'].append( "-TimeProfilerService" ) 00571 if not self.config.fastsim: 00572 self.options['services'].append( "-DQMStore" ) 00573 00574 self.options['paths'].append( "-*Output" ) 00575 00576 self.options['psets'].append( "-maxEvents" ) 00577 self.options['psets'].append( "-options" ) 00578 00579 if self.config.fastsim: 00580 # remove components not supported or needed by fastsim 00581 self.options['essources'].append( "-BTagRecord" ) 00582 00583 self.options['esmodules'].append( "-SiPixelTemplateDBObjectESProducer" ) 00584 self.options['esmodules'].append( "-TTRHBuilderPixelOnly" ) 00585 self.options['esmodules'].append( "-WithTrackAngle" ) 00586 self.options['esmodules'].append( "-trajectoryCleanerBySharedHits" ) 00587 self.options['esmodules'].append( "-trackCounting3D2nd" ) 00588 self.options['esmodules'].append( "-navigationSchoolESProducer" ) 00589 self.options['esmodules'].append( "-muonCkfTrajectoryFilter" ) 00590 self.options['esmodules'].append( "-ckfBaseTrajectoryFilter" ) 00591 self.options['esmodules'].append( "-TransientTrackBuilderESProducer" ) 00592 self.options['esmodules'].append( "-TrackerRecoGeometryESProducer" ) 00593 self.options['esmodules'].append( "-SteppingHelixPropagatorOpposite" ) 00594 self.options['esmodules'].append( "-SteppingHelixPropagatorAny" ) 00595 self.options['esmodules'].append( "-SteppingHelixPropagatorAlong" ) 00596 self.options['esmodules'].append( "-SmootherRK" ) 00597 self.options['esmodules'].append( "-SmartPropagatorRK" ) 00598 self.options['esmodules'].append( "-SmartPropagatorOpposite" ) 00599 self.options['esmodules'].append( "-SmartPropagatorAnyRK" ) 00600 self.options['esmodules'].append( "-SmartPropagatorAnyOpposite" ) 00601 self.options['esmodules'].append( "-SmartPropagatorAny" ) 00602 self.options['esmodules'].append( "-SmartPropagator" ) 00603 self.options['esmodules'].append( "-RungeKuttaTrackerPropagator" ) 00604 self.options['esmodules'].append( "-OppositeMaterialPropagator" ) 00605 self.options['esmodules'].append( "-MuonTransientTrackingRecHitBuilderESProducer" ) 00606 self.options['esmodules'].append( "-MuonDetLayerGeometryESProducer" ) 00607 self.options['esmodules'].append( "-MuonCkfTrajectoryBuilder" ) 00608 self.options['esmodules'].append( "-hltMeasurementTracker" ) 00609 self.options['esmodules'].append( "-MaterialPropagator" ) 00610 self.options['esmodules'].append( "-L3MuKFFitter" ) 00611 self.options['esmodules'].append( "-KFUpdatorESProducer" ) 00612 self.options['esmodules'].append( "-KFSmootherForRefitInsideOut" ) 00613 self.options['esmodules'].append( "-KFSmootherForMuonTrackLoader" ) 00614 self.options['esmodules'].append( "-KFFitterForRefitInsideOut" ) 00615 self.options['esmodules'].append( "-GroupedCkfTrajectoryBuilder" ) 00616 self.options['esmodules'].append( "-GlobalTrackingGeometryESProducer" ) 00617 self.options['esmodules'].append( "-FittingSmootherRK" ) 00618 self.options['esmodules'].append( "-FitterRK" ) 00619 self.options['esmodules'].append( "-hltCkfTrajectoryBuilder" ) 00620 self.options['esmodules'].append( "-Chi2MeasurementEstimator" ) 00621 self.options['esmodules'].append( "-Chi2EstimatorForRefit" ) 00622 self.options['esmodules'].append( "-CaloTowerConstituentsMapBuilder" ) 00623 self.options['esmodules'].append( "-CaloTopologyBuilder" ) 00624 00625 self.options['services'].append( "-UpdaterService" ) 00626 00627 self.options['blocks'].append( "hltL1NonIsoLargeWindowElectronPixelSeeds::SeedConfiguration" ) 00628 self.options['blocks'].append( "hltL1IsoLargeWindowElectronPixelSeeds::SeedConfiguration" ) 00629 self.options['blocks'].append( "hltL1NonIsoStartUpElectronPixelSeeds::SeedConfiguration" ) 00630 self.options['blocks'].append( "hltL1IsoStartUpElectronPixelSeeds::SeedConfiguration" ) 00631 00632 self.options['modules'].append( "hltL3MuonIsolations" ) 00633 self.options['modules'].append( "hltPixelVertices" ) 00634 self.options['modules'].append( "-hltCkfL1IsoTrackCandidates" ) 00635 self.options['modules'].append( "-hltCtfL1IsoWithMaterialTracks" ) 00636 self.options['modules'].append( "-hltCkfL1NonIsoTrackCandidates" ) 00637 self.options['modules'].append( "-hltCtfL1NonIsoWithMaterialTracks" ) 00638 self.options['modules'].append( "hltPixelMatchLargeWindowElectronsL1Iso" ) 00639 self.options['modules'].append( "hltPixelMatchLargeWindowElectronsL1NonIso" ) 00640 self.options['modules'].append( "-hltESRegionalEgammaRecHit" ) 00641 self.options['modules'].append( "-hltEcalRegionalJetsFEDs" ) 00642 self.options['modules'].append( "-hltEcalRegionalJetsRecHitTmp" ) 00643 self.options['modules'].append( "-hltEcalRegionalMuonsFEDs" ) 00644 self.options['modules'].append( "-hltEcalRegionalMuonsRecHitTmp" ) 00645 self.options['modules'].append( "-hltEcalRegionalEgammaFEDs" ) 00646 self.options['modules'].append( "-hltEcalRegionalEgammaRecHitTmp" ) 00647 self.options['modules'].append( "-hltFEDSelector" ) 00648 self.options['modules'].append( "-hltL3TrajSeedOIHit" ) 00649 self.options['modules'].append( "-hltL3TrajSeedIOHit" ) 00650 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIState" ) 00651 self.options['modules'].append( "-hltL3TrackCandidateFromL2OIHit" ) 00652 self.options['modules'].append( "-hltL3TrackCandidateFromL2IOHit" ) 00653 self.options['modules'].append( "-hltL3TrackCandidateFromL2NoVtx" ) 00654 self.options['modules'].append( "-hltHcalDigis" ) 00655 self.options['modules'].append( "-hltHoreco" ) 00656 self.options['modules'].append( "-hltHfreco" ) 00657 self.options['modules'].append( "-hltHbhereco" ) 00658 self.options['modules'].append( "-hltEcalRegionalRestFEDs" ) 00659 self.options['modules'].append( "-hltEcalRegionalESRestFEDs" ) 00660 self.options['modules'].append( "-hltEcalRawToRecHitFacility" ) 00661 self.options['modules'].append( "-hltESRawToRecHitFacility" ) 00662 self.options['modules'].append( "-hltEcalRegionalJetsRecHit" ) 00663 self.options['modules'].append( "-hltEcalRegionalMuonsRecHit" ) 00664 self.options['modules'].append( "-hltEcalRegionalEgammaRecHit" ) 00665 self.options['modules'].append( "-hltEcalRecHitAll" ) 00666 self.options['modules'].append( "-hltESRecHitAll" ) 00667 #self.options['modules'].append( "-hltL3TauPixelSeeds" ) 00668 #self.options['modules'].append( "-hltL3TauHighPtPixelSeeds" ) 00669 #self.options['modules'].append( "-hltL3TauCkfTrackCandidates" ) 00670 #self.options['modules'].append( "-hltL3TauCkfHighPtTrackCandidates" ) 00671 #self.options['modules'].append( "-hltL3TauCtfWithMaterialTracks" ) 00672 #self.options['modules'].append( "-hltL25TauPixelSeeds" ) 00673 #self.options['modules'].append( "-hltL25TauCkfTrackCandidates" ) 00674 #self.options['modules'].append( "-hltL25TauCtfWithMaterialTracks" ) 00675 #self.options['modules'].append( "-hltL3TauSingleTrack15CtfWithMaterialTracks" ) 00676 # === hltPF 00677 self.options['modules'].append( "-hltPFJetPixelSeeds" ) 00678 self.options['modules'].append( "-hltPFJetCkfTrackCandidates" ) 00679 self.options['modules'].append( "-hltPFJetCtfWithMaterialTracks" ) 00680 self.options['modules'].append( "-hltPFlowTrackSelectionHighPurity" ) 00681 # === hltBLifetimeRegional 00682 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGenerator" ) 00683 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidates" ) 00684 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracks" ) 00685 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorSingleTop" ) 00686 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksSingleTop" ) 00687 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesSingleTop" ) 00688 self.options['modules'].append( "-hltBLifetimeRegionalPixelSeedGeneratorEleJetSingleTop" ) 00689 self.options['modules'].append( "-hltBLifetimeRegionalCkfTrackCandidatesEleJetSingleTop" ) 00690 self.options['modules'].append( "-hltBLifetimeRegionalCtfWithMaterialTracksEleJetSingleTop" ) 00691 00692 self.options['modules'].append( "-hltPixelTracksForMinBias" ) 00693 self.options['modules'].append( "-hltPixelTracksForHighMult" ) 00694 00695 self.options['modules'].append( "-hltMuonCSCDigis" ) 00696 self.options['modules'].append( "-hltMuonDTDigis" ) 00697 self.options['modules'].append( "-hltMuonRPCDigis" ) 00698 self.options['modules'].append( "-hltGtDigis" ) 00699 self.options['modules'].append( "-hltL1GtTrigReport" ) 00700 self.options['modules'].append( "hltCsc2DRecHits" ) 00701 self.options['modules'].append( "hltDt1DRecHits" ) 00702 self.options['modules'].append( "hltRpcRecHits" ) 00703 00704 self.options['sequences'].append( "-HLTL1IsoEgammaRegionalRecoTrackerSequence" ) 00705 self.options['sequences'].append( "-HLTL1NonIsoEgammaRegionalRecoTrackerSequence" ) 00706 self.options['sequences'].append( "-HLTEcalActivityEgammaRegionalRecoTrackerSequence" ) 00707 self.options['sequences'].append( "-HLTPixelMatchElectronActivityTrackingSequence" ) 00708 self.options['sequences'].append( "-HLTL1IsoElectronsRegionalRecoTrackerSequence" ) 00709 self.options['sequences'].append( "-HLTL1NonIsoElectronsRegionalRecoTrackerSequence" ) 00710 self.options['sequences'].append( "-HLTPixelMatchLargeWindowElectronL1IsoTrackingSequence" ) 00711 self.options['sequences'].append( "-HLTPixelMatchLargeWindowElectronL1NonIsoTrackingSequence" ) 00712 self.options['sequences'].append( "-HLTPixelTrackingForMinBiasSequence" ) 00713 self.options['sequences'].append( "-HLTDoLocalStripSequence" ) 00714 self.options['sequences'].append( "-HLTDoLocalPixelSequence" ) 00715 self.options['sequences'].append( "-hltSiPixelDigis" ) 00716 self.options['sequences'].append( "-hltSiPixelClusters" ) 00717 self.options['sequences'].append( "-hltSiPixelRecHits" ) 00718 self.options['sequences'].append( "-HLTRecopixelvertexingSequence" ) 00719 #self.options['sequences'].append( "-HLTL3TauTrackReconstructionSequence" ) 00720 #self.options['sequences'].append( "-HLTL3TauHighPtTrackReconstructionSequence" ) 00721 #self.options['sequences'].append( "-HLTL25TauTrackReconstructionSequence" ) 00722 #self.options['sequences'].append( "-HLTL3TauSingleTrack15ReconstructionSequence" ) 00723 #self.options['sequences'].append( "-HLTTrackReconstructionForJets" ) 00724 self.options['sequences'].append( "-HLTEndSequence" ) 00725 self.options['sequences'].append( "-HLTBeginSequence" ) 00726 self.options['sequences'].append( "-HLTBeginSequenceNZS" ) 00727 self.options['sequences'].append( "-HLTBeginSequenceBPTX" ) 00728 self.options['sequences'].append( "-HLTBeginSequenceAntiBPTX" ) 00729 self.options['sequences'].append( "-HLTL2HcalIsolTrackSequence" ) 00730 self.options['sequences'].append( "-HLTL2HcalIsolTrackSequenceHB" ) 00731 self.options['sequences'].append( "-HLTL2HcalIsolTrackSequenceHE" ) 00732 self.options['sequences'].append( "-HLTL3HcalIsolTrackSequence" ) 00733 00734 # remove unsupported paths 00735 self.options['paths'].append( "-AlCa_EcalEta_v*" ) 00736 self.options['paths'].append( "-AlCa_EcalPhiSym_v*" ) 00737 self.options['paths'].append( "-AlCa_EcalPi0_v*" ) 00738 self.options['paths'].append( "-AlCa_RPCMuonNoHits_v*" ) 00739 self.options['paths'].append( "-AlCa_RPCMuonNoTriggers_v*" ) 00740 self.options['paths'].append( "-AlCa_RPCMuonNormalisation_v*" ) 00741 self.options['paths'].append( "-DQM_FEDIntegrity_v*" ) 00742 #self.options['paths'].append( "-HLT_Activity_DT" ) 00743 #self.options['paths'].append( "-HLT_Activity_DT_Tuned" ) 00744 #self.options['paths'].append( "-HLT_Activity_Ecal" ) 00745 #self.options['paths'].append( "-HLT_Activity_EcalREM" ) 00746 #self.options['paths'].append( "-HLT_Activity_Ecal_SC15" ) 00747 #self.options['paths'].append( "-HLT_Activity_Ecal_SC17" ) 00748 #self.options['paths'].append( "-HLT_Activity_Ecal_SC7" ) 00749 #self.options['paths'].append( "-HLT_Activity_L1A" ) 00750 #self.options['paths'].append( "-HLT_Activity_PixelClusters" ) 00751 #self.options['paths'].append( "-HLT_DTErrors" ) 00752 #self.options['paths'].append( "-HLT_DoubleEle4_SW_eeRes_L1R" ) 00753 #self.options['paths'].append( "-HLT_DoubleEle4_SW_eeRes_L1R_v*" ) 00754 #self.options['paths'].append( "-HLT_DoubleEle5_SW_Upsilon_L1R_v*" ) 00755 #self.options['paths'].append( "-HLT_DoublePhoton4_Jpsi_L1R" ) 00756 #self.options['paths'].append( "-HLT_DoublePhoton4_Upsilon_L1R" ) 00757 #self.options['paths'].append( "-HLT_DoublePhoton4_eeRes_L1R" ) 00758 #self.options['paths'].append( "-HLT_EgammaSuperClusterOnly_L1R" ) 00759 #self.options['paths'].append( "-HLT_Ele15_SiStrip_L1R" ) 00760 #self.options['paths'].append( "-HLT_Ele20_SiStrip_L1R" ) 00761 #self.options['paths'].append( "-HLT_HFThreshold10" ) 00762 #self.options['paths'].append( "-HLT_HFThreshold3" ) 00763 self.options['paths'].append( "-HLT_Calibration_v*" ) 00764 self.options['paths'].append( "-HLT_EcalCalibration_v*" ) 00765 self.options['paths'].append( "-HLT_HcalCalibration_v*" ) 00766 self.options['paths'].append( "-HLT_TrackerCalibration_v*" ) 00767 self.options['paths'].append( "-HLT_HcalNZS_v*" ) 00768 self.options['paths'].append( "-HLT_HcalPhiSym_v*" ) 00769 self.options['paths'].append( "-HLT_IsoTrackHB_v*" ) 00770 self.options['paths'].append( "-HLT_IsoTrackHE_v*" ) 00771 #self.options['paths'].append( "-HLT_Jet15U_HcalNoiseFiltered" ) 00772 #self.options['paths'].append( "-HLT_Jet15U_HcalNoiseFiltered_v*" ) 00773 #self.options['paths'].append( "-HLT_L1DoubleMuOpen_Tight" ) 00774 #self.options['paths'].append( "-HLT_L1MuOpen_AntiBPTX" ) 00775 self.options['paths'].append( "-HLT_L1SingleMuOpen_AntiBPTX_v*" ) 00776 self.options['paths'].append( "-HLT_JetE30_NoBPTX*_v*" ) 00777 #self.options['paths'].append( "-HLT_Mu0_TkMu0_OST_Jpsi" ) 00778 #self.options['paths'].append( "-HLT_Mu0_TkMu0_OST_Jpsi_Tight_v*" ) 00779 #self.options['paths'].append( "-HLT_Mu0_Track0_Jpsi" ) 00780 #self.options['paths'].append( "-HLT_Mu3_TkMu0_OST_Jpsi" ) 00781 #self.options['paths'].append( "-HLT_Mu3_TkMu0_OST_Jpsi_Tight_v*" ) 00782 #self.options['paths'].append( "-HLT_Mu3_Track0_Jpsi" ) 00783 #self.options['paths'].append( "-HLT_Mu3_Track3_Jpsi" ) 00784 self.options['paths'].append( "-HLT_Mu3_Track3_Jpsi_v*" ) 00785 #self.options['paths'].append( "-HLT_Mu3_Track5_Jpsi_v*" ) 00786 #self.options['paths'].append( "-HLT_Mu5_TkMu0_OST_Jpsi_Tight_v*" ) 00787 #self.options['paths'].append( "-HLT_Mu5_Track0_Jpsi_v*" ) 00788 self.options['paths'].append( "-HLT_Mu5_TkMu0_OST_Jpsi_Tight_B5Q7_v*" ) 00789 self.options['paths'].append( "-HLT_Mu5_Track0_Jpsi_B5Q7_v*" ) 00790 self.options['paths'].append( "-HLT_Random_v*" ) 00791 self.options['paths'].append( "-HLT_Mu5_Track2_Jpsi_v*" ) 00792 self.options['paths'].append( "-HLT_Mu5_Track5_Jpsi_v*" ) 00793 self.options['paths'].append( "-HLT_Mu7_Track5_Jpsi_v*" ) 00794 self.options['paths'].append( "-HLT_Mu7_Track7_Jpsi_v*" ) 00795 #self.options['paths'].append( "-HLT_SelectEcalSpikesHighEt_L1R" ) 00796 #self.options['paths'].append( "-HLT_SelectEcalSpikes_L1R" ) 00797 00798 self.options['paths'].append( "-HLT_DTErrors_v*" ) 00799 00800 # TODO: 5E32 paths for which a recovery should be attempted: 00801 self.options['paths'].append( "-HLT_Mu3_Ele8_CaloIdL_TrkIdVL_HT160_v*" ) 00802 self.options['paths'].append( "-HLT_Mu3_Ele8_CaloIdT_TrkIdVL_HT160_v*" ) 00803 self.options['paths'].append( "-HLT_Ele17_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_v*") 00804 self.options['paths'].append( "-HLT_HT250_DoubleDisplacedJet60_v*" ) 00805 00806 # remove HLTAnalyzerEndpath from fastsim cff's 00807 if self.config.fragment: 00808 self.options['paths'].append( "-HLTAnalyzerEndpath" ) 00809
def confdb::HLTProcess::customize | ( | self | ) |
Definition at line 113 of file confdb.py.
00114 : 00115 self.data += """ 00116 # Extra customisation for CMSSW 42X+ only 00117 %(process)secalSeverityLevel = cms.ESProducer( "EcalSeverityLevelESProducer", 00118 appendToDataLabel = cms.string( "" ), 00119 flagMask = cms.vuint32( 1, 34, 896, 4, 49152, 6232 ), 00120 dbstatusMask = cms.vuint32( 1, 2046, 0, 0, 0, 64512 ), 00121 timeThresh = cms.double( 2.0 ) 00122 ) 00123 """ 00124 if not(self.config.type in ('HIon', )): 00125 self.data += """ 00126 if 'hltParticleFlowRecHitHCAL' in %(dict)s: 00127 %(process)shltParticleFlowRecHitHCAL.HCAL_Calib = True 00128 %(process)shltParticleFlowRecHitHCAL.HF_Calib = True 00129 if 'hltParticleFlow' in %(dict)s: 00130 %(process)shltParticleFlow.calibPFSCEle_barrel = [1.004, -1.536, 22.88, -1.467, 0.3555, 0.6227, 14.65, 2051, 25, 0.9932, -0.5444, 0, 0.5438, 0.7109, 7.645, 0.2904, 0] 00131 %(process)shltParticleFlow.calibPFSCEle_endcap = [1.153, -16.5975, 5.668, -0.1772, 16.22, 7.326, 0.0483, -4.068, 9.406] 00132 """ 00133 00134 if self.config.fragment: 00135 # if running on MC, adapt the configuration accordingly 00136 self.fixForMC() 00137 00138 # if requested, adapt the configuration for FastSim 00139 self.fixForFastSim() 00140 00141 # if requested, remove the HLT prescales 00142 self.unprescale() 00143 00144 # if requested, override all ED/HLTfilters to always pass ("open" mode) 00145 self.instrumentOpenMode() 00146 00147 # if requested, instrument the self with the modules and EndPath needed for timing studies 00148 self.instrumentTiming() 00149 00150 else: 00151 # if running on MC, adapt the configuration accordingly 00152 self.fixForMC() 00153 00154 # override the process name and adapt the relevant filters 00155 self.overrideProcessName() 00156 00157 # if required, remove the HLT prescales 00158 self.unprescale() 00159 00160 # if requested, override all ED/HLTfilters to always pass ("open" mode) 00161 self.instrumentOpenMode() 00162 00163 # manual override some Heavy Ion parameters 00164 if self.config.type in ('HIon', ): 00165 self.data += """ 00166 # HIon paths in smart prescalers 00167 if 'hltPreDQMOutputSmart' in %(dict)s: 00168 %(process)shltPreDQMOutputSmart.throw = cms.bool( False ) 00169 if 'hltPreExpressOutputSmart' in %(dict)s: 00170 %(process)shltPreExpressOutputSmart.throw = cms.bool( False ) 00171 if 'hltPreHLTDQMOutputSmart' in %(dict)s: 00172 %(process)shltPreHLTDQMOutputSmart.throw = cms.bool( False ) 00173 if 'hltPreHLTMONOutputSmart' in %(dict)s: 00174 %(process)shltPreHLTMONOutputSmart.throw = cms.bool( False ) 00175 """ 00176 00177 # override the output modules to output root files 00178 self.overrideOutput() 00179 00180 # add global options 00181 self.addGlobalOptions() 00182 00183 # if requested or necessary, override the GlobalTag and connection strings 00184 self.overrideGlobalTag() 00185 00186 # if requested, override the L1 self from the GlobalTag (using the same connect as the GlobalTag itself) 00187 self.overrideL1Menu() 00188 00189 # request summary informations from the MessageLogger 00190 self.updateMessageLogger() 00191 00192 # if requested, instrument the self with the modules and EndPath needed for timing studies 00193 self.instrumentTiming() 00194
def confdb::HLTProcess::dump | ( | self | ) |
def confdb::HLTProcess::expandWildcardOptions | ( | self | ) |
def confdb::HLTProcess::expandWildcards | ( | globs, | |
collection | |||
) |
Definition at line 92 of file confdb.py.
00093 : 00094 # expand a list of unix-style wildcards matching a given collection 00095 # wildcards with no matches are silently discarded 00096 matches = [] 00097 for glob in globs: 00098 negate = '' 00099 if glob[0] == '-': 00100 negate = '-' 00101 glob = glob[1:] 00102 # translate a unix-style glob expression into a regular expression 00103 filter = re.compile(r'^' + glob.replace('?', '.').replace('*', '.*').replace('[!', '[^') + r'$') 00104 matches.extend( negate + element for element in collection if filter.match(element) ) 00105 return matches 00106
def confdb::HLTProcess::fixForFastSim | ( | self | ) |
Definition at line 234 of file confdb.py.
00235 : 00236 if self.config.fastsim: 00237 # adapt the hle configuration (fragment) to run under fastsim 00238 self.data = re.sub( r'import FWCore.ParameterSet.Config as cms', r'\g<0>\nfrom FastSimulation.HighLevelTrigger.HLTSetup_cff import *', self.data) 00239 00240 # remove the definition of streams and datasets 00241 self.data = re.compile( r'^streams.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00242 self.data = re.compile( r'^datasets.*\n(.*\n)*?^\)\s*\n', re.MULTILINE ).sub( '', self.data ) 00243 00244 # fix the definition of module 00245 self._fix_parameter( type = 'InputTag', value = 'hltL1extraParticles', replace = 'l1extraParticles') 00246 self._fix_parameter(name = 'GMTReadoutCollection', type = 'InputTag', value = 'hltGtDigis', replace = 'gmtDigis') 00247 self._fix_parameter( type = 'InputTag', value = 'hltGtDigis', replace = 'gtDigis') 00248 self._fix_parameter( type = 'InputTag', value = 'hltL1GtObjectMap', replace = 'gtDigis') 00249 self._fix_parameter(name = 'initialSeeds', type = 'InputTag', value = 'noSeedsHere', replace = 'globalPixelSeeds:GlobalPixel') 00250 self._fix_parameter(name = 'preFilteredSeeds', type = 'bool', value = 'True', replace = 'False') 00251 self._fix_parameter( type = 'InputTag', value = 'hltOfflineBeamSpot', replace = 'offlineBeamSpot') 00252 self._fix_parameter( type = 'InputTag', value = 'hltOnlineBeamSpot', replace = 'offlineBeamSpot') 00253 self._fix_parameter( type = 'InputTag', value = 'hltMuonCSCDigis', replace = 'simMuonCSCDigis') 00254 self._fix_parameter( type = 'InputTag', value = 'hltMuonDTDigis', replace = 'simMuonDTDigis') 00255 self._fix_parameter( type = 'InputTag', value = 'hltMuonRPCDigis', replace = 'simMuonRPCDigis') 00256 00257 # fix the definition of sequences and paths 00258 self.data = re.sub( r'hltMuonCSCDigis', r'cms.SequencePlaceholder( "simMuonCSCDigis" )', self.data ) 00259 self.data = re.sub( r'hltMuonDTDigis', r'cms.SequencePlaceholder( "simMuonDTDigis" )', self.data ) 00260 self.data = re.sub( r'hltMuonRPCDigis', r'cms.SequencePlaceholder( "simMuonRPCDigis" )', self.data ) 00261 self.data = re.sub( r'HLTEndSequence', r'cms.SequencePlaceholder( "HLTEndSequence" )', self.data ) 00262 self.data = re.sub( r'hltGtDigis', r'HLTBeginSequence', self.data ) 00263
def confdb::HLTProcess::fixForMC | ( | self | ) |
def confdb::HLTProcess::getPathList | ( | self | ) |
Definition at line 76 of file confdb.py.
00077 : 00078 cmdline = 'edmConfigFromDB --cff %s --noedsources --noes --noservices --nosequences --nomodules' % self._build_query() 00079 data = _pipe(cmdline) 00080 if 'Exhausted Resultset' in data or 'CONFIG_NOT_FOUND' in data: 00081 raise ImportError('%s is not a valid HLT menu' % self.config.menuConfig.value) 00082 filter = re.compile(r' *= *cms.(End)?Path.*') 00083 paths = [ filter.sub('', line) for line in data.splitlines() if filter.search(line) ] 00084 return paths 00085
def confdb::HLTProcess::getRawConfigurationFromDB | ( | self | ) |
def confdb::HLTProcess::instrumentOpenMode | ( | self | ) |
Definition at line 275 of file confdb.py.
00276 : 00277 if self.config.open: 00278 # find all EDfilters 00279 filters = [ match[1] for match in re.findall(r'(process\.)?\b(\w+) = cms.EDFilter', self.data) ] 00280 # wrap all EDfilters with "cms.ignore( ... )" 00281 re_filters = re.compile( r'\b((process\.)?(' + r'|'.join(filters) + r'))\b' ) 00282 re_sequence = re.compile( r'cms\.(Path|Sequence)\((.*)\)' ) 00283 self.data = re_sequence.sub( lambda line: re_filters.sub( r'cms.ignore( \1 )', line.group(0) ), self.data ) 00284
def confdb::HLTProcess::instrumentTiming | ( | self | ) |
Definition at line 425 of file confdb.py.
00426 : 00427 if self.config.timing: 00428 # instrument the menu with the modules and EndPath needed for timing studies 00429 text = '' 00430 00431 if 'HLTriggerFirstPath' in self.data: 00432 # remove HLTriggerFirstPath 00433 self.data = re.sub(r'.*\bHLTriggerFirstPath\s*=.*\n', '', self.data) 00434 00435 if not 'hltGetRaw' in self.data: 00436 # add hltGetRaw 00437 text += """ 00438 %%(process)shltGetRaw = cms.EDAnalyzer( "HLTGetRaw", 00439 RawDataCollection = cms.InputTag( "%s" ) 00440 ) 00441 """ % ( self.config.data and 'source' or 'rawDataCollector' ) 00442 00443 if not 'hltGetConditions' in self.data: 00444 # add hltGetConditions 00445 text += """ 00446 %(process)shltGetConditions = cms.EDAnalyzer( 'EventSetupRecordDataGetter', 00447 verbose = cms.untracked.bool( False ), 00448 toGet = cms.VPSet( ) 00449 ) 00450 """ 00451 00452 # add the definition of HLTriggerFirstPath 00453 text += """ 00454 %(process)sHLTriggerFirstPath = cms.Path( %(process)shltGetRaw + %(process)shltGetConditions + %(process)shltBoolFalse ) 00455 """ 00456 self.data = re.sub(r'.*cms\.(End)?Path.*', text + r'\g<0>', self.data, 1) 00457 00458 self.data += """ 00459 # instrument the menu with the modules and EndPath needed for timing studies 00460 %(process)sPathTimerService = cms.Service( "PathTimerService", 00461 ) 00462 %(process)shltTimer = cms.EDProducer( "PathTimerInserter", 00463 ) 00464 %(process)shltOutputTiming = cms.OutputModule( "PoolOutputModule", 00465 fileName = cms.untracked.string( "outputTiming.root" ), 00466 fastCloning = cms.untracked.bool( False ), 00467 splitLevel = cms.untracked.int32( 0 ), 00468 dataset = cms.untracked.PSet( 00469 dataTier = cms.untracked.string( 'RECO' ), 00470 filterName = cms.untracked.string( '' ) 00471 ), 00472 outputCommands = cms.untracked.vstring( 'drop *', 00473 'keep HLTPerformanceInfo_*_*_*' ) 00474 ) 00475 00476 %(process)sTimingOutput = cms.EndPath( %(process)shltTimer + %(process)shltOutputTiming ) 00477 """ 00478 self.loadAdditionalConditions('add XML geometry to keep hltGetConditions happy', 00479 { 00480 'record' : 'GeometryFileRcd', 00481 'tag' : 'XMLFILE_Geometry_380V3_Ideal_mc', 00482 'label' : 'Ideal', 00483 'connect' : '%(connect)s/CMS_COND_34X_GEOMETRY' 00484 }, { 00485 'record' : 'GeometryFileRcd', 00486 'tag' : 'XMLFILE_Geometry_380V3_Extended_mc', 00487 'label' : 'Extended', 00488 'connect' : '%(connect)s/CMS_COND_34X_GEOMETRY' 00489 } 00490 ) 00491
def confdb::HLTProcess::loadAdditionalConditions | ( | self, | |
comment, | |||
conditions | |||
) |
Definition at line 408 of file confdb.py.
00409 : 00410 # load additional conditions 00411 self.data += """ 00412 # %s 00413 if 'GlobalTag' in %%(dict)s: 00414 """ % comment 00415 for condition in conditions: 00416 self.data += """ %%(process)sGlobalTag.toGet.append( 00417 cms.PSet( 00418 record = cms.string( '%(record)s' ), 00419 tag = cms.string( '%(tag)s' ), 00420 label = cms.untracked.string( '%(label)s' ), 00421 connect = cms.untracked.string( '%(connect)s' ) 00422 ) 00423 ) 00424 """ % condition
def confdb::HLTProcess::overrideGlobalTag | ( | self | ) |
Definition at line 285 of file confdb.py.
00286 : 00287 # overwrite GlobalTag 00288 # the logic is: 00289 # - for running online, do nothing, unless a globaltag has been specified on the command line 00290 # - for running offline on data, only add the pfnPrefix 00291 # - for running offline on mc, take the GT from the command line of the configuration.type 00292 # - if the GT is "auto:...", insert the code to read it from Configuration.PyReleaseValidation.autoCond 00293 text = '' 00294 if self.config.online: 00295 if self.config.globaltag: 00296 # override the GlobalTag 00297 text += """ 00298 # override the GlobalTag 00299 if 'GlobalTag' in %%(dict)s: 00300 %%(process)sGlobalTag.globaltag = '%(globaltag)s' 00301 """ 00302 00303 else: 00304 # override the GlobalTag connection string and pfnPrefix 00305 text += """ 00306 # override the GlobalTag, connection string and pfnPrefix 00307 if 'GlobalTag' in %%(dict)s: 00308 %%(process)sGlobalTag.connect = '%%(connect)s/CMS_COND_31X_GLOBALTAG' 00309 %%(process)sGlobalTag.pfnPrefix = cms.untracked.string('%%(connect)s/') 00310 """ 00311 00312 if self.config.data: 00313 # do not override the GlobalTag unless one was specified on the command line 00314 pass 00315 else: 00316 # check if a specific GlobalTag was specified on the command line, or choose one from the configuration.type 00317 if not self.config.globaltag: 00318 if self.config.type in globalTag: 00319 self.config.globaltag = globalTag[self.config.type] 00320 else: 00321 self.config.globaltag = globalTag['GRun'] 00322 00323 # check if the GlobalTag is an autoCond or an explicit tag 00324 if not self.config.globaltag: 00325 # when running on data, do not override the GlobalTag unless one was specified on the command line 00326 pass 00327 elif self.config.globaltag.startswith('auto:'): 00328 self.config.menuGlobalTagAuto = self.config.globaltag[5:] 00329 text += " from Configuration.PyReleaseValidation.autoCond import autoCond\n" 00330 text += " %%(process)sGlobalTag.globaltag = autoCond['%(menuGlobalTagAuto)s']\n" 00331 else: 00332 text += " %%(process)sGlobalTag.globaltag = '%(globaltag)s'\n" 00333 00334 self.data += text % self.config.__dict__ 00335
def confdb::HLTProcess::overrideL1Menu | ( | self | ) |
Definition at line 336 of file confdb.py.
00337 : 00338 # if requested, override the L1 menu from the GlobalTag (using the same connect as the GlobalTag itself) 00339 if self.config.l1.override: 00340 self.config.l1.record = 'L1GtTriggerMenuRcd' 00341 self.config.l1.label = '' 00342 self.config.l1.tag = self.config.l1.override 00343 if not self.config.l1.connect: 00344 self.config.l1.connect = '%(connect)s/CMS_COND_31X_L1T' 00345 self.loadAdditionalConditions( 'override the L1 menu', self.config.l1.__dict__ ) 00346
def confdb::HLTProcess::overrideOutput | ( | self | ) |
Definition at line 347 of file confdb.py.
00348 : 00349 reOutputModuleDef = re.compile(r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\(.*\n([^)].*\n)*\) *\n') 00350 reOutputModuleRef = re.compile(r' *[+*]? *\b(process\.)?hltOutput(\w+)') # FIXME this does not cover "hltOutputX + something" 00351 if self.config.output == 'none': 00352 # drop all output modules 00353 self.data = reOutputModuleDef.sub('', self.data) 00354 self.data = reOutputModuleRef.sub('', self.data) 00355 00356 elif self.config.output == 'minimal': 00357 # drop all output modules except "HLTDQMResults" 00358 repl = lambda match: (match.group(2) == 'HLTDQMResults') and match.group() or '' 00359 self.data = reOutputModuleDef.sub(repl, self.data) 00360 self.data = reOutputModuleRef.sub(repl, self.data) 00361 00362 # override the "online" ShmStreamConsumer output modules with "offline" PoolOutputModule's 00363 self.data = re.sub( 00364 r'\b(process\.)?hltOutput(\w+) *= *cms\.OutputModule\( *"ShmStreamConsumer" *,', 00365 r'%(process)shltOutput\2 = cms.OutputModule( "PoolOutputModule",\n fileName = cms.untracked.string( "output\2.root" ),\n fastCloning = cms.untracked.bool( False ),', 00366 self.data 00367 ) 00368
def confdb::HLTProcess::overrideProcessName | ( | self | ) |
Definition at line 370 of file confdb.py.
00371 : 00372 # the following was stolen and adapted from HLTrigger.Configuration.customL1THLT_Options 00373 self.data += """ 00374 # override the process name 00375 %%(process)ssetName_('%(name)s') 00376 00377 # adapt HLT modules to the correct process name 00378 if 'hltTrigReport' in %%(dict)s: 00379 %%(process)shltTrigReport.HLTriggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00380 00381 if 'hltPreExpressSmart' in %%(dict)s: 00382 %%(process)shltPreExpressSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00383 00384 if 'hltPreHLTMONSmart' in %%(dict)s: 00385 %%(process)shltPreHLTMONSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00386 00387 if 'hltPreDQMSmart' in %%(dict)s: 00388 %%(process)shltPreDQMSmart.TriggerResultsTag = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00389 00390 if 'hltDQMHLTScalers' in %%(dict)s: 00391 %%(process)shltDQMHLTScalers.triggerResults = cms.InputTag( 'TriggerResults', '', '%(name)s' ) 00392 %%(process)shltDQMHLTScalers.processname = '%(name)s' 00393 00394 if 'hltDQML1SeedLogicScalers' in %%(dict)s: 00395 %%(process)shltDQML1SeedLogicScalers.processname = '%(name)s' 00396 """ % self.config.__dict__ 00397
def confdb::HLTProcess::unprescale | ( | self | ) |
Definition at line 264 of file confdb.py.
00265 : 00266 if self.config.unprescale: 00267 self.data += """ 00268 # remove the HLT prescales 00269 if 'PrescaleService' in %(dict)s: 00270 %(process)sPrescaleService.lvl1DefaultLabel = cms.untracked.string( '0' ) 00271 %(process)sPrescaleService.lvl1Labels = cms.vstring( '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ) 00272 %(process)sPrescaleService.prescaleTable = cms.VPSet( ) 00273 """ 00274
def confdb::HLTProcess::updateMessageLogger | ( | self | ) |
Definition at line 398 of file confdb.py.
00399 : 00400 # request summary informations from the MessageLogger 00401 self.data += """ 00402 if 'MessageLogger' in %(dict)s: 00403 %(process)sMessageLogger.categories.append('TriggerSummaryProducerAOD') 00404 %(process)sMessageLogger.categories.append('L1GtTrigReport') 00405 %(process)sMessageLogger.categories.append('HLTrigReport') 00406 """ 00407