]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ZDC/AliZDCDigitizer.h
ADC gate simulated + changes in reconstruction
[u/mrichter/AliRoot.git] / ZDC / AliZDCDigitizer.h
index 0536542969c02b69bb61334de9a657256181e57b..053c4f17452934ff2dfab7e299cc38369b9980d9 100644 (file)
 ////////////////////////////////////////////////
 
 #include "AliDigitizer.h"
+#include "AliCDBManager.h"
+#include "AliCDBStorage.h"
+#include "AliZDCPedestals.h"
+#include "AliZDCCalib.h"
 
 class AliRunDigitizer;
 
 class AliZDC;
 class AliZDCHit;
-class AliZDCMergedHit;
 class AliZDCDigit;
 
 class AliZDCDigitizer: public AliDigitizer {
@@ -35,12 +38,20 @@ public:
     {return fPMGain[det][pmDet];}
   //  Conversion factor from charge to ADC channels
   //         F = 1.6E-19 / Resolution [Coulomb/ch]
-  void    SetADCRes(Int_t *adcRes)
+  void    SetADCRes(Int_t *adcRes) {for (Int_t i=0;i<2;i++) fADCRes[i] = adcRes[i];}
   //  Two conversion factor are needed for ADC CAEN V965 
-    {for (Int_t i=0;i<2;i++) fADCRes[i] = adcRes[i];}
   Float_t GetADCRes(Int_t i) const {return fADCRes[i];}
+  
+  void   SetCalibrationOn() {fIsCalibration=1;}  
+  AliCDBStorage   *SetStorage(const char* uri);
+  AliZDCPedestals *GetPedData() const; 
+  AliZDCCalib     *GetCalibData() const; 
 
 private:
+
+  AliZDCDigitizer(const AliZDCDigitizer&);
+  AliZDCDigitizer& operator=(const AliZDCDigitizer&);
+
   void    Fragmentation(Float_t impPar, Int_t specN, Int_t specP,
                         Int_t &freeSpecN, Int_t &freeSpecP) const;
   void    SpectatorSignal(Int_t SpecType, Int_t numEvents, 
@@ -48,12 +59,17 @@ private:
 
   Int_t   Phe2ADCch(Int_t Detector, Int_t Quadrant, Float_t Light, 
                     Int_t Res) const;
-  Int_t   Pedestal() const;
-
-  Float_t fPMGain[3][5];      // PM gain
-  Float_t fADCRes[2];        // ADC conversion factors
+  Int_t   Pedestal(Int_t Detector, Int_t Quadrant, Int_t Res) const;
 
+  Float_t fPMGain[6][5];       // PM gain
+  Float_t fADCRes[2];          // ADC conversion factors
+  Int_t   fIsCalibration;      // !=0 if simulation creates calibration data
+  Bool_t  fIsSignalInADCGate;   // true if signal in ADC gate
+  Float_t fFracLostSignal;      // fraction of lost signal
+  
+  AliZDCPedestals *fPedData;   //! pedestal calibration data
+  AliZDCCalib     *fCalibData;         //! energy and equalization calibration data
        
-  ClassDef(AliZDCDigitizer, 2)     // digitizer for ZDC
+  ClassDef(AliZDCDigitizer, 8)     // digitizer for ZDC
 };    
 #endif