1 |
nikolas |
1.1 |
#ifndef PAMVMC_CALO_DIG_H |
2 |
|
|
#define PAMVMC_CALO_DIG_H |
3 |
|
|
|
4 |
|
|
#include "PamVMCDigitizer.h" |
5 |
|
|
|
6 |
|
|
|
7 |
|
|
|
8 |
|
|
using std::cout; |
9 |
|
|
using std::endl; |
10 |
|
|
|
11 |
|
|
class PamVMCCaloDig : public PamVMCDigitizer { |
12 |
|
|
|
13 |
|
|
Float_t fCalomip[2][22][96]; // ADC to MIP conversion values |
14 |
|
|
Float_t fcalped[4][11][96]; // pedestals |
15 |
|
|
Float_t fcalgood[4][11][96]; // used or not in the common noise calculation |
16 |
|
|
Float_t fcalthr[4][11][6]; // thresholds |
17 |
|
|
Float_t fcalrms[4][11][96]; // rms |
18 |
|
|
Float_t fcalbase[4][11][6]; // baselines (common noise) during calibration |
19 |
|
|
Float_t fcalvar[4][11][6]; // variance |
20 |
|
|
Float_t fcstwerr[4]; // status word |
21 |
|
|
Float_t fcperror[4]; // unpacking error flag |
22 |
pizzolot |
1.6 |
Int_t fevtcalo; |
23 |
nikolas |
1.1 |
|
24 |
|
|
UShort_t fSecCalo[4]; |
25 |
|
|
UShort_t fSecCaloLength[4]; |
26 |
|
|
|
27 |
|
|
TClonesArray * fhc; |
28 |
|
|
|
29 |
|
|
void ClearCaloCalib(Int_t s); |
30 |
|
|
|
31 |
|
|
Int_t CaloLoadCalib(Int_t s,TString calname, UInt_t calibno); |
32 |
|
|
|
33 |
|
|
void DigitizeCALOCALIB(); |
34 |
|
|
|
35 |
|
|
void FillCalPedNorm(USBuffer *buff, Int_t sec); |
36 |
|
|
void FillCalPedBack(USBuffer *buff, Int_t sec); |
37 |
|
|
void FillCalThrNorm(USBuffer *buff, Int_t sec); |
38 |
|
|
void FillCalThrBack(USBuffer *buff, Int_t sec); |
39 |
|
|
void FillCalRmsNorm(USBuffer *buff, Int_t sec); |
40 |
|
|
void FillCalRmsBack(USBuffer *buff, Int_t sec); |
41 |
|
|
void FillCalBaseVarNorm(USBuffer *buff, Int_t sec); |
42 |
|
|
void FillCalBaseVarBack(USBuffer *buff, Int_t sec); |
43 |
pizzolot |
1.6 |
void Incrementevtcalo(){fevtcalo++;}; |
44 |
nikolas |
1.1 |
|
45 |
pizzolot |
1.6 |
Int_t Getevtcalo(){return fevtcalo; }; |
46 |
nikolas |
1.1 |
Float_t GetCaloErel(Int_t sec, Int_t plane, Int_t strip); |
47 |
|
|
|
48 |
|
|
void DigitizeCaloRaw(); |
49 |
|
|
void DigitizeCaloCompress(); |
50 |
|
|
void DigitizeCaloFull(); |
51 |
|
|
|
52 |
|
|
public: |
53 |
|
|
|
54 |
pizzolot |
1.6 |
PamVMCCaloDig():PamVMCDigitizer("Calo"){ fevtcalo=0; } |
55 |
nikolas |
1.1 |
|
56 |
|
|
|
57 |
|
|
virtual ~PamVMCCaloDig(){ if(fhc) delete fhc;} |
58 |
|
|
|
59 |
|
|
|
60 |
|
|
void LoadCalib(); |
61 |
|
|
|
62 |
|
|
void Digitize(); |
63 |
|
|
|
64 |
|
|
|
65 |
|
|
|
66 |
|
|
ClassDef(PamVMCCaloDig,1) |
67 |
|
|
}; |
68 |
|
|
|
69 |
|
|
|
70 |
|
|
#endif //PAMVMC_CALO_DIG_H |