00001 //---------------------------------------------------------------------------// 00002 // BOOST --- BESIII Object_Oriented Simulation Tool // 00003 //---------------------------------------------------------------------------// 00004 //Descpirtion: Beam Pipe detector as a concrete class 00005 // it's better to define an envelope then position it in BES 00006 //Author: Liuhm 00007 //Created: May 21, 2003 00008 //Comment: 00009 //---------------------------------------------------------------------------// 00010 // 00011 #ifndef BesPip_H 00012 #define BesPip_H 1 00013 00014 #include "BesSubdetector.hh" 00015 #include "globals.hh" 00016 class G4LogicalVolume; 00017 class BesPipParameter; 00018 00019 class BesPip : public BesSubdetector 00020 { 00021 public: 00022 00023 BesPip(); 00024 virtual ~BesPip(){;} 00025 00026 //construct EMC detector 00027 00028 void Construct(G4LogicalVolume* logicbes); 00029 void DefineMaterial(); 00030 00031 private: 00032 //your private data member (geometry, etc) here: 00033 BesPipParameter* pipPar; 00034 G4double goldLayer[3]; 00035 G4double innerBe[3]; 00036 G4double oilLayer[3]; 00037 G4double outerBe[3]; 00038 00039 G4double innerBeSide[5]; 00040 G4double innerAl[5]; 00041 G4double AlRing[5]; 00042 G4double outerAl[5]; 00043 G4double AgLayer[5]; 00044 G4double CuLayer[5]; 00045 G4double AlCover[5]; 00046 00047 00048 G4LogicalVolume* logicalPip; 00049 G4VPhysicalVolume* physicalPip; 00050 00051 G4LogicalVolume* logicalgoldLayer; 00052 G4VPhysicalVolume* physicalgoldLayer; 00053 00054 G4LogicalVolume* logicalinnerBe; 00055 G4VPhysicalVolume* physicalinnerBe; 00056 00057 G4LogicalVolume* logicaloilLayer; 00058 G4VPhysicalVolume* physicaloilLayer; 00059 00060 G4LogicalVolume* logicalouterBe; 00061 G4VPhysicalVolume* physicalouterBe; 00062 00063 G4LogicalVolume* logicalinnerBeSide; 00064 G4VPhysicalVolume* physicalinnerBeSide; 00065 00066 G4LogicalVolume* logicalinnerAl; 00067 G4VPhysicalVolume* physicalinnerAl; 00068 00069 G4LogicalVolume* logicalAlRing; 00070 G4VPhysicalVolume* physicalAlRing; 00071 00072 G4LogicalVolume* logicalouterAl; 00073 G4VPhysicalVolume* physicalouterAl; 00074 00075 G4LogicalVolume* logicalAgLayer; 00076 G4VPhysicalVolume* physicalAgLayer; 00077 00078 G4LogicalVolume* logicalCuLayer; 00079 G4VPhysicalVolume* physicalCuLayer; 00080 00081 G4LogicalVolume* logicalAlCover; 00082 G4VPhysicalVolume* physicalAlCover; 00083 00084 G4Material* Oil; 00085 G4Material* Au; 00086 G4Material* Ag; 00087 }; 00088 #endif 00089 00090 00091 00092 00093