CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Private Attributes
HcalSiPMHitResponse Class Reference

#include <HcalSiPMHitResponse.h>

Inheritance diagram for HcalSiPMHitResponse:
CaloHitResponse

Public Types

typedef std::vector< unsigned int > photonTimeHist
 
typedef std::map< DetId,
photonTimeHist
photonTimeMap
 
- Public Types inherited from CaloHitResponse
enum  { BUNCHSPACE =25 }
 
typedef std::map< DetId,
CaloSamples
AnalogSignalMap
 

Public Member Functions

virtual void add (const PCaloHit &hit, CLHEP::HepRandomEngine *) override
 process a single SimHit More...
 
virtual void add (const CaloSamples &signal)
 
virtual void finalizeHits (CLHEP::HepRandomEngine *) override
 Finalize hits. More...
 
 HcalSiPMHitResponse (const CaloVSimParameterMap *parameterMap, const CaloShapes *shapes)
 
virtual void initializeHits ()
 Initialize hits. More...
 
virtual CaloSamples makeBlankSignal (const DetId &detId) const
 
virtual void run (MixCollection< PCaloHit > &hits, CLHEP::HepRandomEngine *) override
 Complete cell digitization. More...
 
virtual ~HcalSiPMHitResponse ()
 
- Public Member Functions inherited from CaloHitResponse
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)
 
 CaloHitResponse (const CaloVSimParameterMap *parameterMap, const CaloShapes *shapes)
 
void clear ()
 frees up memory More...
 
CaloSamplesfindSignal (const DetId &detId)
 users can look for the signal for a given cell More...
 
void initHBHEScale ()
 
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...
 
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 setHBHEScale (std::string &)
 
void setHitCorrection (const CaloVHitCorrection *hitCorrection)
 If you want to correct hits, for attenuation or delay, set this. More...
 
void setHitFilter (const CaloVHitFilter *filter)
 if you want to reject hits, for example, from a certain subdetector, set this More...
 
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...
 
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 Member Functions

static double Y11TimePDF (double t)
 

Protected Types

typedef std::multiset
< PCaloHit,
PCaloHitCompareTimes
SortedHitSet
 

Protected Member Functions

virtual void differentiatePreciseSamples (CaloSamples &samples, double diffNorm=1.0) const
 
double generatePhotonTime (CLHEP::HepRandomEngine *) const
 
virtual CaloSamples makeSiPMSignal (const DetId &id, const PCaloHit &hit, int &integral, CLHEP::HepRandomEngine *) const
 
virtual CaloSamples makeSiPMSignal (DetId const &id, photonTimeHist const &photons, CLHEP::HepRandomEngine *) const
 

Private Attributes

photonTimeMap precisionTimedPhotons
 
float theDiffNorm
 
double theRecoveryTime
 
HcalSiPMtheSiPM
 
HcalTDCParameters theTDCParams
 
int const TIMEMULT
 
float const Y11MAX
 
float const Y11RANGE
 
float const Y11TIMETORISE
 

Additional Inherited Members

- Protected Attributes inherited from CaloHitResponse
bool changeScale
 
float hcal_en_scale [100][72][4]
 
AnalogSignalMap theAnalogSignalMap
 
const CaloGeometrytheGeometry
 
const CaloVHitCorrectiontheHitCorrection
 
const CaloVHitFiltertheHitFilter
 
int theMaxBunch
 
int theMinBunch
 
const CaloVSimParameterMaptheParameterMap
 
const CaloVPECorrectionthePECorrection
 
double thePhaseShift_
 
const CaloVShapetheShape
 
const CaloShapestheShapes
 

Detailed Description

Definition at line 27 of file HcalSiPMHitResponse.h.

Member Typedef Documentation

typedef std::vector<unsigned int> HcalSiPMHitResponse::photonTimeHist

Definition at line 35 of file HcalSiPMHitResponse.h.

Definition at line 36 of file HcalSiPMHitResponse.h.

Definition at line 53 of file HcalSiPMHitResponse.h.

Constructor & Destructor Documentation

HcalSiPMHitResponse::HcalSiPMHitResponse ( const CaloVSimParameterMap parameterMap,
const CaloShapes shapes 
)

Definition at line 20 of file HcalSiPMHitResponse.cc.

HcalSiPMHitResponse::~HcalSiPMHitResponse ( )
virtual

Definition at line 27 of file HcalSiPMHitResponse.cc.

Member Function Documentation

void HcalSiPMHitResponse::add ( const PCaloHit hit,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

process a single SimHit

Reimplemented from CaloHitResponse.

Definition at line 71 of file HcalSiPMHitResponse.cc.

Referenced by counter.Counter::register().

void HcalSiPMHitResponse::add ( const CaloSamples signal)
virtual

Definition at line 61 of file HcalSiPMHitResponse.cc.

Referenced by counter.Counter::register().

void HcalSiPMHitResponse::differentiatePreciseSamples ( CaloSamples samples,
double  diffNorm = 1.0 
) const
protectedvirtual

Definition at line 288 of file HcalSiPMHitResponse.cc.

void HcalSiPMHitResponse::finalizeHits ( CLHEP::HepRandomEngine *  )
overridevirtual

Finalize hits.

Reimplemented from CaloHitResponse.

Definition at line 36 of file HcalSiPMHitResponse.cc.

double HcalSiPMHitResponse::generatePhotonTime ( CLHEP::HepRandomEngine *  engine) const
protected

Definition at line 298 of file HcalSiPMHitResponse.cc.

void HcalSiPMHitResponse::initializeHits ( )
virtual

Initialize hits.

Reimplemented from CaloHitResponse.

Definition at line 32 of file HcalSiPMHitResponse.cc.

CaloSamples HcalSiPMHitResponse::makeBlankSignal ( const DetId detId) const
virtual

Definition at line 159 of file HcalSiPMHitResponse.cc.

CaloSamples HcalSiPMHitResponse::makeSiPMSignal ( const DetId id,
const PCaloHit hit,
int &  integral,
CLHEP::HepRandomEngine *  engine 
) const
protectedvirtual

Definition at line 169 of file HcalSiPMHitResponse.cc.

CaloSamples HcalSiPMHitResponse::makeSiPMSignal ( DetId const &  id,
photonTimeHist const &  photons,
CLHEP::HepRandomEngine *  engine 
) const
protectedvirtual

Definition at line 208 of file HcalSiPMHitResponse.cc.

void HcalSiPMHitResponse::run ( MixCollection< PCaloHit > &  hits,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Complete cell digitization.

Reimplemented from CaloHitResponse.

Definition at line 127 of file HcalSiPMHitResponse.cc.

double HcalSiPMHitResponse::Y11TimePDF ( double  t)
static

Definition at line 307 of file HcalSiPMHitResponse.cc.

Member Data Documentation

photonTimeMap HcalSiPMHitResponse::precisionTimedPhotons
private

Definition at line 72 of file HcalSiPMHitResponse.h.

float HcalSiPMHitResponse::theDiffNorm
private

Definition at line 70 of file HcalSiPMHitResponse.h.

double HcalSiPMHitResponse::theRecoveryTime
private

Definition at line 65 of file HcalSiPMHitResponse.h.

HcalSiPM* HcalSiPMHitResponse::theSiPM
private

Definition at line 64 of file HcalSiPMHitResponse.h.

HcalTDCParameters HcalSiPMHitResponse::theTDCParams
private

Definition at line 73 of file HcalSiPMHitResponse.h.

int const HcalSiPMHitResponse::TIMEMULT
private

Definition at line 66 of file HcalSiPMHitResponse.h.

float const HcalSiPMHitResponse::Y11MAX
private

Definition at line 68 of file HcalSiPMHitResponse.h.

float const HcalSiPMHitResponse::Y11RANGE
private

Definition at line 67 of file HcalSiPMHitResponse.h.

float const HcalSiPMHitResponse::Y11TIMETORISE
private

Definition at line 69 of file HcalSiPMHitResponse.h.