#include <MyMdcGeomSvc.hh>
Public Member Functions | |
double | BoxEndcape (int n) |
double | BoxEndcape (int n) |
double | BoxInStep (int n) |
double | BoxInStep (int n) |
int | ElecNo (int n) |
int | ElecNo (int n) |
double | FixRing (int n) |
double | FixRing (int n) |
double | InnerRCableFrame (int n) |
double | InnerRCableFrame (int n) |
int | Layerr (int n) |
int | Layerr (int n) |
double | LengthCableFrame (int n) |
double | LengthCableFrame (int n) |
double | LengthCableTub (int n) |
double | LengthCableTub (int n) |
MyMdcGeomSvc () | |
MyMdcGeomSvc () | |
double | OuterRCableFrame (int n) |
double | OuterRCableFrame (int n) |
double | R (int n) |
double | R (int n) |
void | ReadFilePar () |
void | ReadFilePar () |
double | RotateXAngle (int n) |
double | RotateXAngle (int n) |
double | ThinPlate (int n) |
double | ThinPlate (int n) |
int | TotalElecLayerNo () |
int | TotalElecLayerNo () |
double | X (int n) |
double | X (int n) |
double | XCenThinPlate (int n) |
double | XCenThinPlate (int n) |
double | Y (int n) |
double | Y (int n) |
double | YCenThinPlate (int n) |
double | YCenThinPlate (int n) |
double | Z (int n) |
double | Z (int n) |
double | ZCableFrame (int n) |
double | ZCableFrame (int n) |
double | ZCenThinPlate (int n) |
double | ZCenThinPlate (int n) |
~MyMdcGeomSvc () | |
~MyMdcGeomSvc () | |
Private Attributes | |
double | fBoxEndcape [3] |
double | fBoxInStep [3] |
int | fElecNo [23] |
double | fFixRing [3] |
double | fInnerRCableFrame [11] |
int | fLayerr [23] |
double | fLengthCableFrame [11] |
double | fLengthCableTub [12] |
double | fOuterRCableFrame [11] |
double | fR [23] |
double | fRotateXAngle [12] |
double | fThinPlate [3] |
int | fTotalElecLayerNo |
double | fX [23] |
double | fXCenThinPlate [12] |
double | fY [23] |
double | fYCenThinPlate [12] |
double | fZ [23] |
double | fZCableFrame [11] |
double | fZCenThinPlate [12] |
|
00008 {ReadFilePar();}
|
|
00009 {}
|
|
|
|
|
|
|
|
00118 { 00119 return fBoxEndcape[n]; 00120 }
|
|
|
|
00114 { 00115 return fBoxInStep[n]; 00116 }
|
|
|
|
00094 { 00095 return fElecNo[n]; 00096 }
|
|
|
|
00166 { 00167 return fFixRing[n]; 00168 }
|
|
|
|
00126 { 00127 return fInnerRCableFrame[n]; 00128 }
|
|
|
|
00090 { 00091 return fLayerr[n]; 00092 }
|
|
|
|
00134 { 00135 return fLengthCableFrame[n]; 00136 00137 }
|
|
|
|
00122 { 00123 return fLengthCableTub[n]; 00124 }
|
|
|
|
00130 { 00131 return fOuterRCableFrame[n]; 00132 }
|
|
|
|
00110 { 00111 return fR[n]; 00112 }
|
|
|
|
00011 { 00012 std::string geometryFilePath1 = getenv("MDCSIMROOT"); 00013 geometryFilePath1 +="/dat/MdcElectronics.txt"; 00014 00015 std::ifstream in; 00016 in.open(geometryFilePath1.c_str()); 00017 assert(in); 00018 const int maxCharOneLine=255; 00019 char temp[maxCharOneLine]; 00020 int i=0; 00021 while(in.peek()!=EOF) 00022 { 00023 in.getline(temp,maxCharOneLine); 00024 i++; 00025 if (temp[0]=='#') 00026 continue; 00027 // i is the row number of MdcElectronics.dat 00028 if(i==2) {istringstream(temp)>>fTotalElecLayerNo; 00029 continue; 00030 } 00031 if(i>=4&&i<=26) 00032 { 00033 istringstream(temp)>>fLayerr[i-4]>>fElecNo[i-4]; 00034 continue; 00035 } 00036 if(i>28&&i<=51) 00037 { 00038 istringstream(temp)>>fX[i-29]>>fY[i-29]>>fZ[i-29]>>fR[i-29]; 00039 continue; 00040 } 00041 if(i==55) 00042 { 00043 istringstream(temp)>>fBoxInStep[0]>>fBoxInStep[1]>>fBoxInStep[2]; 00044 continue; 00045 } 00046 if(i==59) 00047 { 00048 istringstream(temp)>>fBoxEndcape[0]>>fBoxEndcape[1]>>fBoxEndcape[2]; 00049 continue; 00050 } 00051 if(i==63){istringstream(temp)>>fFixRing[0]>>fFixRing[1]>>fFixRing[2];} 00052 if(i>=76&&i<87) 00053 { 00054 istringstream(temp)>>fInnerRCableFrame[i-76]>>fOuterRCableFrame[i-76]>>fLengthCableFrame[i-76]>>fZCableFrame[i-76]; 00055 continue; 00056 } 00057 if(i==90) 00058 { 00059 istringstream(temp)>>fThinPlate[0]>>fThinPlate[1]>>fThinPlate[2]; 00060 continue; 00061 } 00062 00063 if(i>=93&&i<105) 00064 { 00065 istringstream(temp)>>fXCenThinPlate[i-93]>>fYCenThinPlate[i-93]>> fZCenThinPlate[i-93]>>fRotateXAngle[i-93]; 00066 continue; 00067 } 00068 00069 00070 if(i==107) 00071 { 00072 istringstream(temp)>>fLengthCableTub[0]>>fLengthCableTub[1]>>fLengthCableTub[2]>>fLengthCableTub[3]>>fLengthCableTub[4]>>fLengthCableTub[5]>>fLengthCableTub[6]>>fLengthCableTub[7]>>fLengthCableTub[8]>>fLengthCableTub[9]>>fLengthCableTub[10]>>fLengthCableTub[11]>>fLengthCableTub[12]; 00073 continue; 00074 } 00075 if (i==109) 00076 { 00077 istringstream(temp)>>fLengthCableTub[13]>>fLengthCableTub[14]>>fLengthCableTub[15]>>fLengthCableTub[16]>>fLengthCableTub[17]>>fLengthCableTub[18]>>fLengthCableTub[19]>>fLengthCableTub[20]>>fLengthCableTub[21]>>fLengthCableTub[22]>>fLengthCableTub[23]>>fLengthCableTub[24]; 00078 continue; 00079 } 00080 00081 } 00082 }
|
|
|
|
00161 { 00162 return fRotateXAngle[n]; 00163 }
|
|
|
|
00145 { 00146 return fThinPlate[n]; 00147 }
|
|
|
|
00086 {
00087 return fTotalElecLayerNo;
00088 }
|
|
|
|
00098 { 00099 return fX[n]; 00100 }
|
|
|
|
00149 { 00150 return fXCenThinPlate[n]; 00151 }
|
|
|
|
00102 { 00103 return fY[n]; 00104 }
|
|
|
|
00153 { 00154 return fYCenThinPlate[n]; 00155 }
|
|
|
|
00106 { 00107 return fZ[n]; 00108 }
|
|
|
|
00139 { 00140 return fZCableFrame[n]; 00141 00142 }
|
|
|
|
00157 { 00158 return fZCenThinPlate[n]; 00159 }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|