14 void setP4(
const std::vector<const Trackster*>& tracksters,
15 std::vector<TICLCandidate>& ticl_cands,
19 std::tuple<TracksterMomentumPluginBase::LorentzVector, float>
calcP4(
const ticl::Trackster& trackster)
const;
26 energy_from_regression_(ps.getParameter<
bool>(
"energyFromRegression")),
30 std::vector<TICLCandidate>& ticl_cands,
37 auto size =
std::min(tracksters.size(), ticl_cands.size());
38 for (
size_t i = 0;
i <
size; ++
i) {
39 const auto* trackster = tracksters[
i];
41 if (trackster->seedIndex() != -1) {
42 assert(trackster->seedID() == trkId);
44 auto const& three_mom = tkRef.momentum();
45 constexpr
double mpion2 = 0.13957 * 0.13957;
48 auto& ticl_cand = ticl_cands[
i];
49 ticl_cand.setP4(trk_p4);
50 ticl_cand.setRawEnergy(
energy);
52 auto direction = trackster->eigenvectors(0).Unit();
56 auto& ticl_cand = ticl_cands[
i];
57 ticl_cand.setP4(cartesian);
58 ticl_cand.setRawEnergy(
energy);