|
ATLAS Offline Software
|
Go to the documentation of this file.
34 m_createTrackLists(false),
37 declareInterface< ITrigPrimaryVertexFitter >(
this );
54 return StatusCode::SUCCESS;
60 return StatusCode::SUCCESS;
77 std::vector<TrigPrimaryVertexTrack*> tracks;
98 memset(&pV->
m_Gk[0][0],0,
sizeof(pV->
m_Gk));
107 if(!(*it)->isActive())
110 double dchi2=(*it)->getChi2Distance(pV);
120 (*it)->updateVertex(pV);
125 ATH_MSG_DEBUG(
"Skipping track "<<(*it)->getIndex()<<
"due to large dchi2="<<dchi2 );
138 cv[0]=pV->
m_Gk[0][0];cv[1]=pV->
m_Gk[0][1];cv[2]=pV->
m_Gk[1][1];
139 cv[3]=pV->
m_Gk[0][2];cv[4]=pV->
m_Gk[1][2];cv[5]=pV->
m_Gk[2][2];
142 output_tc.
reserve(tracks.size());
145 if ((*it)->isActive())
177 std::vector<TrigPrimaryVertexTrack*> tracks;
187 tracks.push_back(
pT);
188 Chi2V.push_back(-100.0);
200 memset(&pV->
m_Gk[0][0],0,
sizeof(pV->
m_Gk));
208 double dchi2=(*it)->getChi2Distance(pV);
220 it!=tracks.end();++
it)
delete (*it);
226 memset(&pV->
m_Gk[0][0],0,
sizeof(pV->
m_Gk));
230 double dchi2=(*it)->getChi2Distance(pV);
231 ATH_MSG_DEBUG(
"Track "<<(*it)->getIndex()<<
" dchi2="<<dchi2 );
247 memset(&pV->
m_Gk[0][0],0,
sizeof(pV->
m_Gk));
248 pV->
m_Gk[0][0]=100.0;
249 pV->
m_Gk[1][1]=100.0;
256 double dchi2=(*it)->getChi2Distance(pV);
257 Chi2V[(*it)->getIndex()-1]=dchi2;
267 (*it)->updateVertex(pV);
271 ATH_MSG_DEBUG(
"Skipping track "<<(*it)->getIndex()<<
"due to large dchi2="<<dchi2 );
287 cv[0]=pV->
m_Gk[0][0];cv[1]=pV->
m_Gk[0][1];cv[2]=pV->
m_Gk[1][1];
288 cv[3]=pV->
m_Gk[0][2];cv[4]=pV->
m_Gk[1][2];cv[5]=pV->
m_Gk[2][2];
void reserve(size_type n)
Attempt to preallocate enough memory for a specified number of elements.
JetConstituentVector::iterator iterator
def finalize(self)
_info( "content of StoreGate..." ) self.sg.dump()
Const iterator class for DataVector/DataList.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
virtual ~TrigPrimaryVertexFitter()
#define ATH_MSG_VERBOSE(x)
::StatusCode StatusCode
StatusCode definition for legacy code.
double chi2(TH1 *h0, TH1 *h1)
void clear()
Erase all the elements in the collection.
bool operator()(TrigPrimaryVertexTrack *pA, TrigPrimaryVertexTrack *pB)
double m_Gk[MAX_SIZE_VERT_COVM][MAX_SIZE_VERT_COVM]
value_type push_back(value_type pElem)
Add an element to the end of the collection.
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
double * getParametersVector()
returns vector of vertex fit parameters: vertex position + refitted track momenta at-perigee (sic !...
virtual StatusCode finalize()
virtual TrigVertex * fit(const TrackCollection *, TrackCollection &, double z=0.0) const
TrigPrimaryVertexFitter(const std::string &, const std::string &, const IInterface *)
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
virtual StatusCode initialize()