DGtal  0.6.devel
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CSCellEmbedder.h
1 
17 #pragma once
18 
31 #if defined(CSCellEmbedder_RECURSES)
32 #error Recursive header files inclusion detected in CSCellEmbedder.h
33 #else // defined(CSCellEmbedder_RECURSES)
34 
35 #define CSCellEmbedder_RECURSES
36 
37 #if !defined CSCellEmbedder_h
38 
39 #define CSCellEmbedder_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 #include "DGtal/base/CUnaryFunctor.h"
46 #include "DGtal/topology/CCellularGridSpaceND.h"
48 
49 namespace DGtal
50 {
51 
53 // class CSCellEmbedder
94 template <typename T>
95 struct CSCellEmbedder : CUnaryFunctor<T, typename T::SCell, typename T::RealPoint>
96 {
97  // ----------------------- Concept checks ------------------------------
98 public:
99  typedef typename T::KSpace KSpace;
100  typedef typename T::SCell SCell;
101  typedef typename T::RealPoint RealPoint;
102  typedef typename T::Argument Argument;
103  typedef typename T::Value Value;
104 
110  {
112  }
113 
115  { // operator()
117  }
118  // ------------------------- Private Datas --------------------------------
119 private:
120  T myX; // do not require T to be default constructible.
123 
124  // ------------------------- Internals ------------------------------------
125 private:
126 
127 }; // end of concept CSCellEmbedder
128 
129 } // namespace DGtal
130 
131 // //
133 
134 #endif // !defined CSCellEmbedder_h
135 
136 #undef CSCellEmbedder_RECURSES
137 #endif // else defined(CSCellEmbedder_RECURSES)