]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EMCAL/AliEMCALDigitizer.h
add protection against truncated events + coverity - Rachid
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALDigitizer.h
index 4f7c506d17cd32f27f2e841bb4666068b754c946..a5dbfb8299b7ba527384fb833f2253cc0d301d77 100644 (file)
@@ -49,16 +49,17 @@ public:
   void    Digitize(Int_t event);          // Make Digits from SDigits stored in fSDigits
   void    Exec(Option_t *option);               // Supervising method
 
-  Int_t   GetDigitThreshold() const { return fDigitThreshold;}
-  //Float_t GetPedestal()       const { return fPedestal; }
-  Float_t GetPinNoise()       const { return fPinNoise;}
-  //Float_t GetSlope()          const { return fSlope; }
-  Double_t GetTimeResolution() const { return fTimeResolution ; }
-  Float_t GetECAchannel()     const { return fADCchannelEC ; }
-  Float_t GetECApedestal()    const { return fADCpedestalEC ; }
-  void    SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
-  void    SetDigitThreshold(Int_t EMCThreshold)  {fDigitThreshold = EMCThreshold;}
-  void    SetPinNoise(Float_t PinNoise )         {fPinNoise = PinNoise;}
+  Int_t    GetDigitThreshold() const { return fDigitThreshold;}
+  Float_t  GetPinNoise()       const { return fPinNoise;}
+  Float_t GetTimeResolution(const Float_t energy) const;
+  Double_t GetTimeResolutionPar0() const { return fTimeResolutionPar0 ; }
+  Double_t GetTimeResolutionPar1() const { return fTimeResolutionPar1 ; }
+  Double_t GetTimeDelay()      const { return fTimeDelay ; }
+  Float_t  GetECAchannel()     const { return fADCchannelEC ; }
+  Float_t  GetECApedestal()    const { return fADCpedestalEC ; }
+  void     SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
+  void     SetDigitThreshold(Int_t EMCThreshold)  {fDigitThreshold = EMCThreshold;}
+  void     SetPinNoise(Float_t PinNoise )         {fPinNoise = PinNoise;}
 
   //General
   Int_t GetDigitsInRun()  const { return fDigitsInRun; } 
@@ -82,13 +83,17 @@ private:
   void    PrintDigits(Option_t * option) ;
   void    Unload() ; 
   void    WriteDigits() ;         // Writes Digits the current event
+  void    WriteDigits(TClonesArray* digits, const char* branchName = "EMTRG"); //
   Float_t TimeOfNoise(void) ;     // Calculate time signal generated by noise
 
   //Calculate the time of crossing of the threshold by front edge
   //Float_t FrontEdgeTime(TClonesArray * ticks) ;
        
-  Int_t   DigitizeEnergy(Float_t energy, Int_t AbsId) ;
-
+  Float_t DigitizeEnergy(Float_t energy, Int_t AbsId) ;
+  void    Digits2FastOR(TClonesArray*digitsTMP, TClonesArray* digitsTRG);
+  void    DigitalFastOR(Double_t time, Double_t dE, Int_t timeSamples[], Int_t nSamples);
+       
+       
 private:
   
   Bool_t  fDefaultInit;           //! Says if the task was created by defaut ctor (only parameters are initialized)
@@ -99,25 +104,23 @@ private:
   TString * fInputFileNames ;     //[fInput] List of file names to merge 
   TString * fEventNames ;         //[fInput] List of event names to merge
 
-  Int_t   fDigitThreshold  ;      // Threshold for storing digits in EMC, ACD units
-  Int_t   fMeanPhotonElectron ;   // number of photon electrons per GeV deposited energy 
-  //Float_t fPedestal ;           // Calibration parameters //Not used, remove?
-  //Float_t fSlope ;              // read from SDigitizer   //Not used, remove?
-  Float_t fPinNoise ;             // Electronics noise in EMC
-  Double_t fTimeResolution ;       // Time resolution of FEE electronics
-  //Float_t fTimeThreshold ;        // Threshold to start timing for given crystall //Not used, remove?
-  //Float_t fTimeSignalLength ;     // Length of the timing signal //Not used, remove?
+  Int_t    fDigitThreshold  ;     // Threshold for storing digits in EMC, ACD units
+  Int_t    fMeanPhotonElectron ;  // number of photon electrons per GeV deposited energy 
+  Float_t  fPinNoise ;            // Electronics noise in EMC
+  Double_t fTimeDelay;            // Time delay to reproduce data delay
+  Double_t fTimeResolutionPar0 ;  // Time resolution of FEE electronics
+  Double_t fTimeResolutionPar1 ;  // Time resolution of FEE electronics
   Float_t fADCchannelEC ;         // width of one ADC channel in EC section (GeV)
   Float_t fADCpedestalEC ;        // pedestal for one ADC channel
   Int_t   fNADCEC ;               // number of channels in EC section ADC
 
-  TString fEventFolderName;         // skowron: name of EFN to read data from in stand alone mode
-  Int_t   fFirstEvent;        // first event to process
-  Int_t   fLastEvent;         // last  event to process
-
+  TString  fEventFolderName;      // skowron: name of EFN to read data from in stand alone mode
+  Int_t    fFirstEvent;           // first event to process
+  Int_t    fLastEvent;            // last  event to process
+       
   AliEMCALCalibData * fCalibData; //Calibration data pointer
 
-  ClassDef(AliEMCALDigitizer,8)  // description 
+  ClassDef(AliEMCALDigitizer,10)  // description 
 };