Provides digitization
[u/mrichter/AliRoot.git] / VZERO / AliVZERODigitizer.h
1 #ifndef ALIVZERODigitizer_H
2 #define ALIVZERODigitizer_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5   
6 //_________________________________________________________________________
7 //
8 //  Class for making Digits in VZERO 
9 //_________________________________________________________________________   
10
11
12 #include "AliDigitizer.h"
13 #include "TString.h"
14
15 class TClonesArray;
16 class TFile;
17 class TMath;
18 class TObjArray;
19 class TParticle;
20 class TTree;
21 class TNtuple;
22
23 class AliLoader;
24 class AliRunLoader;
25 class AliRun;
26 class AliDetector;
27 class AliVZEROhit;
28 class AliHit;
29 class AliHeader;
30 class AliRunDigitizer;
31
32 class AliVZEROcell;
33 class AliVZEROsdigit;
34 class AliVZEROdigit;
35
36 // --- Standard library ---
37
38 // --- AliRoot header files ---
39
40 class AliRunLoader;
41
42 class AliVZERODigitizer: public AliDigitizer {
43
44 public:
45
46   AliVZERODigitizer() ;                       // constructor
47   AliVZERODigitizer(AliRunDigitizer *manager);// constructor
48   virtual ~AliVZERODigitizer() ;              // destructor
49   
50   void OpengAliceFile(const char *file);  
51   char *GetDigitsFile()const{return (char*) fDigitsFile.Data();}  
52   virtual void  Exec();
53   void AddDigit(Int_t /* eventnumber */, Int_t /* cellnumber */, Int_t /* adc */);              
54   void SetNEvents(Int_t Nevents){fNevents = Nevents;}
55   void ResetDigit();
56   Stat_t GetNEvents(){return fNevents;}
57
58  private:
59  
60   Int_t   fNevents;         // Number of events to digitize
61   Int_t   fNdigits;         // Number of digits
62   TString fDigitsFile ;     // output file   
63   TString fHeadersFile;     // input file
64   
65   Float_t fPhotoCathodeEfficiency; // Photocathode efficiency
66   Float_t fPMVoltage ;             // Photomultiplier voltage
67   Float_t fPMGain;                 // Photomultiplier gain
68
69  protected:
70  
71   AliRunLoader *fRunLoader;  // Pointer to Run Loader
72   AliVZEROhit  *fVZEROHit;   // Pointer to specific detector hits
73   AliDetector  *fVZERO;      // Get pointers to Alice detectors 
74                              // and Hit containers 
75   AliLoader    *fVZEROLoader;  // Pointer to specific detector loader
76
77   TClonesArray *fHits;       // Pointer to hit array
78   TParticle    *fParticle;   // Pointer to a given particle
79
80   TTree        *fTreeH;      // Hits tree
81   TTree        *fTreeD;      // Digits tree
82
83   TClonesArray *fDigits;     // List of digits
84
85   ClassDef(AliVZERODigitizer,1) 
86
87 };
88
89 #endif // AliVZERODigitizer_H