1 from __future__
import print_function
2 from __future__
import absolute_import
3 import FWCore.ParameterSet.Config
as cms
4 import FWCore.ParameterSet.VarParsing
as VarParsing
7 from .dqmPythonTypes
import *
12 options.register(
'runNumber',
14 VarParsing.VarParsing.multiplicity.singleton,
15 VarParsing.VarParsing.varType.int,
18 options.register(
'runInputDir',
20 VarParsing.VarParsing.multiplicity.singleton,
21 VarParsing.VarParsing.varType.string,
22 "Directory where the DQM files will appear.")
24 options.register(
'scanOnce',
26 VarParsing.VarParsing.multiplicity.singleton,
27 VarParsing.VarParsing.varType.bool,
28 "Don't repeat file scans: use what was found during the initial scan. EOR file is ignored and the state is set to 'past end of run'.")
30 options.register(
'skipFirstLumis',
32 VarParsing.VarParsing.multiplicity.singleton,
33 VarParsing.VarParsing.varType.bool,
34 "Skip (and ignore the minEventsPerLumi parameter) for the files which have been available at the begining of the processing. ")
38 options.register (
'runkey',
40 VarParsing.VarParsing.multiplicity.singleton,
41 VarParsing.VarParsing.varType.string,
44 options.parseArguments()
51 if not options.runkey.strip():
52 options.runkey =
'pp_run' 54 runType.setRunType(options.runkey.strip())
56 if not options.inputFiles:
58 nextLumiTimeoutMillis = 240000
63 nextLumiTimeoutMillis = 0
65 source = cms.Source(
"DQMStreamerReader",
66 runNumber = cms.untracked.uint32(options.runNumber),
67 runInputDir = cms.untracked.string(options.runInputDir),
68 SelectEvents = cms.untracked.vstring(
'*'),
69 streamLabel = cms.untracked.string(
'streamDQM'),
70 scanOnce = cms.untracked.bool(options.scanOnce),
71 minEventsPerLumi = cms.untracked.int32(1),
72 delayMillis = cms.untracked.uint32(500),
73 nextLumiTimeoutMillis = cms.untracked.int32(nextLumiTimeoutMillis),
74 skipFirstLumis = cms.untracked.bool(options.skipFirstLumis),
75 deleteDatFiles = cms.untracked.bool(
False),
76 endOfRunKills = cms.untracked.bool(endOfRunKills),
79 print(
"The list of input files is provided. Disabling discovery and running on everything.")
80 files = [
"file://" + x
for x
in options.inputFiles]
81 source = cms.Source(
"PoolSource",
82 fileNames = cms.untracked.vstring(files),
83 secondaryFileNames = cms.untracked.vstring()
93 print(
"Source:", source)
S & print(S &os, JobReport::InputFile const &f)