CMS 3D CMS Logo

CaloSimParameters.h
Go to the documentation of this file.
1 #ifndef CaloSimAlgos_CaloSimParameters_h
2 #define CaloSimAlgos_CaloSimParameters_h
3 
6 #include <iosfwd>
15 public:
16  // note: sampling factor not used
19  double samplingFactor,
20  double timePhase,
21  int readoutFrameSize,
22  int binOfMaximum,
23  bool doPhotostatistics,
24  bool syncPhase = true);
25 
26  CaloSimParameters(const edm::ParameterSet &p, bool skipPe2Fc = false);
27 
28  virtual ~CaloSimParameters(){};
29 
35  virtual double simHitToPhotoelectrons(const DetId &) const { return simHitToPhotoelectrons_; }
36 
39  virtual double photoelectronsToAnalog(const DetId &detId) const { return photoelectronsToAnalog_; }
40 
42  double timePhase() const { return timePhase_; }
43 
45  int readoutFrameSize() const { return readoutFrameSize_; }
46 
47  int binOfMaximum() const { return binOfMaximum_; }
48 
50  void setReadoutFrameSize(int frameSize) { readoutFrameSize_ = frameSize; }
51  void setBinOfMaximum(int binOfMax) { binOfMaximum_ = binOfMax; }
52 
54  bool doPhotostatistics() const { return doPhotostatistics_; }
55 
58  bool syncPhase() const { return syncPhase_; }
59 
60 private:
63  double timePhase_;
67  bool syncPhase_;
68 };
69 
70 std::ostream &operator<<(std::ostream &os, const CaloSimParameters &p);
71 
72 #endif
CaloSimParameters(double simHitToPhotoelectrons, double photoelectronsToAnalog, double samplingFactor, double timePhase, int readoutFrameSize, int binOfMaximum, bool doPhotostatistics, bool syncPhase=true)
bool doPhotostatistics() const
whether or not to apply Poisson statistics to photoelectrons
Main class for Parameters in different subdetectors.
std::ostream & operator<<(std::ostream &os, const CaloSimParameters &p)
double timePhase() const
the adjustment you need to apply to get the signal where you want it
void setReadoutFrameSize(int frameSize)
some datamixing apps need this to be set dynamically
void setBinOfMaximum(int binOfMax)
double simHitToPhotoelectrons() const
int readoutFrameSize() const
for now, the LinearFrames and trhe digis will be one-to-one.
virtual double photoelectronsToAnalog(const DetId &detId) const
virtual double simHitToPhotoelectrons(const DetId &) const
Definition: DetId.h:17
int binOfMaximum() const
double photoelectronsToAnalog() const
the factor which goes from photoelectrons to whatever gets read by ADCs
virtual ~CaloSimParameters()
bool syncPhase() const