File failed to load: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.3/config/TeX-MML-AM_CHTML/MathJax.js
DGtal 2.0.0
DGtal::concepts::CDomainAdjacency< T > Struct Template Reference

Aim: Refines the concept CAdjacency by telling that the adjacency is specific to a given domain of the embedding digital space. More...

#include <DGtal/topology/CDomainAdjacency.h>

Inheritance diagram for DGtal::concepts::CDomainAdjacency< T >:
[legend]

Public Types

typedef Adj::Domain Domain
typedef Adj::Predicate Predicate
Public Types inherited from DGtal::concepts::CAdjacency< T >
typedef T::Space Space
typedef T::Point Point
typedef T::Adjacency Adjacency
Public Types inherited from DGtal::concepts::CUndirectedSimpleLocalGraph< T >
typedef T::Vertex Vertex
typedef T::Size Size
typedef T::VertexSet VertexSet

Private Member Functions

 BOOST_CONCEPT_USAGE (CDomainAdjacency)

Private Attributes

myT
Domain myDomain
Predicate myPredicate

Additional Inherited Members

Public Member Functions inherited from DGtal::concepts::CAdjacency< T >
 BOOST_CONCEPT_USAGE (CAdjacency)
Public Member Functions inherited from DGtal::concepts::CUndirectedSimpleLocalGraph< T >
 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

Detailed Description

template<typename T>
struct DGtal::concepts::CDomainAdjacency< T >

Aim: Refines the concept CAdjacency by telling that the adjacency is specific to a given domain of the embedding digital space.

Description of concept 'CDomainAdjacency'

This class is useful to define subspaces with restricted neighborhood relations. For instance, you can limit the adjacency to an object, then to its border, then to a subset of its border, etc.

Refinement of

CAdjacency

Associated types

  • Domain: the domain of this adjacency.
  • Predicate: the type of the predicate "is in domain ?"

Notation

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
embedding domain x.domain() const Domain & return a reference to the embedding domain. O(1)
"is in domain ?" predicate x.predicate() const Predicate & return a reference to the predicate object that is characteristic of the embedding domain. O(1)

Invariants

Models

DomainAdjacency

Notes

Definition at line 96 of file CDomainAdjacency.h.

Member Typedef Documentation

◆ Domain

template<typename T>
typedef Adj::Domain DGtal::concepts::CDomainAdjacency< T >::Domain

Definition at line 101 of file CDomainAdjacency.h.

◆ Predicate

template<typename T>
typedef Adj::Predicate DGtal::concepts::CDomainAdjacency< T >::Predicate

Definition at line 102 of file CDomainAdjacency.h.

Member Function Documentation

◆ BOOST_CONCEPT_USAGE()

template<typename T>
DGtal::concepts::CDomainAdjacency< T >::BOOST_CONCEPT_USAGE ( CDomainAdjacency< T > )
inlineprivate

Definition at line 106 of file CDomainAdjacency.h.

107 {
108 // check domain()
110 // check predicate()
111 ConceptUtils::sameType( myPredicate, myT.predicate() );
112 }
void sameType(const T &, const T &)

References myDomain, myPredicate, myT, and DGtal::concepts::ConceptUtils::sameType().

Field Documentation

◆ myDomain

template<typename T>
Domain DGtal::concepts::CDomainAdjacency< T >::myDomain
private

Definition at line 117 of file CDomainAdjacency.h.

Referenced by BOOST_CONCEPT_USAGE().

◆ myPredicate

template<typename T>
Predicate DGtal::concepts::CDomainAdjacency< T >::myPredicate
private

Definition at line 118 of file CDomainAdjacency.h.

Referenced by BOOST_CONCEPT_USAGE().

◆ myT

template<typename T>
T DGtal::concepts::CDomainAdjacency< T >::myT
private

Definition at line 116 of file CDomainAdjacency.h.

Referenced by BOOST_CONCEPT_USAGE().


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