LCOV - code coverage report
Current view: top level - PHOS/PHOSUtils - AliPHOSEMCAGeometry.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 48 52 92.3 %
Date: 2016-06-14 17:26:59 Functions: 48 60 80.0 %

          Line data    Source code
       1             : #ifndef ALIPHOSEMCAGEOMETRY_H
       2             : #define ALIPHOSEMCAGEOMETRY_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 : EMCA (Electromagnetic Calirometer)
      10             : // Its data members provide geometry parametrization of EMCA
      11             : // which can be changed in the constructor only.
      12             : // Author:   Yves Schutz (Subatech)
      13             : // Modified: Yuri Kharlov (IHEP, Protvino)
      14             : // 15 September 2000
      15             : 
      16             : // --- ROOT system ---
      17             : #include "TObject.h"
      18             : class TObjArray ;
      19             : 
      20             : // --- AliRoot header files ---
      21             : 
      22           0 : class AliPHOSEMCAGeometry : public TObject {
      23             : 
      24             : public: 
      25             : 
      26             :   AliPHOSEMCAGeometry();
      27             :   //Compiler-generated copy ctor and copy-assignment operator _ARE_ OK.
      28             : 
      29           0 :   virtual ~AliPHOSEMCAGeometry(void) {}
      30             : 
      31          40 :   const Float_t * GetStripHalfSize()          const {return fStripHalfSize ;         }
      32           0 :   Float_t   GetStripWallWidthOut()      const {return fStripWallWidthOut ;     }
      33          14 :   const Float_t * GetAirCellHalfSize()        const {return fAirCellHalfSize ;       }
      34           6 :   const Float_t * GetWrappedHalfSize()        const {return fWrappedHalfSize ;       }
      35          50 :   Float_t   GetAirGapLed()              const {return fAirGapLed ;             }
      36          40 :   const Float_t * GetCrystalHalfSize()        const {return fCrystalHalfSize ;       }
      37          40 :   const Float_t * GetSupportPlateHalfSize()   const {return fSupportPlateHalfSize ;  }
      38           6 :   const Float_t * GetSupportPlateInHalfSize() const {return fSupportPlateInHalfSize ;}
      39           2 :   Float_t   GetSupportPlateThickness()  const { return fSupportPlateThickness ;}    
      40             : 
      41          40 :   const Float_t * GetPreampHalfSize()         const {return fPreampHalfSize ;        }
      42          40 :   const Float_t * GetAPDHalfSize()            const {return fPinDiodeHalfSize ;      }
      43          10 :   const Float_t * GetOuterThermoParams()      const {return  fOuterThermoParams ;    }
      44           8 :   const Float_t * GetCoolerHalfSize()         const {return fCoolerHalfSize ;        }
      45           8 :   const Float_t * GetAirGapHalfSize()         const {return fAirGapHalfSize;         }
      46          58 :   const Float_t * GetInnerThermoHalfSize()    const {return  fInnerThermoHalfSize ;  }
      47          10 :   const Float_t * GetAlCoverParams()          const {return fAlCoverParams ;         }
      48           6 :   const Float_t * GetFiberGlassHalfSize()     const {return fFiberGlassHalfSize ;    }
      49           8 :   const Float_t * GetWarmAlCoverHalfSize()    const {return fWarmAlCoverHalfSize ;   }
      50           8 :   const Float_t * GetWarmThermoHalfSize()     const {return fWarmThermoHalfSize ;    }
      51           8 :   const Float_t * GetTSupport1HalfSize()      const {return fTSupport1HalfSize ;     }
      52           6 :   const Float_t * GetTSupport2HalfSize()      const {return fTSupport2HalfSize ;     }
      53           8 :   const Float_t * GetTCables1HalfSize()       const {return fTCables1HalfSize ;      }
      54           8 :   const Float_t * GetTCables2HalfSize()       const {return fTCables2HalfSize ;      }
      55          36 :   Float_t   GetTSupportDist()           const {return fTSupportDist ;          }
      56           6 :   const Float_t * GetFrameXHalfSize()         const {return fFrameXHalfSize ;        }
      57           6 :   const Float_t * GetFrameZHalfSize()         const {return fFrameZHalfSize ;        }
      58           2 :   const Float_t * GetFrameXPosition()         const {return fFrameXPosition ;        }
      59           2 :   const Float_t * GetFrameZPosition()         const {return fFrameZPosition ;        }
      60           6 :   const Float_t * GetFGupXHalfSize()          const {return fFGupXHalfSize ;         }
      61           2 :   const Float_t * GetFGupXPosition()          const {return fFGupXPosition ;         }
      62           6 :   const Float_t * GetFGupZHalfSize()          const {return fFGupZHalfSize ;         }
      63           2 :   const Float_t * GetFGupZPosition()          const {return fFGupZPosition ;         }
      64           6 :   const Float_t * GetFGlowXHalfSize()         const {return fFGlowXHalfSize ;        }
      65           2 :   const Float_t * GetFGlowXPosition()         const {return fFGlowXPosition ;        }
      66           6 :   const Float_t * GetFGlowZHalfSize()         const {return fFGlowZHalfSize ;        }
      67           2 :   const Float_t * GetFGlowZPosition()         const {return fFGlowZPosition ;        }
      68           6 :   const Float_t * GetFEEAirHalfSize()         const {return fFEEAirHalfSize ;        }
      69           2 :   const Float_t * GetFEEAirPosition()         const {return fFEEAirPosition ;        }
      70          14 :   const Float_t * GetEMCParams()              const {return fEMCParams ;             }
      71             : 
      72           0 :   Float_t    GetIPtoCrystalSurface()     const {return fIPtoCrystalSurface ;   }
      73          14 :   Float_t    GetIPtoOuterCoverDistance() const {return fIPtoOuterCoverDistance;}
      74      155504 :   Float_t    GetCrystalSize(Int_t index) const {return 2.*fCrystalHalfSize[index] ; }
      75             : 
      76      558646 :   Int_t     GetNCellsXInStrip() const { return fNCellsXInStrip;}
      77          24 :   Int_t     GetNCellsZInStrip() const { return fNCellsZInStrip;}
      78          34 :   Int_t     GetNStripX()        const { return fNStripX ;      }
      79     1676736 :   Int_t     GetNStripZ()        const { return fNStripZ ;      }
      80          40 :   Int_t     GetNTSuppots()      const { return fNTSupports;    }
      81      559402 :   Int_t     GetNPhi()           const { return fNPhi ;         }
      82     1118008 :   Int_t     GetNZ()             const { return fNZ ;           }
      83             :  
      84             : private:
      85             : 
      86             :   Float_t fStripHalfSize[3]   ;        // Strip unit size/2
      87             :   Float_t fAirCellHalfSize[3] ;        // geometry parameter
      88             :   Float_t fWrappedHalfSize[3] ;        // geometry parameter
      89             :   Float_t fSupportPlateHalfSize[3] ;   // geometry parameter
      90             :   Float_t fSupportPlateInHalfSize[3] ; // geometry parameter
      91             :   Float_t fCrystalHalfSize[3] ;        // crystal size/2
      92             :   Float_t fAirGapLed ;                 // geometry parameter
      93             :   Float_t fStripWallWidthOut ;         // Side to another strip  
      94             :   Float_t fStripWallWidthIn ;          // geometry parameter
      95             :   Float_t fTyvecThickness ;            // geometry parameter
      96             :   Float_t fTSupport1HalfSize[3] ;      // geometry parameter
      97             :   Float_t fTSupport2HalfSize[3] ;      // geometry parameter
      98             :   Float_t fPreampHalfSize[3] ;         // geometry parameter
      99             :   Float_t fPinDiodeHalfSize[3] ;       // Size of the PIN Diode 
     100             : 
     101             :   Float_t fOuterThermoParams[4] ;      // geometry parameter
     102             :   Float_t fCoolerHalfSize[3] ;         // geometry parameter
     103             :   Float_t fAirGapHalfSize[3] ;         // geometry parameter
     104             :   Float_t fInnerThermoHalfSize[3] ;    // geometry parameter
     105             :   Float_t fAlCoverParams[4] ;          // geometry parameter
     106             :   Float_t fFiberGlassHalfSize[3] ;     // geometry parameter
     107             : 
     108             :   Float_t fInnerThermoWidthX ;         // geometry parameter
     109             :   Float_t fInnerThermoWidthY ;         // geometry parameter
     110             :   Float_t fInnerThermoWidthZ ;         // geometry parameter
     111             :   Float_t fAirGapWidthX ;              // geometry parameter
     112             :   Float_t fAirGapWidthY ;              // geometry parameter
     113             :   Float_t fAirGapWidthZ ;              // geometry parameter
     114             :   Float_t fCoolerWidthX ;              // geometry parameter
     115             :   Float_t fCoolerWidthY ;              // geometry parameter
     116             :   Float_t fCoolerWidthZ ;              // geometry parameter
     117             :   Float_t fAlCoverThickness ;          // geometry parameter
     118             :   Float_t fOuterThermoWidthXUp ;       // geometry parameter
     119             :   Float_t fOuterThermoWidthXLow;       // geometry parameter
     120             :   Float_t fOuterThermoWidthY ;         // geometry parameter
     121             :   Float_t fOuterThermoWidthZ ;         // geometry parameter
     122             :   Float_t fAlFrontCoverX  ;            // geometry parameter
     123             :   Float_t fAlFrontCoverZ  ;            // geometry parameter
     124             :   Float_t fFiberGlassSup2X ;           // geometry parameter
     125             :   Float_t fFiberGlassSup1X ;           // geometry parameter
     126             :   Float_t fFrameHeight ;               // geometry parameter
     127             :   Float_t fFrameThickness ;            // geometry parameter
     128             :   Float_t fAirSpaceFeeX ;              // geometry parameter
     129             :   Float_t fAirSpaceFeeZ ;              // geometry parameter
     130             :   Float_t fAirSpaceFeeY ;              // geometry parameter
     131             :   Float_t fTCables2HalfSize[3] ;       // geometry parameter
     132             :   Float_t fTCables1HalfSize[3] ;       // geometry parameter
     133             :   Float_t fWarmUpperThickness ;        // geometry parameter
     134             :   Float_t fWarmBottomThickness ;       // geometry parameter
     135             :   Float_t fWarmAlCoverWidthX ;         // geometry parameter
     136             :   Float_t fWarmAlCoverWidthY ;         // geometry parameter
     137             :   Float_t fWarmAlCoverWidthZ ;         // geometry parameter
     138             :   Float_t fWarmAlCoverHalfSize[3] ;    // geometry parameter
     139             :   Float_t fWarmThermoHalfSize[3] ;     // geometry parameter
     140             :   Float_t fFiberGlassSup1Y ;           // geometry parameter
     141             :   Float_t fFiberGlassSup2Y ;           // geometry parameter
     142             :   Float_t fTSupportDist ;              // geometry parameter
     143             :   Float_t fTSupport1Thickness ;        // geometry parameter
     144             :   Float_t fTSupport2Thickness ;        // geometry parameter
     145             :   Float_t fTSupport1Width ;            // geometry parameter
     146             :   Float_t fTSupport2Width ;            // geometry parameter
     147             :   Float_t fFrameXHalfSize[3] ;         // geometry parameter
     148             :   Float_t fFrameZHalfSize[3] ;         // geometry parameter
     149             :   Float_t fFrameXPosition[3] ;         // geometry parameter
     150             :   Float_t fFrameZPosition[3] ;         // geometry parameter
     151             :   Float_t fFGupXHalfSize[3] ;          // geometry parameter
     152             :   Float_t fFGupXPosition[3] ;          // geometry parameter
     153             :   Float_t fFGupZHalfSize[3] ;          // geometry parameter
     154             :   Float_t fFGupZPosition[3] ;          // geometry parameter
     155             :   Float_t fFGlowXHalfSize[3] ;         // geometry parameter
     156             :   Float_t fFGlowXPosition[3] ;         // geometry parameter
     157             :   Float_t fFGlowZHalfSize[3] ;         // geometry parameter
     158             :   Float_t fFGlowZPosition[3] ;         // geometry parameter
     159             :   Float_t fFEEAirHalfSize[3] ;         // geometry parameter
     160             :   Float_t fFEEAirPosition[3] ;         // geometry parameter
     161             :   Float_t fEMCParams[4] ;              // geometry parameter
     162             :   Float_t fIPtoOuterCoverDistance ;    // Distances from interaction point to outer cover 
     163             :   Float_t fIPtoCrystalSurface ;        // Distances from interaction point to Xtal surface
     164             : 
     165             :   Float_t fSupportPlateThickness ;     // Thickness of the Aluminium support plate for Strip   
     166             : 
     167             :   Int_t  fNCellsXInStrip ;             // Number of cells in a strip unit in X
     168             :   Int_t  fNCellsZInStrip ;             // Number of cells in a strip unit in Z
     169             :   Int_t  fNStripX ;                    // Number of strip units in X
     170             :   Int_t  fNStripZ ;                    // Number of strip units in Z
     171             :   Int_t  fNTSupports ;                 // geometry parameter
     172             :   Int_t  fNPhi ;                       // Number of crystal units in X (phi) direction
     173             :   Int_t  fNZ ;                         // Number of crystal units in Z direction
     174          46 :   ClassDef(AliPHOSEMCAGeometry,1)      // EMCA geometry class 
     175             : 
     176             : } ;
     177             : 
     178             : #endif // AliPHOSEMCAGEOMETRY_H

Generated by: LCOV version 1.11