LCOV - code coverage report
Current view: top level - EMCAL/EMCALsim - AliEMCALv0.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 2 5 40.0 %
Date: 2016-06-14 17:26:59 Functions: 3 11 27.3 %

          Line data    Source code
       1             : #ifndef ALIEMCALV0_H
       2             : #define ALIEMCALV0_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             : // Implementation version v0 of EMCAL Manager class 
      10             : // An object of this class does not produce hits nor digits
      11             : // It is the one to use if you do not want to produce outputs in TREEH or TREED
      12             : // This class places a Geometry of the EMCAL in the ALICE Detector as defined in AliEMCALGeometry.cxx
      13             : //*-- Author: Yves Schutz (SUBATECH)
      14             : //*-- and   : Sahal Yacoob (LBL / UCT) 
      15             : //          : Aleksei Pavlinov (WSU)     SHASHLYK
      16             : 
      17             : // --- ROOT system ---
      18             : 
      19             : class TFile;
      20             : class TList;
      21             : class AliEMCALShishKebabTrd1Module;
      22             : class AliEMCALSpaceFrame;
      23             : 
      24             : // --- AliRoot header files ---
      25             : #include "AliEMCAL.h"
      26             : #include "TGeoManager.h"
      27             : #include <TArrayF.h>
      28             : 
      29             : class AliEMCALv0 : public AliEMCAL {
      30             : 
      31             :  public:
      32             : 
      33             :   AliEMCALv0();
      34             :   AliEMCALv0(const char *name, const char *title="",const Bool_t checkGeoAndRun = kTRUE) ;
      35          26 :   virtual ~AliEMCALv0(){} 
      36             : 
      37             :   using AliEMCAL::AddHit;
      38             : 
      39             :   virtual void   AddAlignableVolumes()        const;
      40             :   virtual void   AddAlignableVolumesInALICE() const;
      41             :   virtual void   AddAlignableVolumesInWSUC()  const;
      42             :   
      43             :   virtual void   CreateGeometry() ;// creates the geometry for GEANT
      44             :   virtual void   Init(void) ;                                       // does nothing
      45             :   virtual Int_t  IsVersion(void) const { 
      46             :     // Gives the version number 
      47           0 :     return 0 ; 
      48             :   }
      49             :   virtual const TString Version(void) const{ 
      50             :     // As above
      51           0 :     return TString("v0") ; 
      52             :   }
      53             :     // ShishKebab 
      54             :   void CreateShishKebabGeometry();
      55             :   void CreateSmod(const char* mother="XEN1");
      56             :   void CreateEmod(const char* mother="SMOD", const char* child="EMOD");
      57             :   void CreateAlFrontPlate(const char* mother="EMOD", const char* child="ALFP");
      58             :   // TRD1
      59             :   void Trd1Tower3X3(const Double_t *parSCM0);
      60             :   void PbInTrap(const Double_t parTRAP[11], TString n);
      61             :   // 1X1 case - Nov 22, 2006
      62             :   void Trd1Tower1X1(Double_t *parSCM0);
      63             :   void PbInTrd1(const Double_t *parTrd1, TString n);
      64             : 
      65           0 :   TList  *GetShishKebabModules() const {return fShishKebabModules;}
      66             :   AliEMCALShishKebabTrd1Module *GetShishKebabModule(Int_t neta=0);
      67             : 
      68             :  protected:
      69             :   TList   *fShishKebabModules; //! list of modules
      70             :  private:
      71             :   TArrayF  fEnvelop1;          //! parameters of EMCAL envelop for TRD1(2) case 
      72             :   Int_t    fIdRotm;            //! number of rotation matrix (working variable)
      73             :   Int_t   *fIdTmedArr;         //! fIdtmed->GetArray() - 1599;
      74             :   Double_t fSampleWidth;       //! sample width = double(g->GetECPbRadThick()+g->GetECScintThick());
      75             :   Double_t fSmodPar0;          //! x size of super module  
      76             :   Double_t fSmodPar1;          //! y size of super module  
      77             :   Double_t fSmodPar2;          //! z size of super module  
      78             :   Double_t fInnerEdge;         //! Inner edge of DCAL super module 
      79             :   Double_t fParEMOD[5];        //! parameters of EMCAL module (TRD1,2)
      80             :   AliEMCALSpaceFrame* fCalFrame; //EMCAL Space frame object
      81             :   
      82             :   AliEMCALv0(const AliEMCALv0 & emcal);
      83             :   AliEMCALv0 & operator = (const AliEMCALv0  & /*rvalue*/);
      84             :  
      85          60 :   ClassDef(AliEMCALv0,4) // Implementation of EMCAL manager class for midrapidity barrel layout between 80 and 180(190) degrees 
      86             :     
      87             :     };
      88             :     
      89             : #endif // AliEMCALV0_H

Generated by: LCOV version 1.11