Coding rule violations corrected.
[u/mrichter/AliRoot.git] / ITS / AliITSvSDD03.h
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
15 #include "AliITS.h"
16
17 class AliITSvSDD03 : public AliITS{
18  public:
19     AliITSvSDD03(); // default constructor
20     AliITSvSDD03(const char *title,Int_t year); // standard constructor
21     AliITSvSDD03(const AliITSvSDD03 &source); // Copy constructor
22     AliITSvSDD03& operator=(const AliITSvSDD03 &source); // = operator
23     virtual ~AliITSvSDD03(); // destructor
24     virtual void   BuildGeometry();
25     virtual void   CreateGeometry();
26     virtual void   CreateMaterials();
27     virtual Int_t  IsVersion() const {// returns the ITS version number 
28                                       return 1;} 
29     virtual void   Init(); 
30     virtual void   SetDefaults();
31     virtual void   DrawModule() const;
32     virtual void   StepManager(); 
33     virtual void   SetWriteDet(Bool_t det=kTRUE){ // set .det write
34                                                  fGeomDetOut = det;}
35     virtual void   SetWriteDet(const char *f){ // set write file
36                                      strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
37     virtual void   SetReadDet(Bool_t det=kTRUE){ //set .det read
38                                                 fGeomDetIn = det;}
39     virtual void   SetReadDet(const char *f){ // set read file
40                                        strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
41     virtual void   SetEUCLIDFileName(const char *f){ // set write file
42                              fEuclidGeometry=f;fEuclidOut = kTRUE;}
43     virtual void   SetMinorVersion(Int_t v=22){ // Choose between existing minor versions
44         fMinorVersion = v;} 
45     virtual void   SetThicknessDet1(Float_t v=300.){
46          // Set detector thickness in layer 1
47          fDet1 = v;}
48     virtual void   SetThicknessDet2(Float_t v=300.){
49          // Set detector thickness in layer 2
50          fDet2 = v;}
51     virtual void   SetThicknessChip1(Float_t v=300.){
52          // Set chip thickness in layer 1
53          fChip1 = v;}
54     virtual void   SetThicknessChip2(Float_t v=300.){
55          // Set chip thickness in layer 2
56          fChip2 = v;}
57     // Replacement default simulation initilization.
58     virtual void SetDefaultSimulation();
59     // Decodes the id and copy nuber to give the layer, ladder, and detector 
60     // numbers . Returns the module number.
61     virtual Int_t DecodeDetector(Int_t id,Int_t cpy,Int_t &lay,
62                                  Int_t &lad,Int_t &det) const;
63          //
64  private:  
65     void InitAliITSgeom();
66     Bool_t fGeomDetOut;       // Flag to write .det file out
67     Bool_t fGeomDetIn;        // Flag to read .det file or directly from Geat.
68     Int_t  fMajorVersion;     // Major version number == IsVersion
69     Int_t  fMinorVersion;     // Minor version number 
70     char   fEuclidGeomDet[60];// file where detector transormation are define.
71     char   fRead[60];         //! file name to read .det file
72     char   fWrite[60];        //! file name to write .det file 
73     Float_t  fDet1;           // thickness of detector in SDD layer 1
74     Float_t  fDet2;           // thickness of detector in SDD layer 2
75     Float_t  fChip1;          // thickness of chip in SDD layer 1
76     Float_t  fChip2;          // thickness of chip in SDD layer 2 
77     Int_t fIDMother;          //! ITS Mother Volume id.
78     Int_t fYear;              // Year flag to select different geometries.
79
80     ClassDef(AliITSvSDD03,1) // Hits manager and geometry for SDD testbeam
81 };
82 #endif