Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:30

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