56 :
AaBase(toCopy), m_listMod(std::move(toCopy.m_listMod))
72const std::vector<AaModificationP> &
84 mass += mod->getMass();
96 mass += mod->getMass();
111 QStringList modification_str_list;
114 modification_str_list << (*it)->getAccession();
117 if(modification_str_list.size() > 0)
118 seq += QString(
"(%1)").arg(modification_str_list.join(
","));
131 QStringList modification_str_list;
134 if(!(*it)->isInternal())
136 modification_str_list << (*it)->getAccession();
140 if(modification_str_list.size() > 0)
141 seq += QString(
"(%1)").arg(modification_str_list.join(
","));
152 std::vector<AaModificationP> copy_mod_list =
m_listMod;
153 std::sort(copy_mod_list.begin(),
156 return a->getAccession() < b->getAccession();
158 auto it(copy_mod_list.begin());
159 if(it != copy_mod_list.end())
161 QStringList modification_str_list;
162 while(it != copy_mod_list.end())
164 if(!(*it)->isInternal())
166 modification_str_list << (*it)->toProForma();
170 if(modification_str_list.size() > 0)
171 seq += QString(
"[%1]").arg(modification_str_list.join(
"]["));
179 std::vector<AaModificationP>::iterator it =
212 number_of_carbon += mod->getNumberOfAtom(atom);
216 return number_of_carbon;
226 number += mod->getNumberOfIsotope(isotope);
236 unsigned int number_of_mod = 0;
244 return number_of_mod;
252 if(modb->getAccession().startsWith(
"internal:Nter_"))
263 if(modb->getAccession().startsWith(
"internal:Cter_"))
275 return mod->getAccession().startsWith(
288 return mod->getAccession().startsWith(
302 return !mod->getAccession().startsWith(
virtual pappso_double getMass() const
virtual const char & getLetter() const
virtual int getNumberOfAtom(AtomIsotopeSurvey atom) const override
get the number of atom C, O, N, H in the molecule
const QString & getAccession() const
int getNumberOfAtom(AtomIsotopeSurvey atom) const override final
get the number of atom C, O, N, H in the molecule
const QString toProForma() const
get the amino acid in ProForma notation https://github.com/HUPO-PSI/ProForma/blob/master/README....
const QString toAbsoluteString() const
double getTotalModificationMass() const
get the sum of mass modifications
void removeInternalCterModification()
AaModificationP getInternalCterModification() const
int getNumberOfIsotope(Isotope isotope) const override final
get the number of isotopes C13, H2, O17, O18, N15, S33, S34, S36 in the molecule
AaModificationP getInternalNterModification() const
const std::vector< AaModificationP > & getModificationList() const
const QString toString() const
bool isAaEqual(Aa const &r) const
void replaceAaModification(AaModificationP oldmod, AaModificationP newmod)
replaces all occurences of a modification by a new one
void addAaModification(AaModificationP aaModification)
unsigned int getNumberOfModification(AaModificationP mod) const
void removeAllButInternalModification()
remove all non internat modifications
std::vector< AaModificationP > m_listMod
bool isLesser(Aa const &r) const
void removeInternalNterModification()
Aa & operator=(const Aa &toCopy)
void removeAaModification(AaModificationP aaModification)
pappso_double getMass() const override
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
bool operator<(Aa const &l, Aa const &r)
double pappso_double
A type definition for doubles.
bool operator==(Aa const &l, Aa const &r)