Introduce hit array fStHits reset only at the end of the event (for digitization)
[u/mrichter/AliRoot.git] / ZDC / AliZDC.h
1 #ifndef ALIZDC_H
2 #define ALIZDC_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 //  Manager and classes for set ZDC           //
10 ////////////////////////////////////////////////
11  
12 #include "AliDetector.h"
13
14  
15 class AliZDC : public AliDetector {
16
17 public:
18   AliZDC();
19   AliZDC(const char *name, const char *title);
20   virtual       ~AliZDC();
21   virtual void  AddHit(Int_t track, Int_t *vol, Float_t *hits);
22   virtual void  BuildGeometry();
23   virtual void  CreateGeometry() {}
24   virtual void  CreateMaterials() {}
25   Int_t         DistancetoPrimitive(Int_t px, Int_t py);
26   virtual Int_t IsVersion() const =0;
27   virtual void  StepManager();
28   virtual void  ResetHits(); 
29   virtual void  ResetDigits(); 
30
31 protected:
32
33   // Parameters for hadronic calorimeters geometry
34   Float_t fDimZN[3];  // Dimensions of neutron detector
35   Float_t fDimZP[3];  // Dimensions of proton detector
36   Float_t fPosZN[3];  // Position of neutron detector
37   Float_t fPosZP[3];  // Position of proton detector
38   Float_t fFibZN[3];  // Fibers for neutron detector
39   Float_t fFibZP[3];  // Fibers for proton detector
40   Float_t fGrvZN[3];  // Grooves for neutron detector
41   Float_t fGrvZP[3];  // Grooves for proton detector
42   Int_t   fDivZN[3];  // Division for neutron detector
43   Int_t   fDivZP[3];  // Division for proton detector
44   Int_t   fTowZN[2];  // Tower for neutron detector
45   Int_t   fTowZP[2];  // Tower for proton detector
46
47   // Parameters for EM calorimeter geometry
48   Float_t fDimZEMPb;  // z-dimension of the Pb slice
49   Float_t fDimZEMAir; // scotch
50   Float_t fFibRadZEM; // External fiber radius (including cladding)
51   Float_t fFibZEM[3]; // Fibers for EM calorimeter
52   Float_t fDimZEM[6]; // Dimensions of EM detector
53   Float_t fPosZEM[3]; // Position of EM detector
54   Int_t   fDivZEM[3]; // Divisions for EM detector
55   
56   // TClonesArray of stored hits -> not reset et finish event
57   //    (for digitization at the end of the event)
58   TClonesArray *fStHits;
59   Int_t fNStHits;
60   
61   Int_t   fNPrimaryHits;
62
63    ClassDef(AliZDC,1)  // Zero Degree Calorimeter base class
64 };
65  
66 #endif