]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSCPVGeometry.h
Message commented out
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCPVGeometry.h
1 #ifndef ALIPHOSCPVGEOMETRY_H
2 #define ALIPHOSCPVGEOMETRY_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 derived class for PHOS:CPV (Charged particle veto, IHEP version)
10 // Its data members provide geometry parametrization of CPV
11 // which can be changed in the constructor only.
12 // Author:  Yuri Kharlov (IHEP, Protvino)
13 // 7 November 2000
14
15 //#include "AliPHOSCPVBaseGeometry.h"
16 #include "TObject.h"
17
18 class AliPHOSCPVGeometry : public TObject {
19
20 public: 
21
22            AliPHOSCPVGeometry();
23   virtual ~AliPHOSCPVGeometry(void) {};
24
25   // CPV functions
26
27   virtual Int_t   GetNumberOfCPVLayers(void)        const { return  fNumberOfCPVLayers;        }
28   virtual Int_t   GetNumberOfCPVPadsPhi(void)       const { return  fNumberOfCPVPadsPhi ;      }
29   virtual Int_t   GetNumberOfCPVPadsZ(void)         const { return  fNumberOfCPVPadsZ ;        }
30   virtual Float_t GetCPVPadSizePhi(void)            const { return  fCPVPadSizePhi;            }
31   virtual Float_t GetCPVPadSizeZ(void)              const { return  fCPVPadSizeZ;              }
32   virtual Float_t GetCPVBoxSize(Int_t index)        const { return  fCPVBoxSize[index];        }
33   virtual Float_t GetCPVActiveSize(Int_t index)     const { return  fCPVActiveSize[index];     }
34   virtual Int_t   GetNumberOfCPVChipsPhi(void)      const { return  fNumberOfCPVChipsPhi;      }
35   virtual Int_t   GetNumberOfCPVChipsZ(void)        const { return  fNumberOfCPVChipsZ;        }
36   virtual Float_t GetGassiplexChipSize(Int_t index) const { return  fGassiplexChipSize[index]; }
37   virtual Float_t GetCPVGasThickness(void)          const { return  fCPVGasThickness;          }
38   virtual Float_t GetCPVTextoliteThickness(void)    const { return  fCPVTextoliteThickness;    }
39   virtual Float_t GetCPVCuNiFoilThickness(void)     const { return  fCPVCuNiFoilThickness;     }
40   virtual Float_t GetFTPosition(Int_t index)        const { return  fFTPosition[index];        }
41   virtual Float_t GetCPVFrameSize(Int_t index)      const { return  fCPVFrameSize[index];      }
42
43  
44 private:
45
46   Int_t   fNumberOfCPVLayers;      // Number of CPV identical layers
47   Int_t   fNumberOfCPVPadsPhi;     // Number of CPV pads in phi
48   Int_t   fNumberOfCPVPadsZ;       // Number of CPV pads in z
49   Float_t fCPVPadSizePhi;          // CPV pad size in phi
50   Float_t fCPVPadSizeZ;            // CPV pad size in z
51   Float_t fCPVBoxSize[3];          // Outer size of CPV box
52   Float_t fCPVActiveSize[2];       // Active size of CPV box (x,z)
53   Int_t   fNumberOfCPVChipsPhi;    // Number of CPV Gassiplex chips in phi
54   Int_t   fNumberOfCPVChipsZ;      // Number of CPV Gassiplex chips in z
55   Float_t fGassiplexChipSize[3];   // Size of a Gassiplex chip (0 - in z, 1 - in phi, 2 - thickness (in ALICE radius))
56   Float_t fCPVGasThickness;        // Thickness of CPV gas volume
57   Float_t fCPVTextoliteThickness;  // Thickness of CPV textolite PCB (without foil)
58   Float_t fCPVCuNiFoilThickness;   // Thickness of CPV Copper-Nickel foil of PCB
59   Float_t fFTPosition[4];          // Positions of the 4 PCB vs the CPV box center
60   Float_t fCPVFrameSize[3];        // CPV frame size (0 - in phi, 1 - in z, 2 - thickness (along ALICE radius))
61
62
63   ClassDef(AliPHOSCPVGeometry,2)       // CPV geometry base class 
64
65 } ;
66
67 #endif // AliPHOSCPVGEOMETRY_H