95 {
97 Gaudi::svcLocator()->service(
"MessageSvc",
msgSvc );
98 MsgStream log(
msgSvc,
"MdcAliEvent" );
99 log << MSG::INFO << "MdcAliEvent::setKalEvent" << endmsg;
100
101 IDataProviderSvc* eventSvc = NULL;
102 Gaudi::svcLocator()->service( "EventDataSvc", eventSvc );
103
104
105 SmartDataPtr<RecEsTimeCol> aevtimeCol( eventSvc, "/Event/Recon/RecEsTimeCol" );
106 if ( !aevtimeCol || ( aevtimeCol->size() == 0 ) )
107 {
108 m_tes = -9999.0;
109 m_esFlag = -1;
110 }
111 else
112 {
113 RecEsTimeCol::iterator iter_evt = aevtimeCol->begin();
114 for ( ; iter_evt != aevtimeCol->end(); iter_evt++ )
115 {
116 m_tes = ( *iter_evt )->getTest();
117 m_esFlag = ( *iter_evt )->getStat();
118 }
119 }
120
121 m_esCutFg = false;
122 bool flagTes = false;
123 for ( int iEs = 0; iEs < m_param.nEsFlag; iEs++ )
124 {
125 if ( m_esFlag == m_param.esFlag[iEs] )
126 {
127 flagTes = true;
128 break;
129 }
130 }
131 if ( flagTes && ( m_tes > m_param.tesMin ) && ( m_tes < m_param.tesMax ) ) m_esCutFg = true;
132
133 SmartDataPtr<RecMdcKalTrackCol> kaltrkCol( eventSvc, "/Event/Recon/RecMdcKalTrackCol" );
134 if ( !kaltrkCol )
135 {
136 log << MSG::FATAL << "Could not find RecMdcKalTrackCol" << endmsg;
137 return StatusCode::FAILURE;
138 }
139
140 int i = 0;
141 MdcAliRecTrk* rectrk;
142 RecMdcKalTrackCol::iterator iter_trk = kaltrkCol->begin();
143 for ( ; iter_trk != kaltrkCol->end(); iter_trk++ )
144 {
145 rectrk = new MdcAliRecTrk();
147 m_rectrk.push_back( rectrk );
148
149 i++;
150 }
151 log << MSG::INFO << "KalTrack ntrk = " << i << endmsg;
152
153 return StatusCode::SUCCESS;
154}
void setKalTrk(RecMdcKalTrackCol::iterator it_trk)