CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
CaloSimParameters Class Reference

Main class for Parameters in different subdetectors. More...

#include <CaloSimParameters.h>

Inheritance diagram for CaloSimParameters:
CastorSimParameters HcalSimParameters HFSimParameters

Public Member Functions

int binOfMaximum () const
 
 CaloSimParameters (double simHitToPhotoelectrons, double photoelectronsToAnalog, double samplingFactor, double timePhase, int readoutFrameSize, int binOfMaximum, bool doPhotostatistics, bool syncPhase=true)
 
 CaloSimParameters (const edm::ParameterSet &p, bool skipPe2Fc=false)
 
bool doPhotostatistics () const
 whether or not to apply Poisson statistics to photoelectrons More...
 
double photoelectronsToAnalog () const
 the factor which goes from photoelectrons to whatever gets read by ADCs More...
 
virtual double photoelectronsToAnalog (const DetId &detId) const
 
int readoutFrameSize () const
 for now, the LinearFrames and trhe digis will be one-to-one. More...
 
void setBinOfMaximum (int binOfMax)
 
void setReadoutFrameSize (int frameSize)
 some datamixing apps need this to be set dynamically More...
 
double simHitToPhotoelectrons () const
 
virtual double simHitToPhotoelectrons (const DetId &) const
 
bool syncPhase () const
 
double timePhase () const
 the adjustment you need to apply to get the signal where you want it More...
 
virtual ~CaloSimParameters ()
 

Private Attributes

int binOfMaximum_
 
bool doPhotostatistics_
 
double photoelectronsToAnalog_
 
int readoutFrameSize_
 
double simHitToPhotoelectrons_
 
bool syncPhase_
 
double timePhase_
 

Detailed Description

Main class for Parameters in different subdetectors.

Definition at line 14 of file CaloSimParameters.h.

Constructor & Destructor Documentation

◆ CaloSimParameters() [1/2]

CaloSimParameters::CaloSimParameters ( double  simHitToPhotoelectrons,
double  photoelectronsToAnalog,
double  samplingFactor,
double  timePhase,
int  readoutFrameSize,
int  binOfMaximum,
bool  doPhotostatistics,
bool  syncPhase = true 
)

Definition at line 5 of file CaloSimParameters.cc.

int binOfMaximum() const
bool doPhotostatistics() const
whether or not to apply Poisson statistics to photoelectrons
double photoelectronsToAnalog() const
the factor which goes from photoelectrons to whatever gets read by ADCs
int readoutFrameSize() const
for now, the LinearFrames and trhe digis will be one-to-one.
double simHitToPhotoelectrons() const
double timePhase() const
the adjustment you need to apply to get the signal where you want it
bool syncPhase() const

◆ CaloSimParameters() [2/2]

CaloSimParameters::CaloSimParameters ( const edm::ParameterSet p,
bool  skipPe2Fc = false 
)

Definition at line 21 of file CaloSimParameters.cc.

References Exception, AlCaHLTBitMon_ParallelJobs::p, and photoelectronsToAnalog_.

22  : simHitToPhotoelectrons_(p.getParameter<double>("simHitToPhotoelectrons")),
24  timePhase_(p.getParameter<double>("timePhase")),
25  readoutFrameSize_(p.getParameter<int>("readoutFrameSize")),
26  binOfMaximum_(p.getParameter<int>("binOfMaximum")),
27  doPhotostatistics_(p.getParameter<bool>("doPhotoStatistics")),
28  syncPhase_(p.getParameter<bool>("syncPhase")) {
29  // some subsystems may not want a single number for this
30  if (p.existsAs<double>("photoelectronsToAnalog")) {
31  photoelectronsToAnalog_ = p.getParameter<double>("photoelectronsToAnalog");
32  } else if (p.existsAs<std::vector<double>>("photoelectronsToAnalog")) {
33  // just take the first one
34  photoelectronsToAnalog_ = p.getParameter<std::vector<double>>("photoelectronsToAnalog").at(0);
35  } else if (!skipPe2Fc) {
36  throw cms::Exception("CaloSimParameters") << "Cannot find parameter photoelectronsToAnalog";
37  }
38  // some subsystems may not want this at all
39 }

◆ ~CaloSimParameters()

virtual CaloSimParameters::~CaloSimParameters ( )
inlinevirtual

Definition at line 28 of file CaloSimParameters.h.

28 {};

Member Function Documentation

◆ binOfMaximum()

int CaloSimParameters::binOfMaximum ( ) const
inline

Definition at line 47 of file CaloSimParameters.h.

References binOfMaximum_.

Referenced by EcalDccWeightBuilder::computeAllWeights().

47 { return binOfMaximum_; }

◆ doPhotostatistics()

bool CaloSimParameters::doPhotostatistics ( ) const
inline

whether or not to apply Poisson statistics to photoelectrons

Definition at line 54 of file CaloSimParameters.h.

References doPhotostatistics_.

54 { return doPhotostatistics_; }

◆ photoelectronsToAnalog() [1/2]

double CaloSimParameters::photoelectronsToAnalog ( ) const
inline

the factor which goes from photoelectrons to whatever gets read by ADCs

Definition at line 38 of file CaloSimParameters.h.

References photoelectronsToAnalog_.

Referenced by HcalSimParameters::simHitToPhotoelectrons().

38 { return photoelectronsToAnalog_; }

◆ photoelectronsToAnalog() [2/2]

virtual double CaloSimParameters::photoelectronsToAnalog ( const DetId detId) const
inlinevirtual

Reimplemented in HcalSimParameters, CastorSimParameters, and HFSimParameters.

Definition at line 39 of file CaloSimParameters.h.

References photoelectronsToAnalog_.

39 { return photoelectronsToAnalog_; }

◆ readoutFrameSize()

int CaloSimParameters::readoutFrameSize ( ) const
inline

for now, the LinearFrames and trhe digis will be one-to-one.

Definition at line 45 of file CaloSimParameters.h.

References readoutFrameSize_.

45 { return readoutFrameSize_; }

◆ setBinOfMaximum()

void CaloSimParameters::setBinOfMaximum ( int  binOfMax)
inline

Definition at line 51 of file CaloSimParameters.h.

References binOfMaximum_.

51 { binOfMaximum_ = binOfMax; }

◆ setReadoutFrameSize()

void CaloSimParameters::setReadoutFrameSize ( int  frameSize)
inline

some datamixing apps need this to be set dynamically

Definition at line 50 of file CaloSimParameters.h.

References readoutFrameSize_.

50 { readoutFrameSize_ = frameSize; }

◆ simHitToPhotoelectrons() [1/2]

double CaloSimParameters::simHitToPhotoelectrons ( ) const
inline

the factor which goes from whatever units the SimHit amplitudes are in (could be deposited GeV, real GeV, or photoelectrons) and converts to photoelectrons probably should make everything virtual, but this is enough for HCAL

Definition at line 34 of file CaloSimParameters.h.

References simHitToPhotoelectrons_.

Referenced by HFSimParameters::photoelectronsToAnalog(), and HcalSimParameters::simHitToPhotoelectrons().

34 { return simHitToPhotoelectrons_; }

◆ simHitToPhotoelectrons() [2/2]

virtual double CaloSimParameters::simHitToPhotoelectrons ( const DetId ) const
inlinevirtual

Reimplemented in HcalSimParameters.

Definition at line 35 of file CaloSimParameters.h.

References simHitToPhotoelectrons_.

35 { return simHitToPhotoelectrons_; }

◆ syncPhase()

bool CaloSimParameters::syncPhase ( ) const
inline

choice of the ADC time alignment (synchronous for LHC, asynchronous for test beams)

Definition at line 58 of file CaloSimParameters.h.

References syncPhase_.

58 { return syncPhase_; }

◆ timePhase()

double CaloSimParameters::timePhase ( ) const
inline

the adjustment you need to apply to get the signal where you want it

Definition at line 42 of file CaloSimParameters.h.

References timePhase_.

Referenced by EcalDccWeightBuilder::computeAllWeights().

42 { return timePhase_; }

Member Data Documentation

◆ binOfMaximum_

int CaloSimParameters::binOfMaximum_
private

Definition at line 65 of file CaloSimParameters.h.

Referenced by binOfMaximum(), and setBinOfMaximum().

◆ doPhotostatistics_

bool CaloSimParameters::doPhotostatistics_
private

Definition at line 66 of file CaloSimParameters.h.

Referenced by doPhotostatistics().

◆ photoelectronsToAnalog_

double CaloSimParameters::photoelectronsToAnalog_
private

Definition at line 62 of file CaloSimParameters.h.

Referenced by CaloSimParameters(), and photoelectronsToAnalog().

◆ readoutFrameSize_

int CaloSimParameters::readoutFrameSize_
private

Definition at line 64 of file CaloSimParameters.h.

Referenced by readoutFrameSize(), and setReadoutFrameSize().

◆ simHitToPhotoelectrons_

double CaloSimParameters::simHitToPhotoelectrons_
private

Definition at line 61 of file CaloSimParameters.h.

Referenced by simHitToPhotoelectrons().

◆ syncPhase_

bool CaloSimParameters::syncPhase_
private

Definition at line 67 of file CaloSimParameters.h.

Referenced by syncPhase().

◆ timePhase_

double CaloSimParameters::timePhase_
private

Definition at line 63 of file CaloSimParameters.h.

Referenced by timePhase().