CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
HcalTBDigiProducer Class Reference

#include <HcalTBDigiProducer.h>

Inheritance diagram for HcalTBDigiProducer:
DigiAccumulatorMixMod

Public Member Functions

void accumulate (edm::Event const &e, edm::EventSetup const &c) override
 
void accumulate (PileUpEventPrincipal const &e, edm::EventSetup const &c, edm::StreamID const &) override
 
void finalizeEvent (edm::Event &e, edm::EventSetup const &c) override
 
 HcalTBDigiProducer (const edm::ParameterSet &ps, edm::ProducesCollector, edm::ConsumesCollector &iC)
 
void initializeEvent (edm::Event const &e, edm::EventSetup const &c) override
 
 ~HcalTBDigiProducer () override
 
- Public Member Functions inherited from DigiAccumulatorMixMod
virtual void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
 
virtual void beginRun (edm::Run const &run, edm::EventSetup const &setup)
 
 DigiAccumulatorMixMod ()
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
 
virtual void endRun (edm::Run const &run, edm::EventSetup const &setup)
 
virtual void finalizeBunchCrossing (edm::Event &event, edm::EventSetup const &setup, int bunchCrossing)
 
virtual PileupMixingContentgetEventPileupInfo ()
 
virtual void initializeBunchCrossing (edm::Event const &event, edm::EventSetup const &setup, int bunchCrossing)
 
virtual void StorePileupInformation (std::vector< int > &numInteractionList, std::vector< int > &bunchCrossingList, std::vector< float > &TrueInteractionList, std::vector< edm::EventID > &eventList, int bunchSpace)
 
virtual ~DigiAccumulatorMixMod ()
 

Private Types

typedef CaloTDigitizer< HBHEDigitizerTraitsHBHEDigitizer
 
typedef CaloTDigitizer< HODigitizerTraitsHODigitizer
 

Private Member Functions

void accumulateCaloHits (edm::Handle< std::vector< PCaloHit >> const &hits, int bunchCrossing)
 
void checkGeometry (const edm::EventSetup &eventSetup)
 
void setPhaseShift (const DetId &detId)
 
void sortHits (const edm::PCaloHitContainer &hits)
 fills the vectors for each subdetector More...
 
void updateGeometry ()
 

Private Attributes

edm::ESGetToken< HcalDbService, HcalDbRecordconditionsToken_
 
bool doPhaseShift
 
std::string ecalTBInfoLabel
 
edm::ESGetToken< CaloGeometry, CaloGeometryRecordgeometryToken_
 
edm::ESWatcher< CaloGeometryRecordgeometryWatcher_
 
std::vector< DetIdhbheCells
 
const HcalTimeSlewhcalTimeSlew_delay_
 
edm::ESGetToken< HcalTimeSlew, HcalTimeSlewRecordhcalTimeSlew_delay_token_
 
std::vector< DetIdhoCells
 
HcalSimParameterMapparaMap
 
CLHEP::HepRandomEngine * randomEngine_ = nullptr
 
HcalAmplifiertheAmplifier
 
HcalCoderFactorytheCoderFactory
 
HcalElectronicsSimtheElectronicsSim
 
const CaloGeometrytheGeometry
 
HBHEDigitizertheHBHEDigitizer
 
HBHEHitFilter theHBHEHitFilter
 
std::vector< PCaloHittheHBHEHits
 
CaloHitResponsetheHBHEResponse
 
CaloVShapetheHcalIntegratedShape
 
CaloVShapetheHcalShape
 
HODigitizertheHODigitizer
 
HOHitFilter theHOHitFilter
 
std::vector< PCaloHittheHOHits
 
CaloHitResponsetheHOResponse
 
HcalTBSimParameterMaptheParameterMap
 
HcalTimeSlewSimtheTimeSlewSim
 
double thisPhaseShift
 
double tunePhaseShift
 

Detailed Description

Definition at line 35 of file HcalTBDigiProducer.h.

Member Typedef Documentation

◆ HBHEDigitizer

Reconstruction algorithm

Definition at line 61 of file HcalTBDigiProducer.h.

◆ HODigitizer

Definition at line 62 of file HcalTBDigiProducer.h.

Constructor & Destructor Documentation

◆ HcalTBDigiProducer()

HcalTBDigiProducer::HcalTBDigiProducer ( const edm::ParameterSet ps,
edm::ProducesCollector  producesCollector,
edm::ConsumesCollector iC 
)
explicit

Definition at line 19 of file HcalTBDigiProducer.cc.

24  theHcalShape(new HcalShape()),
28  theAmplifier(nullptr),
29  theCoderFactory(nullptr),
30  theElectronicsSim(nullptr),
31  theTimeSlewSim(nullptr),
32  theHBHEDigitizer(nullptr),
33  theHODigitizer(nullptr),
36  theHBHEHits(),
37  theHOHits(),
38  thisPhaseShift(0) {
39  std::string const instance("simHcalDigis");
40  producesCollector.produces<HBHEDigiCollection>(instance);
41  producesCollector.produces<HODigiCollection>(instance);
42  iC.consumes<std::vector<PCaloHit>>(edm::InputTag("g4SimHits", "HcalHits"));
43 
44  DetId detId(DetId::Hcal, 1);
47 
50 
51  bool doNoise = ps.getParameter<bool>("doNoise");
52  bool dummy1 = false;
53  bool dummy2 = false; // extra arguments for premixing
54  theAmplifier = new HcalAmplifier(theParameterMap, doNoise, dummy1, dummy2);
57 
58  double minFCToDelay = ps.getParameter<double>("minFCToDelay");
59  bool doTimeSlew = ps.getParameter<bool>("doTimeSlew");
60 
61  hcalTimeSlew_delay_ = nullptr;
62  if (doTimeSlew) {
63  // no time slewing for HF
66  }
67 
70 
71  tunePhaseShift = ps.getUntrackedParameter<double>("tunePhaseShiftTB", 1.);
72  ecalTBInfoLabel = ps.getUntrackedParameter<std::string>("EcalTBInfoLabel", "SimEcalTBG4Object");
73  edm::LogInfo("HcalSim") << "HcalTBDigiProducer initialized with doNoise = " << doNoise
74  << ", doTimeSlew = " << doTimeSlew << " and doPhaseShift = " << doPhaseShift
75  << " tunePhasShift = " << tunePhaseShift;
76 
77  if (doPhaseShift) {
79  }
80 }

References edm::ConsumesCollector::consumes(), HcalCoderFactory::DB, DigiDM_cff::doNoise, doPhaseShift, hcalUnsuppressedDigis_cfi::doTimeSlew, ecalTBInfoLabel, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), DetId::Hcal, hcalTimeSlew_delay_, HLT_FULL_cff::InputTag, instance, hcalUnsuppressedDigis_cfi::minFCToDelay, paraMap, edm::ProducesCollector::produces(), CaloHitResponse::setHitFilter(), HcalAmplifier::setTimeSlewSim(), HcalTBSimParameterMap::simParameters(), AlCaHLTBitMon_QueryRunRegistry::string, ecalSimParameterMap_cff::syncPhase, theAmplifier, theCoderFactory, theElectronicsSim, theHBHEDigitizer, theHBHEHitFilter, theHBHEResponse, theHODigitizer, theHOHitFilter, theHOResponse, theParameterMap, theTimeSlewSim, and tunePhaseShift.

◆ ~HcalTBDigiProducer()

HcalTBDigiProducer::~HcalTBDigiProducer ( )
override

Definition at line 82 of file HcalTBDigiProducer.cc.

82  {
83  if (theHBHEDigitizer)
84  delete theHBHEDigitizer;
85  if (theHODigitizer)
86  delete theHODigitizer;
87  if (theParameterMap)
88  delete theParameterMap;
89  if (theHcalShape)
90  delete theHcalShape;
93  if (theHBHEResponse)
94  delete theHBHEResponse;
95  if (theHOResponse)
96  delete theHOResponse;
98  delete theElectronicsSim;
99  if (theAmplifier)
100  delete theAmplifier;
101  if (theCoderFactory)
102  delete theCoderFactory;
103  if (theTimeSlewSim)
104  delete theTimeSlewSim;
105 }

References theAmplifier, theCoderFactory, theElectronicsSim, theHBHEDigitizer, theHBHEResponse, theHcalIntegratedShape, theHcalShape, theHODigitizer, theHOResponse, theParameterMap, and theTimeSlewSim.

Member Function Documentation

◆ accumulate() [1/2]

void HcalTBDigiProducer::accumulate ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 152 of file HcalTBDigiProducer.cc.

152  {
153  // Step A: Get Inputs, and accumulate digis
154 
155  edm::InputTag hcalTag("g4SimHits", "HcalHits");
157  e.getByLabel(hcalTag, hcalHandle);
158 
159  accumulateCaloHits(hcalHandle, 0);
160 }

References accumulateCaloHits(), and MillePedeFileConverter_cfg::e.

◆ accumulate() [2/2]

void HcalTBDigiProducer::accumulate ( PileUpEventPrincipal const &  e,
edm::EventSetup const &  c,
edm::StreamID const &  streamID 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 162 of file HcalTBDigiProducer.cc.

164  {
165  // Step A: Get Inputs, and accumulate digis
166 
167  edm::InputTag hcalTag("g4SimHits", "HcalHits");
169  e.getByLabel(hcalTag, hcalHandle);
170 
171  accumulateCaloHits(hcalHandle, e.bunchCrossing());
172 }

References accumulateCaloHits(), and MillePedeFileConverter_cfg::e.

◆ accumulateCaloHits()

void HcalTBDigiProducer::accumulateCaloHits ( edm::Handle< std::vector< PCaloHit >> const &  hits,
int  bunchCrossing 
)
private

Definition at line 141 of file HcalTBDigiProducer.cc.

141  {
142  LogDebug("HcalSim") << "HcalTBDigiProducer::accumulate trying to get SimHit";
143 
144  if (hcalHandle.isValid()) {
145  std::vector<PCaloHit> hits = *hcalHandle.product();
146  LogDebug("HcalSim") << "HcalTBDigiProducer::accumulate Hits corrected";
147  theHBHEDigitizer->add(hits, bunchCrossing, randomEngine_);
148  theHODigitizer->add(hits, bunchCrossing, randomEngine_);
149  }
150 }

References CaloTDigitizer< Traits, runHelper >::add(), hfClusterShapes_cfi::hits, LogDebug, randomEngine_, theHBHEDigitizer, and theHODigitizer.

Referenced by accumulate().

◆ checkGeometry()

void HcalTBDigiProducer::checkGeometry ( const edm::EventSetup eventSetup)
private

make sure the digitizer has the correct list of all cells that exist in the geometry

Definition at line 206 of file HcalTBDigiProducer.cc.

206  {
207  // see if we need to update
208  if (geometryWatcher_.check(eventSetup)) {
209  theGeometry = &eventSetup.getData(geometryToken_);
210  updateGeometry();
211  }
212 }

References edm::ESWatcher< T >::check(), geometryToken_, geometryWatcher_, edm::EventSetup::getData(), theGeometry, and updateGeometry().

Referenced by initializeEvent().

◆ finalizeEvent()

void HcalTBDigiProducer::finalizeEvent ( edm::Event e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 174 of file HcalTBDigiProducer.cc.

174  {
175  // Step B: Create empty output
176  std::unique_ptr<HBHEDigiCollection> hbheResult(new HBHEDigiCollection());
177  std::unique_ptr<HODigiCollection> hoResult(new HODigiCollection());
178  LogDebug("HcalSim") << "HcalTBDigiProducer::produce Empty collection created";
179  // Step C: Invoke the algorithm, getting back outputs.
180  theHBHEDigitizer->run(*hbheResult, randomEngine_);
181  edm::LogInfo("HcalSim") << "HcalTBDigiProducer: HBHE digis : " << hbheResult->size();
182  theHODigitizer->run(*hoResult, randomEngine_);
183  edm::LogInfo("HcalSim") << "HcalTBDigiProducer: HO digis : " << hoResult->size();
184 
185  // Step D: Put outputs into event
186  std::string const instance("simHcalDigis");
187  e.put(std::move(hbheResult), instance);
188  e.put(std::move(hoResult), instance);
189 
190  randomEngine_ = nullptr; // to prevent access outside event
191 }

References MillePedeFileConverter_cfg::e, instance, LogDebug, eostools::move(), randomEngine_, CaloTDigitizer< Traits, runHelper >::run(), AlCaHLTBitMon_QueryRunRegistry::string, theHBHEDigitizer, and theHODigitizer.

◆ initializeEvent()

void HcalTBDigiProducer::initializeEvent ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 107 of file HcalTBDigiProducer.cc.

107  {
108  // get the appropriate gains, noises, & widths for this event
109  const HcalDbService *conditions = &eventSetup.getData(conditionsToken_);
112 
113  // get the correct geometry
114  checkGeometry(eventSetup);
115 
116  // Cache random number engine
118  randomEngine_ = &rng->getEngine(e.streamID());
119 
120  theHBHEHits.clear();
121  theHOHits.clear();
122  if (doPhaseShift) {
123  edm::Handle<PEcalTBInfo> theEcalTBInfo;
124  e.getByLabel(ecalTBInfoLabel, theEcalTBInfo);
125  thisPhaseShift = theEcalTBInfo->phaseShift();
126 
127  DetId detIdHB(DetId::Hcal, 1);
128  setPhaseShift(detIdHB);
129  DetId detIdHO(DetId::Hcal, 3);
130  setPhaseShift(detIdHO);
131  }
132 
133  hcalTimeSlew_delay_ = &eventSetup.getData(hcalTimeSlew_delay_token_);
134 
136 
139 }

References checkGeometry(), submitPVValidationJobs::conditions, conditionsToken_, doPhaseShift, MillePedeFileConverter_cfg::e, ecalTBInfoLabel, edm::EventSetup::getData(), edm::RandomNumberGenerator::getEngine(), DetId::Hcal, hcalTimeSlew_delay_, hcalTimeSlew_delay_token_, CaloTDigitizer< Traits, runHelper >::initializeHits(), PEcalTBInfo::phaseShift(), randomEngine_, HcalCoderFactory::setDbService(), HcalAmplifier::setDbService(), setPhaseShift(), HcalAmplifier::setTimeSlew(), theAmplifier, theCoderFactory, theHBHEDigitizer, theHBHEHits, theHODigitizer, theHOHits, and thisPhaseShift.

◆ setPhaseShift()

void HcalTBDigiProducer::setPhaseShift ( const DetId detId)
private

Definition at line 238 of file HcalTBDigiProducer.cc.

238  {
240  if (!parameters.syncPhase()) {
241  int myDet = detId.subdetId();
242  double passPhaseShift = thisPhaseShift + tunePhaseShift;
243  if (myDet <= 2) {
244  theHBHEResponse->setPhaseShift(passPhaseShift);
245  } else {
246  theHOResponse->setPhaseShift(passPhaseShift);
247  }
248  }
249 }

References CaloHitResponse::setPhaseShift(), HcalTBSimParameterMap::simParameters(), DetId::subdetId(), theHBHEResponse, theHOResponse, theParameterMap, thisPhaseShift, and tunePhaseShift.

Referenced by initializeEvent().

◆ sortHits()

void HcalTBDigiProducer::sortHits ( const edm::PCaloHitContainer hits)
private

fills the vectors for each subdetector

Definition at line 193 of file HcalTBDigiProducer.cc.

193  {
194  for (edm::PCaloHitContainer::const_iterator hitItr = hits.begin(); hitItr != hits.end(); ++hitItr) {
195  HcalSubdetector subdet = HcalDetId(hitItr->id()).subdet();
196  if (subdet == HcalBarrel || subdet == HcalEndcap) {
197  theHBHEHits.push_back(*hitItr);
198  } else if (subdet == HcalOuter) {
199  theHOHits.push_back(*hitItr);
200  } else {
201  edm::LogError("HcalSim") << "Bad HcalHit subdetector " << subdet;
202  }
203  }
204 }

References HcalBarrel, HcalEndcap, HcalOuter, hfClusterShapes_cfi::hits, theHBHEHits, and theHOHits.

◆ updateGeometry()

void HcalTBDigiProducer::updateGeometry ( )
private

Definition at line 214 of file HcalTBDigiProducer.cc.

214  {
217 
218  // Get cells for HB and HE
219  hbheCells.clear();
221  std::vector<DetId> heCells = theGeometry->getValidDetIds(DetId::Hcal, HcalEndcap);
222  // combine HB & HE
223  hbheCells.insert(hbheCells.end(), heCells.begin(), heCells.end());
224 
225  // Get cells for HO
226  hoCells.clear();
228 
229  edm::LogInfo("HcalSim") << "HcalTBDigiProducer update Geometry with " << hbheCells.size() << " cells in HB/HE and "
230  << hoCells.size() << " cells in HO";
231 
233  LogDebug("HcalSim") << "HcalTBDigiProducer: Set DetID's for HB/HE";
235  LogDebug("HcalSim") << "HcalTBDigiProducer: Set DetID's for HO";
236 }

References CaloGeometry::getValidDetIds(), hbheCells, DetId::Hcal, HcalBarrel, HcalEndcap, HcalOuter, hoCells, LogDebug, CaloTDigitizer< Traits, runHelper >::setDetIds(), CaloHitResponse::setGeometry(), theGeometry, theHBHEDigitizer, theHBHEResponse, theHODigitizer, and theHOResponse.

Referenced by checkGeometry().

Member Data Documentation

◆ conditionsToken_

edm::ESGetToken<HcalDbService, HcalDbRecord> HcalTBDigiProducer::conditionsToken_
private

Definition at line 84 of file HcalTBDigiProducer.h.

Referenced by initializeEvent().

◆ doPhaseShift

bool HcalTBDigiProducer::doPhaseShift
private

Definition at line 97 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and initializeEvent().

◆ ecalTBInfoLabel

std::string HcalTBDigiProducer::ecalTBInfoLabel
private

Definition at line 94 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and initializeEvent().

◆ geometryToken_

edm::ESGetToken<CaloGeometry, CaloGeometryRecord> HcalTBDigiProducer::geometryToken_
private

Definition at line 86 of file HcalTBDigiProducer.h.

Referenced by checkGeometry().

◆ geometryWatcher_

edm::ESWatcher<CaloGeometryRecord> HcalTBDigiProducer::geometryWatcher_
private

Definition at line 87 of file HcalTBDigiProducer.h.

Referenced by checkGeometry().

◆ hbheCells

std::vector<DetId> HcalTBDigiProducer::hbheCells
private

Definition at line 89 of file HcalTBDigiProducer.h.

Referenced by updateGeometry().

◆ hcalTimeSlew_delay_

const HcalTimeSlew* HcalTBDigiProducer::hcalTimeSlew_delay_
private

Definition at line 57 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and initializeEvent().

◆ hcalTimeSlew_delay_token_

edm::ESGetToken<HcalTimeSlew, HcalTimeSlewRecord> HcalTBDigiProducer::hcalTimeSlew_delay_token_
private

Definition at line 85 of file HcalTBDigiProducer.h.

Referenced by initializeEvent().

◆ hoCells

std::vector<DetId> HcalTBDigiProducer::hoCells
private

Definition at line 90 of file HcalTBDigiProducer.h.

Referenced by updateGeometry().

◆ paraMap

HcalSimParameterMap* HcalTBDigiProducer::paraMap
private

Definition at line 65 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer().

◆ randomEngine_

CLHEP::HepRandomEngine* HcalTBDigiProducer::randomEngine_ = nullptr
private

Definition at line 100 of file HcalTBDigiProducer.h.

Referenced by accumulateCaloHits(), finalizeEvent(), and initializeEvent().

◆ theAmplifier

HcalAmplifier* HcalTBDigiProducer::theAmplifier
private

Definition at line 72 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), initializeEvent(), and ~HcalTBDigiProducer().

◆ theCoderFactory

HcalCoderFactory* HcalTBDigiProducer::theCoderFactory
private

Definition at line 73 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), initializeEvent(), and ~HcalTBDigiProducer().

◆ theElectronicsSim

HcalElectronicsSim* HcalTBDigiProducer::theElectronicsSim
private

Definition at line 74 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and ~HcalTBDigiProducer().

◆ theGeometry

const CaloGeometry* HcalTBDigiProducer::theGeometry
private

Definition at line 88 of file HcalTBDigiProducer.h.

Referenced by checkGeometry(), and updateGeometry().

◆ theHBHEDigitizer

HBHEDigitizer* HcalTBDigiProducer::theHBHEDigitizer
private

◆ theHBHEHitFilter

HBHEHitFilter HcalTBDigiProducer::theHBHEHitFilter
private

Definition at line 76 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer().

◆ theHBHEHits

std::vector<PCaloHit> HcalTBDigiProducer::theHBHEHits
private

Definition at line 92 of file HcalTBDigiProducer.h.

Referenced by initializeEvent(), and sortHits().

◆ theHBHEResponse

CaloHitResponse* HcalTBDigiProducer::theHBHEResponse
private

◆ theHcalIntegratedShape

CaloVShape* HcalTBDigiProducer::theHcalIntegratedShape
private

Definition at line 67 of file HcalTBDigiProducer.h.

Referenced by ~HcalTBDigiProducer().

◆ theHcalShape

CaloVShape* HcalTBDigiProducer::theHcalShape
private

Definition at line 66 of file HcalTBDigiProducer.h.

Referenced by ~HcalTBDigiProducer().

◆ theHODigitizer

HODigitizer* HcalTBDigiProducer::theHODigitizer
private

◆ theHOHitFilter

HOHitFilter HcalTBDigiProducer::theHOHitFilter
private

Definition at line 77 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer().

◆ theHOHits

std::vector<PCaloHit> HcalTBDigiProducer::theHOHits
private

Definition at line 92 of file HcalTBDigiProducer.h.

Referenced by initializeEvent(), and sortHits().

◆ theHOResponse

CaloHitResponse* HcalTBDigiProducer::theHOResponse
private

◆ theParameterMap

HcalTBSimParameterMap* HcalTBDigiProducer::theParameterMap
private

Definition at line 64 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), setPhaseShift(), and ~HcalTBDigiProducer().

◆ theTimeSlewSim

HcalTimeSlewSim* HcalTBDigiProducer::theTimeSlewSim
private

Definition at line 79 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and ~HcalTBDigiProducer().

◆ thisPhaseShift

double HcalTBDigiProducer::thisPhaseShift
private

Definition at line 95 of file HcalTBDigiProducer.h.

Referenced by initializeEvent(), and setPhaseShift().

◆ tunePhaseShift

double HcalTBDigiProducer::tunePhaseShift
private

Definition at line 98 of file HcalTBDigiProducer.h.

Referenced by HcalTBDigiProducer(), and setPhaseShift().

CaloTDigitizer::add
void add(const std::vector< PCaloHit > &hits, int bunchCrossing, CLHEP::HepRandomEngine *engine)
Definition: CaloTDigitizer.h:75
edm::ESWatcher::check
bool check(const edm::EventSetup &iSetup)
Definition: ESWatcher.h:57
HcalTBDigiProducer::hoCells
std::vector< DetId > hoCells
Definition: HcalTBDigiProducer.h:90
HcalTBDigiProducer::theElectronicsSim
HcalElectronicsSim * theElectronicsSim
Definition: HcalTBDigiProducer.h:74
PEcalTBInfo::phaseShift
double phaseShift() const
Definition: PEcalTBInfo.h:37
edm::RandomNumberGenerator::getEngine
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
BeamSpotPI::parameters
parameters
Definition: BeamSpotPayloadInspectorHelper.h:30
HcalTBDigiProducer::theHBHEHits
std::vector< PCaloHit > theHBHEHits
Definition: HcalTBDigiProducer.h:92
HcalTBDigiProducer::hcalTimeSlew_delay_token_
edm::ESGetToken< HcalTimeSlew, HcalTimeSlewRecord > hcalTimeSlew_delay_token_
Definition: HcalTBDigiProducer.h:85
edm::ESInputTag
Definition: ESInputTag.h:87
HcalTBSimParameterMap
Definition: HcalTBSimParameterMap.h:8
ecalSimParameterMap_cff.syncPhase
syncPhase
Definition: ecalSimParameterMap_cff.py:10
HcalTBDigiProducer::doPhaseShift
bool doPhaseShift
Definition: HcalTBDigiProducer.h:97
HcalTBDigiProducer::theTimeSlewSim
HcalTimeSlewSim * theTimeSlewSim
Definition: HcalTBDigiProducer.h:79
HcalTBDigiProducer::theParameterMap
HcalTBSimParameterMap * theParameterMap
Definition: HcalTBDigiProducer.h:64
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
HcalTBDigiProducer::theHOHitFilter
HOHitFilter theHOHitFilter
Definition: HcalTBDigiProducer.h:77
HcalTBDigiProducer::theHBHEResponse
CaloHitResponse * theHBHEResponse
Definition: HcalTBDigiProducer.h:69
HcalTBDigiProducer::hcalTimeSlew_delay_
const HcalTimeSlew * hcalTimeSlew_delay_
Definition: HcalTBDigiProducer.h:57
HcalTBDigiProducer::theHOHits
std::vector< PCaloHit > theHOHits
Definition: HcalTBDigiProducer.h:92
DetId::Hcal
Definition: DetId.h:28
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89301
HcalTBDigiProducer::theGeometry
const CaloGeometry * theGeometry
Definition: HcalTBDigiProducer.h:88
CaloTDigitizer::initializeHits
void initializeHits()
Definition: CaloTDigitizer.h:83
edm::SortedCollection
Definition: SortedCollection.h:49
CaloTDigitizer::setDetIds
void setDetIds(const std::vector< DetId > &detIds)
Definition: CaloTDigitizer.h:67
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
HcalTBDigiProducer::tunePhaseShift
double tunePhaseShift
Definition: HcalTBDigiProducer.h:98
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
HcalBarrel
Definition: HcalAssistant.h:33
HODigiCollection
edm::SortedCollection< HODataFrame > HODigiCollection
Definition: HcalDigiCollections.h:21
CaloShapeIntegrator
Definition: CaloShapeIntegrator.h:11
edm::ConsumesCollector::esConsumes
auto esConsumes()
Definition: ConsumesCollector.h:97
edm::Handle
Definition: AssociativeIterator.h:50
HcalCoderFactory
Definition: HcalCoderFactory.h:8
DigiDM_cff.doNoise
doNoise
Definition: DigiDM_cff.py:32
DetId
Definition: DetId.h:17
HcalCoderFactory::setDbService
void setDbService(const HcalDbService *service)
Definition: HcalCoderFactory.h:14
HcalTBDigiProducer::thisPhaseShift
double thisPhaseShift
Definition: HcalTBDigiProducer.h:95
CaloSimParameters
Main class for Parameters in different subdetectors.
Definition: CaloSimParameters.h:14
HcalSimParameterMap
Definition: HcalSimParameterMap.h:10
edm::ConsumesCollector::consumes
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Definition: ConsumesCollector.h:55
HcalOuter
Definition: HcalAssistant.h:35
CaloHitResponse::setPhaseShift
void setPhaseShift(const double &thePhaseShift)
setting the phase shift for asynchronous trigger (e.g. test beams)
Definition: CaloHitResponse.h:108
HcalTBDigiProducer::HODigitizer
CaloTDigitizer< HODigitizerTraits > HODigitizer
Definition: HcalTBDigiProducer.h:62
HcalTBDigiProducer::checkGeometry
void checkGeometry(const edm::EventSetup &eventSetup)
Definition: HcalTBDigiProducer.cc:206
hcalUnsuppressedDigis_cfi.doTimeSlew
doTimeSlew
Definition: hcalUnsuppressedDigis_cfi.py:20
HcalTBDigiProducer::HBHEDigitizer
CaloTDigitizer< HBHEDigitizerTraits > HBHEDigitizer
Definition: HcalTBDigiProducer.h:61
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
HcalTBDigiProducer::theHOResponse
CaloHitResponse * theHOResponse
Definition: HcalTBDigiProducer.h:70
HcalAmplifier::setTimeSlew
void setTimeSlew(const HcalTimeSlew *timeSlew)
Definition: HcalAmplifier.h:38
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:233
CaloHitResponse::setHitFilter
void setHitFilter(const CaloVHitFilter *filter)
Definition: CaloHitResponse.h:70
PEcalTBInfo
Definition: PEcalTBInfo.h:18
HcalTBDigiProducer::theHcalIntegratedShape
CaloVShape * theHcalIntegratedShape
Definition: HcalTBDigiProducer.h:67
HcalShape
shaper for Hcal (not for HF)
Definition: HcalShape.h:15
CaloHitResponse
Creates electronics signals from hits.
Definition: CaloHitResponse.h:33
HcalDetId
Definition: HcalDetId.h:12
edm::Service< edm::RandomNumberGenerator >
HcalTBDigiProducer::theCoderFactory
HcalCoderFactory * theCoderFactory
Definition: HcalTBDigiProducer.h:73
edm::ProducesCollector::produces
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces()
Definition: ProducesCollector.h:52
HcalTBDigiProducer::theHODigitizer
HODigitizer * theHODigitizer
Definition: HcalTBDigiProducer.h:82
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
instance
static PFTauRenderPlugin instance
Definition: PFTauRenderPlugin.cc:70
edm::EventSetup::getData
bool getData(T &iHolder) const
Definition: EventSetup.h:127
HcalSubdetector
HcalSubdetector
Definition: HcalAssistant.h:31
HcalTBDigiProducer::updateGeometry
void updateGeometry()
Definition: HcalTBDigiProducer.cc:214
HcalAmplifier::setTimeSlewSim
void setTimeSlewSim(HcalTimeSlewSim *timeSlewSim)
Definition: HcalAmplifier.h:35
HcalTBDigiProducer::hbheCells
std::vector< DetId > hbheCells
Definition: HcalTBDigiProducer.h:89
HcalDbService
Definition: HcalDbService.h:23
HcalTBDigiProducer::theHcalShape
CaloVShape * theHcalShape
Definition: HcalTBDigiProducer.h:66
submitPVValidationJobs.conditions
list conditions
Definition: submitPVValidationJobs.py:674
eostools.move
def move(src, dest)
Definition: eostools.py:511
CaloGeometry::getValidDetIds
std::vector< DetId > getValidDetIds() const
Get the list of all valid detector ids.
Definition: CaloGeometry.cc:75
HcalEndcap
Definition: HcalAssistant.h:34
HcalTBDigiProducer::geometryWatcher_
edm::ESWatcher< CaloGeometryRecord > geometryWatcher_
Definition: HcalTBDigiProducer.h:87
HcalAmplifier
Definition: HcalAmplifier.h:20
HcalTimeSlewSim
Definition: HcalTimeSlewSim.h:19
HcalElectronicsSim
Definition: HcalElectronicsSim.h:25
HcalTBDigiProducer::setPhaseShift
void setPhaseShift(const DetId &detId)
Definition: HcalTBDigiProducer.cc:238
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
CaloTDigitizer::run
void run(MixCollection< PCaloHit > &, DigiCollection &)
turns hits into digis
Definition: CaloTDigitizer.h:86
HcalTBDigiProducer::conditionsToken_
edm::ESGetToken< HcalDbService, HcalDbRecord > conditionsToken_
Definition: HcalTBDigiProducer.h:84
HcalTBDigiProducer::geometryToken_
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geometryToken_
Definition: HcalTBDigiProducer.h:86
HcalTBSimParameterMap::simParameters
const CaloSimParameters & simParameters(const DetId &id) const override
Definition: HcalTBSimParameterMap.cc:53
HcalCoderFactory::DB
Definition: HcalCoderFactory.h:10
hcalUnsuppressedDigis_cfi.minFCToDelay
minFCToDelay
Definition: hcalUnsuppressedDigis_cfi.py:29
HcalTBDigiProducer::accumulateCaloHits
void accumulateCaloHits(edm::Handle< std::vector< PCaloHit >> const &hits, int bunchCrossing)
Definition: HcalTBDigiProducer.cc:141
HBHEDigiCollection
edm::SortedCollection< HBHEDataFrame > HBHEDigiCollection
Definition: HcalDigiCollections.h:20
HcalTBDigiProducer::ecalTBInfoLabel
std::string ecalTBInfoLabel
Definition: HcalTBDigiProducer.h:94
HcalTBDigiProducer::randomEngine_
CLHEP::HepRandomEngine * randomEngine_
Definition: HcalTBDigiProducer.h:100
HcalTBDigiProducer::theAmplifier
HcalAmplifier * theAmplifier
Definition: HcalTBDigiProducer.h:72
edm::InputTag
Definition: InputTag.h:15
HcalTBDigiProducer::paraMap
HcalSimParameterMap * paraMap
Definition: HcalTBDigiProducer.h:65
CaloHitResponse::setGeometry
void setGeometry(const CaloGeometry *geometry)
geometry needed for time-of-flight
Definition: CaloHitResponse.h:49
HcalTBDigiProducer::theHBHEHitFilter
HBHEHitFilter theHBHEHitFilter
Definition: HcalTBDigiProducer.h:76
HcalTBDigiProducer::theHBHEDigitizer
HBHEDigitizer * theHBHEDigitizer
Definition: HcalTBDigiProducer.h:81
HcalAmplifier::setDbService
void setDbService(const HcalDbService *service)
the Producer will probably update this every event
Definition: HcalAmplifier.cc:35
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37