DGtal  0.9.4beta
Public Types | Public Member Functions | Private Attributes
DGtal::concepts::CAdjacency< Adj > Struct Template Reference

#include <DGtal/topology/CAdjacency.h>

Inheritance diagram for DGtal::concepts::CAdjacency< Adj >:
[legend]
Collaboration diagram for DGtal::concepts::CAdjacency< Adj >:
[legend]

Public Types

typedef Adj::Space Space
 
typedef Adj::Point Point
 
typedef Adj::Adjacency Adjacency
 
- Public Types inherited from DGtal::concepts::CUndirectedSimpleLocalGraph< Adj >
typedef Adj::Vertex Vertex
 
typedef Adj::Size Size
 
typedef Adj::VertexSet VertexSet
 

Public Member Functions

 BOOST_CONCEPT_USAGE (CAdjacency)
 
- Public Member Functions inherited from DGtal::concepts::CUndirectedSimpleLocalGraph< Adj >
 BOOST_CONCEPT_ASSERT ((CIntegralNumber< Size >))
 
 BOOST_CONCEPT_ASSERT ((boost::DefaultConstructible< Vertex >))
 
 BOOST_CONCEPT_ASSERT ((boost::Assignable< Vertex >))
 
 BOOST_CONCEPT_ASSERT ((boost::CopyConstructible< Vertex >))
 
 BOOST_CONCEPT_USAGE (CUndirectedSimpleLocalGraph)
 
void checkConstConstraints () const
 

Private Attributes

Adj myAdj
 
Point myP1
 
Point myP2
 
bool myBool
 
std::back_insert_iterator< std::vector< Point > > myInserter
 

Detailed Description

template<typename Adj>
struct DGtal::concepts::CAdjacency< Adj >

Aim: The concept CAdjacency defines an elementary adjacency relation between points of a digital space.

DescriptionDescription of concept 'CAdjacency'

It thus distinguishes which points are close and which points are further away in this space. Adjacency relations are used to define a digital topology, in the sense of Rosenfeld or in the sense of Herman. In other words, and adjacency relation define a neighborhood graph on the points of a digital domain.

Refinement of

Associated types (must be defined in the model):

Notations

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
adjacency test adj.isAdjacentTo( p1, p2 ) p1 and p2 of same type Point. bool Return 'true' when the two points are adjacent according to the adjacency relation adj
proper adjacency test adj.isProperlyAdjacentTo( p1, p2 ) p1 and p2 of same type Point. bool Return 'true' when the two points are adjacent according to the adjacency relation adj and if p1 different from p2

Invariants

Models

Notes

Definition at line 99 of file CAdjacency.h.

Member Typedef Documentation

template<typename Adj>
typedef Adj::Adjacency DGtal::concepts::CAdjacency< Adj >::Adjacency

Definition at line 106 of file CAdjacency.h.

template<typename Adj>
typedef Adj::Point DGtal::concepts::CAdjacency< Adj >::Point

Definition at line 105 of file CAdjacency.h.

template<typename Adj>
typedef Adj::Space DGtal::concepts::CAdjacency< Adj >::Space

Definition at line 104 of file CAdjacency.h.

Member Function Documentation

template<typename Adj>
DGtal::concepts::CAdjacency< Adj >::BOOST_CONCEPT_USAGE ( CAdjacency< Adj >  )
inline

Definition at line 108 of file CAdjacency.h.

109  {
110  // check isAdjacentTo
111  ConceptUtils::sameType( myBool, myAdj.isAdjacentTo( myP1, myP2 ) );
112  // check isProperlyAdjacentTo
114  myAdj.isProperlyAdjacentTo( myP1, myP2 ) );
115  }
void sameType(const T &t1, const T &t2)

Field Documentation

template<typename Adj>
Adj DGtal::concepts::CAdjacency< Adj >::myAdj
private

Definition at line 119 of file CAdjacency.h.

Referenced by DGtal::concepts::CAdjacency< T >::BOOST_CONCEPT_USAGE().

template<typename Adj>
bool DGtal::concepts::CAdjacency< Adj >::myBool
private

Definition at line 122 of file CAdjacency.h.

Referenced by DGtal::concepts::CAdjacency< T >::BOOST_CONCEPT_USAGE().

template<typename Adj>
std::back_insert_iterator< std::vector<Point> > DGtal::concepts::CAdjacency< Adj >::myInserter
private

Definition at line 123 of file CAdjacency.h.

template<typename Adj>
Point DGtal::concepts::CAdjacency< Adj >::myP1
private

Definition at line 120 of file CAdjacency.h.

Referenced by DGtal::concepts::CAdjacency< T >::BOOST_CONCEPT_USAGE().

template<typename Adj>
Point DGtal::concepts::CAdjacency< Adj >::myP2
private

Definition at line 121 of file CAdjacency.h.

Referenced by DGtal::concepts::CAdjacency< T >::BOOST_CONCEPT_USAGE().


The documentation for this struct was generated from the following file: