Updates
[u/mrichter/AliRoot.git] / TOF / AliTOFDigitizer.h
1 #ifndef ALITOFDIGITIZER_H
2 #define ALITOFDIGITIZER_H
3
4 /* Copyright(c) 1998-2000, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //_______________________________________________________________________________//
8 //                                                                               //
9 //  Task Class for making Digits in TOF                                          //
10 // Class performs digitization of Summable digits (in the TOF case this is just  //
11 // sum of contributions of all signals into a given pad).                        //
12 // In addition it performs mixing of summable digits from different events.      //
13 //                                                                               //
14 // -- Author: Fabrizio Pierella (Bologna University)
15 //                                                                               //
16 //_______________________________________________________________________________//
17
18 /* $Id$ */
19
20 #include "AliDigitizer.h"
21
22 class AliDigitizationInput;
23 class AliTOFHitMap;
24 class AliTOFSDigit;
25 class AliTOFcalib;
26
27 class AliTOFDigitizer : public AliDigitizer {
28  public:
29   
30   AliTOFDigitizer();
31   AliTOFDigitizer(AliDigitizationInput * digInput);
32   virtual ~AliTOFDigitizer();
33   AliTOFDigitizer(const AliTOFDigitizer &source); // copy constructor
34   AliTOFDigitizer& operator=(const AliTOFDigitizer &source); // ass. op.
35   
36   // Do the main work
37   void Digitize(Option_t* option=0) ;
38   TClonesArray* SDigits() const {return fSDigitsArray;}
39   void ReadSDigit(Int_t inputFile);
40   void CreateDigits();
41   void InitDecalibration() const;
42   void DecalibrateTOFSignal();
43   
44  private:
45   void CollectSDigit(const AliTOFSDigit * const sdigit) ;
46   Int_t PutNoise(Int_t /*charge*/)const {return 0;}; // not yet
47                                                      // implemented
48                                                      // due to the low
49                                                      // noise expected
50                                                      // level
51   TClonesArray *fDigits;       //! array with digits
52   TClonesArray *fSDigitsArray; //! List of summable digits; used as a
53                                //container for all sdigits to be
54                                //merged
55   AliTOFHitMap *fhitMap ;      //! hit map used to perform the merging
56   AliTOFcalib * fCalib;        //! calibration object
57   
58   ClassDef(AliTOFDigitizer,2)  // TOF/Merging/Digitization
59 };    
60 #endif