Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

MyMdcGeomSvc Class Reference

#include <MyMdcGeomSvc.hh>

List of all members.

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]


Constructor & Destructor Documentation

MyMdcGeomSvc::MyMdcGeomSvc  ) 
 

00008 {ReadFilePar();}

MyMdcGeomSvc::~MyMdcGeomSvc  ) 
 

00009 {}

MyMdcGeomSvc::MyMdcGeomSvc  ) 
 

MyMdcGeomSvc::~MyMdcGeomSvc  ) 
 


Member Function Documentation

double MyMdcGeomSvc::BoxEndcape int  n  ) 
 

double MyMdcGeomSvc::BoxEndcape int  n  ) 
 

00118        {
00119         return fBoxEndcape[n];
00120        }

double MyMdcGeomSvc::BoxInStep int  n  ) 
 

double MyMdcGeomSvc::BoxInStep int  n  ) 
 

00114        {
00115         return fBoxInStep[n];
00116        }

int MyMdcGeomSvc::ElecNo int  n  ) 
 

int MyMdcGeomSvc::ElecNo int  n  ) 
 

00094        {
00095         return fElecNo[n];
00096        }

double MyMdcGeomSvc::FixRing int  n  ) 
 

double MyMdcGeomSvc::FixRing int  n  ) 
 

00166        {
00167         return  fFixRing[n];
00168        }

double MyMdcGeomSvc::InnerRCableFrame int  n  ) 
 

double MyMdcGeomSvc::InnerRCableFrame int  n  ) 
 

00126        {
00127         return fInnerRCableFrame[n];
00128        }

int MyMdcGeomSvc::Layerr int  n  ) 
 

int MyMdcGeomSvc::Layerr int  n  ) 
 

00090        {
00091         return fLayerr[n];
00092        }

double MyMdcGeomSvc::LengthCableFrame int  n  ) 
 

double MyMdcGeomSvc::LengthCableFrame int  n  ) 
 

00134        {
00135          return  fLengthCableFrame[n];
00136 
00137        }

double MyMdcGeomSvc::LengthCableTub int  n  ) 
 

double MyMdcGeomSvc::LengthCableTub int  n  ) 
 

00122        {   
00123          return   fLengthCableTub[n];
00124        }

double MyMdcGeomSvc::OuterRCableFrame int  n  ) 
 

double MyMdcGeomSvc::OuterRCableFrame int  n  ) 
 

00130        {
00131         return  fOuterRCableFrame[n];
00132        }

double MyMdcGeomSvc::R int  n  ) 
 

double MyMdcGeomSvc::R int  n  ) 
 

00110        {
00111         return fR[n];
00112        }

void MyMdcGeomSvc::ReadFilePar  ) 
 

void MyMdcGeomSvc::ReadFilePar  ) 
 

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   }

double MyMdcGeomSvc::RotateXAngle int  n  ) 
 

double MyMdcGeomSvc::RotateXAngle int  n  ) 
 

00161        {
00162         return  fRotateXAngle[n];
00163        }

double MyMdcGeomSvc::ThinPlate int  n  ) 
 

double MyMdcGeomSvc::ThinPlate int  n  ) 
 

00145        {
00146          return   fThinPlate[n];
00147        }

int MyMdcGeomSvc::TotalElecLayerNo  ) 
 

int MyMdcGeomSvc::TotalElecLayerNo  ) 
 

00086        {
00087          return fTotalElecLayerNo;
00088        }

double MyMdcGeomSvc::X int  n  ) 
 

double MyMdcGeomSvc::X int  n  ) 
 

00098        {
00099         return fX[n];
00100        }

double MyMdcGeomSvc::XCenThinPlate int  n  ) 
 

double MyMdcGeomSvc::XCenThinPlate int  n  ) 
 

00149        {
00150          return   fXCenThinPlate[n];
00151        }

double MyMdcGeomSvc::Y int  n  ) 
 

double MyMdcGeomSvc::Y int  n  ) 
 

00102        {
00103         return fY[n];
00104        }

double MyMdcGeomSvc::YCenThinPlate int  n  ) 
 

double MyMdcGeomSvc::YCenThinPlate int  n  ) 
 

00153        {
00154          return   fYCenThinPlate[n];
00155        }

double MyMdcGeomSvc::Z int  n  ) 
 

double MyMdcGeomSvc::Z int  n  ) 
 

00106        {
00107         return fZ[n];
00108        }

double MyMdcGeomSvc::ZCableFrame int  n  ) 
 

double MyMdcGeomSvc::ZCableFrame int  n  ) 
 

00139        {
00140          return  fZCableFrame[n];
00141 
00142        }

double MyMdcGeomSvc::ZCenThinPlate int  n  ) 
 

double MyMdcGeomSvc::ZCenThinPlate int  n  ) 
 

00157        {
00158          return   fZCenThinPlate[n];
00159        }


Member Data Documentation

double MyMdcGeomSvc::fBoxEndcape [private]
 

double MyMdcGeomSvc::fBoxInStep [private]
 

int MyMdcGeomSvc::fElecNo [private]
 

double MyMdcGeomSvc::fFixRing [private]
 

double MyMdcGeomSvc::fInnerRCableFrame [private]
 

int MyMdcGeomSvc::fLayerr [private]
 

double MyMdcGeomSvc::fLengthCableFrame [private]
 

double MyMdcGeomSvc::fLengthCableTub [private]
 

double MyMdcGeomSvc::fOuterRCableFrame [private]
 

double MyMdcGeomSvc::fR [private]
 

double MyMdcGeomSvc::fRotateXAngle [private]
 

double MyMdcGeomSvc::fThinPlate [private]
 

int MyMdcGeomSvc::fTotalElecLayerNo [private]
 

double MyMdcGeomSvc::fX [private]
 

double MyMdcGeomSvc::fXCenThinPlate [private]
 

double MyMdcGeomSvc::fY [private]
 

double MyMdcGeomSvc::fYCenThinPlate [private]
 

double MyMdcGeomSvc::fZ [private]
 

double MyMdcGeomSvc::fZCableFrame [private]
 

double MyMdcGeomSvc::fZCenThinPlate [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 16:37:33 2011 for BOSS6.5.5 by  doxygen 1.3.9.1