File indexing completed on 2024-11-25 02:29:34
0001 import FWCore.ParameterSet.Config as cms
0002 import FWCore.ParameterSet.VarParsing as VarParsing
0003 from FWCore.ParameterSet.Types import PSet
0004
0005 process = cms.Process("DQMTEST")
0006
0007 options = VarParsing.VarParsing('analysis')
0008
0009 options.register('runNumber',
0010 100101,
0011 VarParsing.VarParsing.multiplicity.singleton,
0012 VarParsing.VarParsing.varType.int,
0013 "Run number.")
0014
0015 options.register('runInputDir',
0016 '/tmp',
0017 VarParsing.VarParsing.multiplicity.singleton,
0018 VarParsing.VarParsing.varType.string,
0019 "Directory where the DQM files will appear.")
0020 options.register('eventsPerLS',
0021 35,
0022 VarParsing.VarParsing.multiplicity.singleton,
0023 VarParsing.VarParsing.varType.int,
0024 "Max LS to generate (0 to disable limit)")
0025 options.register ('maxLS',
0026 2,
0027 VarParsing.VarParsing.multiplicity.singleton,
0028 VarParsing.VarParsing.varType.int,
0029 "Max LS to generate (0 to disable limit)")
0030
0031 options.parseArguments()
0032
0033
0034 process.MessageLogger = cms.Service("MessageLogger",
0035 destinations = cms.untracked.vstring('cout'),
0036 cout = cms.untracked.PSet(threshold = cms.untracked.string('WARNING'))
0037 )
0038 process.source = cms.Source("DQMStreamerReader",
0039 runNumber = cms.untracked.uint32(options.runNumber),
0040 runInputDir = cms.untracked.string(options.runInputDir),
0041 streamLabel = cms.untracked.string('streamDQM'),
0042 scanOnce = cms.untracked.bool(True),
0043 minEventsPerLumi = cms.untracked.int32(1),
0044 delayMillis = cms.untracked.uint32(500),
0045 nextLumiTimeoutMillis = cms.untracked.int32(0),
0046 skipFirstLumis = cms.untracked.bool(False),
0047 deleteDatFiles = cms.untracked.bool(False),
0048 endOfRunKills = cms.untracked.bool(False),
0049 inputFileTransitionsEachEvent = cms.untracked.bool(False),
0050 SelectEvents = cms.untracked.vstring("HLT*Mu*","HLT_*Physics*")
0051 )
0052
0053
0054
0055
0056 rn = options.runNumber
0057 transitions = [cms.EventID(rn,0,0)]
0058 evid = 1
0059 for lumi in range(1, options.maxLS+1):
0060 transitions.append(cms.EventID(rn,lumi,0))
0061 for ev in range(0, options.eventsPerLS):
0062 transitions.append(cms.EventID(rn,lumi,evid))
0063 evid += 1
0064 transitions.append(cms.EventID(rn,lumi,0))
0065 transitions.append(cms.EventID(rn,0,0))
0066
0067
0068
0069 process.test = cms.EDAnalyzer("RunLumiEventChecker",
0070 eventSequence = cms.untracked.VEventID(*transitions),
0071 unorderedEvents = cms.untracked.bool(True),
0072 minNumberOfEvents = cms.untracked.uint32(1+2+2),
0073 maxNumberOfEvents = cms.untracked.uint32(1+2+2)
0074 )
0075 if options.eventsPerLS == 0:
0076 process.test.eventSequence = []
0077 process.test.minNumberOfEvents = 0
0078 process.test.maxNumberOfEvents = 0
0079
0080 process.p = cms.Path(process.test)
0081