$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::dpoint< G, C > Struct Template Reference

#include <mln/core/dpoint.hh>

Public Member Functions

 dpoint ()
template<typename C2 >
 dpoint (const algebra::vec< dim, C2 > &v)
template<typename F >
 dpoint (const Function_v2v< F > &f)
template<typename Q >
 operator mln::algebra::vec< dpoint< G, C >::dim, Q > () const
operator[] (unsigned i) const
C & operator[] (unsigned i)
void set_all (C c)
vec to_vec () const
 dpoint (C ind)
 dpoint (C row, C col)
 dpoint (C sli, C row, C col)
 dpoint (const literal::zero_t &)
dpoint< G, C > & operator= (const literal::zero_t &)
 dpoint (const literal::one_t &)
dpoint< G, C > & operator= (const literal::one_t &)

Protected Attributes

mln::algebra::vec< G::dim, C > coord_

Public Types

enum  { dim = G::dim }
typedef Gdpoint< void > category
typedef C coord
typedef dpoint< G, C > exact_t
typedef G grid
typedef point< G, C > psite
typedef point< G, C > site
typedef algebra::vec< G::dim, C > vec

Detailed Description

template<typename G, typename C>
struct mln::dpoint< G, C >

Generic delta-point class.

Parameters are G the dimension of the space and C the coordinate type in this space.

Definition at line 57 of file dpoint.hh.

Constructor & Destructor Documentation

template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( )

Constructor without argument.

template<typename G, typename C>
template<typename C2 >
mln::dpoint< G, C >::dpoint ( const algebra::vec< dim, C2 > &  v)

Constructor from an algebra vector.

template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( ind)

Constructors with different numbers of arguments (coordinates) w.r.t. the dimension.

template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( row,
col 
)
template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( sli,
row,
col 
)
template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( const literal::zero_t )

Constructors/assignments with literals.

template<typename G, typename C>
mln::dpoint< G, C >::dpoint ( const literal::one_t )
template<typename G, typename C>
template<typename F >
mln::dpoint< G, C >::dpoint ( const Function_v2v< F > &  f)

Constructor; coordinates are set by function f.

Member Function Documentation

template<typename G, typename C>
template<typename Q >
mln::dpoint< G, C >::operator mln::algebra::vec< dpoint< G, C >::dim, Q > ( ) const

Conversion towards a algebra::vec.

template<typename G, typename C>
dpoint<G,C>& mln::dpoint< G, C >::operator= ( const literal::zero_t )
template<typename G, typename C>
dpoint<G,C>& mln::dpoint< G, C >::operator= ( const literal::one_t )
template<typename G, typename C>
C mln::dpoint< G, C >::operator[] ( unsigned  i) const

Read-only access to the i-th coordinate value.

Parameters
[in]iThe coordinate index.
Precondition
i < dim
template<typename G, typename C>
C& mln::dpoint< G, C >::operator[] ( unsigned  i)

Read-write access to the i-th coordinate value.

Parameters
[in]iThe coordinate index.
Precondition
i < dim
template<typename G, typename C>
void mln::dpoint< G, C >::set_all ( c)

Set all coordinates to the value c.

template<typename G, typename C>
vec mln::dpoint< G, C >::to_vec ( ) const

Explicit conversion.

Member Data Documentation

template<typename G, typename C>
mln::algebra::vec<G::dim, C> mln::dpoint< G, C >::coord_
protected

Definition at line 127 of file dpoint.hh.

Member Typedef Documentation

typedef Gdpoint<void> mln::Gdpoint< dpoint< G, C > >::category
inherited

Definition at line 103 of file gdpoint.hh.

template<typename G, typename C>
typedef C mln::dpoint< G, C >::coord

Coordinate associated type.

Definition at line 75 of file dpoint.hh.

typedef dpoint< G, C > mln::Object< dpoint< G, C > >::exact_t
inherited

Definition at line 105 of file object.hh.

template<typename G, typename C>
typedef G mln::dpoint< G, C >::grid

Grid associated type.

Definition at line 66 of file dpoint.hh.

template<typename G, typename C>
typedef point<G,C> mln::dpoint< G, C >::psite

Psite associated type.

Definition at line 69 of file dpoint.hh.

template<typename G, typename C>
typedef point<G,C> mln::dpoint< G, C >::site

Site associated type.

Definition at line 72 of file dpoint.hh.

template<typename G, typename C>
typedef algebra::vec<G::dim, C> mln::dpoint< G, C >::vec

Algebra vector (vec) associated type.

Definition at line 78 of file dpoint.hh.

Member Enumeration Documentation

template<typename G, typename C>
anonymous enum
Enumerator:
dim 

Dimension of the space.

Invariant
dim > 0

Definition at line 63 of file dpoint.hh.