]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSvPPRasymmFMD.h
Protection against special particle types.
[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);
6b2a1732 19 virtual ~AliITSvPPRasymmFMD() ;
20 virtual void BuildGeometry();
21 virtual void CreateGeometry();
22 virtual void CreateMaterials();
23 virtual Int_t IsVersion() const {// returns the ITS version number
24 return 10;}
25 virtual void Init();
26 virtual void SetDefaults();
41b19549 27 virtual void DrawModule() const;
6b2a1732 28 virtual void StepManager();
ed9289c8 29 virtual void AddAlignableVolumes() const;
9116ab2d 30 virtual void SetWriteDet(Bool_t det=kFALSE){ // set .det write
6b2a1732 31 fGeomDetOut = det;}
32 virtual void SetWriteDet(const char *f){ // set write file
33 strncpy(fWrite,f,60);fGeomDetOut = kTRUE;}
9116ab2d 34 virtual void SetReadDet(Bool_t det=kFALSE){ //set .det read
6b2a1732 35 fGeomDetIn = det;}
36 virtual void SetReadDet(const char *f){ // set read file
37 strncpy(fRead,f,60);fGeomDetIn = kTRUE;}
6b2a1732 38 virtual void SetEUCLIDFileName(const char *f){ // set write file
a8e8915c 39 fEuclidGeometry=f; SetEUCLID();}
d2a27428 40 virtual void SetMinorVersion(Int_t v=2){ // Choose between existing minor versions
6b2a1732 41 fMinorVersion = v;}
d2a27428 42 virtual void SetThicknessDet1(Float_t v=200.){
6b2a1732 43 // Set detector thickness in layer 1
44 fDet1 = v;}
d2a27428 45 virtual void SetThicknessDet2(Float_t v=200.){
6b2a1732 46 // Set detector thickness in layer 2
47 fDet2 = v;}
dc3ff20e 48 virtual void SetThicknessChip1(Float_t v=150.){
6b2a1732 49 // Set chip thickness in layer 1
50 fChip1 = v;}
dc3ff20e 51 virtual void SetThicknessChip2(Float_t v=150.){
6b2a1732 52 // Set chip thickness in layer 2
53 fChip2 = v;}
d2a27428 54 virtual void SetRails(Int_t v=0){
6b2a1732 55 // Set flag for rails
56 fRails = v;}
87577a03 57 virtual void SetCoolingFluid(Int_t v=1){
6b2a1732 58 // Set flag for cooling fluid
87577a03 59 fFluid = v;}
60 virtual void SetDensityServicesByThickness(){// uses services density
61 // calculation based on the thickness of the services.
62 fByThick = kTRUE;}
63 virtual void SetDensityServicesByMass(){// uses services density
64 // calculation based on the Mass of the services.
65 fByThick = kFALSE;}
6b2a1732 66 virtual const char *GetEULIIDFileName() const{ // return .euc file name
67 return fEuclidGeometry.Data();}
41b19549 68 virtual Bool_t GetWriteDet() const { // returns value GeomDetOut flag.
6b2a1732 69 return fGeomDetOut;}
41b19549 70 virtual Bool_t GetReadDet() const { // returns value GeomDetIn flag.
6b2a1732 71 return fGeomDetIn;}
72 virtual char *GetReadDetFileName(){ // return .det read file name
73 if(fRead[0]!='\0') return fRead; else return fEuclidGeomDet;}
74 virtual char *GetWriteDetFileName(){ // return .det write file name
75 if(fWrite[0]!='\0') return fWrite; else return fEuclidGeomDet;}
41b19549 76 virtual Int_t GetMajorVersion() const {// return Major Version Number
6b2a1732 77 return fMajorVersion;}
41b19549 78 virtual Int_t GetMinorVersion() const {// return Major Version Number
6b2a1732 79 return fMinorVersion;}
41b19549 80 virtual Float_t GetThicknessDet1() const {
6b2a1732 81 // Get detector thickness in layer 1
82 return fDet1;}
41b19549 83 virtual Float_t GetThicknessDet2() const {
6b2a1732 84 // Get detector thickness in layer 2
85 return fDet2;}
41b19549 86 virtual Float_t GetThicknessChip1() const {
6b2a1732 87 // Get chip thickness in layer 1
88 return fChip1;}
41b19549 89 virtual Float_t GetThicknessChip2()const {
6b2a1732 90 // Get chip thickness in layer 2
91 return fChip2;}
41b19549 92 virtual Int_t GetRails() const {
6b2a1732 93 // Get flag for rails
87577a03 94 return fRails;}
41b19549 95 virtual Int_t GetCoolingFluid() const{
6b2a1732 96 // Get flag for cooling fluid
87577a03 97 return fFluid;}
98
6b2a1732 99 private:
e939a978 100 AliITSvPPRasymmFMD(const AliITSvPPRasymmFMD &source); // copy constructor
101 AliITSvPPRasymmFMD& operator=(const AliITSvPPRasymmFMD &source); // assignment operator
6b2a1732 102 void InitAliITSgeom();
103
104 // TString fEuclidGeomtery,fEuclidMaterial defined in AliModule.
6b2a1732 105 Bool_t fGeomDetOut; // Flag to write .det file out
106 Bool_t fGeomDetIn; // Flag to read .det file or directly from Geat.
87577a03 107 Bool_t fByThick; // Flag to use services materials by thickness
108 // ture, or mass false.
6b2a1732 109 Int_t fMajorVersion; // Major version number == IsVersion
110 Int_t fMinorVersion; // Minor version number
111 char fEuclidGeomDet[60];// file where detector transormation are define.
112 char fRead[60]; //! file name to read .det file
113 char fWrite[60]; //! file name to write .det file
114 Float_t fDet1; // thickness of detector in SPD layer 1
115 Float_t fDet2; // thickness of detector in SPD layer 2
116 Float_t fChip1; // thickness of chip in SPD layer 1
117 Float_t fChip2; // thickness of chip in SPD layer 2
118 Int_t fRails; // flag to switch rails on (=1) and off (=0)
119 Int_t fFluid; // flag to switch between water (=1) and freon (=0)
120 Int_t fIDMother; //! ITS Mother Volume id.
121
41b19549 122 ClassDef(AliITSvPPRasymmFMD,3) //Hits manager for set:ITS version 8
6b2a1732 123 // PPR detailed Geometry asymmetric
124};
125
126#endif