Update of ZDC Shuttle preprocessor (II/II)
[u/mrichter/AliRoot.git] / ZDC / AliZDCReco.h
1 #ifndef ALIZDCRECO_H
2 #define ALIZDCRECO_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 ////////////////////////////////////////////////
7 //  Classe for ZDC RecPoints                  //
8 ////////////////////////////////////////////////
9
10 #include "TObject.h"
11
12 class AliZDCReco : public TObject {
13
14 public:
15   AliZDCReco();
16   AliZDCReco(Float_t ezn1, Float_t ezp1, Float_t ezn2, Float_t ezp2,  
17              Float_t* ezn1tow, Float_t* ezp1tow,
18              Float_t* ezn2tow, Float_t* ezp2tow, 
19              Float_t ezem, 
20              //    
21              Int_t detspnLeft,  Int_t detsppLeft, Int_t detspnRight, Int_t detsppRight,  
22              Int_t trspnLeft, Int_t trsppLeft, Int_t trspLeft, 
23              Int_t trspnRight, Int_t trsppRight, Int_t trspRight,
24              Int_t partLeft, Int_t partRight,  
25              Float_t b);
26
27   AliZDCReco(const AliZDCReco &oldreco);
28   virtual ~AliZDCReco() {}
29
30   // Getters 
31   virtual Float_t GetZN1Energy()   const  {return fZN1Energy;}
32   virtual Float_t GetZP1Energy()   const  {return fZP1Energy;}
33   virtual Float_t GetZN2Energy()   const  {return fZN2Energy;}
34   virtual Float_t GetZP2Energy()   const  {return fZP2Energy;}
35   //
36   virtual Float_t GetZN1EnTow(Int_t tow)  const {return fZN1EnTow[tow];}
37   virtual Float_t GetZP1EnTow(Int_t tow)  const {return fZP1EnTow[tow];}
38   virtual Float_t GetZN2EnTow(Int_t tow)  const {return fZN2EnTow[tow];}
39   virtual Float_t GetZP2EnTow(Int_t tow)  const {return fZP2EnTow[tow];}
40   //
41   virtual Float_t GetZEMsignal()   const  {return fZEMsignal;}
42   //
43   virtual Int_t   GetNDetSpecNLeft()   const {return fNDetSpecNLeft;}
44   virtual Int_t   GetNDetSpecPLeft()   const {return fNDetSpecPLeft;}
45   virtual Int_t   GetNDetSpecNRight()  const {return fNDetSpecNRight;}
46   virtual Int_t   GetNDetSpecPRight()  const {return fNDetSpecPRight;}
47   virtual Int_t   GetNTrueSpecNLeft()  const {return fNTrueSpecNLeft;}
48   virtual Int_t   GetNTrueSpecPLeft()  const {return fNTrueSpecPLeft;}
49   virtual Int_t   GetNTrueSpecLeft()   const {return fNTrueSpecLeft;}
50   virtual Int_t   GetNTrueSpecNRight() const {return fNTrueSpecNRight;}
51   virtual Int_t   GetNTrueSpecPRight() const {return fNTrueSpecPRight;}
52   virtual Int_t   GetNTrueSpecRight()  const {return fNTrueSpecRight;}
53   virtual Int_t   GetNPartLeft()       const {return fNPartLeft;}
54   virtual Int_t   GetNPartRight()      const {return fNPartRight;}
55   virtual Float_t GetImpPar()          const {return fImpPar;}
56
57   // Print method
58   virtual void Print(Option_t *) const;
59
60 private:
61   // Data members
62   Float_t fZN1Energy;   // Energy detected in ZN1 (sum of 5 tower signals)
63   Float_t fZP1Energy;   // Energy detected in ZP1 (sum of 5 tower signals)
64   Float_t fZN2Energy;   // Energy detected in ZN2 (sum of 5 tower signals)
65   Float_t fZP2Energy;   // Energy detected in ZP2 (sum of 5 tower signals)
66   //
67   Float_t fZN1EnTow[5]; // Energy in ZN1 towers
68   Float_t fZP1EnTow[5]; // Energy in ZP1 towers
69   Float_t fZN2EnTow[5]; // Energy in ZN2 towers
70   Float_t fZP2EnTow[5]; // Energy in ZP2 towers
71   //
72   Float_t fZEMsignal;   // Signal in EM ZDC
73   //
74   Int_t   fNDetSpecNLeft;  // Number of spectator neutrons detected
75   Int_t   fNDetSpecPLeft;  // Number of spectator protons detected
76   Int_t   fNDetSpecNRight; // Number of spectator neutrons detected
77   Int_t   fNDetSpecPRight; // Number of spectator protons detected
78   Int_t   fNTrueSpecNLeft; // Estimate of the number of spectator neutrons generated
79   Int_t   fNTrueSpecPLeft; // Estimate of the number of spectator protons generated
80   Int_t   fNTrueSpecLeft;  // Estimate of the total number of spectators
81   Int_t   fNTrueSpecNRight;// Estimate of the number of spectator neutrons generated
82   Int_t   fNTrueSpecPRight;// Estimate of the number of spectator protons generated
83   Int_t   fNTrueSpecRight; // Estimate of the total number of spectators
84   Int_t   fNPartLeft;   // Estimate of the number of participants for 1 nucleus
85   Int_t   fNPartRight;  // Estimate of the number of participants for 1 nucleus
86   Float_t fImpPar;      // Estimate of the impact parameter
87
88
89   ClassDef(AliZDCReco,2)  // RecPoints for the Zero Degree Calorimeters
90 };
91  
92 #endif