Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:41

0001 """
0002 Module to remove SiStrip DCS checks in Strip and Tracking Monitors
0003 """
0004 
0005 import FWCore.ParameterSet.Config as cms
0006 
0007 def producers_by_type(process, *types):
0008     return [module for module in process._Process__producers.values() if module._TypedParameterizable__type in types]
0009 
0010 def removeDCSChecks(process, acceptedParts):
0011     print('WARNING: removing SiStrip DCS Checks in Strip and Tracking Monitors')
0012 
0013     for producerType in ['SiStripMonitorTrack', 'SiStripMonitorCluster']:
0014         for producer in producers_by_type(process, producerType):
0015             producer.UseDCSFiltering = cms.bool(False)
0016                     
0017     for producer in producers_by_type(process, 'SiStripMonitorCluster'):
0018         producer.StripDCSfilter.dcsPartitions = cms.vint32(acceptedParts)
0019 
0020     for producer in producers_by_type(process, 'TrackingMonitor'):
0021         producer.genericTriggerEventPSet.dcsPartitions = cms.vint32(acceptedParts)
0022 
0023     return process
0024 
0025 def removeStripDCSChecks(process):
0026     removeDCSChecks(process, [28, 29])  # keep 28-29: pixel
0027     return process
0028 
0029 def removePixelDCSChecks(process):
0030     removeDCSChecks(process, [24, 25, 26, 27])  # keep 24-27: strip
0031     return process
0032 
0033 def removeTrackerDCSChecks(process):
0034     removeDCSChecks(process, []) # do not keep anything
0035     return process