DGtal 1.4.0
Loading...
Searching...
No Matches
CDigitalSurfaceEmbedder.h
1
17#pragma once
18
31#if defined(CDigitalSurfaceEmbedder_RECURSES)
32#error Recursive header files inclusion detected in CDigitalSurfaceEmbedder.h
33#else // defined(CDigitalSurfaceEmbedder_RECURSES)
35#define CDigitalSurfaceEmbedder_RECURSES
36
37#if !defined CDigitalSurfaceEmbedder_h
39#define CDigitalSurfaceEmbedder_h
40
42// Inclusions
43#include <iostream>
44#include "DGtal/base/Common.h"
45#include "DGtal/base/CUnaryFunctor.h"
46#include "DGtal/topology/CSCellEmbedder.h"
48
49// @since 0.8 In DGtal::concepts
50namespace DGtal {
51 namespace concepts {
52
54// class CDigitalSurfaceEmbedder
95template <typename T>
97{
98 // ----------------------- Concept checks ------------------------------
99public:
100 typedef typename T::KSpace KSpace;
101 typedef typename T::Surface Surface;
102 typedef typename T::SCell SCell;
103 typedef typename T::RealPoint RealPoint;
104 typedef typename T::Argument Argument;
105 typedef typename T::Value Value;
106
107 // Already checked in CSCellEmbedder
108 // BOOST_CONCEPT_ASSERT(( CCellularGridSpaceND< KSpace > ));
109 // BOOST_STATIC_ASSERT(( ConceptUtils::SameType< SCell, typename KSpace::SCell >::value ));
110 // BOOST_STATIC_ASSERT(( ConceptUtils::SameType< SCell, Argument >::value ));
111 // BOOST_STATIC_ASSERT(( ConceptUtils::SameType< RealPoint, typename KSpace::RealPoint >::value ));
112 // BOOST_STATIC_ASSERT(( ConceptUtils::SameType< RealPoint, Value >::value ));
117
119 { // operator()
120 // ConceptUtils::sameType( myRP, myX( myP ) );
122 }
123 // ------------------------- Private Datas --------------------------------
124private:
125 T myX; // do not require T to be default constructible.
126 // SCell myP;
127 // RealPoint myRP;
129
130 // ------------------------- Internals ------------------------------------
131private:
132
133}; // end of concept CDigitalSurfaceEmbedder
134
135} // namespace concepts
136} // namespace DGtal
137
138// //
140
141#endif // !defined CDigitalSurfaceEmbedder_h
142
143#undef CDigitalSurfaceEmbedder_RECURSES
144#endif // else defined(CDigitalSurfaceEmbedder_RECURSES)
void sameType(const T &, const T &)
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: A digital surface embedder is a specialized mapping from signed cells to Euclidean points....
Aim: A cell embedder is a mapping from signed cells to Euclidean points. It adds inner types to funct...