OpenMS
|
This vector holds pointer to the elements of another container. More...
#include <OpenMS/DATASTRUCTURES/ConstRefVector.h>
Classes | |
class | ConstRefVectorConstIterator |
ConstIterator for the ConstRefVector. More... | |
class | ConstRefVectorIterator |
Mutable iterator for the ConstRefVector. More... | |
Public Types | |
typedef ContainerT | ContainerType |
Type definitions. More... | |
typedef ContainerType::value_type | ValueType |
typedef ConstRefVectorIterator< const ValueType > | Iterator |
typedef ConstRefVectorConstIterator< const ValueType > | ConstIterator |
typedef std::reverse_iterator< Iterator > | ReverseIterator |
typedef std::reverse_iterator< ConstIterator > | ConstReverseIterator |
typedef ValueType | value_type |
STL-compliance type definitions. More... | |
typedef ContainerType::size_type | size_type |
typedef ContainerType::difference_type | difference_type |
typedef ContainerType::reference | reference |
typedef ContainerType::const_reference | const_reference |
typedef ContainerType::pointer | pointer |
typedef Iterator | iterator |
typedef ConstIterator | const_iterator |
typedef ReverseIterator | reverse_iterator |
typedef ConstReverseIterator | const_reverse_iterator |
Public Member Functions | |
void | push_back (const ValueType &x) |
See std::vector documentation. More... | |
void | pop_back () |
See std::vector documentation. More... | |
size_type | size () const |
See std::vector documentation. More... | |
size_type | capacity () const |
See std::vector documentation. More... | |
void | reserve (size_type n) |
See std::vector documentation. More... | |
size_type | max_size () const |
See std::vector documentation. More... | |
Iterator | begin () |
See std::vector documentation. More... | |
Iterator | end () |
See std::vector documentation. More... | |
ConstIterator | begin () const |
See std::vector documentation. More... | |
ConstIterator | end () const |
See std::vector documentation. More... | |
ReverseIterator | rbegin () |
See std::vector documentation. More... | |
ReverseIterator | rend () |
See std::vector documentation. More... | |
ConstReverseIterator | rbegin () const |
See std::vector documentation. More... | |
ConstReverseIterator | rend () const |
See std::vector documentation. More... | |
void | resize (size_type new_size) |
See std::vector documentation. More... | |
void | resize (size_type new_size, const ValueType &t) |
See std::vector documentation. More... | |
const_reference | front () const |
See std::vector documentation. More... | |
const_reference | back () const |
See std::vector documentation. More... | |
void | clear () |
See std::vector documentation. More... | |
bool | empty () const |
See std::vector documentation. More... | |
const_reference | operator[] (size_type n) const |
See std::vector documentation. More... | |
bool | operator== (const ConstRefVector &array) const |
See std::vector documentation. More... | |
bool | operator!= (const ConstRefVector &array) const |
See std::vector documentation. More... | |
bool | operator< (const ConstRefVector &array) const |
Comparison of container sizes. More... | |
bool | operator> (const ConstRefVector &array) const |
Comparison of container sizes. More... | |
bool | operator<= (const ConstRefVector &array) const |
Comparison of container sizes. More... | |
bool | operator>= (const ConstRefVector &array) const |
Comparison of container sizes. More... | |
void | swap (ConstRefVector &array) |
See std::vector documentation. More... | |
Iterator | insert (Iterator pos, const ValueType &element) |
See std::vector documentation. More... | |
void | insert (Iterator pos, size_type n, const ValueType &element) |
See std::vector documentation. More... | |
template<class InputIterator > | |
void | insert (Iterator pos, InputIterator f, InputIterator l) |
See std::vector documentation. More... | |
Iterator | erase (Iterator pos) |
See std::vector documentation. More... | |
Iterator | erase (Iterator first, Iterator last) |
See std::vector documentation. More... | |
Constructors and Destructor | |
ConstRefVector () | |
See std::vector documentation. More... | |
ConstRefVector (size_type n) | |
See std::vector documentation. More... | |
ConstRefVector (size_type n, const ValueType &element) | |
See std::vector documentation. More... | |
ConstRefVector (const ConstRefVector &p) | |
See std::vector documentation. More... | |
template<class InputIterator > | |
ConstRefVector (InputIterator f, InputIterator l) | |
See std::vector documentation. More... | |
ConstRefVector (ContainerType &p) | |
See std::vector documentation. More... | |
~ConstRefVector () | |
See std::vector documentation. More... | |
ConstRefVector & | operator= (const ConstRefVector &rhs) |
See std::vector documentation. More... | |
template<class InputIterator > | |
void | assign (InputIterator f, InputIterator l) |
See std::vector documentation. More... | |
void | assign (size_type n, const ValueType &x) |
See std::vector documentation. More... | |
void | sortByIntensity (bool reverse=false) |
Sorting. More... | |
void | sortByPosition () |
Lexicographically sorts the elements by their position. More... | |
Friends | |
void | swap (ConstRefVector &a1, ConstRefVector &a2) |
See std::vector documentation. More... | |
Generic sorting function templates. | |
Any element comparator can be given as template argument. You can also give the comparator as an argument to the function template (this is useful if the comparator is not default constructed, but keep in mind that STL copies comparators a lot). Thus your can e.g. write | |
std::vector< const ValueType * > | vector_ |
the internal vector of ValueType pointers More... | |
size_type | capacity_ |
the current capacity More... | |
const ContainerType * | base_container_ptr_ |
Pointer to the base container. More... | |
template<typename ComparatorType > | |
void | sortByComparator (ComparatorType const &comparator=ComparatorType()) |
This vector holds pointer to the elements of another container.
If you for example want to sort the elements of a constant container, you would have to copy the whole container.
To avoid copy actions this class only holds pointer to the constant elements of a container.
You can insert new elements, but it is not possible to change existing ones.
The following code demonstrates the use of this class:
typedef ConstIterator const_iterator |
typedef ContainerType::const_reference const_reference |
typedef ConstRefVectorConstIterator<const ValueType> ConstIterator |
typedef std::reverse_iterator<ConstIterator> ConstReverseIterator |
typedef ContainerT ContainerType |
Type definitions.
Wrapped container type
typedef ContainerType::difference_type difference_type |
typedef ConstRefVectorIterator<const ValueType> Iterator |
typedef ContainerType::pointer pointer |
typedef ContainerType::reference reference |
typedef ReverseIterator reverse_iterator |
typedef std::reverse_iterator<Iterator> ReverseIterator |
typedef ContainerType::size_type size_type |
typedef ValueType value_type |
STL-compliance type definitions.
typedef ContainerType::value_type ValueType |
|
inline |
See std::vector documentation.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::begin(), ConstRefVector< ContainerT >::end(), and ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::clear(), ConstRefVector< ContainerT >::end(), and ConstRefVector< ContainerT >::insert().
See std::vector documentation.
References ConstRefVector< ContainerT >::clear(), ConstRefVector< ContainerT >::end(), and ConstRefVector< ContainerT >::insert().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::end().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::ConstRefVector(), ConstRefVector< ContainerT >::front(), ConstRefVector< ContainerT >::operator=(), and ConstRefVector< ContainerT >::rend().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::capacity_, and ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::reserve().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::assign(), and ConstRefVector< ContainerT >::operator=().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::assign(), ConstRefVector< ContainerT >::back(), ConstRefVector< ContainerT >::ConstRefVector(), ConstRefVector< ContainerT >::operator=(), and ConstRefVector< ContainerT >::rbegin().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
See std::vector documentation.
References ConstRefVector< ContainerT >::ConstRefVectorConstIterator< ValueT >::position_, and ConstRefVector< ContainerT >::vector_.
See std::vector documentation.
References ConstRefVector< ContainerT >::ConstRefVectorConstIterator< ValueT >::position_, and ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::begin().
See std::vector documentation.
References ConstRefVector< ContainerT >::ConstRefVectorConstIterator< ValueT >::position_, and ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::assign().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::ConstRefVectorConstIterator< ValueT >::position_, and ConstRefVector< ContainerT >::vector_.
See std::vector documentation.
References ConstRefVector< ContainerT >::ConstRefVectorConstIterator< ValueT >::position_, and ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::operator==().
|
inline |
Comparison of container sizes.
References ConstRefVector< ContainerT >::size().
Referenced by ConstRefVector< ContainerT >::operator<=().
|
inline |
Comparison of container sizes.
References ConstRefVector< ContainerT >::operator<(), and ConstRefVector< ContainerT >::operator==().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::base_container_ptr_, ConstRefVector< ContainerT >::begin(), ConstRefVector< ContainerT >::clear(), ConstRefVector< ContainerT >::end(), ConstRefVector< ContainerT >::reserve(), ConstRefVector< ContainerT >::size(), and ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::base_container_ptr_, ConstRefVector< ContainerT >::size(), and ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::operator!=(), ConstRefVector< ContainerT >::operator<=(), and ConstRefVector< ContainerT >::operator>=().
|
inline |
Comparison of container sizes.
References ConstRefVector< ContainerT >::size().
Referenced by ConstRefVector< ContainerT >::operator>=().
|
inline |
Comparison of container sizes.
References ConstRefVector< ContainerT >::operator==(), and ConstRefVector< ContainerT >::operator>().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::end().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::end().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::begin().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::begin().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::capacity(), ConstRefVector< ContainerT >::capacity_, and ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::operator=().
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::capacity_, and ConstRefVector< ContainerT >::vector_.
See std::vector documentation.
References ConstRefVector< ContainerT >::capacity_, and ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
Referenced by ConstRefVector< ContainerT >::operator<(), ConstRefVector< ContainerT >::operator=(), ConstRefVector< ContainerT >::operator==(), and ConstRefVector< ContainerT >::operator>().
|
inline |
References ConstRefVector< ContainerT >::vector_.
|
inline |
Sorting.
These simplified sorting methods are supported for convenience.
References OpenMS::StringUtils::reverse(), and ConstRefVector< ContainerT >::vector_.
|
inline |
Lexicographically sorts the elements by their position.
References ConstRefVector< ContainerT >::vector_.
|
inline |
See std::vector documentation.
References ConstRefVector< ContainerT >::vector_.
|
friend |
See std::vector documentation.
|
protected |
Pointer to the base container.
Referenced by ConstRefVector< ContainerT >::operator=(), and ConstRefVector< ContainerT >::operator==().
|
protected |
the current capacity
Referenced by ConstRefVector< ContainerT >::capacity(), ConstRefVector< ContainerT >::reserve(), and ConstRefVector< ContainerT >::resize().
|
protected |
the internal vector of ValueType pointers
Referenced by ConstRefVector< ContainerT >::begin(), ConstRefVector< ContainerT >::capacity(), ConstRefVector< ContainerT >::clear(), ConstRefVector< ContainerT >::ConstRefVector(), ConstRefVector< ContainerT >::empty(), ConstRefVector< ContainerT >::end(), ConstRefVector< ContainerT >::erase(), ConstRefVector< ContainerT >::insert(), ConstRefVector< ContainerT >::max_size(), ConstRefVector< ContainerT >::operator=(), ConstRefVector< ContainerT >::operator==(), ConstRefVector< ContainerT >::operator[](), ConstRefVector< ContainerT >::pop_back(), ConstRefVector< ContainerT >::push_back(), ConstRefVector< ContainerT >::reserve(), ConstRefVector< ContainerT >::resize(), ConstRefVector< ContainerT >::size(), ConstRefVector< ContainerT >::sortByComparator(), ConstRefVector< ContainerT >::sortByIntensity(), ConstRefVector< ContainerT >::sortByPosition(), and ConstRefVector< ContainerT >::swap().