DGtal  1.3.beta
DigitalTopology.h
1 
17 #pragma once
18 
31 #if defined(DigitalTopology_RECURSES)
32 #error Recursive header files inclusion detected in DigitalTopology.h
33 #else // defined(DigitalTopology_RECURSES)
34 
35 #define DigitalTopology_RECURSES
36 
37 #if !defined DigitalTopology_h
38 
39 #define DigitalTopology_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 #include "DGtal/base/ConstAlias.h"
46 #include "DGtal/topology/CAdjacency.h"
48 
49 namespace DGtal
50 {
51 
57  JORDAN_DT = 2 };
58 
60  // template class DigitalTopology
94  template <typename TForegroundAdjacency, typename TBackgroundAdjacency>
96  {
97  // ----------------------- Standard services ------------------------------
98  public:
99  typedef TForegroundAdjacency ForegroundAdjacency;
100  typedef TBackgroundAdjacency BackgroundAdjacency;
102  // should be the same as Point.
104 
107 
113 
114 
130 
135 
140  DigitalTopology ( const DigitalTopology & other );
141 
142 
146  const ForegroundAdjacency & kappa() const;
147 
151  const BackgroundAdjacency & lambda() const;
152 
158 
164 
165  // ----------------------- Interface --------------------------------------
166  public:
167 
172  void selfDisplay ( std::ostream & out ) const;
173 
178  bool isValid() const;
179 
180  // ------------------------- Protected Datas ------------------------------
181  private:
182  // ------------------------- Private Datas --------------------------------
183  private:
189 
195 
201 
202  // ------------------------- Hidden services ------------------------------
203  protected:
204 
209  DigitalTopology();
210 
211  private:
212 
219  DigitalTopology & operator= ( const DigitalTopology & other );
220 
221  // ------------------------- Internals ------------------------------------
222  private:
223 
224  }; // end of class DigitalTopology
225 
226 
233  template <typename TForegroundAdjacency, typename TBackgroundAdjacency>
234  std::ostream&
235  operator<< ( std::ostream & out,
237 
238 } // namespace DGtal
239 
240 
242 // Includes inline functions.
243 #include "DGtal/topology/DigitalTopology.ih"
244 
245 // //
247 
248 #endif // !defined DigitalTopology_h
249 
250 #undef DigitalTopology_RECURSES
251 #endif // else defined(DigitalTopology_RECURSES)
DGtal::DigitalTopology::DigitalTopology
DigitalTopology()
DGtal::DigitalTopology::BackgroundAdjacency
TBackgroundAdjacency BackgroundAdjacency
Definition: DigitalTopology.h:100
DGtal::DigitalTopology
Aim: Represents a digital topology as a couple of adjacency relations.
Definition: DigitalTopology.h:95
DGtal::ConstAlias
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Definition: ConstAlias.h:186
DGtal::DigitalTopology::ReverseTopology
DigitalTopology< BackgroundAdjacency, ForegroundAdjacency > ReverseTopology
Definition: DigitalTopology.h:112
DGtal::DigitalTopology::myLambda
const BackgroundAdjacency & myLambda
Definition: DigitalTopology.h:194
DGtal::DigitalTopology::BackPoint
BackgroundAdjacency::Point BackPoint
Definition: DigitalTopology.h:103
DGtal::operator<<
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
DGtal::UNKNOWN_DT
@ UNKNOWN_DT
Definition: DigitalTopology.h:55
DGtal::JORDAN_DT
@ JORDAN_DT
Definition: DigitalTopology.h:57
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
DGtal::DigitalTopology::BOOST_CONCEPT_ASSERT
BOOST_CONCEPT_ASSERT((concepts::CAdjacency< ForegroundAdjacency >))
DGtal::DigitalTopology::kappa
const ForegroundAdjacency & kappa() const
DGtal::DigitalTopology::myKappa
const ForegroundAdjacency & myKappa
Definition: DigitalTopology.h:188
DGtal::DigitalTopology::properties
DigitalTopologyProperties properties() const
DGtal::DigitalTopology::lambda
const BackgroundAdjacency & lambda() const
DGtal::DigitalTopology::reverseTopology
ReverseTopology reverseTopology() const
DGtal::DigitalTopology::~DigitalTopology
~DigitalTopology()
DGtal::DigitalTopology::selfDisplay
void selfDisplay(std::ostream &out) const
DGtal::DigitalTopology::operator=
DigitalTopology & operator=(const DigitalTopology &other)
DGtal::DigitalTopologyProperties
DigitalTopologyProperties
Definition: DigitalTopology.h:55
DGtal::DigitalTopology::isValid
bool isValid() const
DGtal::concepts::CAdjacency
Aim: The concept CAdjacency defines an elementary adjacency relation between points of a digital spac...
Definition: CAdjacency.h:99
DGtal::DigitalTopology::Point
ForegroundAdjacency::Point Point
Definition: DigitalTopology.h:101
DGtal::DigitalTopology::ForegroundAdjacency
TForegroundAdjacency ForegroundAdjacency
Definition: DigitalTopology.h:99
DGtal::NOT_JORDAN_DT
@ NOT_JORDAN_DT
Definition: DigitalTopology.h:56
Point
MyPointD Point
Definition: testClone2.cpp:383
DGtal::DigitalTopology::myProps
const DigitalTopologyProperties myProps
Definition: DigitalTopology.h:200