oln::neighborhood3d Class Reference

Neighborhood 3 dimensions. More...

#include <neighborhood3d.hh>

Inheritance diagram for oln::neighborhood3d:

Inheritance graph
[legend]
Collaboration diagram for oln::neighborhood3d:

Collaboration graph
[legend]
List of all members.

Public Types

typedef abstract::neighborhoodnd<
neighborhood3d
super_type
 Super type.

typedef neighborhood3d self_type
 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
 Set the neighborhood type.

typedef struct_elt_traits<
self_type >::dpoint_type 
dpoint_type
 The associate image's type of dpoint (move point).


Public Member Functions

neighborhood3dadd (const dpoint_type &dp)
 Add a dpoint (move point) to the neighborhood.
  • dp The new point.


neighborhood3dadd (coord slice, coord row, coord col)
 Add a point by coordinates to the neighborhood.
  • slice The coordinates of the new point.
  • row The coordinates of the new point.
  • col The coordinates of the new point.


 neighborhood3d ()
 Construct a neighborhood of 3 dimensions.

 neighborhood3d (unsigned size)
 Construct a neighborhood of 3 dimensions.
  • size Reserve 'size' elements for the neighborhood.


 neighborhood3d (unsigned n, const coord crd[])
 Construct a neighborhood of 3 dimension.
  • n Add 'n' elements to the neighborhood.
  • crd Coordinates of the 'n' elements.



Static Public Member Functions

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


Protected Member Functions

coord delta_update_ (const dpoint_type &dp)
 Update delta.
  • dp a deplacement point.



Friends

class abstract::window_base< abstract::neighborhood< neighborhood3d >, neighborhood3d >

Detailed Description

Neighborhood 3 dimensions.

It looks like structuring elements but here, when you add an element, you add its opposite. Points have 3 dimensions.

Definition at line 64 of file neighborhood3d.hh.


Member Typedef Documentation

typedef struct_elt_traits< self_type >::dpoint_type oln::neighborhood3d::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::neighborhoodnd< neighborhood3d >.

Definition at line 86 of file neighborhood3d.hh.

Referenced by neighborhood3d().

typedef struct_elt_traits< self_type >::iter_type oln::neighborhood3d::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)

Reimplemented from oln::abstract::neighborhood< neighborhood3d >.

Definition at line 78 of file neighborhood3d.hh.


Member Function Documentation

neighborhood3d& oln::neighborhood3d::add coord  slice,
coord  row,
coord  col
[inline]
 

Add a point by coordinates to the neighborhood.

  • slice The coordinates of the new point.
  • row The coordinates of the new point.
  • col The coordinates of the new point.

Add a new member by its coordinates to the neighborhood. The coordinates have 3 dimensions.

Definition at line 114 of file neighborhood3d.hh.

References add(), and oln::coord.

00115     {
00116       return this->add(dpoint3d(slice, row, col));
00117     }

neighborhood3d& oln::neighborhood3d::add const dpoint_type dp  )  [inline]
 

Add a dpoint (move point) to the neighborhood.

  • dp The new point.

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

Definition at line 98 of file neighborhood3d.hh.

Referenced by add(), oln::mk_neighb_block(), and neighborhood3d().

00099     {
00100       this->exact().add_(dp);
00101       return this->exact().add_(-dp);
00102     }

coord oln::neighborhood3d::delta_update_ const dpoint_type dp  )  [inline, protected]
 

Update delta.

  • dp a deplacement point.

Returns:
Delta.
If the point is the biggest element of the neighborhood, then this point is assigned to delta.

Definition at line 161 of file neighborhood3d.hh.

References oln::abstract::window_base< neighborhood< neighborhood3d >, neighborhood3d >::delta_.

00162     {
00163       delta_(abs(dp.slice()));
00164       delta_(abs(dp.row()));
00165       delta_(abs(dp.col()));
00166       return delta_;
00167     }


The documentation for this class was generated from the following file:
Generated on Thu Apr 15 20:14:26 2004 for Olena by doxygen 1.3.6-20040222