LCOV - code coverage report
Current view: top level - TOF/TOFsim - AliTOFv6T0.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 5 60.0 %
Date: 2016-06-14 17:26:59 Functions: 6 11 54.5 %

          Line data    Source code
       1             : #ifndef ALITOFV6T0_H
       2             : #define ALITOFV6T0_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : //_________________________________________________________________________//
       7             : //                                                                         //
       8             : // Implementation version v6 of TOF Manager class                          //
       9             : // FULL COVERAGE VERSION + OPTION FOR PHOS HOLES                           //
      10             : //                                                                         //
      11             : // -- Authors: G. Cara Romeo, A. De Caro                                   //
      12             : //                                                                         //
      13             : //_________________________________________________________________________//
      14             : 
      15             : #include "AliTOF.h"
      16             :  
      17             :  
      18             : class AliTOFv6T0 : public AliTOF {
      19             : 
      20             : public:
      21             :   AliTOFv6T0();
      22             :   AliTOFv6T0(const char *name, const char *title);
      23          78 :   virtual ~AliTOFv6T0() {};
      24             :   virtual void   CreateGeometry();
      25             :   virtual void   CreateMaterials();
      26             :   virtual void   Init();
      27          12 :   virtual Int_t  IsVersion() const {return 8;}
      28             :   virtual void   AddAlignableVolumes() const;
      29             :   virtual void   TOFpc(Float_t xtof,  Float_t ytof, Float_t zlenA);
      30           0 :   virtual void   TOFpc(Float_t, Float_t, Float_t, Float_t) {};
      31           0 :   virtual void   TOFpc(Float_t, Float_t, Float_t, Float_t, Float_t, Float_t) {};
      32             :   virtual void   StepManager();
      33             :  
      34             :  protected:
      35             : 
      36             :   void MaterialMixer(Float_t * p, const Float_t * const a,
      37             :                      const Float_t * const m, Int_t n) const;
      38             : 
      39             : private:
      40             : 
      41             :   void CreateModules(Float_t xtof, Float_t ytof, Float_t zlenA,
      42             :                      Float_t xFLT, Float_t yFLT, Float_t zFLTA) const;
      43             :   void MakeStripsInModules(Float_t ytof, Float_t zlenA) const;
      44             :   void CreateModuleCovers(Float_t xtof, Float_t zlenA) const;
      45             :   void CreateBackZone(Float_t xtof, Float_t ytof, Float_t zlenA) const;
      46             :   void MakeFrontEndElectronics(Float_t xtof) const;
      47             :   void MakeFEACooling(Float_t xtof) const;
      48             :   void MakeNinoMask(Float_t xtof) const;
      49             :   void MakeSuperModuleCooling(Float_t xtof, Float_t ytof, Float_t zlenA) const;
      50             :   void MakeSuperModuleServices(Float_t xtof, Float_t ytof, Float_t zlenA) const;
      51             :   void MakeModulesInBTOFvolumes(Float_t ytof, Float_t zlenA) const;
      52             :   void MakeCoversInBTOFvolumes() const;
      53             :   void MakeBackInBTOFvolumes(Float_t ytof) const;
      54             :   void MakeReadoutCrates(Float_t ytof) const;
      55             : 
      56             :   Int_t fIdFTOA; // FTOA volume identifier (outer plate A)
      57             :   Int_t fIdFTOB; // FTOB volume identifier (outer plate B)
      58             :   Int_t fIdFTOC; // FTOC volume identifier (outer plate C)
      59             :   Int_t fIdFLTA; // FLTA volume identifier (inner plate A)
      60             :   Int_t fIdFLTB; // FLTB volume identifier (inner plate B)
      61             :   Int_t fIdFLTC; // FLTC volume identifier (inner plate C)
      62             : 
      63             :   //private:
      64             : 
      65             :   static const Bool_t fgkFEAwithMasks[18]; // Selecting TOF sectors containing FEA cooling masks
      66             : 
      67             :   static const Float_t fgkModuleWallThickness;  // wall thickness (cm)
      68             :   static const Float_t fgkInterCentrModBorder1; // 1st distance of
      69             :                                                 // border between
      70             :                                                 // central and
      71             :                                                 // intermediate
      72             :                                                 // modules respect to
      73             :                                                 // the central module
      74             :                                                 // centre (cm)
      75             :   static const Float_t fgkInterCentrModBorder2; // 2nd distance of
      76             :                                                 // border between the
      77             :                                                 // central and
      78             :                                                 // intermediate
      79             :                                                 // modules respect to
      80             :                                                 // the central module
      81             :                                                 // centre (cm)
      82             :   static const Float_t fgkExterInterModBorder1; // 1st distance of
      83             :                                                 // border between the
      84             :                                                 // intermediate and
      85             :                                                 // external modules
      86             :                                                 // respect to the
      87             :                                                 // central module
      88             :                                                 // centre (cm)
      89             :   static const Float_t fgkExterInterModBorder2; // 2nd distance of
      90             :                                                 // border between the
      91             :                                                 // intermediate and
      92             :                                                 // external
      93             :                                                 // modules respect to
      94             :                                                 // the central module
      95             :                                                 // centre (cm)
      96             :   /*
      97             :   static const Float_t fgkLengthInCeModBorder;  // height of border
      98             :                                                 // between the central
      99             :                                                 // and intermediate
     100             :                                                 // modules (cm)
     101             :                                                 */
     102             :   static const Float_t fgkLengthInCeModBorderU; // height of upper border
     103             :                                                 // between the central
     104             :                                                 // and intermediate
     105             :                                                 // modules (cm)
     106             :   static const Float_t fgkLengthInCeModBorderD; // height of lower border
     107             :                                                 // between the central
     108             :                                                 // and intermediate
     109             :                                                 // modules (cm)
     110             :   static const Float_t fgkLengthExInModBorder;  // height of border
     111             :                                                 // between the
     112             :                                                 // intermediate and
     113             :                                                 // external modules
     114             :                                                 // (cm)
     115             :   static const Float_t fgkModuleCoverThickness; // thickness of cover
     116             :                                                 // modules zone (cm)
     117             :   static const Float_t fgkFEAwidth1; // mother volume width of each of
     118             :                                      // two external FEA in a
     119             :                                      // supermodule (cm)
     120             :   static const Float_t fgkFEAwidth2; // mother volume width of two
     121             :                                      // internal FEA in a supermodule
     122             :                                      // (cm)
     123             :   static const Float_t fgkSawThickness; // services alluminium wall
     124             :                                         // thickness (cm)
     125             :   static const Float_t fgkCBLw;  // cables&tubes block width (cm)
     126             :   static const Float_t fgkCBLh1; // min. height of cables&tubes block
     127             :                                  // (cm)
     128             :   static const Float_t fgkCBLh2; // max. height of cables&tubes block
     129             :                                  // (cm)
     130             :   static const Float_t fgkBetweenLandMask; // distance between the L
     131             :                                            // element and the Nino
     132             :                                            // mask (cm)
     133             :   static const Float_t fgkAl1parameters[3]; // (cm)
     134             :   static const Float_t fgkAl2parameters[3]; // (cm)
     135             :   static const Float_t fgkAl3parameters[3]; // (cm)
     136             :   static const Float_t fgkRoof1parameters[3]; // (cm)
     137             :   static const Float_t fgkRoof2parameters[3]; // (cm)
     138             :   static const Float_t fgkFEAparameters[3]; // (cm)
     139             :   //static const Float_t fgkFCAparameters[3]; // (cm)
     140             :   static const Float_t fgkBar[3]; // (cm)
     141             :   static const Float_t fgkBar1[3]; // (cm)
     142             :   static const Float_t fgkBar2[3]; // (cm)
     143             :   static const Float_t fgkBarS[3]; // (cm)
     144             :   static const Float_t fgkBarS1[3]; // (cm)
     145             :   static const Float_t fgkBarS2[3]; // (cm)
     146             : 
     147       16534 :   ClassDef(AliTOFv6T0,1)  //Time Of Flight version 6
     148             : };
     149             :  
     150             : #endif /* ALITOFV6T0_H */

Generated by: LCOV version 1.11