]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSv11GeometrySPD.h
Reconstruction QA by Sylwester
[u/mrichter/AliRoot.git] / ITS / AliITSv11GeometrySPD.h
1 #ifndef ALIITSV11GEOMETRYSPD_H
2 #define ALIITSV11GEOMETRYSPD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /*
7   Class which defines the SPD v11 centeral geometry, defines the
8   materials/media used for this geometry and sets the related transport
9   parameters (GEANT3 types for the moment.
10  */
11
12
13 #include <TGeoManager.h>
14 #include <TVirtualMC.h>
15 #include <AliITSv11Geometry.h>
16
17 class TGeoVolume;
18
19 class AliITSv11GeometrySPD : public AliITSv11Geometry {
20   public:
21     // Default constructor
22     AliITSv11GeometrySPD():AliITSv11Geometry(){};
23     // Default constructor with debuging level switch
24     AliITSv11GeometrySPD(Bool_t debug):AliITSv11Geometry(debug){};
25     // Destructor
26     virtual ~AliITSv11GeometrySPD(){};
27     // Creates SPD Sector geometry
28     virtual void SPDSector(TGeoVolume *moth,TGeoManager *mgr=gGeoManager);
29     // Creates SPD Carbon Fiber Sector only
30     virtual void CarbonFiberSector(TGeoVolume *moth,Double_t &xAAtubeCenter0,
31                                    Double_t &yAAtubeCenter0,
32                                    TGeoManager *mgr=gGeoManager);
33     // creates SPD Half Stave
34     virtual void HalfStave(TGeoVolume *moth,Double_t &thicknessAA,
35                            TGeoManager *mgr=gGeoManager);
36     //
37     // Creates standard figures for the documentation of this class
38     virtual void CreateFigure0(const Char_t *filepath="",
39                                const Char_t *type="gif",
40                                TGeoManager *mgr=gGeoManager);
41     // Defnes/creates SPD Centeral detector materials
42     virtual Int_t CreateSPDCenteralMaterials(Int_t &Medffset,Int_t &matOffset);
43     // Sets SPD Centeral, GEANT3 type, Tracking parameters
44     virtual void InitSPDCenteral(Int_t offset,TVirtualMC *mc=gMC);
45     //
46   private:
47     // Computes shape of the SPD Sector given specific inputs Internal use only
48     void SPDsectorShape(Int_t n,const Double_t *xc,const Double_t *yc,
49           const Double_t *r,const Double_t *ths,const Double_t *the,Int_t npr,
50                         Int_t &m,Double_t **xp,Double_t **yp);
51
52   private:
53     ClassDef(AliITSv11GeometrySPD,1) // ITS v11 Centeral SPD geometry
54 };
55
56 #endif