]>
Commit | Line | Data |
---|---|---|
451f5018 | 1 | #ifndef ALIITSVUPGRADE_H |
2 | #define ALIITSVUPGRADE_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 | // Geometry for the Upgrade of the Inner Tracking System | |
9 | // | |
10 | // Mario Sitta (sitta@to.infn.it) | |
11 | // | |
12 | //======================================================================== | |
13 | ||
14 | ||
15 | // $Id: AliITSUv11.h | |
16 | ||
17 | #include "AliITSU.h" | |
18 | ||
19 | class AliITSUv11Layer; | |
20 | class AliITSv11GeomBeamPipe; | |
21 | class TGeoVolume; | |
22 | class TGeoVolumeAssembly; | |
23 | ||
24 | class AliITSUv11 : public AliITSU { | |
25 | ||
26 | public: | |
27 | AliITSUv11(); | |
28 | AliITSUv11(const char *title, const Int_t nlay); | |
29 | virtual ~AliITSUv11() ; | |
30 | ||
31 | virtual void AddAlignableVolumes() const; | |
451f5018 | 32 | virtual void CreateGeometry(); |
33 | virtual void CreateMaterials(); | |
5d49e153 | 34 | virtual void DefineLayer(Int_t nlay,Double_t phi0,Double_t r,Double_t zlen,Int_t nladd, |
35 | Int_t nmod, Double_t lthick=0.,Double_t dthick=0.,UInt_t detType=0); | |
36 | virtual void DefineLayerTurbo(Int_t nlay,Double_t phi0,Double_t r,Double_t zlen,Int_t nladd, | |
37 | Int_t nmod,Double_t width,Double_t tilt, | |
38 | Double_t lthick = 0.,Double_t dthick = 0.,UInt_t detType=0); | |
39 | virtual void GetLayerParameters(Int_t nlay, Double_t &phi0,Double_t &r, Double_t &zlen, | |
451f5018 | 40 | Int_t &nladd, Int_t &nmod, |
41 | Double_t &width, Double_t &tilt, | |
5d49e153 | 42 | Double_t <hick, Double_t &mthick) const; |
451f5018 | 43 | virtual void Init(); |
5d49e153 | 44 | virtual Bool_t IsLayerTurbo(Int_t nlay); |
45 | virtual Int_t IsVersion() const { return 20;} // vUpgrade ? do we need this | |
451f5018 | 46 | virtual void SetDefaults(); |
47 | virtual void StepManager(); | |
48 | virtual void SetLayerDetTypeID(Int_t lr, UInt_t id); | |
49 | virtual Int_t GetLayerDetTypeID(Int_t lr); | |
50 | // | |
451f5018 | 51 | private: |
52 | AliITSUv11(const AliITSUv11 &source); // copy constructor | |
53 | AliITSUv11& operator=(const AliITSUv11 &source); // assignment operator | |
54 | // | |
55 | Bool_t *fLayTurbo; // True for "turbo" layers | |
5d49e153 | 56 | Double_t *fLayPhi0; // Vector of layer's 1st ladder phi in lab |
451f5018 | 57 | Double_t *fLayRadii; // Vector of layer radii |
58 | Double_t *fLayZLength; // Vector of layer length along Z | |
59 | Int_t *fLaddPerLay; // Vector of number of ladders per layer | |
60 | Int_t *fModPerLadd; // Vector of number of modules per ladder | |
61 | Double_t *fLadThick; // Vector of ladder thicknesses | |
62 | Double_t *fLadWidth; // Vector of ladder width (only used for turbo) | |
63 | Double_t *fLadTilt; // Vector of ladder tilt (only used for turbo) | |
64 | Double_t *fDetThick; // Vector of detector thicknesses | |
65 | UInt_t *fDetTypeID; // Vector of detector type id | |
451f5018 | 66 | // |
67 | AliITSUv11Layer **fUpGeom; //! Geometry | |
451f5018 | 68 | |
69 | // Parameters for the Upgrade geometry | |
70 | ||
451f5018 | 71 | ClassDef(AliITSUv11,0) |
72 | }; | |
73 | ||
74 | #endif |