]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSSupportGeometry.h
Including TFile.h
[u/mrichter/AliRoot.git] / PHOS / AliPHOSSupportGeometry.h
1 #ifndef ALIPHOSSUPPORTGEOMETRY_H
2 #define ALIPHOSSUPPORTGEOMETRY_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 // Geometry class  for PHOS : Support which holds all PHOS modules.
10 // Its data members provide geometry parametrization of
11 // the PHOS support which can be changed in the constructor only.
12 // Author:   Yuri Kharlov (IHEP, Protvino)
13 // 13 November 2000
14
15 // --- ROOT system ---
16
17 #include "TObject.h" 
18
19 // --- AliRoot header files ---
20
21 class AliPHOSSupportGeometry : public TObject {
22
23 public: 
24
25   AliPHOSSupportGeometry();
26   AliPHOSSupportGeometry(const AliPHOSSupportGeometry & geom) : TObject(geom) {
27     Fatal("cpy ctor", "not implemented") ; } 
28   virtual ~AliPHOSSupportGeometry(void) {}
29
30   AliPHOSSupportGeometry & operator = (const AliPHOSSupportGeometry  & /*rvalue*/) {
31     Fatal("operator =", "not implemented") ; return *this ; }
32   Float_t GetRailOuterSize(Int_t index)     const { return fRailOuterSize[index]; }
33   Float_t GetRailPart1    (Int_t index)     const { return fRailPart1[index]; }
34   Float_t GetRailPart2    (Int_t index)     const { return fRailPart2[index]; }
35   Float_t GetRailPart3    (Int_t index)     const { return fRailPart3[index]; }
36   Float_t GetRailPos      (Int_t index)     const { return fRailPos[index]; }
37   Float_t GetRailLength   ()                const { return fRailLength; }
38   Float_t GetDistanceBetwRails()            const { return fDistanceBetwRails; }
39   Float_t GetRailsDistanceFromIP()          const { return fRailsDistanceFromIP; }
40   Float_t GetRailRoadSize (Int_t index)     const { return fRailRoadSize[index]; }
41   Float_t GetCradleWallThickness()          const { return fCradleWallThickness; }
42   Float_t GetCradleWall   (Int_t index)     const { return fCradleWall[index]; }
43   Float_t GetCradleWheel  (Int_t index)     const { return fCradleWheel[index]; }
44  
45 private:
46
47   Float_t fRailOuterSize[3] ;       // Outer size of a rail                 +-------+
48   Float_t fRailPart1[3] ;           // Upper & bottom parts of the rail     |--+ +--|
49   Float_t fRailPart2[3] ;           // Vertical middle parts of the rail       | |
50   Float_t fRailPart3[3] ;           // Vertical upper parts of the rail        | |
51   Float_t fRailPos[3] ;             // Rail position vs. the ALICE center   |--+ +--|
52   Float_t fRailLength ;             // Length of the rail under the support +-------+
53   Float_t fDistanceBetwRails ;      // Distance between rails
54   Float_t fRailsDistanceFromIP ;    // Distance of rails from IP
55   Float_t fRailRoadSize[3] ;        // Outer size of the dummy box with rails
56   Float_t fCradleWallThickness ;    // PHOS cradle wall thickness
57   Float_t fCradleWall[5] ;          // Size of the wall of the PHOS cradle (shape TUBS)
58   Float_t fCradleWheel[3] ;         // "Wheels" by which the cradle rolls over the rails
59
60   ClassDef(AliPHOSSupportGeometry,1) // PHOS support geometry class 
61
62 } ;
63
64 #endif // AliPHOSSUPPORTGEOMETRY_H