00001 // a template header file for a class called "MdcGeoEnd" 00002 #ifndef MDC_GEO_End_H 00003 #define MDC_GEO_End_H 00004 00005 #include <iostream> 00006 #include <string> 00007 using namespace std; 00008 00009 class MdcGeoEnd { 00010 //class used for construct tube and endplate in MC 00011 public: 00012 MdcGeoEnd(void){}; 00013 ~MdcGeoEnd(void){}; 00014 00015 public: 00016 int Id(void) const { return fId; } 00017 double Length(void) const { return fLength;} //Full length In Z direction 00018 double InnerR(void) const { return fInnerR;} //From Z axes to bottom surface of those segments. 00019 double OutR(void) const { return fOutR; }//From Z axes to upper surface of those segments. 00020 double Z(void) const { return fZ; } //Offset value of segment center from Z=0 00021 string Name(void) const { return fName; } //name of segment 00022 00023 public: 00024 void Id(int x) {fId=x;} 00025 void Length(double x) {fLength=x;} 00026 void InnerR(double x) {fInnerR=x;} 00027 void OutR(double x) {fOutR=x;} 00028 void Z(double x) {fZ=x;} 00029 void Name(string x) {fName=x;} 00030 00031 private: 00032 int fId; 00033 double fLength, fInnerR, fOutR, fZ; 00034 string fName; 00035 }; 00036 00037 #endif /* MdcGeoEnd_CLASS */ 00038 00039