/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Muc/MucCalibAlg/MucCalibAlg-00-02-16/MucCalibAlg/MucEntityCal.h

Go to the documentation of this file.
00001 //------------------------------------------------------------------------------|
00002 //      [File  ]:                       MucEntityCal.h                          |
00003 //      [Brief ]:       Head file of MUC geometry entity class for calibration  |
00004 //      [Author]:       Xie Yuguang, <ygxie@mail.ihep.ac.cn>                    |
00005 //      [Date  ]:       May 22, 2005                                            |
00006 //------------------------------------------------------------------------------|
00007 
00008 #ifndef MUC_ENTITY_CAL_H
00009 #define MUC_ENTITY_CAL_H
00010 
00011 #include<iostream>
00012 
00013 using namespace std;
00014 
00015 class MucEntityCal 
00016 {
00017   public:
00018     MucEntityCal( int part, int segment, int layer ); 
00019     MucEntityCal( int part, int segment, int layer, int id );
00020     MucEntityCal( const MucEntityCal &other );
00021     MucEntityCal &operator =( const MucEntityCal &other );
00022     virtual     ~MucEntityCal() ;
00023     
00024     int     GetPart();
00025     int     GetSegment();
00026     int     GetLayer();
00027     int     GetID();
00028     
00029     double  GetTheta(); // degree
00030     double  GetRin();   // mm
00031     double  GetRout();  // mm
00032     double  GetRc();    // mm
00033     double  GetThin();  // mm
00034     double  GetW();     // mm
00035     double  GetH();     // mm
00036     double  GetL();     // mm
00037     double  GetWu();    // mm
00038     double  GetWd();    // mm
00039     double  GetArea();  // cm^2
00040                 
00041   protected:
00042 
00043     virtual void  Init();     // all geometry information initilization 
00044     
00045     virtual void  SetTheta(); // set theta
00046     virtual void  SetRin();   // set r inner
00047     virtual void  SetRout();  // set r outer
00048     virtual void  SetRc();    // set r center   
00049     virtual void  SetThin();  // set thickness
00050     virtual void  SetW();     // set width  
00051     virtual void  SetH();     // set height 
00052     virtual void  SetL();     // set stretching length 
00053     virtual void  SetWu();    // set up width  
00054     virtual void  SetWd();    // set down width 
00055     virtual void  SetArea();  // set area of entity(cm^2)
00056 
00057   protected:
00058     int     m_Part;     // part id
00059     int     m_Segment;  // segment id
00060     int     m_Layer;    // layer id
00061     int     m_ID;       // object id
00062     
00063     double  m_Theta;    // barrel: inclination angle of R and Bes_X
00064                         // endcap: inclination angle of panel boudary and Bes_X
00065     
00066     double  m_Rin;      // r of the inner surface relative to BES origin
00067     double  m_Rout;     // r of the outer surface relative to BES origin
00068     double  m_Rc;       // r of the center surface relative to BES orign        
00069     double  m_Thin;     // thickness of entity          
00070     double  m_W;        // width of cross section
00071     double  m_H;        // height of cross section
00072     double  m_L;        // stretching length of cross section
00073     double  m_Wu;       // up width of trapezoid cross section
00074     double  m_Wd;       // down width of trapezoid cross section
00075     double  m_Area;     // area of entity,mm^2
00076 };
00077 
00078 #endif
00079 

Generated on Tue Nov 29 23:12:55 2016 for BOSS_7.0.2 by  doxygen 1.4.7