134 return *(*vector_)[position_];
140 return (*vector_)[position_];
163 return (std::tie(vector_, position_) == std::tie(rhs.
vector_, rhs.
position_));
190 const std::vector<const Ribonucleotide*>*
vector_;
223 position_ = position;
255 return *(*vector_)[position_];
261 return (*vector_)[position_];
267 return (*vector_)[position_];
273 return Iterator(vector_, position_ + diff);
284 return Iterator(vector_, position_ - diff);
290 return (std::tie(vector_, position_) == std::tie(rhs.
vector_, rhs.
position_));
517 std::vector<const Ribonucleotide*>
seq_;
552 std::size_t seed = 0;
555 for (
const auto& ribo : seq)
564 if (five_prime !=
nullptr)
573 if (three_prime !=
nullptr)
ConstIterator of NASequence class.
Definition NASequence.h:77
ConstIterator(const std::vector< const Ribonucleotide * > *vec_ptr, difference_type position)
detailed constructor with pointer to the vector and offset position
Definition NASequence.h:94
const_pointer operator->() const
dereference operator
Definition NASequence.h:138
const value_type * const_pointer
Definition NASequence.h:82
const ConstIterator operator-(difference_type diff) const
backward jump operator
Definition NASequence.h:155
bool operator!=(const ConstIterator &rhs) const
inequality operator
Definition NASequence.h:167
const ConstIterator operator+(difference_type diff) const
forward jump operator
Definition NASequence.h:144
ConstIterator()=default
default constructor
ConstIterator & operator--()
decrement operator
Definition NASequence.h:180
std::random_access_iterator_tag iterator_category
Definition NASequence.h:85
bool operator==(const ConstIterator &rhs) const
equality comparator
Definition NASequence.h:161
Ribonucleotide value_type
Definition NASequence.h:79
std::vector< constvalue_type * >::difference_type difference_type
Definition NASequence.h:83
ConstIterator(const NASequence::Iterator &rhs)
copy constructor from Iterator
Definition NASequence.h:106
difference_type position_
Definition NASequence.h:193
ConstIterator(const ConstIterator &rhs)
copy constructor
Definition NASequence.h:101
value_type & reference
Definition NASequence.h:81
const std::vector< const Ribonucleotide * > * vector_
Definition NASequence.h:190
const value_type * pointer
Definition NASequence.h:84
const_reference operator*() const
dereference operator
Definition NASequence.h:132
virtual ~ConstIterator()
destructor
Definition NASequence.h:111
ConstIterator & operator++()
increment operator
Definition NASequence.h:173
ConstIterator & operator=(const ConstIterator &rhs)
assignment operator
Definition NASequence.h:118
difference_type operator-(ConstIterator rhs) const
Definition NASequence.h:149
const value_type & const_reference
Definition NASequence.h:80
Iterator of NASequence class.
Definition NASequence.h:203
const_pointer operator->() const
dereference operator
Definition NASequence.h:259
const value_type * const_pointer
Definition NASequence.h:210
pointer operator->()
mutable dereference operator
Definition NASequence.h:265
const Iterator operator+(difference_type diff) const
forward jump operator
Definition NASequence.h:271
Iterator & operator=(const Iterator &rhs)
assignment operator
Definition NASequence.h:239
virtual ~Iterator()
destructor
Definition NASequence.h:232
Iterator(std::vector< const Ribonucleotide * > *vec_ptr, difference_type position)
detailed constructor with pointer to the vector and offset position
Definition NASequence.h:220
difference_type operator-(Iterator rhs) const
Definition NASequence.h:276
Ribonucleotide value_type
Definition NASequence.h:207
bool operator==(const Iterator &rhs) const
equality comparator
Definition NASequence.h:288
std::vector< constvalue_type * >::difference_type difference_type
Definition NASequence.h:212
difference_type position_
Definition NASequence.h:319
value_type & reference
Definition NASequence.h:209
Iterator(const Iterator &rhs)
copy constructor
Definition NASequence.h:227
const value_type * pointer
Definition NASequence.h:211
const_reference operator*() const
dereference operator
Definition NASequence.h:253
bool operator!=(const Iterator &rhs) const
inequality operator
Definition NASequence.h:294
Iterator & operator++()
increment operator
Definition NASequence.h:300
Iterator & operator--()
decrement operator
Definition NASequence.h:307
const Iterator operator-(difference_type diff) const
backward jump operator
Definition NASequence.h:282
std::vector< const Ribonucleotide * > * vector_
Definition NASequence.h:316
const value_type & const_reference
Definition NASequence.h:208
Representation of a nucleic acid sequence.
Definition NASequence.h:36
const Ribonucleotide * get(size_t index)
Definition NASequence.h:357
ConstIterator cend() const
Definition NASequence.h:411
virtual ~NASequence()=default
NASequence & operator=(NASequence &&) &=default
Move assignment operator.
bool operator<(const NASequence &rhs) const
less operator
bool hasThreePrimeMod() const
NASequence getSuffix(Size length) const
Return sequence suffix of the given length (not start index!)
void setSequence(const std::vector< const Ribonucleotide * > &seq)
getter / setter for sequence
std::string toString() const
Iterator begin()
iterators
Definition NASequence.h:386
bool operator==(const NASequence &rhs) const
destructor
bool hasFivePrimeMod() const
5' and 3' modifications
double getMonoWeight(NASFragmentType type=Full, Int charge=0) const
utility functions
void setThreePrimeMod(const RibonucleotideChainEnd *r)
NASequence getPrefix(Size length) const
Return sequence prefix of the given length (not end index!)
std::vector< const Ribonucleotide * > & getSequence()
Definition NASequence.h:349
const Ribonucleotide *const & operator[](size_t index) const
Definition NASequence.h:368
static void parseString_(const String &s, NASequence &nas)
friend std::ostream & operator<<(std::ostream &os, const NASequence &seq)
const std::vector< const Ribonucleotide * > & getSequence() const
Definition NASequence.h:344
ConstIterator end() const
Definition NASequence.h:401
bool operator!=(const NASequence &rhs) const
not quality
NASequence(std::vector< const Ribonucleotide * > s, const RibonucleotideChainEnd *five_prime, const RibonucleotideChainEnd *three_prime)
full constructor
void set(size_t index, const Ribonucleotide *r)
getter / setter for ribonucleotide elements (easily wrapped using pyOpenMS)
static NASequence fromString(const char *s)
create NASequence object by parsing a C string (character array)
const Ribonucleotide *& operator[](size_t index)
getter / setter for sequence elements (C++ container style)
Definition NASequence.h:363
EmpiricalFormula getFormula(NASFragmentType type=Full, Int charge=0) const
Get the formula for a NASequence.
NASFragmentType
an enum of all possible fragment ion types
Definition NASequence.h:43
@ AminusB
A ion with base loss, added for nucleic acid support.
Definition NASequence.h:62
@ YIon
MS:1001220 peptide bond up to the C-terminus.
Definition NASequence.h:52
@ XIon
MS:1001228 amide/C-alpha bond up to the C-terminus.
Definition NASequence.h:51
@ ZIon
MS:1001230 C-alpha/carbonyl carbon bond.
Definition NASequence.h:53
@ WIon
W ion, added for nucleic acid support.
Definition NASequence.h:61
@ BIonMinusH20
MS:1001222 b ion without water.
Definition NASequence.h:55
@ BIonMinusNH3
MS:1001232 b ion without ammonia.
Definition NASequence.h:57
@ AIon
MS:1001229 N-terminus up to the C-alpha/carbonyl carbon bond.
Definition NASequence.h:48
@ Precursor
MS:1001523 Precursor ion.
Definition NASequence.h:54
@ YIonMinusH20
MS:1001223 y ion without water.
Definition NASequence.h:56
@ NonIdentified
MS:1001240 Non-identified ion.
Definition NASequence.h:59
@ BIon
MS:1001224 N-terminus up to the peptide bond.
Definition NASequence.h:49
@ ThreePrime
only 3' terminus
Definition NASequence.h:47
@ CIon
MS:1001231 N-terminus up to the amide/C-alpha bond.
Definition NASequence.h:50
@ YIonMinusNH3
MS:1001233 y ion without ammonia.
Definition NASequence.h:58
@ Internal
internal, without any termini
Definition NASequence.h:45
@ Unannotated
no stored annotation
Definition NASequence.h:60
@ FivePrime
only 5' terminus
Definition NASequence.h:46
@ DIon
D ion, added for nucleic acid support.
Definition NASequence.h:63
static NASequence fromString(const String &s)
create NASequence object by parsing an OpenMS string
NASequence & operator=(const NASequence &) &=default
Copy assignment operator.
static String::ConstIterator parseMod_(const String::ConstIterator str_it, const String &str, NASequence &nas)
Parses modifications in square brackets.
ConstIterator cbegin() const
Definition NASequence.h:406
double getAverageWeight(NASFragmentType type=Full, Int charge=0) const
Get the Average Weight of a NASequence. NB returns the uncharged mass + or - proton masses to match t...
Iterator end()
Definition NASequence.h:396
NASequence getSubsequence(Size start=0, Size length=Size(-1)) const
Return subsequence with given starting position and length.
std::vector< const Ribonucleotide * > seq_
Definition NASequence.h:517
void setFivePrimeMod(const RibonucleotideChainEnd *r)
ConstIterator begin() const
Definition NASequence.h:391
const RibonucleotideChainEnd * getThreePrimeMod() const
const RibonucleotideChainEnd * getFivePrimeMod() const
NASequence(NASequence &&)=default
Move constructor.
NASequence(const NASequence &)=default
default constructor
Representation of a ribonucleotide (modified or unmodified)
Definition Ribonucleotide.h:28
const String getCode() const
Return the short name.
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
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition Types.h:97
bool operator==(const IDBoostGraph::ProteinGroup &lhs, const IDBoostGraph::ProteinGroup &rhs)
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
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 fnv1a_hash_string(const std::string &s) noexcept
FNV-1a hash for a string.
Definition HashUtils.h:70
std::size_t operator()(const OpenMS::NASequence &seq) const noexcept
Definition NASequence.h:550