CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Attributes | Protected Attributes
CaloHitResponse Class Reference

Creates electronics signals from hits. More...

#include <CaloHitResponse.h>

Inheritance diagram for CaloHitResponse:
HcalSiPMHitResponse

Public Types

enum  { BUNCHSPACE = 25 }
 
typedef std::map< DetId, CaloSamplesAnalogSignalMap
 

Public Member Functions

virtual void add (const PCaloHit &hit, CLHEP::HepRandomEngine *)
 process a single SimHit More...
 
virtual void add (const CaloSamples &signal)
 add a signal, in units of pe More...
 
void addHit (const PCaloHit *hit, CaloSamples &frame) const
 adds the amplitude for a single hit to the frame More...
 
double analogSignalAmplitude (const DetId &id, float energy, const CaloSimParameters &parameters, CLHEP::HepRandomEngine *) const
 
 CaloHitResponse (const CaloVSimParameterMap *parameterMap, const CaloVShape *shape, bool PreMix1=false, bool HighFidelity=false)
 
 CaloHitResponse (const CaloVSimParameterMap *parameterMap, const CaloShapes *shapes, bool PreMix1=false, bool HighFidelity=false)
 
void clear ()
 frees up memory More...
 
virtual void finalizeHits (CLHEP::HepRandomEngine *)
 Finalize hits. More...
 
CaloSamplesfindSignal (const DetId &detId)
 users can look for the signal for a given cell More...
 
int getReadoutFrameSize (const DetId &id) const
 
virtual void initializeHits ()
 Initialize hits. More...
 
virtual bool keepBlank () const
 
virtual CaloSamples makeAnalogSignal (const PCaloHit &inputHit, CLHEP::HepRandomEngine *) const
 creates the signal corresponding to this hit More...
 
CaloSamples makeBlankSignal (const DetId &detId) const
 creates an empty signal for this DetId More...
 
int nSignals () const
 number of signals in the current cache More...
 
virtual void run (const MixCollection< PCaloHit > &hits, CLHEP::HepRandomEngine *)
 Complete cell digitization. More...
 
void setBunchRange (int minBunch, int maxBunch)
 tells it which pileup bunches to do More...
 
void setGeometry (const CaloGeometry *geometry)
 geometry needed for time-of-flight More...
 
void setHitCorrection (const CaloVHitCorrection *hitCorrection)
 If you want to correct hits, for attenuation or delay, set this. More...
 
void setHitFilter (const CaloVHitFilter *filter)
 
void setIgnoreGeantTime (bool gt)
 
void setPECorrection (const CaloVPECorrection *peCorrection)
 if you want to correct the photoelectrons More...
 
void setPhaseShift (const double &thePhaseShift)
 setting the phase shift for asynchronous trigger (e.g. test beams) More...
 
void setStorePrecise (bool sp)
 
double timeOfFlight (const DetId &detId) const
 
bool withinBunchRange (int bunchCrossing) const
 check if crossing is within bunch range: More...
 
virtual ~CaloHitResponse ()
 doesn't delete the pointers passed in More...
 

Static Public Attributes

static constexpr double dt = 0.5
 
static constexpr int invdt = 2
 

Protected Attributes

bool highFidelityPreMix
 
bool ignoreTime
 
bool preMixDigis
 
bool storePrecise
 
AnalogSignalMap theAnalogSignalMap
 
const CaloGeometrytheGeometry
 
const CaloVHitCorrectiontheHitCorrection
 
const CaloVHitFiltertheHitFilter
 
int theMaxBunch
 
int theMinBunch
 
const CaloVSimParameterMaptheParameterMap
 
const CaloVPECorrectionthePECorrection
 
double thePhaseShift_
 
const CaloVShapetheShape
 
const CaloShapestheShapes
 

Detailed Description

Creates electronics signals from hits.

Definition at line 33 of file CaloHitResponse.h.

Member Typedef Documentation

◆ AnalogSignalMap

Definition at line 35 of file CaloHitResponse.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
BUNCHSPACE 

Definition at line 37 of file CaloHitResponse.h.

Constructor & Destructor Documentation

◆ CaloHitResponse() [1/2]

CaloHitResponse::CaloHitResponse ( const CaloVSimParameterMap parameterMap,
const CaloVShape shape,
bool  PreMix1 = false,
bool  HighFidelity = false 
)

Definition at line 21 of file CaloHitResponse.cc.

26  theParameterMap(parametersMap),
27  theShapes(nullptr),
28  theShape(shape),
29  theHitCorrection(nullptr),
30  thePECorrection(nullptr),
31  theHitFilter(nullptr),
32  theGeometry(nullptr),
33  theMinBunch(-10),
34  theMaxBunch(10),
35  thePhaseShift_(1.),
36  storePrecise(HighFidelity),
37  preMixDigis(PreMix1),
38  highFidelityPreMix(HighFidelity),
39  ignoreTime(false) {}
const CaloGeometry * theGeometry
const CaloVPECorrection * thePECorrection
const CaloVHitCorrection * theHitCorrection
AnalogSignalMap theAnalogSignalMap
const CaloShapes * theShapes
const CaloVSimParameterMap * theParameterMap
const CaloVHitFilter * theHitFilter
const CaloVShape * theShape

◆ CaloHitResponse() [2/2]

CaloHitResponse::CaloHitResponse ( const CaloVSimParameterMap parameterMap,
const CaloShapes shapes,
bool  PreMix1 = false,
bool  HighFidelity = false 
)

Definition at line 41 of file CaloHitResponse.cc.

46  theParameterMap(parametersMap),
47  theShapes(shapes),
48  theShape(nullptr),
49  theHitCorrection(nullptr),
50  thePECorrection(nullptr),
51  theHitFilter(nullptr),
52  theGeometry(nullptr),
53  theMinBunch(-10),
54  theMaxBunch(10),
55  thePhaseShift_(1.),
56  storePrecise(HighFidelity),
57  preMixDigis(PreMix1),
58  highFidelityPreMix(HighFidelity),
59  ignoreTime(false) {}
const CaloGeometry * theGeometry
const CaloVPECorrection * thePECorrection
const CaloVHitCorrection * theHitCorrection
AnalogSignalMap theAnalogSignalMap
const CaloShapes * theShapes
const CaloVSimParameterMap * theParameterMap
const CaloVHitFilter * theHitFilter
const CaloVShape * theShape

◆ ~CaloHitResponse()

CaloHitResponse::~CaloHitResponse ( )
virtual

doesn't delete the pointers passed in

Definition at line 61 of file CaloHitResponse.cc.

61 {}

Member Function Documentation

◆ add() [1/2]

void CaloHitResponse::add ( const PCaloHit hit,
CLHEP::HepRandomEngine *  engine 
)
virtual

process a single SimHit

Reimplemented in HcalSiPMHitResponse.

Definition at line 87 of file CaloHitResponse.cc.

References CaloVHitFilter::accepts(), mps_fire::i, edm::isNotFinite(), runTheMatrix::keep, keepBlank(), LogDebug, makeAnalogSignal(), CaloSamples::size(), findQualityFiles::size, and theHitFilter.

Referenced by HcalSiPMHitResponse::add(), CaloTDigitizer< Traits, runHelper >::add(), CaloTDigitizer< Traits, runHelper >::addNoiseSignals(), HcalSiPMHitResponse::finalizeHits(), counter.Counter::register(), and run().

87  {
88  // check the hit time makes sense
89  if (edm::isNotFinite(hit.time())) {
90  return;
91  }
92 
93  // maybe it's not from this subdetector
94  if (theHitFilter == nullptr || theHitFilter->accepts(hit)) {
95  LogDebug("CaloHitResponse") << hit;
96  CaloSamples signal(makeAnalogSignal(hit, engine));
97  bool keep(keepBlank()); // here we check for blank signal if not keeping them
98  if (!keep) {
99  const unsigned int size(signal.size());
100  if (0 != size) {
101  for (unsigned int i(0); i != size; ++i) {
102  keep = keep || signal[i] > 1.e-7;
103  }
104  }
105  }
106 
107  if (keep)
108  add(signal);
109  }
110 }
size
Write out results.
constexpr bool isNotFinite(T x)
Definition: isFinite.h:9
virtual bool keepBlank() const
virtual bool accepts(const PCaloHit &hit) const =0
virtual CaloSamples makeAnalogSignal(const PCaloHit &inputHit, CLHEP::HepRandomEngine *) const
creates the signal corresponding to this hit
virtual void add(const PCaloHit &hit, CLHEP::HepRandomEngine *)
process a single SimHit
const CaloVHitFilter * theHitFilter
#define LogDebug(id)

◆ add() [2/2]

void CaloHitResponse::add ( const CaloSamples signal)
virtual

add a signal, in units of pe

Reimplemented in HcalSiPMHitResponse.

Definition at line 112 of file CaloHitResponse.cc.

References findSignal(), CaloSamples::id(), triggerObjects_cff::id, and theAnalogSignalMap.

Referenced by counter.Counter::register().

112  {
113  DetId id(signal.id());
114  CaloSamples *oldSignal = findSignal(id);
115  if (oldSignal == nullptr) {
116  theAnalogSignalMap[id] = signal;
117 
118  } else {
119  (*oldSignal) += signal;
120  }
121 }
DetId id() const
get the (generic) id
Definition: CaloSamples.h:21
AnalogSignalMap theAnalogSignalMap
Definition: DetId.h:17
CaloSamples * findSignal(const DetId &detId)
users can look for the signal for a given cell

◆ addHit()

void CaloHitResponse::addHit ( const PCaloHit hit,
CaloSamples frame 
) const

adds the amplitude for a single hit to the frame

◆ analogSignalAmplitude()

double CaloHitResponse::analogSignalAmplitude ( const DetId id,
float  energy,
const CaloSimParameters parameters,
CLHEP::HepRandomEngine *  engine 
) const

finds the amplitude contribution from this hit, applying photostatistics, if needed. Results are in photoelectrons

Definition at line 168 of file CaloHitResponse.cc.

References CaloVPECorrection::correctPE(), HCALHighEnergyHPDFilter_cfi::energy, and thePECorrection.

Referenced by HcalSiPMHitResponse::add(), and makeAnalogSignal().

171  {
172  // OK, the "energy" in the hit could be a real energy, deposited energy,
173  // or pe count. This factor converts to photoelectrons
174  // GMA Smeared in photon production it self
175  double npe = energy * parameters.simHitToPhotoelectrons(detId);
176  // do we need to doPoisson statistics for the photoelectrons?
177  if (parameters.doPhotostatistics()) {
178  npe = CLHEP::RandPoissonQ::shoot(engine, npe);
179  }
180  if (thePECorrection)
181  npe = thePECorrection->correctPE(detId, npe, engine);
182  return npe;
183 }
virtual double correctPE(const DetId &detId, double npe, CLHEP::HepRandomEngine *) const =0
const CaloVPECorrection * thePECorrection

◆ clear()

void CaloHitResponse::clear ( void  )
inline

frees up memory

Definition at line 87 of file CaloHitResponse.h.

References theAnalogSignalMap.

Referenced by CaloTDigitizer< Traits, runHelper >::run().

87 { theAnalogSignalMap.clear(); }
AnalogSignalMap theAnalogSignalMap

◆ finalizeHits()

void CaloHitResponse::finalizeHits ( CLHEP::HepRandomEngine *  )
virtual

Finalize hits.

Reimplemented in HcalSiPMHitResponse.

Definition at line 68 of file CaloHitResponse.cc.

References highFidelityPreMix, makeBlankSignal(), preMixDigis, mps_fire::result, and theAnalogSignalMap.

Referenced by CaloTDigitizer< Traits, runHelper >::run().

68  {
69  // Convert any remaining HighFidelityPreMix DIGIs
70  if (!(preMixDigis and highFidelityPreMix)) {
71  for (AnalogSignalMap::iterator itr = theAnalogSignalMap.begin(); itr != theAnalogSignalMap.end(); ++itr) {
72  CaloSamples result(makeBlankSignal(itr->first));
73  result += itr->second;
74  itr->second = result;
75  }
76  }
77 }
AnalogSignalMap theAnalogSignalMap
CaloSamples makeBlankSignal(const DetId &detId) const
creates an empty signal for this DetId

◆ findSignal()

CaloSamples * CaloHitResponse::findSignal ( const DetId detId)

users can look for the signal for a given cell

Definition at line 185 of file CaloHitResponse.cc.

References mps_fire::result, and theAnalogSignalMap.

Referenced by add(), and CaloTDigitizer< Traits, runHelper >::run().

185  {
186  CaloSamples *result = nullptr;
187  AnalogSignalMap::iterator signalItr = theAnalogSignalMap.find(detId);
188  if (signalItr == theAnalogSignalMap.end()) {
189  result = nullptr;
190  } else {
191  result = &(signalItr->second);
192  }
193  return result;
194 }
AnalogSignalMap theAnalogSignalMap

◆ getReadoutFrameSize()

int CaloHitResponse::getReadoutFrameSize ( const DetId id) const

Definition at line 196 of file CaloHitResponse.cc.

References BUNCHSPACE, highFidelityPreMix, invdt, preMixDigis, hcalSimParameters_cfi::readoutFrameSize, CaloVSimParameterMap::simParameters(), and theParameterMap.

Referenced by makeBlankSignal().

196  {
198  int readoutFrameSize = parameters.readoutFrameSize();
200  //preserve fidelity of time info
202  }
203  return readoutFrameSize;
204 }
static constexpr int invdt
Main class for Parameters in different subdetectors.
virtual const CaloSimParameters & simParameters(const DetId &id) const =0
const CaloVSimParameterMap * theParameterMap

◆ initializeHits()

virtual void CaloHitResponse::initializeHits ( )
inlinevirtual

Initialize hits.

Reimplemented in HcalSiPMHitResponse.

Definition at line 62 of file CaloHitResponse.h.

Referenced by CaloTDigitizer< Traits, runHelper >::initializeHits().

62 {}

◆ keepBlank()

virtual bool CaloHitResponse::keepBlank ( ) const
inlinevirtual

Definition at line 59 of file CaloHitResponse.h.

Referenced by add(), and HcalSiPMHitResponse::finalizeHits().

59 { return true; }

◆ makeAnalogSignal()

CaloSamples CaloHitResponse::makeAnalogSignal ( const PCaloHit inputHit,
CLHEP::HepRandomEngine *  engine 
) const
virtual

creates the signal corresponding to this hit

Definition at line 123 of file CaloHitResponse.cc.

References analogSignalAmplitude(), newFWLiteAna::bin, BUNCHSPACE, CaloVHitCorrection::delay(), dt, highFidelityPreMix, hit::id, ignoreTime, invdt, makeBlankSignal(), preMixDigis, mps_fire::result, CaloShapes::shape(), CaloVSimParameterMap::simParameters(), storePrecise, theHitCorrection, theParameterMap, thePhaseShift_, theShape, theShapes, protons_cff::time, timeOfFlight(), CaloVShape::timeToRise(), and tzero.

Referenced by add().

123  {
124  DetId detId(hit.id());
126  double signal = analogSignalAmplitude(detId, hit.energy(), parameters, engine);
127 
128  double time = hit.time();
129  double tof = timeOfFlight(detId);
130  if (ignoreTime)
131  time = tof;
132  if (theHitCorrection != nullptr) {
133  time += theHitCorrection->delay(hit, engine);
134  }
135  double jitter = time - tof;
136 
137  const CaloVShape *shape = theShape;
138  if (!shape) {
139  shape = theShapes->shape(detId, storePrecise);
140  }
141  // assume bins count from zero, go for center of bin
142  const double tzero = (shape->timeToRise() + parameters.timePhase() - jitter -
143  BUNCHSPACE * (parameters.binOfMaximum() - thePhaseShift_));
144  double binTime = tzero;
145 
147 
148  if (storePrecise) {
149  result.resetPrecise();
150  int sampleBin(0);
151  // use 0.5ns binning for precise sample
152  for (int bin = 0; bin < result.preciseSize(); bin++) {
153  sampleBin = (preMixDigis and highFidelityPreMix) ? bin : bin / (BUNCHSPACE * invdt);
154  double pulseBit = (*shape)(binTime)*signal * dt;
155  result[sampleBin] += pulseBit;
156  result.preciseAtMod(bin) += pulseBit;
157  binTime += dt;
158  }
159  } else {
160  for (int bin = 0; bin < result.size(); bin++) {
161  result[bin] += (*shape)(binTime)*signal;
162  binTime += BUNCHSPACE;
163  }
164  }
165  return result;
166 }
Electronic response of the preamp.
Definition: CaloVShape.h:11
static constexpr int invdt
Main class for Parameters in different subdetectors.
double analogSignalAmplitude(const DetId &id, float energy, const CaloSimParameters &parameters, CLHEP::HepRandomEngine *) const
virtual const CaloVShape * shape(const DetId &detId, bool precise=false) const
Definition: CaloShapes.h:14
virtual double timeToRise() const =0
virtual const CaloSimParameters & simParameters(const DetId &id) const =0
const CaloVHitCorrection * theHitCorrection
virtual double delay(const PCaloHit &hit, CLHEP::HepRandomEngine *) const =0
unsigned int id
Definition: DetId.h:17
const CaloShapes * theShapes
const CaloVSimParameterMap * theParameterMap
double timeOfFlight(const DetId &detId) const
static constexpr double dt
static const double tzero[3]
const CaloVShape * theShape
CaloSamples makeBlankSignal(const DetId &detId) const
creates an empty signal for this DetId

◆ makeBlankSignal()

CaloSamples CaloHitResponse::makeBlankSignal ( const DetId detId) const

creates an empty signal for this DetId

Definition at line 206 of file CaloHitResponse.cc.

References BUNCHSPACE, dt, getReadoutFrameSize(), invdt, hcalSimParameters_cfi::readoutFrameSize, mps_fire::result, CaloVSimParameterMap::simParameters(), storePrecise, and theParameterMap.

Referenced by finalizeHits(), makeAnalogSignal(), and CaloTDigitizer< Traits, runHelper >::run().

206  {
209  int preciseSize(storePrecise ? parameters.readoutFrameSize() * BUNCHSPACE * invdt : 0);
210  CaloSamples result(detId, readoutFrameSize, preciseSize);
211  result.setPresamples(parameters.binOfMaximum() - 1);
212  if (storePrecise) {
213  result.setPreciseSize(preciseSize);
214  result.setPrecise(result.presamples() * BUNCHSPACE * invdt, dt);
215  }
216  return result;
217 }
static constexpr int invdt
Main class for Parameters in different subdetectors.
int getReadoutFrameSize(const DetId &id) const
virtual const CaloSimParameters & simParameters(const DetId &id) const =0
const CaloVSimParameterMap * theParameterMap
static constexpr double dt

◆ nSignals()

int CaloHitResponse::nSignals ( ) const
inline

number of signals in the current cache

Definition at line 106 of file CaloHitResponse.h.

References theAnalogSignalMap.

Referenced by CaloTDigitizer< Traits, runHelper >::run().

106 { return theAnalogSignalMap.size(); }
AnalogSignalMap theAnalogSignalMap

◆ run()

void CaloHitResponse::run ( const MixCollection< PCaloHit > &  hits,
CLHEP::HepRandomEngine *  engine 
)
virtual

Complete cell digitization.

Definition at line 79 of file CaloHitResponse.cc.

References add(), hfClusterShapes_cfi::hits, and withinBunchRange().

79  {
80  for (MixCollection<PCaloHit>::MixItr hitItr = hits.begin(); hitItr != hits.end(); ++hitItr) {
81  if (withinBunchRange(hitItr.bunch())) {
82  add(*hitItr, engine);
83  } // loop over hits
84  }
85 }
bool withinBunchRange(int bunchCrossing) const
check if crossing is within bunch range:
virtual void add(const PCaloHit &hit, CLHEP::HepRandomEngine *)
process a single SimHit

◆ setBunchRange()

void CaloHitResponse::setBunchRange ( int  minBunch,
int  maxBunch 
)

tells it which pileup bunches to do

Definition at line 63 of file CaloHitResponse.cc.

References MixingModule_cfi::maxBunch, MixingModule_cfi::minBunch, theMaxBunch, and theMinBunch.

◆ setGeometry()

void CaloHitResponse::setGeometry ( const CaloGeometry geometry)
inline

geometry needed for time-of-flight

Definition at line 57 of file CaloHitResponse.h.

References relativeConstraints::geometry, and theGeometry.

Referenced by CastorDigiProducer::checkGeometry(), and HcalTBDigiProducer::updateGeometry().

◆ setHitCorrection()

void CaloHitResponse::setHitCorrection ( const CaloVHitCorrection hitCorrection)
inline

If you want to correct hits, for attenuation or delay, set this.

Definition at line 81 of file CaloHitResponse.h.

References theHitCorrection.

Referenced by CastorDigiProducer::CastorDigiProducer().

81 { theHitCorrection = hitCorrection; }
const CaloVHitCorrection * theHitCorrection

◆ setHitFilter()

void CaloHitResponse::setHitFilter ( const CaloVHitFilter filter)
inline

if you want to reject hits, for example, from a certain subdetector, set this

Definition at line 78 of file CaloHitResponse.h.

References ALCARECOTkAlBeamHalo_cff::filter, and theHitFilter.

Referenced by CastorDigiProducer::CastorDigiProducer(), and HcalTBDigiProducer::HcalTBDigiProducer().

◆ setIgnoreGeantTime()

void CaloHitResponse::setIgnoreGeantTime ( bool  gt)
inline

◆ setPECorrection()

void CaloHitResponse::setPECorrection ( const CaloVPECorrection peCorrection)
inline

if you want to correct the photoelectrons

Definition at line 84 of file CaloHitResponse.h.

References thePECorrection.

84 { thePECorrection = peCorrection; }
const CaloVPECorrection * thePECorrection

◆ setPhaseShift()

void CaloHitResponse::setPhaseShift ( const double &  thePhaseShift)
inline

setting the phase shift for asynchronous trigger (e.g. test beams)

Definition at line 118 of file CaloHitResponse.h.

References thePhaseShift_.

Referenced by HcalTBDigiProducer::setPhaseShift().

118 { thePhaseShift_ = thePhaseShift; }

◆ setStorePrecise()

void CaloHitResponse::setStorePrecise ( bool  sp)
inline

Definition at line 126 of file CaloHitResponse.h.

References storePrecise.

Referenced by CaloTDigitizer< Traits, runHelper >::run().

126 { storePrecise = sp; }

◆ timeOfFlight()

double CaloHitResponse::timeOfFlight ( const DetId detId) const

time-of-flight, in ns, to get to this cell returns 0 if no geometry has been set

Definition at line 219 of file CaloHitResponse.cc.

References HLT_2022v12_cff::distance, CaloSubdetectorGeometry::getGeometry(), CaloGeometry::getSubdetectorGeometry(), DetId::rawId(), mps_fire::result, and theGeometry.

Referenced by HcalSiPMHitResponse::add(), and makeAnalogSignal().

219  {
220  // not going to assume there's one of these per subdetector.
221  // Take the whole CaloGeometry and find the right subdet
222  double result = 0.;
223  if (theGeometry == nullptr) {
224  edm::LogWarning("CaloHitResponse") << "No Calo Geometry set, so no time of flight correction";
225  } else {
226  auto cellGeometry = theGeometry->getSubdetectorGeometry(detId)->getGeometry(detId);
227  if (cellGeometry == nullptr) {
228  edm::LogWarning("CaloHitResponse") << "No Calo cell found for ID" << detId.rawId()
229  << " so no time-of-flight subtraction will be done";
230  } else {
231  double distance = cellGeometry->getPosition().mag();
232  result = distance * cm / c_light; // Units of c_light: mm/ns
233  }
234  }
235  return result;
236 }
const CaloGeometry * theGeometry
virtual std::shared_ptr< const CaloCellGeometry > getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
Log< level::Warning, false > LogWarning
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34

◆ withinBunchRange()

bool CaloHitResponse::withinBunchRange ( int  bunchCrossing) const
inline

check if crossing is within bunch range:

Definition at line 122 of file CaloHitResponse.h.

References theMaxBunch, and theMinBunch.

Referenced by CaloTDigitizer< Traits, runHelper >::add(), and run().

122  {
123  return (bunchCrossing >= theMinBunch && bunchCrossing <= theMaxBunch);
124  }

Member Data Documentation

◆ dt

constexpr double CaloHitResponse::dt = 0.5
static

Definition at line 38 of file CaloHitResponse.h.

Referenced by makeAnalogSignal(), and makeBlankSignal().

◆ highFidelityPreMix

bool CaloHitResponse::highFidelityPreMix
protected

Definition at line 148 of file CaloHitResponse.h.

Referenced by finalizeHits(), getReadoutFrameSize(), and makeAnalogSignal().

◆ ignoreTime

bool CaloHitResponse::ignoreTime
protected

◆ invdt

constexpr int CaloHitResponse::invdt = 2
static

Definition at line 39 of file CaloHitResponse.h.

Referenced by getReadoutFrameSize(), makeAnalogSignal(), and makeBlankSignal().

◆ preMixDigis

bool CaloHitResponse::preMixDigis
protected

Definition at line 147 of file CaloHitResponse.h.

Referenced by finalizeHits(), getReadoutFrameSize(), and makeAnalogSignal().

◆ storePrecise

bool CaloHitResponse::storePrecise
protected

Definition at line 146 of file CaloHitResponse.h.

Referenced by makeAnalogSignal(), makeBlankSignal(), and setStorePrecise().

◆ theAnalogSignalMap

AnalogSignalMap CaloHitResponse::theAnalogSignalMap
protected

Definition at line 131 of file CaloHitResponse.h.

Referenced by add(), clear(), finalizeHits(), findSignal(), and nSignals().

◆ theGeometry

const CaloGeometry* CaloHitResponse::theGeometry
protected

Definition at line 140 of file CaloHitResponse.h.

Referenced by setGeometry(), and timeOfFlight().

◆ theHitCorrection

const CaloVHitCorrection* CaloHitResponse::theHitCorrection
protected

Definition at line 136 of file CaloHitResponse.h.

Referenced by makeAnalogSignal(), and setHitCorrection().

◆ theHitFilter

const CaloVHitFilter* CaloHitResponse::theHitFilter
protected

Definition at line 138 of file CaloHitResponse.h.

Referenced by HcalSiPMHitResponse::add(), add(), and setHitFilter().

◆ theMaxBunch

int CaloHitResponse::theMaxBunch
protected

Definition at line 143 of file CaloHitResponse.h.

Referenced by setBunchRange(), and withinBunchRange().

◆ theMinBunch

int CaloHitResponse::theMinBunch
protected

Definition at line 142 of file CaloHitResponse.h.

Referenced by setBunchRange(), and withinBunchRange().

◆ theParameterMap

const CaloVSimParameterMap* CaloHitResponse::theParameterMap
protected

◆ thePECorrection

const CaloVPECorrection* CaloHitResponse::thePECorrection
protected

Definition at line 137 of file CaloHitResponse.h.

Referenced by analogSignalAmplitude(), and setPECorrection().

◆ thePhaseShift_

double CaloHitResponse::thePhaseShift_
protected

Definition at line 145 of file CaloHitResponse.h.

Referenced by HcalSiPMHitResponse::add(), makeAnalogSignal(), and setPhaseShift().

◆ theShape

const CaloVShape* CaloHitResponse::theShape
protected

Definition at line 135 of file CaloHitResponse.h.

Referenced by makeAnalogSignal().

◆ theShapes

const CaloShapes* CaloHitResponse::theShapes
protected

Definition at line 134 of file CaloHitResponse.h.

Referenced by makeAnalogSignal().