oln::w_window3d< T > Class Template Reference

Window 3 dimensions with weight. More...

#include <w_window3d.hh>

Inheritance diagram for oln::w_window3d< T >:

Inheritance graph
[legend]
Collaboration diagram for oln::w_window3d< T >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef w_window3d< T > self_type
 The self type.
typedef struct_elt_traits<
self_type >::iter_type 
iter_type
 The associate image's type of iterator.
typedef struct_elt_traits<
self_type >::neighb_type 
neighb_type
 Type of neighbor.
typedef struct_elt_traits<
self_type >::dpoint_type 
dpoint_type
 The associate image's type of dpoint (move point).
typedef struct_elt_traits<
self_type >::weight_type 
weight_type
 Type of weight.

Public Member Functions

 w_window3d ()
 Construct a w_window of 3 dimensions.
 w_window3d (unsigned size)
 Construct a w_window of 3 dimensions.
w_window3d< T > & add (const dpoint_type &dp, const weight_type &w)
 Add a dpoint (move point) to the w_window.
w_window3d< T > & add (coord slice, coord row, coord col, const weight_type &weight)
 Add a point by coordinates to the w_window.
const weight_typeset (const dpoint_type &dp, const weight_type &weight)
 Set the weight of a point.
const weight_typeset (coord slice, coord row, coord col, const weight_type &weight)
 Set the weight of a point by coordinates.

Static Public Member Functions

static std::string name ()
 Return the name of the type.

Protected Member Functions

coord delta_update_ (const dpoint_type &dp)
 Update delta.

Friends

class abstract::window_base< abstract::w_window< w_window3d >, w_window3d >

Detailed Description

template<class T>
class oln::w_window3d< T >

Window 3 dimensions with weight.

A window is a set of points. This class defines how to deal with. These points have 3 dimensions.

Definition at line 68 of file w_window3d.hh.


Member Typedef Documentation

template<class T>
typedef struct_elt_traits< self_type >::iter_type oln::w_window3d< T >::iter_type

The associate image's type of iterator.

Warning:
Prefer the macros oln_iter_type(Iterable) and oln_iter_type_(Iterable) (the same without the 'typename' keyword)

Definition at line 83 of file w_window3d.hh.

template<class T>
typedef struct_elt_traits< self_type >::dpoint_type oln::w_window3d< T >::dpoint_type

The associate image's type of dpoint (move point).

Warning:
Prefer the macros oln_dpoint_type(Pointable) and oln_dpoint_type_(Pointable) (the same without the 'typename' keyword)

Reimplemented from oln::abstract::w_windownd< Exact >.

Definition at line 94 of file w_window3d.hh.


Constructor & Destructor Documentation

template<class T>
oln::w_window3d< T >::w_window3d ( unsigned  size  )  [inline]

Construct a w_window of 3 dimensions.

Definition at line 111 of file w_window3d.hh.

00111                               : super_type(size)
00112     {}


Member Function Documentation

template<class T>
w_window3d<T>& oln::w_window3d< T >::add ( const dpoint_type dp,
const weight_type w 
) [inline]

Add a dpoint (move point) to the w_window.

Add a new member to the w_window. This point must be of 3 dimensions.

Definition at line 123 of file w_window3d.hh.

Referenced by oln::w_window3d< T >::add().

00124     {
00125       return this->exact().add_(dp, w);
00126     }

template<class T>
w_window3d<T>& oln::w_window3d< T >::add ( coord  slice,
coord  row,
coord  col,
const weight_type weight 
) [inline]

Add a point by coordinates to the w_window.

Add a new member by its coordinates to the w_window. The coordinates are only the column number because the w_window is of 3 dimensions.

Definition at line 140 of file w_window3d.hh.

References oln::w_window3d< T >::add().

00141     {
00142       return add(dpoint_type(slice, row, col), weight);
00143     }

template<class T>
const weight_type& oln::w_window3d< T >::set ( const dpoint_type dp,
const weight_type weight 
) [inline]

Set the weight of a point.

Definition at line 151 of file w_window3d.hh.

Referenced by oln::w_window3d< T >::set().

00152     {
00153       return this->exact().set_(dp, weight);
00154     }

template<class T>
const weight_type& oln::w_window3d< T >::set ( coord  slice,
coord  row,
coord  col,
const weight_type weight 
) [inline]

Set the weight of a point by coordinates.

The coordinates are only the column number because the w_window is of 3 dimensions.

Definition at line 167 of file w_window3d.hh.

References oln::w_window3d< T >::set().

00168     {
00169       return set(dpoint_type(slice, row, col), weight);
00170     }

template<class T>
coord oln::w_window3d< T >::delta_update_ ( const dpoint_type dp  )  [inline, protected]

Update delta.

Definition at line 190 of file w_window3d.hh.

References oln::abstract::window_base< Sup, Exact >::delta_.

00191     {
00192       delta_(abs(dp.slice()));
00193       delta_(abs(dp.row()));
00194       delta_(abs(dp.col()));
00195       return this->delta_;
00196     }


The documentation for this class was generated from the following file:
Generated on Tue Feb 20 20:24:22 2007 for Olena by  doxygen 1.5.1