[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
|
TinyVectorBase | ![]() |
Base class for fixed size vectors. More...
#include <vigra/tinyvector.hxx>

Public Types | |
| enum | |
| typedef value_type const * | const_iterator |
| typedef VALUETYPE const * | const_pointer |
| typedef VALUETYPE const & | const_reference |
| typedef int | difference_type |
| typedef value_type * | iterator |
| typedef SquareRootTraits < SquaredNormType > ::SquareRootResult | NormType |
| typedef VALUETYPE * | pointer |
| typedef VALUETYPE & | reference |
| typedef double | scalar_multiplier |
| typedef unsigned int | size_type |
| typedef NormTraits< VALUETYPE > ::SquaredNormType | SquaredNormType |
| typedef VALUETYPE | value_type |
Public Member Functions | |
| const_iterator | begin () const |
| iterator | begin () |
| const_iterator | end () const |
| iterator | end () |
| template<class Iterator> | |
| void | init (Iterator i, Iterator end) |
| NormType | magnitude () const |
| DERIVED & | operator*= (double r) |
| template<class T1, class D1, class D2> | |
| DERIVED & | operator*= (TinyVectorBase< T1, SIZE, D1, D2 > const &r) |
| template<class T1, class D1, class D2> | |
| DERIVED & | operator+= (TinyVectorBase< T1, SIZE, D1, D2 > const &r) |
| template<class T1, class D1, class D2> | |
| DERIVED & | operator-= (TinyVectorBase< T1, SIZE, D1, D2 > const &r) |
| DERIVED & | operator/= (double r) |
| const_reference | operator[] (difference_type i) const |
| reference | operator[] (difference_type i) |
| size_type | size () const |
| SquaredNormType | squaredMagnitude () const |
This class contains functionality shared by TinyVector and TinyVectorView, and enables these classes to be freely mixed within expressions. It is typically not used directly.
#include <vigra/tinyvector.hxx>
Namespace: vigra
| typedef value_type const* const_iterator |
STL-compatible definition of const iterator
Reimplemented in RGBValue, TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef VALUETYPE const* const_pointer |
const pointer (return of operator-> const).
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef VALUETYPE const& const_reference |
const reference (return of operator[] const).
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef int difference_type |
STL-compatible definition of difference_type
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef value_type* iterator |
STL-compatible definition of iterator
Reimplemented in RGBValue, TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef SquareRootTraits<SquaredNormType>::SquareRootResult NormType |
the vector's norm type
Reimplemented in RGBValue, TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef VALUETYPE* pointer |
pointer (return of operator->).
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef VALUETYPE& reference |
reference (return of operator[]).
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef double scalar_multiplier |
the scalar type for the outer product
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef unsigned int size_type |
STL-compatible definition of size_type
Reimplemented in TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef NormTraits<VALUETYPE>::SquaredNormType SquaredNormType |
the vector's squared norm type
Reimplemented in RGBValue, TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| typedef VALUETYPE value_type |
STL-compatible definition of valuetype
Reimplemented in RGBValue, TinyVector, TinyVectorView, TinyVector< double, 2 >, TinyVector< VALUETYPE, 3 >, and TinyVector< float, 3 >.
| anonymous enum |
the vector's size
| const_iterator begin | ( | ) | const |
Get const random access iterator to begin of vector.
| iterator begin | ( | ) |
Get random access iterator to begin of vector.
| const_iterator end | ( | ) | const |
Get const random access iterator past-the-end of vector.
| iterator end | ( | ) |
Get random access iterator past-the-end of vector.
| template<class Iterator> | ||||
| void init | ( | Iterator | i, | |
| Iterator | end | |||
| ) | ||||
Initialize from another sequence (must have length SIZE!)
| DERIVED& operator*= | ( | double | r | ) |
Component-wise scalar multiply-assignment
| template<class T1, class D1, class D2> | |||||
| DERIVED& operator*= | ( | TinyVectorBase< T1, SIZE, D1, D2 > const & | r | ) | |
Component-wise multiply-assignment
| template<class T1, class D1, class D2> | |||||
| DERIVED& operator+= | ( | TinyVectorBase< T1, SIZE, D1, D2 > const & | r | ) | |
Component-wise add-assignment
| template<class T1, class D1, class D2> | |||||
| DERIVED& operator-= | ( | TinyVectorBase< T1, SIZE, D1, D2 > const & | r | ) | |
Component-wise subtract-assignment
| DERIVED& operator/= | ( | double | r | ) |
Component-wise scalar divide-assignment
| const_reference operator[] | ( | difference_type | i | ) | const |
Get component by index.
| reference operator[] | ( | difference_type | i | ) |
Access component by index.
| size_type size | ( | ) | const |
Size of TinyVector vector always equals the template parameter SIZE.
| SquaredNormType squaredMagnitude | ( | ) | const |
Calculate squared magnitude.
Reimplemented in RGBValue.
|
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|