]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSvPPRasymmFMD.h
Fixed up the density of the SPD services, SDD, and SSD cone material, and
[u/mrichter/AliRoot.git] / ITS / AliITSvPPRasymmFMD.h
CommitLineData
6b2a1732 1#ifndef ALIITSVPPRASYMMFMD_H
2#define ALIITSVPPRASYMMFMD_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// Manager and hits classes for set: ITS version 10 //
10/////////////////////////////////////////////////////////
11
12#include "AliITS.h"
13
14class AliITSvPPRasymmFMD : public AliITS {
15
16 public:
17 AliITSvPPRasymmFMD();
18 AliITSvPPRasymmFMD(const char *name, const char *title);
19 AliITSvPPRasymmFMD(const AliITSvPPRasymmFMD &source); // copy constructor
20 AliITSvPPRasymmFMD& operator=(const AliITSvPPRasymmFMD &source); // assignment operator
21 virtual ~AliITSvPPRasymmFMD() ;
22 virtual void BuildGeometry();
23 virtual void CreateGeometry();
24 virtual void CreateMaterials();
25 virtual Int_t IsVersion() const {// returns the ITS version number
26 return 10;}
27 virtual void Init();
28 virtual void SetDefaults();
29 virtual void DrawModule();
30 virtual void StepManager();
31 virtual void SetWriteDet(Bool_t det=kTRUE){ // set .det write
32 fGeomDetOut = det;}
33 virtual void SetWriteDet(const char *f){ // set write file
34 strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
35 virtual void SetReadDet(Bool_t det=kTRUE){ //set .det read
36 fGeomDetIn = det;}
37 virtual void SetReadDet(const char *f){ // set read file
38 strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
39 virtual void SetEUCLID(Bool_t euclid=kTRUE){ // set write Euclid file
40 fEuclidOut = euclid;}
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 virtual void SetRails(Int_t v=1){
58 // Set flag for rails
59 fRails = v;}
87577a03 60 virtual void SetCoolingFluid(Int_t v=1){
6b2a1732 61 // Set flag for cooling fluid
87577a03 62 fFluid = v;}
63 virtual void SetDensityServicesByThickness(){// uses services density
64 // calculation based on the thickness of the services.
65 fByThick = kTRUE;}
66 virtual void SetDensityServicesByMass(){// uses services density
67 // calculation based on the Mass of the services.
68 fByThick = kFALSE;}
6b2a1732 69 virtual Bool_t GetEUCLID(){return fEuclidOut;}// returns value Euclid flag.
70 virtual const char *GetEULIIDFileName() const{ // return .euc file name
71 return fEuclidGeometry.Data();}
72 virtual Bool_t GetWriteDet() { // returns value GeomDetOut flag.
73 return fGeomDetOut;}
74 virtual Bool_t GetReadDet() { // returns value GeomDetIn flag.
75 return fGeomDetIn;}
76 virtual char *GetReadDetFileName(){ // return .det read file name
77 if(fRead[0]!='\0') return fRead; else return fEuclidGeomDet;}
78 virtual char *GetWriteDetFileName(){ // return .det write file name
79 if(fWrite[0]!='\0') return fWrite; else return fEuclidGeomDet;}
80 virtual Int_t GetMajorVersion(){// return Major Version Number
81 return fMajorVersion;}
82 virtual Int_t GetMinorVersion(){// return Major Version Number
83 return fMinorVersion;}
84 virtual Float_t GetThicknessDet1(){
85 // Get detector thickness in layer 1
86 return fDet1;}
87 virtual Float_t GetThicknessDet2(){
88 // Get detector thickness in layer 2
89 return fDet2;}
90 virtual Float_t GetThicknessChip1(){
91 // Get chip thickness in layer 1
92 return fChip1;}
93 virtual Float_t GetThicknessChip2(){
94 // Get chip thickness in layer 2
95 return fChip2;}
87577a03 96 virtual Int_t GetRails(){
6b2a1732 97 // Get flag for rails
87577a03 98 return fRails;}
6b2a1732 99 virtual Int_t GetCoolingFluid(){
100 // Get flag for cooling fluid
87577a03 101 return fFluid;}
102
6b2a1732 103 private:
104 void InitAliITSgeom();
105
106 // TString fEuclidGeomtery,fEuclidMaterial defined in AliModule.
107 Bool_t fEuclidOut; // Flag to write geometry in euclid format
108 Bool_t fGeomDetOut; // Flag to write .det file out
109 Bool_t fGeomDetIn; // Flag to read .det file or directly from Geat.
87577a03 110 Bool_t fByThick; // Flag to use services materials by thickness
111 // ture, or mass false.
6b2a1732 112 Int_t fMajorVersion; // Major version number == IsVersion
113 Int_t fMinorVersion; // Minor version number
114 char fEuclidGeomDet[60];// file where detector transormation are define.
115 char fRead[60]; //! file name to read .det file
116 char fWrite[60]; //! file name to write .det file
117 Float_t fDet1; // thickness of detector in SPD layer 1
118 Float_t fDet2; // thickness of detector in SPD layer 2
119 Float_t fChip1; // thickness of chip in SPD layer 1
120 Float_t fChip2; // thickness of chip in SPD layer 2
121 Int_t fRails; // flag to switch rails on (=1) and off (=0)
122 Int_t fFluid; // flag to switch between water (=1) and freon (=0)
123 Int_t fIDMother; //! ITS Mother Volume id.
124
87577a03 125 ClassDef(AliITSvPPRasymmFMD,2) //Hits manager for set:ITS version 8
6b2a1732 126 // PPR detailed Geometry asymmetric
127};
128
129#endif