Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes

mln::fun::x2x::translation< n, C > Struct Template Reference

Translation function-object. More...

#include <translation.hh>

Inheritance diagram for mln::fun::x2x::translation< n, C >:
Inheritance graph

List of all members.

Public Types

typedef algebra::vec< n, C > argument
typedef Function_v2v< void > category
typedef C data_t
 Type of the underlying data stored in vectors and matrices.
typedef translation< n, C > exact_t
typedef translation< n, C > invert
 Type of the inverse function.
typedef algebra::h_mat< dim, C > matrix
typedef void mutable_result
typedef algebra::vec< n, C > result

Public Member Functions

invert inv () const
 Return the inverse function.
algebra::vec< n, C > inverse (const algebra::vec< n, C > &v) const
const matrixmat () const
algebra::vec< n, C > operator() (const algebra::vec< n, C > &x) const
algebra::vec< n, C > operator() (const algebra::vec< n, C > &v) const
 Perform the translation of the given vector.
void set_t (const algebra::vec< n, C > &t)
 Set a net translation vector.
const algebra::vec< n, C > & t () const
 Return the translation vector.
 translation (const algebra::vec< n, C > &t)
 Constructor with the translation vector.
 translation ()
 Constructor without argument.

Static Public Attributes

static const unsigned dim

Protected Member Functions

void update ()

Protected Attributes

matrix m_
algebra::vec< n, C > t_

Detailed Description

template<unsigned n, typename C>
struct mln::fun::x2x::translation< n, C >

Translation function-object.

Definition at line 52 of file x2x/translation.hh.


Member Typedef Documentation

typedef algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::argument [inherited]

Definition at line 53 of file x2x_linear_impl.hh.

typedef Function_v2v<void> mln::Function_v2v< translation< n, C > >::category [inherited]

Reimplemented from mln::Function< translation< n, C > >.

Definition at line 126 of file function.hh.

template<unsigned n, typename C>
typedef C mln::fun::x2x::translation< n, C >::data_t

Type of the underlying data stored in vectors and matrices.

Definition at line 59 of file x2x/translation.hh.

typedef translation< n, C > mln::Object< translation< n, C > >::exact_t [inherited]

Definition at line 173 of file object.hh.

template<unsigned n, typename C>
typedef translation<n,C> mln::fun::x2x::translation< n, C >::invert

Type of the inverse function.

Definition at line 62 of file x2x/translation.hh.

typedef algebra::h_mat<dim, C> mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::matrix [inherited]

Definition at line 55 of file x2x_linear_impl.hh.

typedef void mln::Function_v2v< translation< n, C > >::mutable_result [inherited]

Definition at line 127 of file function.hh.

typedef algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::result [inherited]

Definition at line 54 of file x2x_linear_impl.hh.


Constructor & Destructor Documentation

template<unsigned n, typename C >
mln::fun::x2x::translation< n, C >::translation (  )  [inline]

Constructor without argument.

Definition at line 93 of file x2x/translation.hh.

template<unsigned n, typename C >
mln::fun::x2x::translation< n, C >::translation ( const algebra::vec< n, C > &  t  )  [inline]

Constructor with the translation vector.

Definition at line 99 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::update().


Member Function Documentation

template<unsigned n, typename C >
translation< n, C > mln::fun::x2x::translation< n, C >::inv (  )  const [inline]

Return the inverse function.

Definition at line 124 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::t_.

template<unsigned n, typename C >
algebra::vec< n, C > mln::fun::x2x::translation< n, C >::inverse ( const algebra::vec< n, C > &  v  )  const [inline]

Definition at line 116 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::t_.

const matrix& mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::mat (  )  const [inherited]
template<unsigned n, typename C >
algebra::vec< n, C > mln::fun::x2x::translation< n, C >::operator() ( const algebra::vec< n, C > &  v  )  const [inline]

Perform the translation of the given vector.

Definition at line 108 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::t_.

algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::operator() ( const algebra::vec< n, C > &  x  )  const [inline, inherited]

Definition at line 57 of file x2x_linear_impl.hh.

template<unsigned n, typename C >
void mln::fun::x2x::translation< n, C >::set_t ( const algebra::vec< n, C > &  t  )  [inline]

Set a net translation vector.

Definition at line 134 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::t_, and mln::fun::x2x::translation< n, C >::update().

template<unsigned n, typename C >
const algebra::vec< n, C > & mln::fun::x2x::translation< n, C >::t (  )  const [inline]

Return the translation vector.

Definition at line 143 of file x2x/translation.hh.

References mln::fun::x2x::translation< n, C >::t_.

template<unsigned n, typename C >
void mln::fun::x2x::translation< n, C >::update (  )  [inline, protected]

Member Data Documentation

const unsigned mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::dim [static, inherited]

Definition at line 51 of file x2x_linear_impl.hh.

matrix mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , C, translation< n, C > >::m_ [protected, inherited]

Definition at line 68 of file x2x_linear_impl.hh.

Referenced by mln::fun::x2x::translation< n, C >::update().

template<unsigned n, typename C>
algebra::vec<n,C> mln::fun::x2x::translation< n, C >::t_ [protected]