2 #ifndef HcalSimAlgos_HcalSiPMHitResponse_h
3 #define HcalSimAlgos_HcalSiPMHitResponse_h
13 #include "CLHEP/Random/RandFlat.h"
53 typedef std::multiset <PCaloHit, PCaloHitCompareTimes>
SortedHitSet;
59 double diffNorm = 1.0)
const;
79 #endif //HcalSimAlgos_HcalSiPMHitResponse_h
virtual void initializeHits()
Initialize hits.
A general implementation for the response of a SiPM.
std::map< DetId, photonTimeHist > photonTimeMap
bool operator()(const PCaloHit *a, const PCaloHit *b) const
std::multiset< PCaloHit, PCaloHitCompareTimes > SortedHitSet
static double Y11TimePDF(double t)
CLHEP::RandFlat * theRndFlat
Creates electronics signals from hits.
virtual void differentiatePreciseSamples(CaloSamples &samples, double diffNorm=1.0) const
double generatePhotonTime() const
Integral< F, X >::type integral(const F &f)
HcalTDCParameters theTDCParams
std::vector< unsigned int > photonTimeHist
virtual CaloSamples makeBlankSignal(const DetId &detId) const
float const Y11TIMETORISE
virtual void setRandomEngine(CLHEP::HepRandomEngine &engine)
HcalSiPMHitResponse(const CaloVSimParameterMap *parameterMap, const CaloShapes *shapes)
virtual void run(MixCollection< PCaloHit > &hits)
Complete cell digitization.
virtual void finalizeHits()
Finalize hits.
virtual void add(const PCaloHit &hit)
process a single SimHit
photonTimeMap precisionTimedPhotons
virtual ~HcalSiPMHitResponse()
virtual CaloSamples makeSiPMSignal(const DetId &id, const PCaloHit &hit, int &integral) const