Public Types | Public Member Functions | Related Functions

mln::w_window< D, W > Struct Template Reference

Generic w_window class. More...

#include <w_window.hh>

Inherits weighted_window_base< mln::window< D >, w_window< D, W > >.

List of all members.

Public Types

typedef with_w_
< dpsites_bkd_piter< w_window
< D, W > >, W > 
bkd_qiter
 Site_Iterator type to browse (backward) the points of a generic w_window.
typedef D dpsite
 Dpsite associated type.
typedef with_w_
< dpsites_fwd_piter< w_window
< D, W > >, W > 
fwd_qiter
 Site_Iterator type to browse (forward) the points of a generic w_window.
typedef W weight
 Weight associated type.

Public Member Functions

void clear ()
 Clear this window.
w_window< D, W > & insert (const W &w, const D &d)
 Insert a couple of weight w and delta-point d.
bool is_symmetric () const
 Test if the window is symmetric.
const std::vector< D > & std_vector () const
 Give access to the vector of delta-points.
void sym ()
 Apply a central symmetry to the window.
w (unsigned i) const
 Give the i-th weight.
 w_window ()
 Constructor without argument.
const std::vector< W > & weights () const
 Give access to the vector of weights.
const mln::window< D > & win () const
 Give the corresponding window.

Related Functions

(Note that these are not member functions.)



template<typename D , typename W >
std::ostream & operator<< (std::ostream &ostr, const w_window< D, W > &w_win)
 Print a weighted window w_win into an output stream ostr.
template<typename D , typename Wl , typename Wr >
bool operator== (const w_window< D, Wl > &lhs, const w_window< D, Wr > &rhs)
 Equality test between two weighted windows lhs and rhs.

Detailed Description

template<typename D, typename W>
struct mln::w_window< D, W >

Generic w_window class.

This type of w_window is just like a set of delta-points. The parameter D is the type of delta-points; the parameter W is the type of weights.

Definition at line 100 of file core/w_window.hh.


Member Typedef Documentation

template<typename D, typename W>
typedef with_w_< dpsites_bkd_piter< w_window<D, W> >, W > mln::w_window< D, W >::bkd_qiter

Site_Iterator type to browse (backward) the points of a generic w_window.

Definition at line 114 of file core/w_window.hh.

template<typename D, typename W>
typedef D mln::w_window< D, W >::dpsite

Dpsite associated type.

Definition at line 104 of file core/w_window.hh.

template<typename D, typename W>
typedef with_w_< dpsites_fwd_piter< w_window<D, W> >, W > mln::w_window< D, W >::fwd_qiter

Site_Iterator type to browse (forward) the points of a generic w_window.

Definition at line 111 of file core/w_window.hh.

template<typename D, typename W>
typedef W mln::w_window< D, W >::weight

Weight associated type.

Definition at line 107 of file core/w_window.hh.


Constructor & Destructor Documentation

template<typename D , typename W >
mln::w_window< D, W >::w_window (  )  [inline]

Constructor without argument.

Definition at line 213 of file core/w_window.hh.


Member Function Documentation

template<typename D , typename W >
void mln::w_window< D, W >::clear (  )  [inline]

Clear this window.

Definition at line 308 of file core/w_window.hh.

template<typename D , typename W >
w_window< D, W > & mln::w_window< D, W >::insert ( const W &  w,
const D &  d 
) [inline]

Insert a couple of weight w and delta-point d.

Definition at line 254 of file core/w_window.hh.

Referenced by mln::w_window< D, W >::sym(), mln::make::w_window(), mln::make::w_window1d(), mln::make::w_window3d(), and mln::make::w_window_directional().

template<typename D , typename W >
bool mln::w_window< D, W >::is_symmetric (  )  const [inline]

Test if the window is symmetric.

Definition at line 284 of file core/w_window.hh.

References mln::w_window< D, W >::sym().

template<typename D , typename W >
const std::vector< D > & mln::w_window< D, W >::std_vector (  )  const [inline]

Give access to the vector of delta-points.

Definition at line 228 of file core/w_window.hh.

template<typename D , typename W >
void mln::w_window< D, W >::sym (  )  [inline]

Apply a central symmetry to the window.

Definition at line 296 of file core/w_window.hh.

References mln::w_window< D, W >::insert().

Referenced by mln::w_window< D, W >::is_symmetric().

template<typename D , typename W >
W mln::w_window< D, W >::w ( unsigned  i  )  const [inline]

Give the i-th weight.

Definition at line 244 of file core/w_window.hh.

template<typename D , typename W >
const std::vector< W > & mln::w_window< D, W >::weights (  )  const [inline]

Give access to the vector of weights.

Definition at line 236 of file core/w_window.hh.

Referenced by mln::w_window< D, W >::operator==().

template<typename D , typename W >
const mln::window< D > & mln::w_window< D, W >::win (  )  const [inline]

Give the corresponding window.

Definition at line 220 of file core/w_window.hh.

Referenced by mln::w_window< D, W >::operator==().


Friends And Related Function Documentation

template<typename D , typename W >
std::ostream & operator<< ( std::ostream &  ostr,
const w_window< D, W > &  w_win 
) [related]

Print a weighted window w_win into an output stream ostr.

Definition at line 420 of file core/w_window.hh.

template<typename D , typename Wl , typename Wr >
bool operator== ( const w_window< D, Wl > &  lhs,
const w_window< D, Wr > &  rhs 
) [related]

Equality test between two weighted windows lhs and rhs.

Definition at line 430 of file core/w_window.hh.

References mln::w_window< D, W >::weights(), and mln::w_window< D, W >::win().