1 #ifndef CaloSimAlgos_CaloHitResponse_h 2 #define CaloSimAlgos_CaloHitResponse_h 23 class HepRandomEngine;
37 enum { BUNCHSPACE = 25 };
79 void clear() { theAnalogSignalMap.clear(); }
85 virtual CaloSamples makeAnalogSignal(
const PCaloHit &inputHit, CLHEP::HepRandomEngine *)
const;
89 double analogSignalAmplitude(
const DetId &
id,
92 CLHEP::HepRandomEngine *)
const;
98 int nSignals()
const {
return theAnalogSignalMap.size(); }
108 void setPhaseShift(
const double &thePhaseShift) { thePhaseShift_ = thePhaseShift; }
113 return (bunchCrossing >= theMinBunch && bunchCrossing <= theMaxBunch);
void setStorePrecise(bool sp)
void setGeometry(const CaloGeometry *geometry)
geometry needed for time-of-flight
bool withinBunchRange(int bunchCrossing) const
check if crossing is within bunch range:
virtual bool keepBlank() const
Electronic response of the preamp.
void setPECorrection(const CaloVPECorrection *peCorrection)
if you want to correct the photoelectrons
Main class for Parameters in different subdetectors.
const CaloGeometry * theGeometry
void setPhaseShift(const double &thePhaseShift)
setting the phase shift for asynchronous trigger (e.g. test beams)
const CaloVPECorrection * thePECorrection
std::map< DetId, CaloSamples > AnalogSignalMap
virtual void finalizeHits(CLHEP::HepRandomEngine *)
Finalize hits.
void setHitFilter(const CaloVHitFilter *filter)
Creates electronics signals from hits.
virtual void initializeHits()
Initialize hits.
const CaloVHitCorrection * theHitCorrection
AnalogSignalMap theAnalogSignalMap
void add(std::map< std::string, TH1 * > &h, TH1 *hist)
const CaloShapes * theShapes
const CaloVSimParameterMap * theParameterMap
ESHandle< TrackerGeometry > geometry
void setHitCorrection(const CaloVHitCorrection *hitCorrection)
If you want to correct hits, for attenuation or delay, set this.
void clear()
frees up memory
const CaloVHitFilter * theHitFilter
const CaloVShape * theShape
int nSignals() const
number of signals in the current cache
double timeOfFlight(DetId id, const CaloGeometry *geo, bool debug=false)
void setIgnoreGeantTime(bool gt)