Loading...
Searching...
No Matches
peptide.cpp
Go to the documentation of this file.
/**
* \file pappsomspp/masschroq/peptide.cpp
* \date 24/09/2024
* \author Olivier Langella
* \brief peptide model in masschroqlite
*/
/*******************************************************************************
* Copyright (c) 2024 Olivier Langella
*<Olivier.Langella@universite-paris-saclay.fr>.
*
* This file is part of MassChroQ.
*
* MassChroQ is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* MassChroQ is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with MassChroQ. If not, see <http://www.gnu.org/licenses/>.
*
******************************************************************************/
#include "peptide.h"
#include "pappsomspp/core/pappsoexception.h"
#include "pappsomspp/core/exception/exceptionnotfound.h"
#include "../peptide/peptideproformaparser.h"
#include "msrungroup.h"
#include "peptidelabel.h"
pappso::masschroq::Peptide::Peptide(const QString &id,
const pappso::PeptideSp &peptide_sp,
const std::vector<ProteinSp> &protein_list)
: PeptideBase(peptide_sp), m_id(id), m_proteinSpList(protein_list)
{
}
pappso::masschroq::Peptide::Peptide(const Peptide &other)
: PeptideBase(other.msp_peptide), m_id(other.m_id), m_proteinSpList(other.m_proteinSpList)
{
m_mods = other.m_mods;
}
pappso::masschroq::Peptide::~Peptide()
{
if(mpa_peptideNaturalIsotopeList != nullptr)
delete mpa_peptideNaturalIsotopeList;
}
void
pappso::masschroq::Peptide::computeIsotopologues(double ni_min_abundance)
{
qDebug();
if(ni_min_abundance > 0)
{
if(m_peptideLabelMap.size() > 0)
{
qDebug();
for(auto &pair_label : m_peptideLabelMap)
{
qDebug() << pair_label.second.get();
pair_label.second->computeIsotopologues(ni_min_abundance);
qDebug();
}
qDebug();
}
else
{
qDebug();
PeptideBase::computeIsotopologues(ni_min_abundance);
}
}
qDebug();
}
const QString &
pappso::masschroq::Peptide::getId() const
{
return m_id;
}
void
pappso::masschroq::Peptide::setMods(const QString &mods)
{
m_mods = mods;
}
const QString &
pappso::masschroq::Peptide::getMods() const
{
return m_mods;
}
const std::map<QString, pappso::masschroq::PeptideLabelSp> &
pappso::masschroq::Peptide::getPeptideLabelMap() const
{
return m_peptideLabelMap;
}
void
pappso::masschroq::Peptide::addObservedChargeState(std::uint8_t charge)
{
if(m_allObservedChargeStateList.end() ==
std::find(m_allObservedChargeStateList.begin(), m_allObservedChargeStateList.end(), charge))
{
m_allObservedChargeStateList.push_back(charge);
}
}
const std::vector<std::uint8_t> &
pappso::masschroq::Peptide::getAllObservedChargeStateList() const
{
return m_allObservedChargeStateList;
}
void
pappso::masschroq::Peptide::addObservedInMsRunSp(const pappso::masschroq::MsRunSp &msrun_sp)
{
auto it = std::find(m_observedInMsRunSpList.begin(), m_observedInMsRunSpList.end(), msrun_sp);
if(it == m_observedInMsRunSpList.end())
{
m_observedInMsRunSpList.push_back(msrun_sp);
}
}
const std::vector<pappso::masschroq::ProteinSp> &
pappso::masschroq::Peptide::getProteinSpList() const
{
return m_proteinSpList;
}
void
pappso::masschroq::Peptide::addAlignedPeakMeasurement(
const PeptideMeasurements::Measurement &one_xic_measure,
const pappso::MsRunRetentionTime<QString> &msrun_retention_time)
{
if(one_xic_measure.m_tracePeakSp.get() != nullptr)
{
AlignedPeakPositionElement position;
position.intensity = one_xic_measure.m_tracePeakSp.get()->getMaxXicElement().y;
if(msrun_retention_time.isAligned())
{
position.alignedRetentionTime =
msrun_retention_time.translateOriginal2AlignedRetentionTime(
one_xic_measure.m_tracePeakSp.get()->getMaxXicElement().x);
position.alignedRetentionTimeCenter =
msrun_retention_time.translateOriginal2AlignedRetentionTime(
(one_xic_measure.m_tracePeakSp.get()->getLeftBoundary().x +
one_xic_measure.m_tracePeakSp.get()->getRightBoundary().x) /
2);
}
else
{
position.alignedRetentionTime = one_xic_measure.m_tracePeakSp.get()->getMaxXicElement().x;
position.alignedRetentionTimeCenter =
((one_xic_measure.m_tracePeakSp.get()->getLeftBoundary().x +
one_xic_measure.m_tracePeakSp.get()->getRightBoundary().x) /
2);
}
/*
position.alignedRetentionTime =
position.alignedRetentionTime +
((position.alignedRetentionTimeCenter - position.alignedRetentionTime) /
4);*/
position.wide = one_xic_measure.m_tracePeakSp.get()->getArea();
// one_xic_measure.m_tracePeakSp.get()->getRightBoundary().x -
// one_xic_measure.m_tracePeakSp.get()->getLeftBoundary().x;
m_alignedPeakPositionElementList.push_back(position);
}
}
void
pappso::masschroq::Peptide::addAlignedPeptideObservation(
const pappso::masschroq::PeptideObservation &peptide_observation,
const pappso::MsRunRetentionTime<QString> &msrun_retention_time)
{
double best_rt = peptide_observation.getBestXicCoord().get()->rtTarget;
if(msrun_retention_time.isAligned())
{
best_rt = msrun_retention_time.translateOriginal2AlignedRetentionTime(best_rt);
}
m_referenceMs2ObservationList.push_back(best_rt);
}
void
pappso::masschroq::Peptide::computeConsensusRetentionTime()
{
m_consensusAlignedPeakRetentionTime = 0;
if(m_alignedPeakPositionElementList.size() > 0)
{
std::sort(m_alignedPeakPositionElementList.begin(),
m_alignedPeakPositionElementList.end(),
[](AlignedPeakPositionElement const &a, AlignedPeakPositionElement const &b) {
return a.wide > b.wide;
});
// take only the 90% best measures
std::size_t limit = m_alignedPeakPositionElementList.size() * 0.9;
if(limit < 5)
{
limit = m_alignedPeakPositionElementList.size();
// throw pappso::PappsoException("limit < 3");
}
double total_intensity = std::accumulate(m_alignedPeakPositionElementList.begin(),
m_alignedPeakPositionElementList.begin() + limit,
(double)0.0,
[](double sum, AlignedPeakPositionElement &element) {
sum += element.intensity;
return (sum);
});
double sum_rt = std::accumulate(m_alignedPeakPositionElementList.begin(),
m_alignedPeakPositionElementList.begin() + limit,
(double)0.0,
[](double sum, AlignedPeakPositionElement &element) {
sum += element.intensity * element.alignedRetentionTime;
return (sum);
});
m_consensusAlignedPeakRetentionTime = sum_rt / total_intensity;
}
m_alignedPeakPositionElementList.clear();
double sum_rt = std::accumulate(
m_referenceMs2ObservationList.begin(), m_referenceMs2ObservationList.end(), (double)0.0);
m_consensusAlignedMs2RetentionTime = sum_rt / (double)m_referenceMs2ObservationList.size();
m_referenceMs2ObservationList.clear();
}
bool
pappso::masschroq::Peptide::isObservedInMsRunSp(const pappso::masschroq::MsRun *msrun_p)
{
auto it =
std::find_if(m_observedInMsRunSpList.begin(),
m_observedInMsRunSpList.end(),
[msrun_p](const pappso::masschroq::MsRunSp &a) { return (a.get() == msrun_p); });
if(it == m_observedInMsRunSpList.end())
return false;
return true;
}
void
pappso::masschroq::Peptide::setReferenceMsRunRetentionTimePtr(
const pappso::MsRunRetentionTime<QString> *msrun_retention_time_reference_p)
{
mp_referenceMsRunRetentionTime = msrun_retention_time_reference_p;
}
double
pappso::masschroq::Peptide::getConsensusPeakRetentionTime() const
{
return m_consensusAlignedPeakRetentionTime;
}
double
pappso::masschroq::Peptide::getConsensusMs2RetentionTime() const
{
return m_consensusAlignedMs2RetentionTime;
}
void
pappso::masschroq::Peptide::addMsRunXicCoordCharge(
const pappso::masschroq::Peptide::MsRunXicCoordCharge &msrun_xic_coord)
{
m_msRunXicCoordChargeList.push_back(msrun_xic_coord);
}
pappso::XicCoordSPtr
pappso::masschroq::Peptide::getBestXicCoordSPtrForChargeInMsRunGroup(
const pappso::masschroq::MsRunGroup *msrun_group_p, std::uint8_t charge) const
{
// get XIC coordinates of the most intense precursor
pappso::pappso_double intensity = -1;
pappso::XicCoordSPtr best_xic_coord;
for(auto &xic_coord_charge : m_msRunXicCoordChargeList)
{
if(msrun_group_p->contains(xic_coord_charge.msrun_p))
{
if(xic_coord_charge.charge == charge)
{
if(xic_coord_charge.intensity > intensity)
{
intensity = xic_coord_charge.intensity;
best_xic_coord = xic_coord_charge.xic_coord_sp;
qDebug();
}
}
}
}
return best_xic_coord;
}
void
pappso::masschroq::Peptide::populateIonMobilityGrid(
pappso::IonMobilityGrid *ion_mobility_grid_p) const
{
for(auto &xic_coord_charge_a : m_msRunXicCoordChargeList)
{
// qInfo() << " observed_in_a";
const pappso::MsRunId &msrun_id_a =
*(xic_coord_charge_a.msrun_p->getMsRunReaderSPtr().get()->getMsRunId().get());
pappso::XicCoordSPtr xic_coord_a = xic_coord_charge_a.xic_coord_sp;
for(auto &xic_coord_charge_b : m_msRunXicCoordChargeList)
{
if(&xic_coord_charge_a == &xic_coord_charge_b)
{
break;
}
else
{
// qInfo() << " observed_in_b";
const pappso::MsRunId &msrun_id_b =
*(xic_coord_charge_b.msrun_p->getMsRunReaderSPtr().get()->getMsRunId().get());
if(msrun_id_b == msrun_id_a)
{
}
else
{
pappso::XicCoordSPtr xic_coord_b = xic_coord_charge_b.xic_coord_sp;
if(xic_coord_charge_a.charge == xic_coord_charge_b.charge)
{
ion_mobility_grid_p->storeObservedIdentityBetween(
msrun_id_a, xic_coord_a.get(), msrun_id_b, xic_coord_b.get());
}
}
}
}
}
}
pappso::XicCoordSPtr
pappso::masschroq::Peptide::getBestIonMobilityXicCoordToExtractOverallMsRunGroup(
const pappso::masschroq::MsRunGroup &msrun_group,
const pappso::MsRunId &targeted_msrun,
std::uint8_t charge) const
{
pappso::XicCoordSPtr xic_coord_mean;
std::size_t count = 0;
pappso::IonMobilityGrid *ion_mobility_grid_p = msrun_group.getIonMobilityGridSp().get();
for(auto &msrun_xic_coord_charge : m_msRunXicCoordChargeList)
{
if(msrun_group.contains(msrun_xic_coord_charge.msrun_p))
{
if(msrun_xic_coord_charge.charge == charge)
{
// compute the mean coordinate :
pappso::XicCoordSPtr xic_coord_to_add = msrun_xic_coord_charge.xic_coord_sp;
if(ion_mobility_grid_p != nullptr)
{
// ion mobility coordinate translation for the targeted msrun
xic_coord_to_add = ion_mobility_grid_p->translateXicCoordFromTo(
*xic_coord_to_add.get(),
*(msrun_xic_coord_charge.msrun_p->getMsRunReaderSPtr()
.get()
->getMsRunId()
.get()),
targeted_msrun);
}
if(xic_coord_mean.get() == nullptr)
{
xic_coord_mean = xic_coord_to_add.get()->initializeAndClone();
}
else
{
xic_coord_mean = xic_coord_mean.get()->addition(xic_coord_to_add);
}
count++;
qDebug() << " xic_coord_mean.get()->toString=" << xic_coord_mean.get()->toString();
}
}
}
if(xic_coord_mean.get() != nullptr)
{
xic_coord_mean = xic_coord_mean.get()->divideBy(count);
}
return xic_coord_mean;
}
void
pappso::masschroq::Peptide::setJsonLabelList(const QJsonObject &json_label_list)
{
auto it = json_label_list.begin();
while(it != json_label_list.end())
{
QString label = it.key();
QString proforma = it.value().toObject().value("proforma").toString();
pappso::masschroq::PeptideLabelSp peptide_label_sp;
if(proforma.isEmpty())
{
throw pappso::ExceptionNotFound(
QObject::tr("ERROR: label %1 %2 must contain proforma sequence").arg(label).arg(m_id));
}
else
{
peptide_label_sp = std::make_shared<pappso::masschroq::PeptideLabel>(
pappso::PeptideProFormaParser::parseString(proforma), this, label);
}
m_peptideLabelMap.insert({label, peptide_label_sp});
it++;
}
}
pappso::masschroq::PeptideLabel *
pappso::masschroq::Peptide::getPeptideLabelPtr(const QString &label) const
{
auto it = m_peptideLabelMap.find(label);
if(it == m_peptideLabelMap.end())
{
throw pappso::ExceptionNotFound(
QObject::tr("ERROR: label %1 not found in peptide %2").arg(label).arg(m_id));
}
return it->second.get();
}
pappso::ExceptionNotFound
Definition exceptionnotfound.h:32
pappso::IonMobilityGrid
Definition ionmobilitygrid.h:42
pappso::IonMobilityGrid::translateXicCoordFromTo
pappso::XicCoordSPtr translateXicCoordFromTo(const pappso::XicCoord &source_xic_coord, const MsRunId &source_msrunid, const MsRunId &target_msrunid) const
Definition ionmobilitygrid.cpp:129
pappso::IonMobilityGrid::storeObservedIdentityBetween
void storeObservedIdentityBetween(const MsRunId &msrun_ida, const XicCoord *xic_coorda, const MsRunId &msrun_idb, const XicCoord *xic_coordb)
Definition ionmobilitygrid.cpp:46
pappso::MsRunId
MS run identity MsRunId identifies an MS run with a unique ID (XmlId) and contains eventually informa...
Definition msrunid.h:54
pappso::MsRunRetentionTime
Definition msrunretentiontime.h:43
pappso::MsRunRetentionTime::isAligned
bool isAligned() const
Definition msrunretentiontime.cpp:395
pappso::MsRunRetentionTime::translateOriginal2AlignedRetentionTime
double translateOriginal2AlignedRetentionTime(double original_retention_time) const
Definition msrunretentiontime.cpp:288
pappso::PeptideProFormaParser::parseString
static PeptideSp parseString(const QString &pepstr)
Definition peptideproformaparser.cpp:228
pappso::masschroq::MsRunGroup
Definition msrungroup.h:48
pappso::masschroq::MsRunGroup::contains
bool contains(const MsRun *msrun_p) const
Definition msrungroup.cpp:310
pappso::masschroq::MsRunGroup::getIonMobilityGridSp
const std::shared_ptr< pappso::IonMobilityGrid > & getIonMobilityGridSp() const
Definition msrungroup.cpp:334
pappso::masschroq::MsRun
Definition msrun.h:50
pappso::masschroq::PeptideBase::msp_peptide
const pappso::PeptideSp msp_peptide
Definition peptidebase.h:88
pappso::masschroq::PeptideBase::computeIsotopologues
virtual void computeIsotopologues(double ni_min_abundance)
compute possible isotopes for this molecule
Definition peptidebase.cpp:48
pappso::masschroq::PeptideBase::PeptideBase
PeptideBase(const pappso::PeptideSp &peptide_sp)
Definition peptidebase.cpp:31
pappso::masschroq::PeptideBase::mpa_peptideNaturalIsotopeList
pappso::PeptideNaturalIsotopeList * mpa_peptideNaturalIsotopeList
Definition peptidebase.h:89
pappso::masschroq::PeptideLabel
Definition peptidelabel.h:40
pappso::masschroq::PeptideObservation
Definition peptideobservation.h:48
pappso::masschroq::PeptideObservation::getBestXicCoord
pappso::XicCoordSPtr getBestXicCoord() const
Definition peptideobservation.cpp:117
pappso::masschroq::Peptide::m_consensusAlignedPeakRetentionTime
double m_consensusAlignedPeakRetentionTime
Definition peptide.h:245
pappso::masschroq::Peptide::m_mods
QString m_mods
Definition peptide.h:239
pappso::masschroq::Peptide::~Peptide
virtual ~Peptide()
Definition peptide.cpp:49
pappso::masschroq::Peptide::computeConsensusRetentionTime
void computeConsensusRetentionTime()
compute consensus retention time (on MS2 observations and MS1 peak measurements) the computation is b...
Definition peptide.cpp:194
pappso::masschroq::Peptide::getMods
const QString & getMods() const
get optional information as text
Definition peptide.cpp:94
pappso::masschroq::Peptide::addObservedChargeState
void addObservedChargeState(std::uint8_t charge)
Definition peptide.cpp:106
pappso::masschroq::Peptide::m_allObservedChargeStateList
std::vector< std::uint8_t > m_allObservedChargeStateList
Definition peptide.h:240
pappso::masschroq::Peptide::populateIonMobilityGrid
void populateIonMobilityGrid(pappso::IonMobilityGrid *ion_mobility_grid_p) const
Populate ion mobility grid with observed XIC coordinates for this peptide on all MSruns The ion mobil...
Definition peptide.cpp:308
pappso::masschroq::Peptide::Peptide
Peptide(const QString &id, const pappso::PeptideSp &peptide_sp, const std::vector< ProteinSp > &protein_list)
constructor
Definition peptide.cpp:36
pappso::masschroq::Peptide::m_msRunXicCoordChargeList
std::vector< MsRunXicCoordCharge > m_msRunXicCoordChargeList
Definition peptide.h:251
pappso::masschroq::Peptide::computeIsotopologues
virtual void computeIsotopologues(double ni_min_abundance) override
compute possible isotopes for this molecule
Definition peptide.cpp:56
pappso::masschroq::Peptide::addMsRunXicCoordCharge
void addMsRunXicCoordCharge(const MsRunXicCoordCharge &msrun_xic_coord)
Definition peptide.cpp:272
pappso::masschroq::Peptide::m_referenceMs2ObservationList
std::vector< double > m_referenceMs2ObservationList
Definition peptide.h:249
pappso::masschroq::Peptide::isObservedInMsRunSp
bool isObservedInMsRunSp(const MsRun *msrun_p)
tell if this peptide is observed (MS2 fragmentation and identification) in this msrun
Definition peptide.cpp:240
pappso::masschroq::Peptide::m_proteinSpList
const std::vector< ProteinSp > m_proteinSpList
Definition peptide.h:238
pappso::masschroq::Peptide::setJsonLabelList
void setJsonLabelList(const QJsonObject &json_label_list)
build peptide label map from JSON label_list object
Definition peptide.cpp:405
pappso::masschroq::Peptide::setMods
void setMods(const QString &mods)
set optional information as text to this peptide
Definition peptide.cpp:88
pappso::masschroq::Peptide::getAllObservedChargeStateList
const std::vector< std::uint8_t > & getAllObservedChargeStateList() const
Definition peptide.cpp:116
pappso::masschroq::Peptide::getPeptideLabelPtr
PeptideLabel * getPeptideLabelPtr(const QString &label) const
get a peptide label pointer with the corresponding label identifier
Definition peptide.cpp:433
pappso::masschroq::Peptide::getProteinSpList
const std::vector< ProteinSp > & getProteinSpList() const
Definition peptide.cpp:134
pappso::masschroq::Peptide::getId
const QString & getId() const
get peptide unique identifier
Definition peptide.cpp:82
pappso::masschroq::Peptide::getConsensusMs2RetentionTime
double getConsensusMs2RetentionTime() const
get consensus retention time based on MS2 fragmenation and identification events
Definition peptide.cpp:265
pappso::masschroq::Peptide::m_alignedPeakPositionElementList
std::vector< AlignedPeakPositionElement > m_alignedPeakPositionElementList
Definition peptide.h:243
pappso::masschroq::Peptide::getBestXicCoordSPtrForChargeInMsRunGroup
pappso::XicCoordSPtr getBestXicCoordSPtrForChargeInMsRunGroup(const MsRunGroup *msrun_group_p, std::uint8_t charge) const
get the XIC coordinates of the higher observed intensity for this peptide and charge in other MS run ...
Definition peptide.cpp:280
pappso::masschroq::Peptide::m_id
const QString m_id
Definition peptide.h:237
pappso::masschroq::Peptide::setReferenceMsRunRetentionTimePtr
void setReferenceMsRunRetentionTimePtr(const pappso::MsRunRetentionTime< QString > *msrun_retention_time_reference_p)
sets the current msrun retention time reference
Definition peptide.cpp:252
pappso::masschroq::Peptide::getPeptideLabelMap
const std::map< QString, PeptideLabelSp > & getPeptideLabelMap() const
get the peptide label label_list
Definition peptide.cpp:100
pappso::masschroq::Peptide::m_consensusAlignedMs2RetentionTime
double m_consensusAlignedMs2RetentionTime
Definition peptide.h:246
pappso::masschroq::Peptide::m_observedInMsRunSpList
std::vector< MsRunSp > m_observedInMsRunSpList
Definition peptide.h:241
pappso::masschroq::Peptide::getConsensusPeakRetentionTime
double getConsensusPeakRetentionTime() const
get consensus retention time based on XIC peak measurements
Definition peptide.cpp:259
pappso::masschroq::Peptide::addAlignedPeptideObservation
void addAlignedPeptideObservation(const PeptideObservation &peptide_observation, const pappso::MsRunRetentionTime< QString > &msrun_retention_time)
accumulate retention time information for MS2 observation convenient function used while collecting d...
Definition peptide.cpp:180
pappso::masschroq::Peptide::m_peptideLabelMap
std::map< QString, PeptideLabelSp > m_peptideLabelMap
Definition peptide.h:253
pappso::masschroq::Peptide::addAlignedPeakMeasurement
void addAlignedPeakMeasurement(const PeptideMeasurements::Measurement &one_xic_measure, const pappso::MsRunRetentionTime< QString > &msrun_retention_time)
accumulate retention time information for MS1 peak measurement
Definition peptide.cpp:140
pappso::masschroq::Peptide::mp_referenceMsRunRetentionTime
const pappso::MsRunRetentionTime< QString > * mp_referenceMsRunRetentionTime
Definition peptide.h:248
pappso::masschroq::Peptide::getBestIonMobilityXicCoordToExtractOverallMsRunGroup
pappso::XicCoordSPtr getBestIonMobilityXicCoordToExtractOverallMsRunGroup(const MsRunGroup &msrun_group, const pappso::MsRunId &targeted_msrun, std::uint8_t charge) const
get ion mobility coordinates corrected against other MSruns in the group
Definition peptide.cpp:351
pappso::masschroq::Peptide::addObservedInMsRunSp
void addObservedInMsRunSp(const MsRunSp &msrun_sp)
Definition peptide.cpp:123
exceptionnotfound.h
peptide.h
msrungroup.h
pappso::masschroq::PeptideLabelSp
std::shared_ptr< PeptideLabel > PeptideLabelSp
Definition peptide.h:52
pappso::masschroq::PeakQualityCategory::a
@ a
peak detected using a single direct MS2 observation
Definition types.h:46
pappso::masschroq::PeakQualityCategory::b
@ b
Definition types.h:52
pappso::masschroq::MsRunSp
std::shared_ptr< MsRun > MsRunSp
Definition msrun.h:44
pappso::PeptideSp
std::shared_ptr< const Peptide > PeptideSp
Definition aamodification.h:48
pappso::PeptideIonCter::x
@ x
Definition peptide.h:92
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition types.h:60
pappso::XicCoordSPtr
std::shared_ptr< XicCoord > XicCoordSPtr
Definition xiccoord.h:44
pappsoexception.h
peptidelabel.h
peptideproformaparser.h
pappso::masschroq::PeptideMeasurementsBase::Measurement
Definition peptidemeasurementsbase.h:74
pappso::masschroq::PeptideMeasurementsBase::Measurement::m_tracePeakSp
pappso::TracePeakCstSPtr m_tracePeakSp
Definition peptidemeasurementsbase.h:79
pappso::masschroq::Peptide::AlignedPeakPositionElement
internal structure to compute consensus retention times
Definition peptide.h:145
pappso::masschroq::Peptide::AlignedPeakPositionElement::alignedRetentionTime
double alignedRetentionTime
Definition peptide.h:146
pappso::masschroq::Peptide::AlignedPeakPositionElement::wide
double wide
Definition peptide.h:148
pappso::masschroq::Peptide::AlignedPeakPositionElement::intensity
double intensity
Definition peptide.h:147
pappso::masschroq::Peptide::AlignedPeakPositionElement::alignedRetentionTimeCenter
double alignedRetentionTimeCenter
Definition peptide.h:149
pappso::masschroq::Peptide::MsRunXicCoordCharge
internal structure to store msrun + charge + intensity + xic coordinate
Definition peptide.h:207