27 {
28 if ( m_MdcTF ) m_MdcTF->GetTrack();
29
30 strackNo = 0;
31 ltrackNo = 0;
32 nItrkSL1 = 0;
33 nItrkSL2 = 0;
34 strackId.clear();
35 ltrackId.clear();
36 intrkId1.clear();
37 intrkId2.clear();
38
39 intrkId1 = m_MdcTF->GetintrkSL1();
40 intrkId2 = m_MdcTF->GetintrkSL2();
41 nItrkSL1 = intrkId1.size();
42 nItrkSL2 = intrkId2.size();
43
44
45 for ( int i = 0; i < 128; i++ )
46 {
47 int stId = 0, ltId = 0;
48
49 if ( m_MdcTF->GetstrackId( i ) != 0 )
50 {
51
52
53 for ( int j = 1; j < 17; j++ )
54 {
55 if ( ( i - j ) < 0 ) stId = m_MdcTF->GetstrackId( 128 - j + i );
56 else stId = m_MdcTF->GetstrackId( i - j );
57
58 if ( stId == 0 )
59 {
60 if ( j % 2 != 0 )
61 {
62 strackId.push_back( i );
63 strackNo += 1;
64 }
65 break;
66 }
67 }
68 }
69
70 if ( m_MdcTF->GetltrackId( i ) != 0 )
71 {
72
73 for ( int j = 1; j < 17; j++ )
74 {
75 if ( ( i - j ) < 0 ) ltId = m_MdcTF->GetltrackId( 128 - j + i );
76 else ltId = m_MdcTF->GetltrackId( i - j );
77 if ( ltId == 0 )
78 {
79 if ( j % 2 != 0 )
80 {
81 ltrackId.push_back( i );
82 ltrackNo += 1;
83 }
84 break;
85 }
86 }
87 }
88 }
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103 ISvcLocator* svcLocator = Gaudi::svcLocator();
104 StatusCode sc = svcLocator->service( "BesGlobalTrigSvc", m_tmpSvc );
105 m_pIBGT = dynamic_cast<BesGlobalTrigSvc*>( m_tmpSvc );
106
107
108 m_pIBGT->setMdcStrkId( strackId );
109 m_pIBGT->setMdcLtrkId( ltrackId );
110}