]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ZDC/AliZDCv3.h
Minor changes in a macro
[u/mrichter/AliRoot.git] / ZDC / AliZDCv3.h
1 #ifndef ALIZDCV3_H
2 #define ALIZDCV3_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 ////////////////////////////////////////////////
7 //  Manager and hits classes for set: ZDC     //
8 ////////////////////////////////////////////////
9
10 #include "AliZDC.h"
11
12 //____________________________________________________________________________ 
13 class AliZDCv3 : public AliZDC {
14
15 public:
16   AliZDCv3();
17   AliZDCv3(const char *name, const char *title);
18   virtual  ~AliZDCv3() {}
19   virtual void  CreateGeometry();
20   virtual void  CreateBeamLine();
21   virtual void  CreateZDC();
22   virtual void  CreateMaterials();
23   virtual Int_t IsVersion() const {return 1;}
24   virtual void  DrawModule() const;
25   virtual void  AddAlignableVolumes() const;
26   virtual void  Init();
27   virtual void  InitTables();
28   virtual void  StepManager();
29   
30   void SetVCollAperture(Float_t aperture)
31         {if(aperture<3.5) fVCollAperture = aperture; 
32          else printf("\n\n AliZDCv3: WARNING! TCTVB aperture set to max.: 3.5 cm\n\n");}
33   void SetVCollCentre(Float_t centre) {fVCollCentreY = centre;}
34   void SetLumiLength(Float_t length) {fLumiLength = length;}
35   
36  
37 protected:
38
39   // Sensitive media
40   Int_t   fMedSensF1;         // Sensitive medium F1
41   Int_t   fMedSensF2;         // Sensitive medium F2
42   Int_t   fMedSensZP;         // Sensitive medium for ZP
43   Int_t   fMedSensZN;         // Sensitive medium for ZN
44   Int_t   fMedSensZEM;        // Sensitive medium for EM ZDC
45   Int_t   fMedSensGR;         // Other sensitive medium
46   Int_t   fMedSensPI;         // Beam pipe and magnet coils
47   Int_t   fMedSensTDI;        // Cu materials along beam pipe
48   Int_t   fMedSensVColl;      // W jaws of vertical collimators
49   Int_t   fMedSensLumi;       // luminometer medium
50   
51   // Parameters for light tables
52   Int_t   fNalfan;            // Number of Alfa (neutrons)
53   Int_t   fNalfap;            // Number of Alfa (protons)
54   Int_t   fNben;              // Number of beta (neutrons)
55   Int_t   fNbep;              // Number of beta (protons)
56   Float_t fTablen[4][90][18]; // Neutrons light table
57   Float_t fTablep[4][90][28]; // Protons light table
58
59   // Parameters for hadronic calorimeters geometry
60   // NB -> parameters used in CreateZDC() and in StepManager()
61   // (other parameters are defined in CreateZDC())
62   Float_t fDimZN[3];    // Dimensions of proton detector
63   Float_t fDimZP[3];    // Dimensions of proton detector
64   Float_t fPosZNC[3];   // Position of neutron detector side C
65   Float_t fPosZNA[3];   // Position of neutron detector side A  
66   Float_t fPosZPC[3];   // Position of proton detector side C
67   Float_t fPosZPA[3];   // Position of proton detector side A
68   Float_t fFibZN[3];    // Fibers for neutron detector
69   Float_t fFibZP[3];    // Fibers for proton detector
70
71   // Parameters for EM calorimeter geometry
72   // NB -> parameters used in CreateZDC() and in StepManager()
73   // (other parameters are defined in CreateZDC())
74   Float_t fPosZEM[3]; // Position of EM detector
75   Float_t fZEMLength; // ZEM length
76   
77   // Parameters for proton accepancy studies
78   Int_t fpLostITC, fpLostD1C, fpcVCollC, fpDetectedC, fnDetectedC; // Side C
79   Int_t fpLostITA, fpLostD1A, fpLostTDI, fpcVCollA, fpDetectedA, fnDetectedA; // Side A
80   
81   // Parameters to describe vertical collimator aperture
82   Float_t fVCollAperture; // Semi-aperture of TCTVB jaws
83   Float_t fVCollCentreY;  // Centre of TCTVB jaw apertures
84   
85   Float_t fLumiLength;  // Luminometer length
86   
87   ClassDef(AliZDCv3,6)  // Zero Degree Calorimeter version 1
88 }; 
89  
90 #endif