/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Muc/MucGeoCreateAlg/MucGeoCreateAlg-00-01-00/MucGeoCreateAlg/MucStrip.h

Go to the documentation of this file.
00001 //------------------------------------------------------------------------------|
00002 //      [File  ]:                       MucStrip.h                              |
00003 //      [Brief ]:       Head file of class MucStrip for MUC calibration         |
00004 //      [Author]:       Xie Yuguang, <ygxie@mail.ihep.ac.cn>                    |
00005 //      [Date  ]:       May 25, 2006                                            |
00006 //      [Log   ]:       See ChangLog                                            |
00007 //------------------------------------------------------------------------------|
00008 
00009 #ifndef MUC_STRIP_H
00010 #define MUC_STRIP_H
00011 
00012 #include<iostream>
00013 
00014 #include "MucGeoCreateAlg/MucEntity.h"
00015 // #include "MucGeoCreateAlg/MucPadChain.h"
00016 
00017 using namespace std;
00018 
00019 
00020 // constants definition
00021 // any change should be confirmed according to the design
00022 const int HEAD_TURN_STR_NUM[8][2]       = { {12,30},{12,31},{12,32},{13,33},{13,34},{14,35},{14,37},{15,39} };
00023 const double FIRST_TURN_HEAD[8][2]      = { {1092.5,1062.5}, {1126,1120}, {1156,1158.5}, {1193,1179.5},
00024                                             {1228.5,1220}, {1267,1249}, {1327.5,1325}, {1388,1385} };
00025 const double SECOND_TURN_HEAD[2]        = {56,66}; // odd layer: 56, even layer: 66;
00026 const int TAIL_TURN_STR_NUM[2]          = {26,27};
00027 const double ODD_TURN_POINT_TAIL[2][2]  = { {2317,2304},{2328,2321} };
00028 const double EVEN_TURN_POINT_TAIL[2]    = {2329,2296};
00029 const double E_FIRST_STR_WT             = 48.0;
00030 
00031 //-------------------------------Class definition -------------------------------
00032 class MucStrip : public MucEntity
00033 {
00034         public:
00035 
00036                 MucStrip( int part, int segment, int layer,int id ); 
00037                 MucStrip( const MucStrip &other );
00038                 MucStrip& operator =( const MucStrip &other );
00039                 virtual ~MucStrip(); 
00040         
00041                 int     GetType();      
00042                 double  GetCenterLine();
00043                 double  GetHead();
00044                 double  GetTail();
00045                 double  GetPhi();
00046                 int     GetPadNumber();
00047 
00048 //              MucPadChain*    GetPadChain();
00049                 
00050         protected:
00051 
00052         virtual void    Init();
00053 
00054                 void    SetType();
00055                 void    SetCenterLine();
00056                 void    SetHead();
00057                 void    SetTail();
00058                 void    SetPhi();
00059 
00060         virtual void    SetThin();
00061         virtual void    SetW();
00062         virtual void    SetWu();
00063         virtual void    SetWd();
00064         virtual void    SetH();
00065         virtual void    SetL();
00066         virtual void    SetArea();
00067                 void    SetPadNumber();
00068         
00069                 void    SetEndcapStripInBes();
00070                 void    SetBarrelStripInLoc();
00071 
00072         virtual void    SetLocOrgInBes();
00073 //        virtual void    SetObjRotToMot();
00074         virtual void    SetObjOrgInBes();
00075         virtual void    SetObjOrgInLoc();
00076         
00077         private:
00078                
00079                 // Geometry info 
00080                 int     m_Type;         // strip readout type
00081                 double  m_CenterLine;   // strip center line position, endcap only
00082                 double  m_Head;         // strip head coordinate, endcap only
00083                 double  m_Tail;         // strip tail coordinate, endcap only
00084                 double  m_Phi;          // the inclination angle of local x axis and BES x axis
00085                 int     m_PadNumber;    // the number of pads in the strip
00086 
00087 //              MucPadChain* m_MucPadChain;
00088 
00089                 
00090 };
00091 
00092 #endif

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