CMS 3D CMS Logo

CastorPedestalWidth.h
Go to the documentation of this file.
1 #ifndef CastorPedestalWidth_h
2 #define CastorPedestalWidth_h
3 
14 
15 #include <boost/cstdint.hpp>
16 
18  public:
20  const float* getValues () const {return &mSigma00;}
21 
23  float getWidth (int fCapId) const;
24 
26  float getSigma (int fCapId1, int fCapId2) const;
27 
28  // functions below are not supposed to be used by consumer applications
29  CastorPedestalWidth (int fId = 0);
30  void setSigma (int fCapId1, int fCapId2, float fSigma);
31 
32  uint32_t rawId () const {return mId;}
33 
34  // produces pedestal noise in assumption of near correlations and small variations
35  void makeNoise (unsigned fFrames, const double* fGauss, double* fNoise) const;
36 
37  private:
38  uint32_t mId;
39  float mSigma00;
40  float mSigma01;
41  float mSigma02;
42  float mSigma03;
43  float mSigma10;
44  float mSigma11;
45  float mSigma12;
46  float mSigma13;
47  float mSigma20;
48  float mSigma21;
49  float mSigma22;
50  float mSigma23;
51  float mSigma30;
52  float mSigma31;
53  float mSigma32;
54  float mSigma33;
55 
57 };
58 
59 #endif
void setSigma(int fCapId1, int fCapId2, float fSigma)
uint32_t rawId() const
float getWidth(int fCapId) const
get width (sqrt(sigma_i_i)) for capId = 0..3
void makeNoise(unsigned fFrames, const double *fGauss, double *fNoise) const
float getSigma(int fCapId1, int fCapId2) const
get correlation element for capId1/2 = 0..3
const float * getValues() const
get value for all capId = 0..3, 10 values in total
#define COND_SERIALIZABLE
Definition: Serializable.h:38