15 const std::vector<TIDA::Track*>* trackCollection,
17 bool require_tracks ) {
19 std::vector<TIDA::Vertex> vertices;
23 for ( ; vtxitr != xAODVertices->
end(); ++vtxitr ) {
25 if ( require_tracks && (*vtxitr)->nTrackParticles()==0 )
continue;
27 if ( (*vtxitr)->vertexType()!=0 || useType0 ) {
30 if ( trackCollection ) {
31 std::vector< unsigned long > trackIds;
33 const std::vector< ElementLink< xAOD::TrackParticleContainer > >& xAODtracks = (*vtxitr)->trackParticleLinks();
35 for (
const auto&
track : xAODtracks ) {
38 trackIds.push_back(
id );
41 vertex.selectTracks( *trackCollection, trackIds );
44 vertices.push_back(
vertex );
55 const std::vector<TIDA::Track*>* trackCollection,
57 bool require_tracks ) {
59 std::vector<TIDA::Vertex> vertices;
63 for ( ; vtxitr!=enditr; ++vtxitr ) {
65 if ( require_tracks && (*vtxitr)->nTrackParticles()==0 )
continue;
67 if ( (*vtxitr)->vertexType()!=0 || useType0 ) {
71 if( trackCollection ) {
72 std::vector< unsigned long > trackIds;
74 const std::vector< ElementLink< xAOD::TrackParticleContainer > >& xAODtracks = (*vtxitr)->trackParticleLinks();
76 for(
const auto&
track : xAODtracks ) {
78 trackIds.push_back(
id );
81 vertex.selectTracks( *trackCollection, trackIds );
84 vertices.push_back(
vertex );
102 v->nTrackParticles(),
112 unsigned long id = (
unsigned long)
track;