23 declareInterface<Trk::IPRD_TruthTrajectorySelector>(
this);
30 msg(MSG::ERROR) <<
"Could not get AtlasID helper !" <<
endmsg;
31 return StatusCode::FAILURE;
33 return StatusCode::SUCCESS;
39 return StatusCode::SUCCESS;
43 m_translation(nullptr), m_d0(0.), m_z0(0.), m_phi0(0.), m_eta(0.), m_pt(0.)
46 std::cout <<
"[WARNING] not enough points" << std::endl;
64 double bx =
p1.x()+translationX;
65 double by =
p1.y()+translationY;
66 double cx =
p2.x()+translationX;
67 double cy =
p2.y()+translationY;
68 double dx =
p3.x()+translationX;
69 double dy =
p3.y()+translationY;
74 double bc = (
bx*
bx +
by*
by - temp)/2.0;
97 double theta = 1./3*(
p1.theta() +
p2.theta() +
p3.theta());
98 double r1 =
p1.perp();
121 m_phi0 = directionOne.dot(toFirstMeas) > 0. ? directionOne.phi() : directionTwo.phi();
126 double signD0 = pocaDir.cross(momDir).z() > 0. ? 1. : -1.;
136 std::vector<Amg::Vector3D>
pos;
137 std::vector<const Trk::PrepRawData* >::const_iterator prdIter = prdvec.
prds.begin();
138 std::vector<const Trk::PrepRawData* >::const_iterator prdIterE = prdvec.
prds.end();
141 for (
int i = 0;
i < 3 && prdIter != prdIterE; ++ prdIter ){
165 if(
pos.size() != 3 )
return false;