37#include "../amino_acid/aa.h"
40#include "../exportinmportconfig.h"
96typedef std::shared_ptr<const Peptide>
PeptideSp;
106 Peptide(
const QString &pepstr);
130 void addAaModification(
AaModificationP aaModification,
unsigned int position);
139 std::vector<Aa>::iterator begin();
141 std::vector<Aa>::iterator end();
143 std::vector<Aa>::const_iterator begin()
const;
145 std::vector<Aa>::const_iterator end()
const;
147 std::vector<Aa>::const_reverse_iterator rbegin()
const;
149 std::vector<Aa>::const_reverse_iterator rend()
const;
151 Aa &getAa(
unsigned int position);
152 const Aa &getConstAa(
unsigned int position)
const;
159 virtual int getNumberOfIsotope(
Isotope isotope)
const override;
162 const QString getSequence()
const override;
163 unsigned int size()
const override;
177 const std::vector<char> &aa_list)
const;
194 std::vector<unsigned int>
202 std::vector<unsigned int>
204 const std::vector<char> &aa_list)
const;
209 std::vector<unsigned int> getAaPositionList(
char aa)
const;
210 std::vector<unsigned int> getAaPositionList(std::list<char> list_aa)
const;
213 const QString toString()
const;
215 const QString toAbsoluteString()
const;
218 const QString getLiAbsoluteString()
const;
222 void removeInternalNterModification();
223 void removeInternalCterModification();
233 virtual bool isPalindrome()
const override;
234 void replaceLeucineIsoleucine();
235 void removeNterAminoAcid();
236 void removeCterAminoAcid();
friend bool operator==(const Peptide &l, const Peptide &r)
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
std::shared_ptr< Peptide > NoConstPeptideSp