oln::abstract::neighborhoodnd< Exact > Struct Template Reference

Neighborhood N dimensions. More...

#include <neighborhoodnd.hh>

Inheritance diagram for oln::abstract::neighborhoodnd< Exact >:

Inheritance graph
[legend]
Collaboration diagram for oln::abstract::neighborhoodnd< Exact >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef window_base< neighborhood<
Exact >, Exact > 
super_type
 Super type.
typedef neighborhoodnd< Exact > self_type
 Self type.
typedef Exact exact_type
 Exact type.
typedef struct_elt_traits<
Exact >::dpoint_type 
dpoint_type
 The associate image's type of dpoint (move point).

Static Public Member Functions

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

Protected Member Functions

exact_typeadd_ (const dpoint_type &dp)
 Add a point to the neighborhood.
 neighborhoodnd ()
 Construct a neighborhood N dimensions.
 neighborhoodnd (unsigned size)
 Construct a neighborhood of 'size' elements.

Friends

class neighborhood< exact_type >

Detailed Description

template<class Exact>
struct oln::abstract::neighborhoodnd< Exact >

Neighborhood N dimensions.

It looks like structuring elements but here, when you add an element, you add its opposite: $$\forall d \in N, -d \in N$$

Points have N dimensions.

Definition at line 63 of file neighborhoodnd.hh.


Member Typedef Documentation

template<class Exact>
typedef struct_elt_traits<Exact>::dpoint_type oln::abstract::neighborhoodnd< Exact >::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::window_base< Sup, Exact >.

Reimplemented in oln::neighborhood1d, oln::neighborhood2d, and oln::neighborhood3d.

Definition at line 75 of file neighborhoodnd.hh.


Constructor & Destructor Documentation

template<class Exact>
oln::abstract::neighborhoodnd< Exact >::neighborhoodnd ( unsigned  size  )  [inline, protected]

Construct a neighborhood of 'size' elements.

Definition at line 116 of file neighborhoodnd.hh.

00116                                     : super_type(size)
00117       {}


Member Function Documentation

template<class Exact>
exact_type& oln::abstract::neighborhoodnd< Exact >::add_ ( const dpoint_type dp  )  [inline, protected]

Add a point to the neighborhood.

Definition at line 96 of file neighborhoodnd.hh.

Referenced by oln::neighborhood3d::add(), oln::neighborhood2d::add(), and oln::neighborhood1d::add().

00097       {
00098         precondition( !dp.is_centered() );
00099         this->centered_ = true;
00100         if (!(has_(dp)))
00101           this->dp_.push_back(dp);
00102         delta_update(dp);
00103         return this->exact();
00104       }


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