CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CastorPedestalWidth.h
Go to the documentation of this file.
1 #ifndef CastorPedestalWidth_h
2 #define CastorPedestalWidth_h
3 
13 #include <boost/cstdint.hpp>
14 
16  public:
18  const float* getValues () const {return &mSigma00;}
19 
21  float getWidth (int fCapId) const;
22 
24  float getSigma (int fCapId1, int fCapId2) const;
25 
26  // functions below are not supposed to be used by consumer applications
27  CastorPedestalWidth (int fId = 0);
28  void setSigma (int fCapId1, int fCapId2, float fSigma);
29 
30  uint32_t rawId () const {return mId;}
31 
32  // produces pedestal noise in assumption of near correlations and small variations
33  void makeNoise (unsigned fFrames, const double* fGauss, double* fNoise) const;
34 
35  private:
36  uint32_t mId;
37  float mSigma00;
38  float mSigma01;
39  float mSigma02;
40  float mSigma03;
41  float mSigma10;
42  float mSigma11;
43  float mSigma12;
44  float mSigma13;
45  float mSigma20;
46  float mSigma21;
47  float mSigma22;
48  float mSigma23;
49  float mSigma30;
50  float mSigma31;
51  float mSigma32;
52  float mSigma33;
53 };
54 
55 #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