13 const std::string&
n,
const IInterface*
p):
16 declareInterface<SVForIPTool>(
this);
20 bool & canUseSvxDirection,
22 const std::string & secVxFinderName,
25 std::vector< ElementLink< xAOD::VertexContainer > > myVertices;
26 BTag->variable<std::vector<ElementLink<xAOD::VertexContainer> > >(secVxFinderName,
"vertices", myVertices);
28 if (myVertices.empty()) {
29 ATH_MSG_DEBUG(
" No secondary vertex found for getting the B flight direction (for the IP sign calculation)");
32 canUseSvxDirection=
true;
33 SvxDirection=(*myVertices[0])->position()-priVtx.
position();
34 ATH_MSG_VERBOSE(
" Get direction from InDetVKalVertex: phi: " << SvxDirection.phi() <<
35 " theta: " << SvxDirection.theta() );
45 const std::string & secVxFinderName)
const
47 std::vector<ElementLink<xAOD::TrackParticleContainer> > TrkFromV0_ELs;
48 BTag->variable<std::vector<ElementLink<xAOD::TrackParticleContainer> > >(secVxFinderName,
"badTracksIP", TrkFromV0_ELs);
49 for (
const auto& link : TrkFromV0_ELs) {
50 if (link.isValid()) TrkFromV0.push_back(*link);