38 return StatusCode::SUCCESS;
48 double pT = 0.0,
eta = 0.0,
phi = 0.0;
50 ATH_MSG_INFO(
"Hit x = " << hit->getX() <<
" y = " << hit->getY() <<
" z = " << hit->getZ() <<
" detector = " << hit->getDetector());
51 pT =
pT + sqrt(hit->getX() * hit->getX() + hit->getY() * hit->getY());
52 eta =
eta + hit->getX() / hit->getZ();
53 phi =
phi + hit->getX() / hit->getY();
57 auto trackObj = std::make_unique<ExampleTrack>();
58 trackObj->setPT(
pT / hitCont->size());
59 trackObj->setEta(
eta);
60 trackObj->setPhi(
phi);
61 trackObj->setDetector(
"Track made in: " + (*hitCont->begin())->getDetector());
62 trackObj->getElementLink1()->toContainedElement(*hitCont, *hitCont->begin());
63 ATH_MSG_INFO(
"ElementLink1 = " << trackObj->getElement1()->getX());
64 trackObj->getElementLink2()->toIndexedElement(*hitCont, hitCont->size() - 1);
65 ATH_MSG_INFO(
"ElementLink2 = " << trackObj->getElement2()->getX());
70 trackObj->getElementLinkVector()->push_back(eLink1);
72 trackObj->getElementLinkVector()->push_back(eLink2);
74 trackObj->getElementLinkVector()->push_back(eLink3);
75 ATH_MSG_INFO(
"Link ElementLinkVector = " << trackObj->getElementLinkVector()->size());
76 for (
const auto& link : *trackObj->getElementLinkVector()) {
77 ATH_MSG_INFO(
"Element = " << (*link) <<
" : " << (*link)->getX());
81 trackObj->getNavigable()->putElement(hitCont.cptr(), *hitCont->begin());
82 trackObj->getNavigable()->putElement(hitCont.cptr(), (*hitCont)[5]);
83 ATH_MSG_INFO(
"Link Navigable = " << trackObj->getNavigable()->size());
84 for (
const auto*
elem : *trackObj->getNavigable()) {
89 trackObj->getWeightedNavigable()->putElement(hitCont.cptr(), *hitCont->begin(), 3.33);
90 trackObj->getWeightedNavigable()->putElement(hitCont.cptr(), (*hitCont)[5], 1.11);
91 trackObj->getWeightedNavigable()->putElement(hitCont.cptr(), (*hitCont)[3], 5.55);
92 ATH_MSG_INFO(
"Link Weighted Navigable = " << trackObj->getWeightedNavigable()->size());
93 for (
const auto*
elem : *trackObj->getWeightedNavigable()) {
98 ATH_MSG_INFO(
"Track pt = " << trackObj->getPT() <<
" eta = " << trackObj->getEta() <<
" phi = " << trackObj->getPhi() <<
" detector = " << trackObj->getDetector());
101 auto trackCont = std::make_unique<ExampleTrackContainer>();
102 trackCont->push_back(std::move(trackObj));
109 return StatusCode::SUCCESS;
114 return StatusCode::SUCCESS;