source: trunk/MagicSoft/include-Classes/MMcFormat/MMcFadcHeader.hxx@ 3354

Last change on this file since 3354 was 2749, checked in by moralejo, 21 years ago
*** empty log message ***
File size: 3.1 KB
Line 
1#ifndef __MMcFadcHeader__
2#define __MMcFadcHeader__
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8#include "MFadcDefine.h"
9
10class MMcFadcHeader : public MParContainer{
11 private:
12
13 Float_t fFadcShape ; // a number that indicate the shape type of
14 // the signal
15 // = 0 --> a gaussian
16 Float_t fAmplFadc ; // the integral of sph response [counts*ns]
17 Float_t fFwhmFadc ; // the width of the signal in nsec
18 Float_t fAmplFadcOuter; // the integral of sph response [counts*ns], outer
19 Float_t fFwhmFadcOuter; // the width of the signal in nsec, outer
20 Float_t fPedesMean[MFADC_CHANNELS] ; // The mean value for the pedestal
21 // of each pixel (channel)
22 Float_t fPedesSigmaHigh[MFADC_CHANNELS] ; // The sigma for the pedestal
23 // of each pixel (channel)
24 Float_t fPedesSigmaLow[MFADC_CHANNELS] ; // The sigma for the pedestal
25 // of each pixel (channel)
26 Float_t fElecNoise[MFADC_CHANNELS] ; // The rms value in the pedestal
27 // due to the electronics for
28 // each pixel (channel)
29 Float_t fDigitalNoise[MFADC_CHANNELS]; // The rms value in the pedestal
30 // due to the digital for
31 // each pixel (channel)
32 Float_t fLow2HighGain; // low gain factor
33
34 public:
35 MMcFadcHeader(const char *name=NULL, const char *title=NULL);
36
37 ~MMcFadcHeader();
38
39 void Print(Option_t *opt=NULL) const;
40
41 void SetShape(Float_t shape){
42 fFadcShape=shape;
43 }
44
45 void SetLow2High(Float_t l2h){
46 fLow2HighGain=l2h;
47 }
48
49 void SetAmplitud(Float_t amp, Float_t ampout=0.0){
50 fAmplFadc=amp;
51 fAmplFadcOuter=ampout;
52 }
53
54 void SetFwhm(Float_t fwhm, Float_t fwhmout=0.0){
55 fFwhmFadc=fwhm;
56 fFwhmFadcOuter=fwhmout;
57 }
58
59 void SetPedestal(Float_t *mean, Int_t dim){
60 for (Int_t i=0;i<dim;i++)
61 fPedesMean[i]=mean[i];
62 }
63
64 void SetPedestalSigma(Float_t *sigmalo, Float_t *sigmahi, Int_t dim){
65 for (Int_t i=0;i<dim;i++){
66 fPedesSigmaLow[i]=sigmalo[i];
67 fPedesSigmaHigh[i]=sigmahi[i];
68 }
69 }
70
71 void SetElecNoise(Float_t *sigmae, Float_t *sigmad, Int_t dim){
72 for (Int_t i=0;i<dim;i++){
73 fElecNoise[i]=sigmae[i];
74 fDigitalNoise[i]=sigmad[i];
75 }
76 }
77
78 Float_t GetPedestal(UInt_t i) const { return fPedesMean[i]; }
79 Float_t GetPedestalRmsHigh(UInt_t i) const { return fPedesSigmaHigh[i]; }
80 Float_t GetPedestalRmsLow(UInt_t i) const { return fPedesSigmaLow[i]; }
81 Float_t GetElecNoise(UInt_t i) const { return fElecNoise[i]; }
82 Float_t GetDigitalNoise(UInt_t i) const { return fElecNoise[i]; }
83 Float_t GetAmplitud() const { return fAmplFadc; }
84 Float_t GetAmplitudOuter() const { return fAmplFadcOuter; }
85 Float_t GetLow2HighGain() const { return fLow2HighGain; }
86
87 UInt_t GetNumPixel() const { return MFADC_CHANNELS; }
88
89 ClassDef(MMcFadcHeader, 3) //Stores Montecarlo Information describing the FADC behaviour
90
91};
92
93#endif
94
Note: See TracBrowser for help on using the repository browser.