Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-25 02:29:25

0001 import FWCore.ParameterSet.Config as cms
0002 import FWCore.ParameterSet.VarParsing as VarParsing
0003 import copy 
0004 
0005 process = cms.Process("Demo")
0006 
0007 #prepare options
0008 
0009 options = VarParsing.VarParsing("analysis")
0010 
0011 options.register ('globalTag',
0012                   "auto:phase1_2018_cosmics_peak",
0013                   VarParsing.VarParsing.multiplicity.singleton, # singleton or list
0014                   VarParsing.VarParsing.varType.string,         # string, int, or float
0015                   "GlobalTag")
0016 
0017 options.register ('runNumber',
0018                   1,
0019                   VarParsing.VarParsing.multiplicity.singleton, # singleton or list
0020                   VarParsing.VarParsing.varType.int,            # string, int, or float
0021                   "run number")
0022 
0023 options.register ('writePayload',
0024                   True,
0025                   VarParsing.VarParsing.multiplicity.singleton, # singleton or list
0026                   VarParsing.VarParsing.varType.bool,            # string, int, or float
0027                   "write out payload")
0028 
0029 options.parseArguments()
0030 
0031 
0032 ##
0033 ## MessageLogger
0034 ##
0035 process.load('FWCore.MessageService.MessageLogger_cfi')   
0036 process.MessageLogger.cerr.enable = False
0037 process.MessageLogger.SiStripNoisesAndBadCompsChecker=dict()  
0038 process.MessageLogger.cout = cms.untracked.PSet(
0039     enable    = cms.untracked.bool(True),
0040     enableStatistics = cms.untracked.bool(True),
0041     threshold = cms.untracked.string("INFO"),
0042     default   = cms.untracked.PSet(limit = cms.untracked.int32(0)),                       
0043     FwkReport = cms.untracked.PSet(limit = cms.untracked.int32(-1),
0044                                    reportEvery = cms.untracked.int32(1000)
0045                                    ),                                                      
0046     SiStripNoisesAndBadCompsChecker = cms.untracked.PSet( limit = cms.untracked.int32(-1))
0047     )
0048 
0049 ##
0050 ## Conditions
0051 ##
0052 process.load("Configuration.Geometry.GeometryRecoDB_cff") # Ideal geometry and interface 
0053 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0054 from Configuration.AlCa.GlobalTag import GlobalTag
0055 process.GlobalTag = GlobalTag(process.GlobalTag,options.globalTag, '')
0056 
0057 print("Using Global Tag:", process.GlobalTag.globaltag._value)
0058 
0059 ##
0060 ## Empty Source
0061 ##
0062 process.source = cms.Source("EmptySource",
0063                             firstRun = cms.untracked.uint32(options.runNumber),
0064                             numberEventsInRun = cms.untracked.uint32(1),
0065                             )
0066 
0067 process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1) )
0068 
0069 ##
0070 ## DB Output
0071 ##
0072 if(options.writePayload) :
0073     process.PoolDBOutputService = cms.Service("PoolDBOutputService",
0074                                               BlobStreamerName = cms.untracked.string('TBufferBlobStreamingService'),
0075                                               DBParameters = cms.PSet(authenticationPath = cms.untracked.string('/afs/cern.ch/cms/DB/conddb')),
0076                                               timetype = cms.untracked.string('runnumber'),
0077                                               connect = cms.string('sqlite_file:SiStripNoise_PeakMode_2018_Minus20C_v0_mc_fixed.db'),
0078                                               toPut = cms.VPSet(cms.PSet(record = cms.string('SiStripNoisesRcd'),
0079                                                                          tag = cms.string('SiStripNoise_PeakMode_2018_Minus20C_v0_mc_fixed')
0080                                                                      )
0081                                                             )
0082                                           )
0083 
0084 ##
0085 ## Analyzer
0086 ##
0087 process.demo = cms.EDAnalyzer('SiStripNoisesAndBadCompsChecker',
0088                               writePayload = cms.untracked.bool(options.writePayload),
0089                               printDebug = cms.untracked.uint32(100),
0090                               file = cms.untracked.FileInPath('CalibTracker/SiStripCommon/data/SiStripDetInfo.dat'))
0091 
0092 ##
0093 ## Parh
0094 ##
0095 process.p = cms.Path(process.demo)