CMS 3D CMS Logo

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