32 #include "../../pappsoexception.h"
33 #include "../../peptide/peptidenaturalisotopelist.h"
49 this->setLayout(
new QHBoxLayout(
this));
51 this->layout()->setMargin(0);
81 painter.begin(device);
82 _custom_plot->toPainter(&painter, size.width(), size.height());
97 while(
auto item = this->layout()->takeAt(0))
99 delete item->widget();
108 _custom_plot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
143 qDebug() <<
"ms_level=" << ms_level;
161 qDebug() <<
"precision->toString()=" << precision->
toString();
168 qDebug() <<
"precision->toString()=" << precision->
toString();
276 qDebug() <<
"_isotope_mass_list.size()="
282 return a.get()->getMz() < b.get()->getMz();
289 qDebug() <<
"precursor_peptide.get()->getMz()="
290 << precursor_peptide.get()->getMz();
291 MzRange precursor_mass(precursor_peptide.get()->getMz(),
294 monoisotope_peak.
y = 0;
300 if(peak.y > monoisotope_peak.
y)
302 qDebug() <<
"SpectrumWidget::plot "
304 "monoisotope_peak.intensity) ";
305 monoisotope_peak = peak;
309 if(monoisotope_peak.
y > 0)
311 qDebug() <<
"addMs1IsotopePattern";
323 return a.getPeak().
y >
b.getPeak().y;
336 QString plusstr =
"+";
337 plusstr = plusstr.repeated(peak_ion_match.getCharge());
338 QCPItemText *text_label =
new QCPItemText(
_custom_plot);
339 text_label->setVisible(
true);
341 text_label->setPositionAlignment(Qt::AlignBottom |
343 text_label->position->setType(QCPItemPosition::ptPlotCoords);
344 text_label->position->setCoords(
345 peak_ion_match.getPeak().x,
346 peak_ion_match.getPeak()
348 text_label->setFont(QFont(font().family(), 8));
351 .arg(peak_ion_match.getPeptideFragmentIonSp()
353 ->getPeptideIonName())
354 .arg(peak_ion_match.getPeptideFragmentIonSp().get()->size())
358 text_label->setColor(
360 peak_ion_match.getPeptideIonType())));
378 qDebug() <<
"p_peak_match=" << p_peak_match;
397 emit
ionChanged(std::make_shared<const PeakIonIsotopeMatch>(
404 emit
ionChanged(std::shared_ptr<const PeakIonIsotopeMatch>());
409 qDebug() <<
"no peak";
424 std::map<unsigned int, pappso::pappso_double> map_isotope_number =
427 for(
unsigned int i = 0; i < map_isotope_number.size(); i++)
430 unsigned int asked_rank = 0;
431 unsigned int given_rank = 0;
432 bool more_rank =
true;
439 if(given_rank < asked_rank)
465 _custom_plot->highlightPrecursorPeaks(
466 precursor_mz_1, 1, _p_ms2_precision);
467 pappso_double precursor_mz_charge = _peptide_sp->getMz(_peptide_charge);
468 _custom_plot->highlightPrecursorPeaks(
469 precursor_mz_charge, _peptide_charge, _p_ms2_precision);
bool contains(pappso_double) const
static std::list< PeptideIon > getCIDionList()
static const QColor getPeptideIonColor(PeptideIon ion_type)
const std::list< PeakIonIsotopeMatch > & getPeakIonIsotopeMatchList() const
unsigned int getIsotopeRank() const
pappso_double getIntensityRatio() const
PeptideNaturalIsotopeAverageSp makePeptideNaturalIsotopeAverageSp() const
const std::map< unsigned int, pappso_double > getIntensityRatioPerIsotopeNumber() const
virtual QString toString() const =0
void addPeakIonIsotopeMatch(const PeakIonIsotopeMatch &peak_ion_match)
void addMassDelta(const PeakIonIsotopeMatch &peak_ion_match)
void setSpectrumP(const MassSpectrum *spectrum)
void addMs1IsotopePattern(const std::vector< pappso::PeptideNaturalIsotopeAverageSp > &isotope_mass_list, pappso_double intensity)
Class representing a fully specified mass spectrum.
uint getMsLevel() const
Get the mass spectrum level.
MassSpectrumCstSPtr getMassSpectrumCstSPtr() const
Get the MassSpectrumCstSPtr.
uint getPrecursorCharge(bool *ok=nullptr) const
Get the precursor charge.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
std::shared_ptr< const Peptide > PeptideSp
double pappso_double
A type definition for doubles.
std::shared_ptr< const PeptideNaturalIsotopeAverage > PeptideNaturalIsotopeAverageSp
std::shared_ptr< const MassSpectrum > MassSpectrumCstSPtr
std::shared_ptr< const DataPoint > DataPointCstSPtr
DataPointCstSPtr makeDataPointCstSPtr() const