136 vector_(rhs.vector_),
137 position_(rhs.position_)
155 return *(*vector_)[position_];
161 return (*vector_)[position_];
212 const std::vector<const Residue*>* vector_ {};
273 return *(*vector_)[position_];
279 return (*vector_)[position_];
285 return (*vector_)[position_];
291 return Iterator(vector_, position_ + diff);
302 return Iterator(vector_, position_ - diff);
336 std::vector<const Residue*>* vector_ {};
417 bool mass_delta =
false,
418 const std::vector<std::string> & fixed_modifications = std::vector<std::string>())
const;
597 bool permissive =
true);
608 bool permissive =
true);
653 const std::string& str,
680 const std::string& str,
685 bool permissive =
true);
717 std::size_t seed = 0;
720 for (
const auto& residue : seq)
723 const std::string& olc = residue.getOneLetterCode();
741 if (n_mod !=
nullptr)
750 if (c_mod !=
nullptr)
ConstIterator for AASequence.
Definition AASequence.h:106
const_pointer operator->() const
dereference operator
Definition AASequence.h:159
ConstIterator(const ConstIterator &rhs)=default
copy constructor
const ConstIterator operator-(difference_type diff) const
backward jump operator
Definition AASequence.h:176
Residue value_type
Definition AASequence.h:114
ConstIterator(const std::vector< const Residue * > *vec_ptr, difference_type position)
detailed constructor with pointer to the vector and offset position
Definition AASequence.h:125
bool operator!=(const ConstIterator &rhs) const
inequality operator
Definition AASequence.h:188
ConstIterator(const AASequence::Iterator &rhs)
copy constructor from Iterator
Definition AASequence.h:135
const ConstIterator operator+(difference_type diff) const
forward jump operator
Definition AASequence.h:165
~ConstIterator()=default
destructor
ConstIterator()=default
default constructor
ConstIterator & operator--()
decrement operator
Definition AASequence.h:201
std::random_access_iterator_tag iterator_category
Definition AASequence.h:116
bool operator==(const ConstIterator &rhs) const
equality comparator
Definition AASequence.h:182
const std::vector< const Residue * > * vector_
Definition AASequence.h:212
const Residue * const_pointer
Definition AASequence.h:112
difference_type position_
Definition AASequence.h:215
std::vector< constResidue * >::difference_type difference_type
Definition AASequence.h:113
const Residue * pointer
Definition AASequence.h:115
Residue & reference
Definition AASequence.h:111
const Residue & const_reference
Definition AASequence.h:110
const_reference operator*() const
dereference operator
Definition AASequence.h:153
ConstIterator & operator++()
increment operator
Definition AASequence.h:194
ConstIterator & operator=(const ConstIterator &rhs)=default
assignment operator
difference_type operator-(ConstIterator rhs) const
Definition AASequence.h:170
Iterator class for AASequence.
Definition AASequence.h:224
const_pointer operator->() const
dereference operator
Definition AASequence.h:277
Iterator()=default
default constructor
pointer operator->()
mutable dereference operator
Definition AASequence.h:283
const Iterator operator+(difference_type diff) const
forward jump operator
Definition AASequence.h:289
Iterator & operator=(const Iterator &rhs)
assignment operator
Definition AASequence.h:257
Iterator(const Iterator &rhs)=default
copy constructor
std::vector< const Residue * > * vector_
Definition AASequence.h:336
difference_type operator-(Iterator rhs) const
Definition AASequence.h:294
~Iterator()=default
destructor
Iterator(std::vector< const Residue * > *vec_ptr, difference_type position)
detailed constructor with pointer to the vector and offset position
Definition AASequence.h:242
bool operator==(const Iterator &rhs) const
equality comparator
Definition AASequence.h:306
const Residue * const_pointer
Definition AASequence.h:231
difference_type position_
Definition AASequence.h:339
std::vector< constResidue * >::difference_type difference_type
Definition AASequence.h:233
const Residue * pointer
Definition AASequence.h:232
Residue & reference
Definition AASequence.h:230
const Residue & const_reference
Definition AASequence.h:229
const_reference operator*() const
dereference operator
Definition AASequence.h:271
bool operator!=(const Iterator &rhs) const
inequality operator
Definition AASequence.h:312
Iterator & operator++()
increment operator
Definition AASequence.h:318
Iterator & operator--()
decrement operator
Definition AASequence.h:325
const Iterator operator-(difference_type diff) const
backward jump operator
Definition AASequence.h:300
Definition AASequence.h:96
static void parseString_(const std::string &peptide, AASequence &aas, bool permissive=true)
void setModification(Size index, const Residue *modification)
sets the modification of AA at index by providing an already, potentially modified residue
void setModificationByDiffMonoMass(Size index, double diffMonoMass)
modifies the residue at index in the sequence and potentially in the ResidueDB
const ResidueModification * getCTerminalModification() const
returns a pointer to the C-terminal modification, or zero if none is set
bool hasNTerminalModification() const
predicate which is true if the peptide is N-term modified
const Residue & operator[](Size index) const
returns a pointer to the residue at given position
AASequence & operator+=(const Residue *)
adds the residues of a peptide
static AASequence fromString(const std::string &s, bool permissive=true)
create AASequence object by parsing an OpenMS string
std::string toString() const
returns the peptide as string with modifications embedded in brackets
double getMZ(Int charge, Residue::ResidueType type=Residue::Full) const
Iterator begin()
Definition AASequence.h:569
friend std::ostream & operator<<(std::ostream &os, const AASequence &peptide)
writes a peptide to an output stream
static std::string::const_iterator parseModRoundBrackets_(const std::string::const_iterator str_it, const std::string &str, AASequence &aas, const ResidueModification::TermSpecificity &specificity)
Parses modifications in round brackets (an identifier)
EmpiricalFormula getFormula(Residue::ResidueType type=Residue::Full, Int charge=0) const
returns the formula of the peptide
const Residue & getResidue(Size index) const
returns a pointer to the residue at position index
std::vector< const Residue * > peptide_
Definition AASequence.h:633
AASequence(const std::string &s, bool permissive)
constructor from String
void setNTerminalModificationByDiffMonoMass(double diffMonoMass, bool protein_term)
sets the N-terminal modification by the monoisotopic mass difference it introduces (creates a "user-d...
AASequence(AASequence &&)=default
Move constructor.
std::string toBracketString(bool integer_mass=true, bool mass_delta=false, const std::vector< std::string > &fixed_modifications=std::vector< std::string >()) const
create a TPP compatible string of the modified sequence using bracket notation.
double getAverageWeight(Residue::ResidueType type=Residue::Full, Int charge=0) const
returns the average weight of the peptide
void setCTerminalModification(const std::string &modification)
void getAAFrequencies(std::map< std::string, Size > &frequency_table) const
compute frequency table of amino acids
AASequence(const AASequence &)=default
Copy constructor.
void setModification(Size index, const ResidueModification *modification)
sets the modification of AA at index by providing a pointer to a ResidueModification object found in ...
AASequence(const char *s)
constructor from C string
AASequence getPrefix(Size index) const
returns a peptide sequence of the first index residues
bool empty() const
check if sequence is empty
AASequence()=default
Default constructor.
void setModification(Size index, const ResidueModification &modification)
ConstIterator end() const
Definition AASequence.h:575
bool operator==(const AASequence &rhs) const
equality operator. Two sequences are equal iff all amino acids including PTMs are equal
void setCTerminalModificationByDiffMonoMass(double diffMonoMass, bool protein_term)
sets the C-terminal modification by the monoisotopic mass difference it introduces (creates a "user-d...
bool isModified() const
returns true if any of the residues or termini are modified
double getMonoWeight(Residue::ResidueType type=Residue::Full, Int charge=0) const
void setCTerminalModification(const ResidueModification &mod)
sets the C-terminal modification (copies and adds to database if not present)
static AASequence fromString(const char *s, bool permissive=true)
create AASequence object by parsing a C string (character array)
AASequence & operator=(const AASequence &)=default
Assignment operator.
void setCTerminalModification(const ResidueModification *modification)
sets the C-terminal modification (must be present in the database)
~AASequence()=default
Destructor.
AASequence operator+(const AASequence &peptide) const
adds the residues of the peptide
AASequence & operator=(AASequence &&)=default
Move assignment operator.
bool hasCTerminalModification() const
predicate which is true if the peptide is C-term modified
bool has(const Residue &residue) const
returns true if the peptide contains the given residue
AASequence getSubsequence(Size index, UInt number) const
returns a peptide sequence of number residues, beginning at position index
const std::string & getNTerminalModificationName() const
returns the name (ID) of the N-terminal modification, or an empty string if none is set
bool hasSubsequence(const AASequence &peptide) const
bool operator!=(const AASequence &rhs) const
inequality operator. Complement of equality operator.
AASequence operator+(const Residue *residue) const
adds the residues of the peptide
AASequence getSuffix(Size index) const
returns a peptide sequence of the last index residues
Iterator end()
Definition AASequence.h:573
std::string toUniModString() const
returns the peptide as string with UniMod-style modifications embedded in brackets
void setNTerminalModification(const ResidueModification *modification)
sets the N-terminal modification
void validateSatelliteIon_(Residue::ResidueType type) const
Reject satellite ions whose cleavage residue has no supported loss.
std::string toUnmodifiedString() const
returns the peptide as string without any modifications or (e.g., "PEPTIDER")
AASequence(const char *s, bool permissive)
constructor from C string
void setNTerminalModification(const std::string &modification)
bool hasPrefix(const AASequence &peptide) const
bool operator<(const AASequence &rhs) const
lesser than operator which compares the C-term mods, sequence including PTMS and N-term mods; can be ...
Size size() const
returns the number of residues
const std::string & getCTerminalModificationName() const
returns the name (ID) of the C-terminal modification, or an empty string if none is set
static std::string::const_iterator parseModSquareBrackets_(const std::string::const_iterator str_it, const std::string &str, AASequence &aas, const ResidueModification::TermSpecificity &specificity)
Parses modifications in square brackets (a mass)
const ResidueModification * getNTerminalModification() const
returns a pointer to the N-terminal modification, or zero if none is set
ConstIterator begin() const
Definition AASequence.h:571
friend std::istream & operator>>(std::istream &is, const AASequence &peptide)
reads a peptide from an input stream
AASequence & operator+=(const AASequence &)
adds the residues of a peptide
AASequence(const std::string &s)
constructor from String
void setNTerminalModification(const ResidueModification &mod)
sets the N-terminal modification (copies and adds to database if not present)
bool hasSuffix(const AASequence &peptide) const
void setModification(Size index, const std::string &modification)
Representation of a modification on an amino acid residue.
Definition ResidueModification.h:55
TermSpecificity
Position where the modification is allowed to occur.
Definition ResidueModification.h:74
const std::string & getFullId() const
returns the full identifier of the mod (Unimod accession + origin, if available)
Representation of an amino acid residue.
Definition Residue.h:41
ResidueType
Definition Residue.h:153
int Int
Signed integer type.
Definition Types.h:72
unsigned int UInt
Unsigned integer type.
Definition Types.h:64
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition Types.h:97
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
void hash_combine(std::size_t &seed, std::size_t value) noexcept
Combine a hash value with additional data using golden ratio mixing.
Definition HashUtils.h:87
std::size_t hash_char(char c) noexcept
Hash for a character.
Definition HashUtils.h:119
std::size_t fnv1a_hash_string(const std::string &s) noexcept
FNV-1a hash for a string.
Definition HashUtils.h:70
std::istream & operator>>(std::istream &os, const AASequence &peptide)
std::size_t operator()(const OpenMS::AASequence &seq) const noexcept
Definition AASequence.h:715