make it compile with Federico modifications
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCPVBaseGeometry.h
1 #ifndef ALIPHOSCPVBASEGEOMETRY_H
2 #define ALIPHOSCPVBASEGEOMETRY_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 base class for PHOS:CVS (Charged particle veto)
10 // It contains only virtual member functions-getters
11 // which will be implemented for PPSD and CPV in
12 // appropriate derived classes
13 // Author  : Yuri Kharlov (IHEP, Protvino)
14 // 14 September 2000
15
16 #include "TObject.h"
17
18 class AliPHOSCPVBaseGeometry : public TObject {
19
20 public: 
21
22            AliPHOSCPVBaseGeometry()     {}
23   virtual ~AliPHOSCPVBaseGeometry(void) {}
24
25   // Return common for PPSD and CPV geometrical parameters
26
27   virtual Float_t GetCPVBoxSize(Int_t index)        = 0 ;
28
29   // Return PPSD geometrical parameters
30
31   virtual Float_t GetAnodeThickness(void)           = 0 ;
32   virtual Float_t GetAvalancheGap(void)             = 0 ;
33   virtual Float_t GetCathodeThickness(void)         = 0 ;
34   virtual Float_t GetCompositeThickness(void)       = 0 ;
35   virtual Float_t GetConversionGap(void)            = 0 ;
36   virtual Float_t GetLeadConverterThickness(void)   = 0 ;
37   virtual Float_t GetLeadToMicro2Gap(void)          = 0 ;
38   virtual Float_t GetLidThickness(void)             = 0 ;
39   virtual Float_t GetMicromegas1Thickness(void)     = 0 ;
40   virtual Float_t GetMicromegas2Thickness(void)     = 0 ;
41   virtual Float_t GetMicromegasWallThickness(void)  = 0 ;
42   virtual Float_t GetMicro1ToLeadGap(void)          = 0 ;
43   virtual Int_t   GetNumberOfPadsPhi(void)          = 0 ;
44   virtual Int_t   GetNumberOfPadsZ(void)            = 0 ;
45   virtual Int_t   GetNumberOfModulesPhi(void)       = 0 ;
46   virtual Int_t   GetNumberOfModulesZ(void)         = 0 ;
47   virtual Float_t GetPCThickness(void)              = 0 ;
48   virtual Float_t GetPhiDisplacement(void)          = 0 ;
49   virtual Float_t GetPPSDModuleSize(Int_t index)    = 0 ;
50   virtual Float_t GetZDisplacement(void)            = 0 ;
51   virtual void    SetLeadConverterThickness(Float_t x) = 0 ;
52
53   // Return CPV geometrical parameters
54
55   virtual Int_t   GetNumberOfCPVLayers(void)        = 0 ;
56   virtual Bool_t  IsLeadConverterExists(void)       = 0 ;
57   virtual Float_t GetCPVActiveSize(Int_t index)     = 0 ;
58   virtual Int_t   GetNumberOfCPVChipsPhi(void)      = 0 ;
59   virtual Int_t   GetNumberOfCPVChipsZ(void)        = 0 ;
60   virtual Float_t GetGassiplexChipSize(Int_t index) = 0 ;
61   virtual Float_t GetCPVGasThickness(void)          = 0 ;
62   virtual Float_t GetCPVTextoliteThickness(void)    = 0 ;
63   virtual Float_t GetCPVCuNiFoilThickness(void)     = 0 ;
64   virtual Float_t GetFTPosition(Int_t index)        = 0 ;
65   virtual Float_t GetCPVFrameSize(Int_t index)      = 0 ;
66  
67   ClassDef(AliPHOSCPVBaseGeometry,1)        // CPV base geometry class 
68
69 } ;
70
71 #endif // ALIPHOSCPVBASEGEOMETRY_H