]>
Commit | Line | Data |
---|---|---|
8d433671 | 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;} | |
f853b9aa | 24 | virtual void AddAlignableVolumes() const; |
8d433671 | 25 | virtual void Init(); |
26 | virtual void InitTables(); | |
27 | virtual void StepManager(); | |
28 | ||
f2d7b073 | 29 | void SetVCollSideCAperture(Float_t aperture) |
30 | {if(aperture<3.5) fVCollSideCAperture = aperture; | |
f1e11360 | 31 | else printf("\n\n AliZDCv3: WARNING! SideC TCTVB aperture set to max. value: 3.5 cm\n\n");} |
32 | void SetVCollSideCApertureNeg(Float_t aperture) | |
33 | {if(aperture<3.5) fVCollSideCApertureNeg = aperture; | |
34 | else printf("\n\n AliZDCv3: WARNING! SideC TCTVB aperture set to max. value: -3.5 cm\n\n");} | |
f2d7b073 | 35 | void SetVCollSideCCentre(Float_t centre) {fVCollSideCCentreY = centre;} |
36 | ||
37 | void SetVCollSideAAperture(Float_t aperture) | |
f1e11360 | 38 | {if(aperture<=3.5) fVCollSideAAperture = aperture; |
39 | else printf("\n\n AliZDCv3: WARNING! SideA TCTVB aperture set to max. value: 3.5 cm\n\n");} | |
40 | void SetVCollSideAApertureNeg(Float_t aperture) | |
41 | {if(aperture<=3.5) fVCollSideAApertureNeg = aperture; | |
42 | else printf("\n\n AliZDCv3: WARNING! SideA TCTVB aperture set to max. value: -3.5 cm\n\n");} | |
f2d7b073 | 43 | void SetVCollSideACentre(Float_t centre) {fVCollSideACentreY = centre;} |
44 | ||
f1e11360 | 45 | virtual void SetTCDDAperturePos(Float_t aperture) |
46 | {if(aperture<=2.2) fTCDDAperturePos = aperture; | |
47 | else printf("\n\n AliZDCv3: WARNING! TCDD pos. aperture set to max. value: 2.0 cm\n\n");} | |
48 | virtual void SetTCDDApertureNeg(Float_t aperture) | |
49 | {if(aperture<=2.4) fTCDDApertureNeg = aperture; | |
50 | else printf("\n\n AliZDCv3: WARNING! TCDD neg. aperture set to max. value: -2.2 cm\n\n");} | |
51 | ||
52 | ||
53 | virtual void SetTDIAperturePos(Float_t aperture) | |
54 | {if(aperture<=6.) fTDIAperturePos = aperture; | |
55 | else printf("\n\n AliZDCv3: WARNING! TDI pos. aperture set to max. value: 6.0 cm\n\n");} | |
56 | virtual void SetTDIApertureNeg(Float_t aperture) | |
57 | {if(aperture<=6.) fTDIApertureNeg = aperture; | |
58 | else printf("\n\n AliZDCv3: WARNING! TDI neg. aperture set to max. value: -6.0 cm\n\n");} | |
59 | ||
30f5a47b | 60 | void SetLumiLength(Float_t length) {fLumiLength = length;} |
925008a9 | 61 | |
796c8b58 | 62 | void SetYZNC(Float_t yZNC) {fPosZNC[1] = yZNC;} |
25e05e8a | 63 | void SetYZNA(Float_t yZNA) {fPosZNA[1] = yZNA;} |
796c8b58 | 64 | |
65 | void SetYZPC(Float_t yZPC) {fPosZPC[1] = yZPC;} | |
25e05e8a | 66 | void SetYZPA(Float_t yZPA) {fPosZPA[1] = yZPA;} |
796c8b58 | 67 | |
8d433671 | 68 | |
69 | protected: | |
70 | ||
71 | // Sensitive media | |
72 | Int_t fMedSensF1; // Sensitive medium F1 | |
73 | Int_t fMedSensF2; // Sensitive medium F2 | |
74 | Int_t fMedSensZP; // Sensitive medium for ZP | |
75 | Int_t fMedSensZN; // Sensitive medium for ZN | |
76 | Int_t fMedSensZEM; // Sensitive medium for EM ZDC | |
77 | Int_t fMedSensGR; // Other sensitive medium | |
78 | Int_t fMedSensPI; // Beam pipe and magnet coils | |
f853b9aa | 79 | Int_t fMedSensTDI; // Cu materials along beam pipe |
30f5a47b | 80 | Int_t fMedSensVColl; // W jaws of vertical collimators |
81 | Int_t fMedSensLumi; // luminometer medium | |
8d433671 | 82 | |
83 | // Parameters for light tables | |
84 | Int_t fNalfan; // Number of Alfa (neutrons) | |
85 | Int_t fNalfap; // Number of Alfa (protons) | |
86 | Int_t fNben; // Number of beta (neutrons) | |
87 | Int_t fNbep; // Number of beta (protons) | |
88 | Float_t fTablen[4][90][18]; // Neutrons light table | |
89 | Float_t fTablep[4][90][28]; // Protons light table | |
90 | ||
91 | // Parameters for hadronic calorimeters geometry | |
92 | // NB -> parameters used in CreateZDC() and in StepManager() | |
93 | // (other parameters are defined in CreateZDC()) | |
94 | Float_t fDimZN[3]; // Dimensions of proton detector | |
95 | Float_t fDimZP[3]; // Dimensions of proton detector | |
f853b9aa | 96 | Float_t fPosZNC[3]; // Position of neutron detector side C |
97 | Float_t fPosZNA[3]; // Position of neutron detector side A | |
98 | Float_t fPosZPC[3]; // Position of proton detector side C | |
99 | Float_t fPosZPA[3]; // Position of proton detector side A | |
8d433671 | 100 | Float_t fFibZN[3]; // Fibers for neutron detector |
101 | Float_t fFibZP[3]; // Fibers for proton detector | |
102 | ||
103 | // Parameters for EM calorimeter geometry | |
104 | // NB -> parameters used in CreateZDC() and in StepManager() | |
105 | // (other parameters are defined in CreateZDC()) | |
106 | Float_t fPosZEM[3]; // Position of EM detector | |
107 | Float_t fZEMLength; // ZEM length | |
108 | ||
f853b9aa | 109 | // Parameters for proton accepancy studies |
30f5a47b | 110 | Int_t fpLostITC, fpLostD1C, fpcVCollC, fpDetectedC, fnDetectedC; // Side C |
111 | Int_t fpLostITA, fpLostD1A, fpLostTDI, fpcVCollA, fpDetectedA, fnDetectedA; // Side A | |
8d433671 | 112 | |
f1e11360 | 113 | // Apertures to describe beam line elements variable apertures |
114 | ||
115 | // Vertical collimator | |
116 | Float_t fVCollSideCAperture; // Semi-aperture of TCTVB jaws pos. y dir. | |
117 | Float_t fVCollSideCApertureNeg; // Semi-aperture of TCTVB jaws neg. y dir (abs. value) | |
118 | Float_t fVCollSideCCentreY; // Centre of TCTVB jaw apertures | |
119 | Float_t fVCollSideAAperture; // Semi-aperture of TCTVB jaws pos. y dir. | |
120 | Float_t fVCollSideAApertureNeg; // Semi-aperture of TCTVB jaws neg. y dir. (abs. value) | |
121 | Float_t fVCollSideACentreY; // Centre of TCTVB jaw apertures | |
122 | ||
123 | // TCDD | |
124 | Float_t fTCDDAperturePos; // TCDD semi-aperture pos. y dir. | |
125 | Float_t fTCDDApertureNeg; // TCDD semi-aperture neg. y dir. (abs. value) | |
126 | ||
127 | // TDI | |
128 | Float_t fTDIAperturePos; // TDI semi-aperture pos. y dir. | |
129 | Float_t fTDIApertureNeg; // TDI semi-aperture neg. y dir. (abs. value) | |
f853b9aa | 130 | |
30f5a47b | 131 | Float_t fLumiLength; // Luminometer length |
132 | ||
f1e11360 | 133 | ClassDef(AliZDCv3,8) // Zero Degree Calorimeter version 1 |
8d433671 | 134 | }; |
135 | ||
136 | #endif |