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 */
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)
18 class AliPHOSCPVBaseGeometry : public TObject {
22 AliPHOSCPVBaseGeometry() {}
23 virtual ~AliPHOSCPVBaseGeometry(void) {}
25 // Return common for PPSD and CPV geometrical parameters
27 virtual Float_t GetCPVBoxSize(Int_t index) = 0 ;
29 // Return PPSD geometrical parameters
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 ;
53 // Return CPV geometrical parameters
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 ;
67 ClassDef(AliPHOSCPVBaseGeometry,1) // CPV base geometry class
71 #endif // ALIPHOSCPVBASEGEOMETRY_H