37#include "../amino_acid/aa.h"
40#include "../exportinmportconfig.h"
95typedef std::shared_ptr<const Peptide>
PeptideSp;
107 Peptide(
const QString &pepstr);
120 void addAaModification(
AaModificationP aaModification,
unsigned int position);
128 std::vector<Aa>::iterator begin();
130 std::vector<Aa>::iterator end();
132 std::vector<Aa>::const_iterator begin()
const;
134 std::vector<Aa>::const_iterator end()
const;
136 std::vector<Aa>::const_reverse_iterator rbegin()
const;
138 std::vector<Aa>::const_reverse_iterator rend()
const;
140 Aa &getAa(
unsigned int position);
141 const Aa &getConstAa(
unsigned int position)
const;
148 virtual int getNumberOfIsotope(
Isotope isotope)
const override;
151 const QString getSequence()
const override;
152 unsigned int size()
const override;
165 unsigned int countModificationOnAa(
AaModificationP mod,
const std::vector<char> &aa_list)
const;
193 std::vector<unsigned int> getModificationPositionList(
AaModificationP mod)
const;
200 std::vector<unsigned int> getModificationPositionList(
AaModificationP mod,
201 const std::vector<char> &aa_list)
const;
206 std::vector<unsigned int> getAaPositionList(
char aa)
const;
207 std::vector<unsigned int> getAaPositionList(std::list<char> list_aa)
const;
210 const QString toString()
const;
212 const QString toAbsoluteString()
const;
215 const QString getLiAbsoluteString()
const;
230 void setGlobalModification(
Isotope isotope_kind);
237 virtual bool isPalindrome()
const override;
238 void replaceLeucineIsoleucine();
239 void removeNterAminoAcid();
240 void removeCterAminoAcid();
247 QString toProForma()
const;
251 virtual const ChemicalFormula getChemicalFormulaCharge(
unsigned int charge)
const override;
255 bool m_fullC13 =
false;
256 bool m_fullN15 =
false;
257 bool m_fullH2 =
false;
258 double m_proxyMass = -1;
std::vector< Aa > m_aaVec
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
PeptideIon
PeptideIon enum defines all types of ions (Nter or Cter)
PeptideDirection getPeptideIonDirection(PeptideIon ion_type)
get the direction of a peptide ion
bool operator<(Aa const &l, Aa const &r)
std::shared_ptr< const Peptide > PeptideSp
double pappso_double
A type definition for doubles.
bool peptideIonTypeIsComplement(PeptideIon ion_type_ref, PeptideIon ion_type)
tells if an ion type is the complement ion of the other
bool peptideIonIsNter(PeptideIon ion_type)
tells if an ion is Nter
bool operator==(Aa const &l, Aa const &r)
std::shared_ptr< Peptide > NoConstPeptideSp