A two-dimensional distance matrix, similar to OpenMS::Matrix. More...
#include <OpenMS/DATASTRUCTURES/DistanceMatrix.h>
| Public Types | |
| STL compliance type definitions | |
| typedef Value | value_type | 
| OpenMS compliance type definitions | |
| typedef Size | SizeType | 
| typedef value_type | ValueType | 
| Public Member Functions | |
| DistanceMatrix () | |
| default constructor  More... | |
| DistanceMatrix (SizeType dimensionsize, Value value=Value()) | |
| detailed constructor  More... | |
| DistanceMatrix (const DistanceMatrix &source) | |
| copy constructor  More... | |
| ~DistanceMatrix () | |
| destructor  More... | |
| const ValueType | operator() (SizeType i, SizeType j) const | 
| gets a value at a given position (read only):  More... | |
| ValueType | operator() (SizeType i, SizeType j) | 
| gets a value at a given position (read only):  More... | |
| const ValueType | getValue (SizeType i, SizeType j) const | 
| gets a value at a given position:  More... | |
| ValueType | getValue (SizeType i, SizeType j) | 
| gets a value at a given position:  More... | |
| void | setValue (SizeType i, SizeType j, ValueType value) | 
| sets a value at a given position:  More... | |
| void | setValueQuick (SizeType i, SizeType j, ValueType value) | 
| sets a value at a given position:  More... | |
| void | clear () | 
| reset all  More... | |
| void | resize (SizeType dimensionsize, Value value=Value()) | 
| resizing the container  More... | |
| void | reduce (SizeType j) | 
| reduces DistanceMatrix by one dimension. first the jth row, then jth column  More... | |
| SizeType | dimensionsize () const | 
| gives the number of rows (i.e. number of columns)  More... | |
| void | updateMinElement () | 
| keep track of the actual minimum element after altering the matrix  More... | |
| bool | operator== (DistanceMatrix< ValueType > const &rhs) const | 
| Equality comparator.  More... | |
| std::pair< SizeType, SizeType > | getMinElementCoordinates () const | 
| Indexpair of minimal element.  More... | |
| Protected Attributes | |
| ValueType ** | matrix_ | 
| sparse element not to be included in base container  More... | |
| SizeType | init_size_ | 
| number of actually stored rows  More... | |
| SizeType | dimensionsize_ | 
| number of accessably stored rows (i.e. number of columns)  More... | |
| std::pair< SizeType, SizeType > | min_element_ | 
| index of minimal element(i.e. number in underlying SparseVector)  More... | |
| Private Member Functions | |
| DistanceMatrix & | operator= (const DistanceMatrix &rhs) | 
| assignment operator (unsafe)  More... | |
| Related Functions | |
| (Note that these are not member functions.) | |
| template<typename Value > | |
| std::ostream & | operator<< (std::ostream &os, const DistanceMatrix< Value > &matrix) | 
| Print the contents to a stream.  More... | |
A two-dimensional distance matrix, similar to OpenMS::Matrix.
similar to OpenMS::Matrix, but contains only elements above the main diagonal, hence translating access with operator(,) for elements of above the main diagonal to corresponing elements below the main diagonal and returning 0 for requested elements in the main diagonal, since selfdistance is assumed to be 0. Keeps track of the minimal element in the Matrix with OpenMS::DistanceMatrix::min_element_ if only for setting a value OpenMS::DistanceMatrix::setValue is used. Other OpenMS::DistanceMatrix altering methods may require a maual update by call of OpenMS::DistanceMatrix::updateMinElement, see the respective methods documentation.
| typedef Value value_type | 
| typedef value_type ValueType | 
| 
 | inline | 
default constructor
| 
 | inline | 
detailed constructor
| dimensionsize | the number of rows (and therewith cols) | 
| value | DistanceMatrix will be filled with this element (main diagonal will still "hold" only zeros) | 
| Exception::OutOfMemory | if requested dimensionsize is to big to fit into memory | 
References DistanceMatrix< Value >::dimensionsize(), DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::init_size_, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and NULL.
| 
 | inline | 
copy constructor
| source | this DistanceMatrix will be copied | 
| Exception::OutOfMemory | if requested dimensionsize is to big to fit into memory | 
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::init_size_, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and NULL.
| 
 | inline | 
destructor
References DistanceMatrix< Value >::init_size_, and DistanceMatrix< Value >::matrix_.
| 
 | inline | 
reset all
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::init_size_, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and NULL.
Referenced by ClusterHierarchical::cluster().
| 
 | inline | 
gives the number of rows (i.e. number of columns)
References DistanceMatrix< Value >::dimensionsize_.
Referenced by ClusterHierarchical::cluster(), DistanceMatrix< Value >::DistanceMatrix(), DistanceMatrix< Value >::operator==(), and DistanceMatrix< Value >::resize().
Indexpair of minimal element.
| Exception::OutOfRange | thrown if there is no element to access | 
References DistanceMatrix< Value >::dimensionsize_, and DistanceMatrix< Value >::min_element_.
gets a value at a given position:
| i | the i-th row | 
| j | the j-th col | 
| Exception::OutOfRange | if given coordinates are out of range | 
References DistanceMatrix< Value >::dimensionsize_, and DistanceMatrix< Value >::matrix_.
Referenced by DistanceMatrix< Value >::operator()().
gets a value at a given position:
| i | the i-th row | 
| j | the j-th col | 
| Exception::OutOfRange | if given coordinates are out of range | 
References DistanceMatrix< Value >::dimensionsize_, and DistanceMatrix< Value >::matrix_.
gets a value at a given position (read only):
| i | the i-th row | 
| j | the j-th col | 
References DistanceMatrix< Value >::getValue().
gets a value at a given position (read only):
| i | the i-th row | 
| j | the j-th col | 
References DistanceMatrix< Value >::getValue().
| 
 | inlineprivate | 
assignment operator (unsafe)
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::init_size_, DistanceMatrix< Value >::matrix_, and DistanceMatrix< Value >::min_element_.
| 
 | inline | 
Equality comparator.
| Exception::Precondition | thrown if given DistanceMatrix is not compatible in size | 
References DistanceMatrix< Value >::dimensionsize(), DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::matrix_, and OPENMS_PRECONDITION.
| 
 | inline | 
reduces DistanceMatrix by one dimension. first the jth row, then jth column
| j | the jth row (and therewith also jth col) to be removed | 
| Exception::OutOfRange | if jis grater than the greatest row number | 
may invalidates min_element_, make sure to update min_element_ if neccessary before used
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::matrix_, and NULL.
| 
 | inline | 
resizing the container
| dimensionsize | the desired number of rows (and therewith cols) | 
| value | which the matrix will be filled with | 
| Exception::OutOfMemory | thrown if size of DistanceMatrix requested does not fit into memory | 
invalidates all content
References DistanceMatrix< Value >::dimensionsize(), DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::init_size_, OpenMS::Constants::k, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and NULL.
Referenced by ClusterHierarchical::cluster().
sets a value at a given position:
| i | the i-th row | 
| j | the j-th col | 
| value | the set-value | 
| Exception::OutOfRange | if given coordinates are out of range | 
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and DistanceMatrix< Value >::updateMinElement().
Referenced by ClusterHierarchical::cluster().
sets a value at a given position:
| i | the i-th row | 
| j | the j-th col | 
| value | the set-value | 
| Exception::OutOfRange | if given coordinates are out of range | 
possible invalidation of min_element_ - make sure to update before further usage of matrix
References DistanceMatrix< Value >::dimensionsize_, and DistanceMatrix< Value >::matrix_.
Referenced by ClusterHierarchical::cluster().
| 
 | inline | 
keep track of the actual minimum element after altering the matrix
| Exception::OutOfRange | thrown if there is no element to access | 
References DistanceMatrix< Value >::dimensionsize_, DistanceMatrix< Value >::matrix_, DistanceMatrix< Value >::min_element_, and NULL.
Referenced by DistanceMatrix< Value >::setValue().
| 
 | related | 
Print the contents to a stream.
| 
 | protected | 
number of accessably stored rows (i.e. number of columns)
Referenced by DistanceMatrix< Value >::clear(), DistanceMatrix< Value >::dimensionsize(), DistanceMatrix< Value >::DistanceMatrix(), DistanceMatrix< Value >::getMinElementCoordinates(), DistanceMatrix< Value >::getValue(), DistanceMatrix< Value >::operator=(), DistanceMatrix< Value >::operator==(), DistanceMatrix< Value >::reduce(), DistanceMatrix< Value >::resize(), DistanceMatrix< Value >::setValue(), DistanceMatrix< Value >::setValueQuick(), and DistanceMatrix< Value >::updateMinElement().
| 
 | protected | 
number of actually stored rows
Referenced by DistanceMatrix< Value >::clear(), DistanceMatrix< Value >::DistanceMatrix(), DistanceMatrix< Value >::operator=(), DistanceMatrix< Value >::resize(), and DistanceMatrix< Value >::~DistanceMatrix().
| 
 | protected | 
sparse element not to be included in base container
Referenced by DistanceMatrix< Value >::clear(), DistanceMatrix< Value >::DistanceMatrix(), DistanceMatrix< Value >::getValue(), DistanceMatrix< Value >::operator=(), DistanceMatrix< Value >::operator==(), DistanceMatrix< Value >::reduce(), DistanceMatrix< Value >::resize(), DistanceMatrix< Value >::setValue(), DistanceMatrix< Value >::setValueQuick(), DistanceMatrix< Value >::updateMinElement(), and DistanceMatrix< Value >::~DistanceMatrix().
index of minimal element(i.e. number in underlying SparseVector)
Referenced by DistanceMatrix< Value >::clear(), DistanceMatrix< Value >::DistanceMatrix(), DistanceMatrix< Value >::getMinElementCoordinates(), DistanceMatrix< Value >::operator=(), DistanceMatrix< Value >::resize(), DistanceMatrix< Value >::setValue(), and DistanceMatrix< Value >::updateMinElement().
| OpenMS / TOPP release 1.11.1 | Documentation generated on Thu Nov 14 2013 11:19:29 using doxygen 1.8.5 |