CMS 3D CMS Logo

HBHEPhase1Reconstructor_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 import RecoLocalCalo.HcalRecProducers.HBHEMethod3Parameters_cfi as method3
3 import RecoLocalCalo.HcalRecProducers.HBHEMethod2Parameters_cfi as method2
4 import RecoLocalCalo.HcalRecProducers.HBHEMethod0Parameters_cfi as method0
5 import RecoLocalCalo.HcalRecProducers.HBHEPulseShapeFlagSetter_cfi as pulseShapeFlag
6 import RecoLocalCalo.HcalRecProducers.HBHEStatusBitSetter_cfi as hbheStatusFlag
7 
8 hbheprereco = cms.EDProducer(
9  "HBHEPhase1Reconstructor",
10 
11  # Label for the input HBHEDigiCollection, and flag indicating
12  # whether we should process this collection
13  digiLabelQIE8 = cms.InputTag("hcalDigis"),
14  processQIE8 = cms.bool(True),
15 
16  # Label for the input QIE11DigiCollection, and flag indicating
17  # whether we should process this collection
18  digiLabelQIE11 = cms.InputTag("hcalDigis"),
19  processQIE11 = cms.bool(True),
20 
21  # Get the "sample of interest" index from DB?
22  # If not, it is taken from the dataframe.
23  tsFromDB = cms.bool(False),
24 
25  # Use the HcalRecoParam structure from DB inside
26  # the reconstruction algorithm?
27  recoParamsFromDB = cms.bool(True),
28 
29  # include SiPM dark current contribution in pedestal mean
30  saveEffectivePedestal = cms.bool(False),
31 
32  # Drop zero-suppressed channels?
33  dropZSmarkedPassed = cms.bool(True),
34 
35  # Flag indicating whether we should produce HBHERecHitCollection
36  makeRecHits = cms.bool(True),
37 
38  # Flag indicating whether we should produce HBHEChannelInfoCollection
39  saveInfos = cms.bool(False),
40 
41  # Flag indicating whether we should include HBHEChannelInfo objects
42  # into HBHEChannelInfoCollection despite the fact that the channels
43  # are either tagged bad in DB of zero-suppressed. Note that the rechit
44  # collection will not include such channels even if this flag is set.
45  saveDroppedInfos = cms.bool(False),
46 
47  # Configure the reconstruction algorithm
48  algorithm = cms.PSet(
49  # Parameters for "Method 3" (non-keyword arguments have to go first)
50  method3.m3Parameters,
51  method2.m2Parameters,
52  method0.m0Parameters,
53 
54  Class = cms.string("SimpleHBHEPhase1Algo"),
55 
56  # Time shift (in ns) to add to TDC timing (for QIE11)
57  tdcTimeShift = cms.double(0.0),
58 
59  # Parameters for "Method 0"
60  firstSampleShift = cms.int32(0),
61 
62  # Use "Method 2"?
63  useM2 = cms.bool(True),
64 
65  # Use "Method 3"?
66  useM3 = cms.bool(True)
67  ),
68 
69  # Reconstruction algorithm configuration data to fetch from DB, if any
70  algoConfigClass = cms.string(""),
71 
72  # Turn rechit status bit setters on/off
73  setNegativeFlagsQIE8 = cms.bool(True),
74  setNegativeFlagsQIE11 = cms.bool(False),
75  setNoiseFlagsQIE8 = cms.bool(True),
76  setNoiseFlagsQIE11 = cms.bool(False),
77  setPulseShapeFlagsQIE8 = cms.bool(True),
78  setPulseShapeFlagsQIE11 = cms.bool(False),
79  setLegacyFlagsQIE8 = cms.bool(True),
80  setLegacyFlagsQIE11 = cms.bool(False),
81 
82  # Parameter sets configuring rechit status bit setters
83  flagParametersQIE8 = cms.PSet(
84  hbheStatusFlag.qie8Config
85  ),
86  flagParametersQIE11 = cms.PSet(),
87 
88  pulseShapeParametersQIE8 = cms.PSet(
89  pulseShapeFlag.qie8Parameters
90  ),
91  pulseShapeParametersQIE11 = cms.PSet()
92 )
93 
94 # Disable the "triangle peak fit" and the corresponding HBHETriangleNoise flag
95 hbheprereco.pulseShapeParametersQIE8.TrianglePeakTS = cms.uint32(10000)
96 
97 from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal
98 phase2_hcal.toModify(hbheprereco, saveEffectivePedestal = cms.bool(True))