]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIITSVSDD03_H | |
2 | #define ALIITSVSDD03_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 | // ITS step manager and geometry class for the ITS SDD test beam geometry | |
9 | // of Summer 2003 and later. | |
10 | // At present, the geometry and materials need to be checked against the | |
11 | // proper geometry of the 2003 test beam. In addition, because the SSD | |
12 | // used in the test beam are single sided, the second side needs be ignored. | |
13 | // This can cause some problems with the SSD reconstruction code. | |
14 | #include "AliITSInitGeometry.h" | |
15 | #include "AliITS.h" | |
16 | ||
17 | typedef enum { | |
18 | kNoTarg=0,kIron=4,kLead,kSteel, | |
19 | kCarbon=8,kAl,kBe,kTi,kSn,kCopper,kGe,kTungsten=19 | |
20 | } TargTyp_t; | |
21 | ||
22 | class AliITSvSDD03 : public AliITS{ | |
23 | public: | |
24 | AliITSvSDD03(); // default constructor | |
25 | AliITSvSDD03(const char *title,Int_t year); // standard constructor | |
26 | virtual ~AliITSvSDD03(); // destructor | |
27 | virtual void BuildGeometry(); | |
28 | virtual void CreateGeometry(); | |
29 | virtual void CreateMaterials(); | |
30 | virtual Int_t IsVersion() const {// returns the ITS version number | |
31 | return (Int_t)kvSDD03;} | |
32 | virtual void Init(); | |
33 | //virtual void SetDefaults(); | |
34 | virtual void DrawModule() const; | |
35 | virtual void StepManager(); | |
36 | virtual void SetTargMat(TargTyp_t tt=kNoTarg){ // set target material | |
37 | fTarg=tt;} | |
38 | virtual void SetTargThick(Float_t th=1){ // set target thickness | |
39 | fTargThick=th;} | |
40 | virtual void SetWriteDet(Bool_t det=kTRUE){ // set .det write | |
41 | fGeomDetOut = det;} | |
42 | virtual void SetWriteDet(const char *f){ // set write file | |
43 | strncpy(fWrite,f,60);fGeomDetOut = kTRUE;} | |
44 | virtual void SetReadDet(Bool_t det=kTRUE){ //set .det read | |
45 | fGeomDetIn = det;} | |
46 | virtual void SetReadDet(const char *f){ // set read file | |
47 | strncpy(fRead,f,60);fGeomDetIn = kTRUE;} | |
48 | virtual void SetEUCLIDFileName(const char *f){ // set write file | |
49 | fEuclidGeometry=f;fEuclidOut = kTRUE;} | |
50 | virtual void SetMinorVersion(Int_t v=22){ // Choose between existing minor versions | |
51 | fMinorVersion = v;} | |
52 | // Replacement default simulation initilization. | |
53 | //virtual void SetDefaultSimulation(); | |
54 | TargTyp_t GetTargMat() const {return fTarg;} | |
55 | // Decodes the id and copy nuber to give the layer, ladder, and detector | |
56 | // numbers . Returns the module number. | |
57 | //virtual Int_t DecodeDetector(Int_t id,Int_t cpy,Int_t &lay, | |
58 | // Int_t &lad,Int_t &det) const; | |
59 | // | |
60 | private: | |
61 | AliITSvSDD03(const AliITSvSDD03 &source); // Copy constructor | |
62 | AliITSvSDD03& operator=(const AliITSvSDD03 &source); // = operator | |
63 | Bool_t fGeomDetOut; // Flag to write .det file out | |
64 | Bool_t fGeomDetIn; // Flag to read .det file or directly from Geat. | |
65 | Int_t fMajorVersion; // Major version number == IsVersion | |
66 | Int_t fMinorVersion; // Minor version number | |
67 | char fEuclidGeomDet[60];// file where detector transormation are define. | |
68 | char fRead[60]; //! file name to read .det file | |
69 | char fWrite[60]; //! file name to write .det file | |
70 | Int_t fIDMother; //! ITS Mother Volume id. | |
71 | Int_t fYear; // Year flag to select different geometries. | |
72 | TargTyp_t fTarg; // Target material | |
73 | Float_t fTargThick; // TargetThickness in mm | |
74 | AliITSInitGeometry fIgm; //! Get Access to decoding an dAliITSgeom init functions | |
75 | ||
76 | ClassDef(AliITSvSDD03,3) // Hits manager and geometry for SDD testbeam | |
77 | }; | |
78 | #endif |