14#include "MucCalibAlg/MucStructConst.h"
15#include "MucCalibAlg/MucStripCal.h"
28 m_Type = other.m_Type;
29 m_CenterLine = other.m_CenterLine;
30 m_Head = other.m_Head;
31 m_Tail = other.m_Tail;
40 if(
this == &other)
return *
this;
44 m_Type = other.m_Type;
45 m_CenterLine = other.m_CenterLine;
46 m_Head = other.m_Head;
47 m_Tail = other.m_Tail;
105 if( (
m_Layer+1)%2 == 1 ) m_Type = ZSTR;
106 else m_Type = PHISTR;
109 if( (
m_Layer+1)%2 == 1 ) m_Type = XSTR;
127 if(
m_ID != E_STR_NUM-1 )
128 m_CenterLine = segFlag * ( E_XSTR_OFFSET +
m_ID*E_STR_DST );
130 m_CenterLine = segFlag * ( E_XSTR_OFFSET + (E_STR_NUM-2)*E_STR_DST + (E_STR_DST +
m_W +
STR_GAP)/2);
137 if(
m_ID != E_STR_NUM-1)
138 m_CenterLine = segFlag * ( E_YSTR_OFFSET +
m_ID*E_STR_DST );
140 m_CenterLine = segFlag * ( E_YSTR_OFFSET + (E_STR_NUM-2)*E_STR_DST + (E_STR_DST +
m_W +
STR_GAP)/2);
192 if(
m_ID == E_STR_NUM - 1 )
206 if(
m_ID == E_STR_NUM - 1 )
238 maxStrip = B_PHISTR_NUM;
240 maxStrip = B_TOPSTR_NUM;
245 if(
m_ID > 0 &&
m_ID < (maxStrip-1))
252 if(
m_ID >0 &&
m_ID < (maxStrip-1) )
255 m_W = B_BOX_LT/2 - B_BOX_DZ[SL_DOWN] - B_STR_DST[
m_Layer]*(B_PHISTR_NUM-2)/2;
257 if( (maxStrip == B_TOPSTR_NUM) && (
m_ID == (B_PHISTR_NUM - 1)) )
258 m_W = B_BOX_LT/2 - B_BOX_DZ[SL_DOWN] - B_STR_DST[
m_Layer]*(B_PHISTR_NUM-2)/2;
265 if(
m_ID != E_STR_NUM-1)
m_W = E_STR_WT;
307 m_L = B_BOX_LT - 2*B_BOX_DZ[SL_DOWN];
309 m_L = B_BOX_WT[
m_Layer] - 2*B_BOX_DZ[SL_DOWN];
315 if(
m_ID > ZCUT_HEAD_NUM &&
m_ID < ZCUT_TAIL_NUM )
323 m_L = B_BOX_LT - 2*B_BOX_DZ[SL_DOWN];
327 if(
m_ID < B_PHISTR_CUT_NUM )
328 m_L = B_BOX_WT[
m_Layer] - 2*B_BOX_DZ[SL_DOWN];
330 m_L = (B_BOX_WT[
m_Layer] - 2*B_BOX_DZ[SL_DOWN] - B_PHISTR_CUT)/2;
336 m_L = fabs( m_Head - m_Tail );
353 cout<<
"Error, strip width = 0!"<<endl;
const int B_ZSTR_CUT_NUM[B_LAY_NUM]
const double B_ZSTR_CUT[2]
const double SECOND_TURN_HEAD[2]
const double EVEN_TURN_POINT_TAIL[2]
const double ODD_TURN_POINT_TAIL[2][2]
const int TURN_STR_ID[8][2]
const double FIRST_TURN_HEAD[8][2]
MucEntityCal & operator=(const MucEntityCal &other)
MucStripCal(int part, int segment, int layer, int id)
MucStripCal & operator=(const MucStripCal &other)