128 vector_(rhs.vector_),
129 position_(rhs.position_)
147 return *(*vector_)[position_];
153 return (*vector_)[position_];
204 const std::vector<const Residue*>* vector_ {};
265 return *(*vector_)[position_];
271 return (*vector_)[position_];
277 return (*vector_)[position_];
283 return Iterator(vector_, position_ + diff);
294 return Iterator(vector_, position_ - diff);
328 std::vector<const Residue*>* vector_ {};
409 bool mass_delta =
false,
410 const std::vector<String> & fixed_modifications = std::vector<String>())
const;
589 bool permissive =
true);
600 bool permissive =
true);
665 bool permissive =
true);
697 std::size_t seed = 0;
700 for (
const auto& residue : seq)
721 if (n_mod !=
nullptr)
730 if (c_mod !=
nullptr)
ConstIterator for AASequence.
Definition AASequence.h:98
const_pointer operator->() const
dereference operator
Definition AASequence.h:151
ConstIterator(const ConstIterator &rhs)=default
copy constructor
const ConstIterator operator-(difference_type diff) const
backward jump operator
Definition AASequence.h:168
Residue value_type
Definition AASequence.h:106
ConstIterator(const std::vector< const Residue * > *vec_ptr, difference_type position)
detailed constructor with pointer to the vector and offset position
Definition AASequence.h:117
bool operator!=(const ConstIterator &rhs) const
inequality operator
Definition AASequence.h:180
ConstIterator(const AASequence::Iterator &rhs)
copy constructor from Iterator
Definition AASequence.h:127
const ConstIterator operator+(difference_type diff) const
forward jump operator
Definition AASequence.h:157
~ConstIterator()=default
destructor
ConstIterator()=default
default constructor
ConstIterator & operator--()
decrement operator
Definition AASequence.h:193
std::random_access_iterator_tag iterator_category
Definition AASequence.h:108
bool operator==(const ConstIterator &rhs) const
equality comparator
Definition AASequence.h:174
const std::vector< const Residue * > * vector_
Definition AASequence.h:204
const Residue * const_pointer
Definition AASequence.h:104
difference_type position_
Definition AASequence.h:207
std::vector< constResidue * >::difference_type difference_type
Definition AASequence.h:105
const Residue * pointer
Definition AASequence.h:107
Residue & reference
Definition AASequence.h:103
const Residue & const_reference
Definition AASequence.h:102
const_reference operator*() const
dereference operator
Definition AASequence.h:145
ConstIterator & operator++()
increment operator
Definition AASequence.h:186
ConstIterator & operator=(const ConstIterator &rhs)=default
assignment operator
difference_type operator-(ConstIterator rhs) const
Definition AASequence.h:162
Iterator class for AASequence.
Definition AASequence.h:216
const_pointer operator->() const
dereference operator
Definition AASequence.h:269
Iterator()=default
default constructor
pointer operator->()
mutable dereference operator
Definition AASequence.h:275
const Iterator operator+(difference_type diff) const
forward jump operator
Definition AASequence.h:281
Iterator & operator=(const Iterator &rhs)
assignment operator
Definition AASequence.h:249
Iterator(const Iterator &rhs)=default
copy constructor
std::vector< const Residue * > * vector_
Definition AASequence.h:328
difference_type operator-(Iterator rhs) const
Definition AASequence.h:286
~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:234
bool operator==(const Iterator &rhs) const
equality comparator
Definition AASequence.h:298
const Residue * const_pointer
Definition AASequence.h:223
difference_type position_
Definition AASequence.h:331
std::vector< constResidue * >::difference_type difference_type
Definition AASequence.h:225
const Residue * pointer
Definition AASequence.h:224
Residue & reference
Definition AASequence.h:222
const Residue & const_reference
Definition AASequence.h:221
const_reference operator*() const
dereference operator
Definition AASequence.h:263
bool operator!=(const Iterator &rhs) const
inequality operator
Definition AASequence.h:304
Iterator & operator++()
increment operator
Definition AASequence.h:310
Iterator & operator--()
decrement operator
Definition AASequence.h:317
const Iterator operator-(difference_type diff) const
backward jump operator
Definition AASequence.h:292
Representation of a peptide/protein sequence.
Definition AASequence.h:88
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
double getMZ(Int charge, Residue::ResidueType type=Residue::Full) const
Iterator begin()
Definition AASequence.h:561
friend std::ostream & operator<<(std::ostream &os, const AASequence &peptide)
writes a peptide to an output stream
String toString() const
returns the peptide as string with modifications embedded in brackets
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:622
void setNTerminalModificationByDiffMonoMass(double diffMonoMass, bool protein_term)
sets the N-terminal modification by the monoisotopic mass difference it introduces (creates a "user-d...
void setModification(Size index, const String &modification)
AASequence(AASequence &&)=default
Move constructor.
double getAverageWeight(Residue::ResidueType type=Residue::Full, Int charge=0) const
returns the average weight of the peptide
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.
static String::ConstIterator parseModSquareBrackets_(const String::ConstIterator str_it, const String &str, AASequence &aas, const ResidueModification::TermSpecificity &specificity)
Parses modifications in square brackets (a mass)
void setModification(Size index, const ResidueModification &modification)
ConstIterator end() const
Definition AASequence.h:567
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)
static String::ConstIterator parseModRoundBrackets_(const String::ConstIterator str_it, const String &str, AASequence &aas, const ResidueModification::TermSpecificity &specificity)
Parses modifications in round brackets (an identifier)
String toBracketString(bool integer_mass=true, bool mass_delta=false, const std::vector< String > &fixed_modifications=std::vector< String >()) const
create a TPP compatible string of the modified sequence using bracket notation.
static void parseString_(const String &peptide, AASequence &aas, bool permissive=true)
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.
void getAAFrequencies(std::map< String, Size > &frequency_table) const
compute frequency table of amino acids
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
bool hasSubsequence(const AASequence &peptide) const
String toUnmodifiedString() const
returns the peptide as string without any modifications or (e.g., "PEPTIDER")
bool operator!=(const AASequence &rhs) const
inequality operator. Complement of equality operator.
static AASequence fromString(const String &s, bool permissive=true)
create AASequence object by parsing an OpenMS string
void setNTerminalModification(const String &modification)
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:565
const String & getCTerminalModificationName() const
returns the name (ID) of the C-terminal modification, or an empty string if none is set
void setNTerminalModification(const ResidueModification *modification)
sets the N-terminal modification
AASequence(const char *s, bool permissive)
constructor from C string
bool hasPrefix(const AASequence &peptide) const
const String & getNTerminalModificationName() const
returns the name (ID) of the N-terminal modification, or an empty string if none is set
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 ResidueModification * getNTerminalModification() const
returns a pointer to the N-terminal modification, or zero if none is set
String toUniModString() const
returns the peptide as string with UniMod-style modifications embedded in brackets
ConstIterator begin() const
Definition AASequence.h:563
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
void setNTerminalModification(const ResidueModification &mod)
sets the N-terminal modification (copies and adds to database if not present)
void setCTerminalModification(const String &modification)
bool hasSuffix(const AASequence &peptide) const
AASequence(const String &s, bool permissive)
constructor from String
AASequence(const String &s)
constructor from String
Representation of a modification on an amino acid residue.
Definition ResidueModification.h:55
const String & getFullId() const
returns the full identifier of the mod (Unimod accession + origin, if available)
TermSpecificity
Position where the modification is allowed to occur.
Definition ResidueModification.h:74
Representation of an amino acid residue.
Definition Residue.h:40
ResidueType
Definition Residue.h:152
A more convenient string class.
Definition String.h:34
const_iterator ConstIterator
Const Iterator.
Definition String.h:46
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:695