68 if(best_xic_coord.get() ==
nullptr)
73 for(std::uint8_t charge : charge_states)
81 if(best_xic_coord.get() ==
nullptr)
86 *msrun_group_p, targeted_msrun, charge);
88 if(best_xic_coord.get() ==
nullptr)
91 best_xic_coord.get()->rtTarget = best_rt;
95 *the_peptide_p, quantification_method, best_xic_coord, charge, best_rt);
107 std::vector<double> observed_rt_list =
110 std::vector<std::uint8_t> observed_charge_states =
116 pappso::Xic *xic_p = measure_one.msp_xicCoord.get()->xicSptr.get();
122 std::size_t nb_peaks = 0;
124 *xic_p, peak_list,
false);
128 peak_list.begin(), peak_list.end(), observed_rt_list, nb_peaks);
132 bool direct_charge_observation_in_msrun =
true;
133 if(observed_charge_states.end() ==
134 find(observed_charge_states.begin(), observed_charge_states.end(), measure_one.m_charge))
136 direct_charge_observation_in_msrun =
false;
138 if(it_best_matched_peak != peak_list.end())
140 measure_one.m_tracePeakSp = it_best_matched_peak->makeTracePeakCstSPtr();
145 if(direct_charge_observation_in_msrun)
148 if(observed_rt_list.size() > 1)
151 if(direct_charge_observation_in_msrun)
155 else if(nb_peaks > 1)
158 if(direct_charge_observation_in_msrun)
PMSPP_LIB_DECL std::vector< TracePeak >::iterator findBestTracePeakGivenRtList(std::vector< TracePeak >::iterator begin, std::vector< TracePeak >::iterator end, const std::vector< double > &rt_list, std::size_t &nb_peaks)
find the best peak matching a list of retention times