CMS 3D CMS Logo

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

#include <ESHitResponse.h>

Inheritance diagram for ESHitResponse:
EcalHitResponse

Public Types

typedef CaloTSamples< float, 3 > ESSamples
 
- Public Types inherited from EcalHitResponse
typedef std::unordered_map< uint32_t, double > CalibCache
 
typedef CaloTSamplesBase< float > EcalSamples
 
typedef std::vector< unsigned int > VecInd
 

Public Member Functions

 ESHitResponse (const CaloVSimParameterMap *parameterMap, const CaloVShape *shape)
 
virtual bool keepBlank () const
 
EcalSamplesoperator[] (unsigned int i) override
 
const EcalSamplesoperator[] (unsigned int i) const override
 
unsigned int samplesSize () const override
 
 ~ESHitResponse () override
 
- Public Member Functions inherited from EcalHitResponse
void add (const EcalSamples *pSam)
 
virtual void add (const PCaloHit &hit, CLHEP::HepRandomEngine *)
 
virtual void add (const CaloSamples &hit)
 
 EcalHitResponse (const CaloVSimParameterMap *parameterMap, const CaloVShape *shape)
 
virtual void finalizeHits ()
 
const EcalSamplesfindDetId (const DetId &detId) const
 
virtual void initializeHits ()
 
virtual void run (MixCollection< PCaloHit > &hits, CLHEP::HepRandomEngine *)
 
void setBunchRange (int minBunch, int maxBunch)
 
void setEventTime (const edm::TimeValue_t &iTime)
 
void setGeometry (const CaloSubdetectorGeometry *geometry)
 
void setHitCorrection (const CaloVHitCorrection *hitCorrection)
 
void setHitFilter (const CaloVHitFilter *filter)
 
void setLaserConstants (const EcalLaserDbService *laser, bool &useLCcorrection)
 
void setPECorrection (const CaloVPECorrection *peCorrection)
 
void setPhaseShift (double phaseShift)
 
bool withinBunchRange (int bunchCrossing) const
 
virtual ~EcalHitResponse ()
 

Protected Member Functions

unsigned int samplesSizeAll () const override
 
EcalSamplesvSam (unsigned int i) override
 
EcalSamplesvSamAll (unsigned int i) override
 
const EcalSamplesvSamAll (unsigned int i) const override
 
- Protected Member Functions inherited from EcalHitResponse
double analogSignalAmplitude (const DetId &id, double energy, CLHEP::HepRandomEngine *)
 
void blankOutUsedSamples ()
 
double findLaserConstant (const DetId &detId) const
 
EcalSamplesfindSignal (const DetId &detId)
 
const CaloSubdetectorGeometrygeometry () const
 
const CaloVHitFilterhitFilter () const
 
VecIndindex ()
 
const VecIndindex () const
 
int maxBunch () const
 
int minBunch () const
 
const CaloSimParametersparams (const DetId &detId) const
 
double phaseShift () const
 
virtual void putAnalogSignal (const PCaloHit &inputHit, CLHEP::HepRandomEngine *)
 
const CaloVShapeshape () const
 
double timeOfFlight (const DetId &detId) const
 

Private Attributes

std::vector< ESSamplesm_vSam
 

Additional Inherited Members

- Public Attributes inherited from EcalHitResponse
const float kSamplePeriod = ecalPh1::Samp_Period
 
- Protected Attributes inherited from EcalHitResponse
const CaloSubdetectorGeometrym_geometry
 
const CaloVHitCorrectionm_hitCorrection
 
const CaloVHitFilterm_hitFilter
 
const EcalLaserDbServicem_lasercals
 
const CaloVSimParameterMapm_parameterMap
 
const CaloVPECorrectionm_PECorrection
 
const CaloVShapem_shape
 

Detailed Description

Definition at line 7 of file ESHitResponse.h.

Member Typedef Documentation

◆ ESSamples

Definition at line 9 of file ESHitResponse.h.

Constructor & Destructor Documentation

◆ ESHitResponse()

ESHitResponse::ESHitResponse ( const CaloVSimParameterMap parameterMap,
const CaloVShape shape 
)

Definition at line 9 of file ESHitResponse.cc.

References cms::cuda::assert(), hcalRecHitTable_cff::detId, ESDetId::detIdFromDenseIndex(), mps_fire::i, ESDetId::kSizeForDenseIndexing, m_vSam, EcalHitResponse::shape(), CaloVSimParameterMap::simParameters(), and findQualityFiles::size.

10  : EcalHitResponse(parameterMap, shape) {
11  assert(nullptr != parameterMap);
12  assert(nullptr != shape);
14  const CaloSimParameters& parameters(parameterMap->simParameters(detId));
15 
16  const unsigned int rSize(parameters.readoutFrameSize());
17  const unsigned int nPre(parameters.binOfMaximum() - 1);
18 
19  const unsigned int size(ESDetId::kSizeForDenseIndexing);
20 
21  m_vSam.reserve(size);
22 
23  for (unsigned int i(0); i != size; ++i) {
24  m_vSam.emplace_back(CaloGenericDetId(detId.det(), detId.subdetId(), i), rSize, nPre);
25  }
26 }
size
Write out results.
assert(be >=bs)
static constexpr int kSizeForDenseIndexing
Definition: ESDetId.h:102
Main class for Parameters in different subdetectors.
EcalHitResponse(const CaloVSimParameterMap *parameterMap, const CaloVShape *shape)
virtual const CaloSimParameters & simParameters(const DetId &id) const =0
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33
static ESDetId detIdFromDenseIndex(uint32_t din)
Definition: ESDetId.h:55
const CaloVShape * shape() const

◆ ~ESHitResponse()

ESHitResponse::~ESHitResponse ( )
override

Definition at line 28 of file ESHitResponse.cc.

28 {}

Member Function Documentation

◆ keepBlank()

virtual bool ESHitResponse::keepBlank ( ) const
inlinevirtual

Definition at line 15 of file ESHitResponse.h.

15 { return false; }

◆ operator[]() [1/2]

EcalHitResponse::EcalSamples * ESHitResponse::operator[] ( unsigned int  i)
overridevirtual

Implements EcalHitResponse.

Definition at line 36 of file ESHitResponse.cc.

References mps_fire::i, EcalHitResponse::index(), and m_vSam.

36 { return &m_vSam[index()[i]]; }
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33

◆ operator[]() [2/2]

const EcalHitResponse::EcalSamples * ESHitResponse::operator[] ( unsigned int  i) const
overridevirtual

Implements EcalHitResponse.

Definition at line 34 of file ESHitResponse.cc.

References mps_fire::i, EcalHitResponse::index(), and m_vSam.

34 { return &m_vSam[index()[i]]; }
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33

◆ samplesSize()

unsigned int ESHitResponse::samplesSize ( ) const
overridevirtual

Implements EcalHitResponse.

Definition at line 30 of file ESHitResponse.cc.

References EcalHitResponse::index().

30 { return index().size(); }

◆ samplesSizeAll()

unsigned int ESHitResponse::samplesSizeAll ( ) const
overrideprotectedvirtual

Implements EcalHitResponse.

Definition at line 32 of file ESHitResponse.cc.

References ESDetId::kSizeForDenseIndexing.

static constexpr int kSizeForDenseIndexing
Definition: ESDetId.h:102

◆ vSam()

EcalHitResponse::EcalSamples * ESHitResponse::vSam ( unsigned int  i)
overrideprotectedvirtual

Implements EcalHitResponse.

Definition at line 38 of file ESHitResponse.cc.

References mps_fire::i, EcalHitResponse::index(), and m_vSam.

38 { return &m_vSam[index()[i]]; }
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33

◆ vSamAll() [1/2]

EcalHitResponse::EcalSamples * ESHitResponse::vSamAll ( unsigned int  i)
overrideprotectedvirtual

Implements EcalHitResponse.

Definition at line 40 of file ESHitResponse.cc.

References mps_fire::i, and m_vSam.

40 { return &m_vSam[i]; }
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33

◆ vSamAll() [2/2]

const EcalHitResponse::EcalSamples * ESHitResponse::vSamAll ( unsigned int  i) const
overrideprotectedvirtual

Implements EcalHitResponse.

Definition at line 42 of file ESHitResponse.cc.

References mps_fire::i, and m_vSam.

42 { return &m_vSam[i]; }
std::vector< ESSamples > m_vSam
Definition: ESHitResponse.h:33

Member Data Documentation

◆ m_vSam

std::vector<ESSamples> ESHitResponse::m_vSam
private

Definition at line 33 of file ESHitResponse.h.

Referenced by ESHitResponse(), operator[](), vSam(), and vSamAll().