]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ZDC/AliZDCDigitizer.h
AliZDCRecoParam class implemented
[u/mrichter/AliRoot.git] / ZDC / AliZDCDigitizer.h
CommitLineData
8309c1ab 1#ifndef ALIZDCDIGITIZER_H
2#define ALIZDCDIGITIZER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8////////////////////////////////////////////////
9// Digitizer class for ZDC //
10////////////////////////////////////////////////
11
12#include "AliDigitizer.h"
48642b09 13#include "AliCDBManager.h"
14#include "AliCDBStorage.h"
6024ec85 15#include "AliZDCPedestals.h"
16#include "AliZDCCalib.h"
8309c1ab 17
18class AliRunDigitizer;
19
20class AliZDC;
21class AliZDCHit;
22class AliZDCMergedHit;
23class AliZDCDigit;
24
25class AliZDCDigitizer: public AliDigitizer {
26
27public:
28 AliZDCDigitizer();
29 AliZDCDigitizer(AliRunDigitizer* manager);
30 virtual ~AliZDCDigitizer();
31
32 virtual Bool_t Init();
33 virtual void Exec(Option_t* option=0);
34
35 // PM gain
36 void SetPMGain(Int_t det, Int_t pmDet, Int_t pmGain)
37 {fPMGain[det][pmDet] = pmGain;}
38 Float_t GetPMGain(Int_t det, Int_t pmDet) const
39 {return fPMGain[det][pmDet];}
40 // Conversion factor from charge to ADC channels
41 // F = 1.6E-19 / Resolution [Coulomb/ch]
abf60186 42 void SetADCRes(Int_t *adcRes) {for (Int_t i=0;i<2;i++) fADCRes[i] = adcRes[i];}
8309c1ab 43 // Two conversion factor are needed for ADC CAEN V965
8309c1ab 44 Float_t GetADCRes(Int_t i) const {return fADCRes[i];}
48642b09 45
abf60186 46 void SetCalibrationOn() {fIsCalibration=1;}
78d18275 47 AliCDBStorage *SetStorage(const char* uri);
6024ec85 48 AliZDCPedestals *GetPedData() const;
49 AliZDCCalib *GetCalibData() const;
8309c1ab 50
51private:
cc2abffd 52
53 AliZDCDigitizer(const AliZDCDigitizer&);
54 AliZDCDigitizer& operator=(const AliZDCDigitizer&);
55
8309c1ab 56 void Fragmentation(Float_t impPar, Int_t specN, Int_t specP,
57 Int_t &freeSpecN, Int_t &freeSpecP) const;
58 void SpectatorSignal(Int_t SpecType, Int_t numEvents,
59 Float_t pm[3][5]) const;
60
61 Int_t Phe2ADCch(Int_t Detector, Int_t Quadrant, Float_t Light,
62 Int_t Res) const;
48642b09 63 Int_t Pedestal(Int_t Detector, Int_t Quadrant, Int_t Res) const;
8309c1ab 64
a017f01b 65 Float_t fPMGain[6][5]; // PM gain
78d18275 66 Float_t fADCRes[2]; // ADC conversion factors
48642b09 67
abf60186 68 Int_t fIsCalibration; // !=0 if simulation creates calibration data
6024ec85 69
70 AliZDCPedestals *fPedData; //! pedestal calibration data
71 AliZDCCalib *fCalibData; //! energy and equalization calibration data
8309c1ab 72
7bff3766 73 ClassDef(AliZDCDigitizer, 7) // digitizer for ZDC
8309c1ab 74};
75#endif