Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Public Attributes
icl::math::FixedMatrixPart< T, N, Iterator > Class Template Reference

Utility struct for FixedMatrix sub-parts. More...

#include <FixedMatrix.h>

Inheritance diagram for icl::math::FixedMatrixPart< T, N, Iterator >:
icl::math::FixedMatrixBase

List of all members.

Public Member Functions

 FixedMatrixPart (Iterator begin, Iterator end)
 Creates a new FixedMatrixPart instance with given Iterator Pair.
FixedMatrixPartoperator= (const T &value)
 Assignment with a new value (all data in range will be assigned with that value)
FixedMatrixPartoperator= (const FixedMatrixPart &other)
 Assignment with another (identical) instance of FixedMatrixPart.
template<class OtherIterator , class OtherT >
FixedMatrixPartoperator= (const FixedMatrixPart< OtherT, N, OtherIterator > &other)
 Assignment with another (compatible) instance of FixedMatrixPart.
template<unsigned int COLS>
FixedMatrixPartoperator= (const FixedMatrix< T, COLS, N/COLS > &m)
 Assignment with a compatible FixedMatrix instance (FixedMatrix DIM must be euqal to Part-size)
template<class T2 , unsigned int COLS>
FixedMatrixPartoperator= (const FixedMatrix< T2, COLS, N/COLS > &m)
 Assignment with a FixedMatrix instance (FixedMatrix DIM must be euqal to Part-size)

Public Attributes

Iterator begin
 Start iterator.
Iterator end
 End iterator.

Detailed Description

template<class T, unsigned int N, class Iterator>
class icl::math::FixedMatrixPart< T, N, Iterator >

Utility struct for FixedMatrix sub-parts.

FixedMatrix member functions row and col return an instance of this utility structure. FixedMatrixPart instances wrap a range of Iterators (begin- and end-Iterator) of template parameter type. Once created, FixedMatrixParts can not be setup with different Iterators. All further Assignments will only copy the ranged data represented by the source and destination iterator pairs.\ To avoid problems with ranges of different size, FixedMatrixPart instances are 'templated' to the range size (template parameter N)


Constructor & Destructor Documentation

template<class T, unsigned int N, class Iterator>
icl::math::FixedMatrixPart< T, N, Iterator >::FixedMatrixPart ( Iterator  begin,
Iterator  end 
) [inline]

Creates a new FixedMatrixPart instance with given Iterator Pair.


Member Function Documentation

template<class T, unsigned int N, class Iterator>
FixedMatrixPart& icl::math::FixedMatrixPart< T, N, Iterator >::operator= ( const T &  value) [inline]

Assignment with a new value (all data in range will be assigned with that value)

template<class T, unsigned int N, class Iterator>
FixedMatrixPart& icl::math::FixedMatrixPart< T, N, Iterator >::operator= ( const FixedMatrixPart< T, N, Iterator > &  other) [inline]

Assignment with another (identical) instance of FixedMatrixPart.

Internally std::copy is used

template<class T, unsigned int N, class Iterator>
template<class OtherIterator , class OtherT >
FixedMatrixPart& icl::math::FixedMatrixPart< T, N, Iterator >::operator= ( const FixedMatrixPart< OtherT, N, OtherIterator > &  other) [inline]

Assignment with another (compatible) instance of FixedMatrixPart.

For compatibility. Iterator type and destination type may differ but RangeSize must be equal

template<class T, unsigned int N, class Iterator>
template<unsigned int COLS>
FixedMatrixPart& icl::math::FixedMatrixPart< T, N, Iterator >::operator= ( const FixedMatrix< T, COLS, N/COLS > &  m)

Assignment with a compatible FixedMatrix instance (FixedMatrix DIM must be euqal to Part-size)

DIM equality is forced by Argument template parameters <...,COLS,N/COLS>

template<class T, unsigned int N, class Iterator>
template<class T2 , unsigned int COLS>
FixedMatrixPart& icl::math::FixedMatrixPart< T, N, Iterator >::operator= ( const FixedMatrix< T2, COLS, N/COLS > &  m)

Assignment with a FixedMatrix instance (FixedMatrix DIM must be euqal to Part-size)

DIM equality is forced by Argument template parameters <...,COLS,N/COLS>


Member Data Documentation

template<class T, unsigned int N, class Iterator>
Iterator icl::math::FixedMatrixPart< T, N, Iterator >::begin

Start iterator.

template<class T, unsigned int N, class Iterator>
Iterator icl::math::FixedMatrixPart< T, N, Iterator >::end

End iterator.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines