File indexing completed on 2023-03-17 10:55:08
0001 from __future__ import print_function
0002 from __future__ import absolute_import
0003 import FWCore.ParameterSet.Config as cms
0004 import FWCore.ParameterSet.VarParsing as VarParsing
0005
0006 import sys
0007 from .dqmPythonTypes import *
0008
0009 options = VarParsing.VarParsing('analysis')
0010
0011
0012 options.register('runNumber',
0013 111,
0014 VarParsing.VarParsing.multiplicity.singleton,
0015 VarParsing.VarParsing.varType.int,
0016 "Run number.")
0017
0018 options.register('datafnPosition',
0019 3,
0020 VarParsing.VarParsing.multiplicity.singleton,
0021 VarParsing.VarParsing.varType.int,
0022 "Data filename position in the positional arguments array 'data' in json file.")
0023
0024 options.register('runInputDir',
0025 '/tmp',
0026 VarParsing.VarParsing.multiplicity.singleton,
0027 VarParsing.VarParsing.varType.string,
0028 "Directory where the DQM files will appear.")
0029
0030 options.register('scanOnce',
0031 False,
0032 VarParsing.VarParsing.multiplicity.singleton,
0033 VarParsing.VarParsing.varType.bool,
0034 "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'.")
0035
0036 options.register('skipFirstLumis',
0037 False,
0038 VarParsing.VarParsing.multiplicity.singleton,
0039 VarParsing.VarParsing.varType.bool,
0040 "Skip (and ignore the minEventsPerLumi parameter) for the files which have been available at the beginning of the processing.")
0041
0042 options.register('noDB',
0043 True,
0044 VarParsing.VarParsing.multiplicity.singleton,
0045 VarParsing.VarParsing.varType.bool,
0046 "Don't upload the BeamSpot conditions to the DB")
0047
0048 options.register('BeamSplashRun',
0049 False,
0050 VarParsing.VarParsing.multiplicity.singleton,
0051 VarParsing.VarParsing.varType.bool,
0052 "Set client source settings for beam SPLASH run")
0053
0054
0055
0056 options.register('runkey',
0057 'pp_run',
0058 VarParsing.VarParsing.multiplicity.singleton,
0059 VarParsing.VarParsing.varType.string,
0060 "Run Keys of CMS")
0061
0062
0063
0064 options.register('runUniqueKey',
0065 'InValid',
0066 VarParsing.VarParsing.multiplicity.singleton,
0067 VarParsing.VarParsing.varType.string,
0068 "Unique run key from RCMS for Frontier")
0069
0070 options.parseArguments()
0071
0072
0073
0074
0075
0076 runType = RunType()
0077 if not options.runkey.strip():
0078 options.runkey = 'pp_run'
0079
0080 runType.setRunType(options.runkey.strip())
0081
0082 if not options.inputFiles:
0083
0084 nextLumiTimeoutMillis = 240000
0085 endOfRunKills = True
0086
0087 if options.scanOnce:
0088 endOfRunKills = False
0089 nextLumiTimeoutMillis = 0
0090
0091 source = cms.Source("DQMStreamerReader",
0092 runNumber = cms.untracked.uint32(options.runNumber),
0093 runInputDir = cms.untracked.string(options.runInputDir),
0094 SelectEvents = cms.untracked.vstring('*'),
0095 streamLabel = cms.untracked.string('streamDQM'),
0096 scanOnce = cms.untracked.bool(options.scanOnce),
0097 datafnPosition = cms.untracked.uint32(options.datafnPosition),
0098 minEventsPerLumi = cms.untracked.int32(1),
0099 delayMillis = cms.untracked.uint32(500),
0100 nextLumiTimeoutMillis = cms.untracked.int32(nextLumiTimeoutMillis),
0101 skipFirstLumis = cms.untracked.bool(options.skipFirstLumis),
0102 deleteDatFiles = cms.untracked.bool(False),
0103 endOfRunKills = cms.untracked.bool(endOfRunKills),
0104 inputFileTransitionsEachEvent = cms.untracked.bool(False)
0105 )
0106 else:
0107 print("The list of input files is provided. Disabling discovery and running on everything.")
0108 files = ["file://" + x for x in options.inputFiles]
0109 source = cms.Source("PoolSource",
0110 fileNames = cms.untracked.vstring(files),
0111 secondaryFileNames = cms.untracked.vstring()
0112 )
0113
0114
0115
0116
0117
0118
0119
0120
0121
0122 def set_BeamSplashRun_settings( source ):
0123 source.minEventsPerLumi = 1000000
0124 source.nextLumiTimeoutMillis = 15000
0125
0126 if options.BeamSplashRun : set_BeamSplashRun_settings( source )
0127
0128 print("Initial Source settings:", source)