]>
Commit | Line | Data |
---|---|---|
2012850d | 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 | |
d804d556 | 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 | |
8cc543cb | 12 | // This class places a Geometry of the EMCAL in the ALICE Detector as defined in AliEMCALGeometry.cxx |
2012850d | 13 | //*-- Author: Yves Schutz (SUBATECH) |
b13bbe81 | 14 | //*-- and : Sahal Yacoob (LBL / UCT) |
d87bd045 | 15 | // : Aleksei Pavlinov (WSU) SHASHLYK |
2012850d | 16 | |
17 | // --- ROOT system --- | |
18 | ||
b13bbe81 | 19 | class TFile; |
1963b290 | 20 | class TList; |
c01485dd | 21 | class AliEMCALShishKebabTrd1Module; |
e3697737 | 22 | class AliEMCALSpaceFrame; |
b13bbe81 | 23 | |
2012850d | 24 | // --- AliRoot header files --- |
25 | #include "AliEMCAL.h" | |
5f66b6c6 | 26 | #include "TGeoManager.h" |
cde6a23d | 27 | #include <TArrayF.h> |
2012850d | 28 | |
29 | class AliEMCALv0 : public AliEMCAL { | |
30 | ||
31 | public: | |
32 | ||
18a21c7c | 33 | AliEMCALv0(); |
28135539 | 34 | AliEMCALv0(const char *name, const char *title="",const Bool_t checkGeoAndRun = kTRUE) ; |
b13bbe81 | 35 | virtual ~AliEMCALv0(){} |
36 | ||
4800667c | 37 | using AliEMCAL::AddHit; |
38 | ||
c2ef87c2 | 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 | |
2012850d | 44 | virtual void Init(void) ; // does nothing |
45 | virtual Int_t IsVersion(void) const { | |
46 | // Gives the version number | |
47 | return 0 ; | |
48 | } | |
05a92d59 | 49 | virtual const TString Version(void) const{ |
2012850d | 50 | // As above |
51 | return TString("v0") ; | |
52 | } | |
3d841a9f | 53 | // ShishKebab |
1963b290 | 54 | void CreateShishKebabGeometry(); |
55 | void CreateSmod(const char* mother="XEN1"); | |
56 | void CreateEmod(const char* mother="SMOD", const char* child="EMOD"); | |
3d841a9f | 57 | void CreateAlFrontPlate(const char* mother="EMOD", const char* child="ALFP"); |
1963b290 | 58 | // TRD1 |
ff4af92f | 59 | void Trd1Tower3X3(const Double_t *parSCM0); |
ff4af92f | 60 | void PbInTrap(const Double_t parTRAP[11], TString n); |
d25f2c54 | 61 | // 1X1 case - Nov 22, 2006 |
ff4af92f | 62 | void Trd1Tower1X1(Double_t *parSCM0); |
63 | void PbInTrd1(const Double_t *parTrd1, TString n); | |
1963b290 | 64 | |
d804d556 | 65 | TList *GetShishKebabModules() const {return fShishKebabModules;} |
21cf2b24 | 66 | AliEMCALShishKebabTrd1Module *GetShishKebabModule(Int_t neta=0); |
cde6a23d | 67 | |
2012850d | 68 | protected: |
cde6a23d | 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 | |
8cc543cb | 78 | Double_t fInnerEdge; //! Inner edge of DCAL super module |
cde6a23d | 79 | Double_t fParEMOD[5]; //! parameters of EMCAL module (TRD1,2) |
e3697737 | 80 | AliEMCALSpaceFrame* fCalFrame; //EMCAL Space frame object |
c2ef87c2 | 81 | |
e939a978 | 82 | AliEMCALv0(const AliEMCALv0 & emcal); |
83 | AliEMCALv0 & operator = (const AliEMCALv0 & /*rvalue*/); | |
84 | ||
e3697737 | 85 | ClassDef(AliEMCALv0,4) // Implementation of EMCAL manager class for midrapidity barrel layout between 80 and 180(190) degrees |
2012850d | 86 | |
87 | }; | |
88 | ||
89 | #endif // AliEMCALV0_H |