DGtal  1.4.beta
CLocalEstimatorFromSurfelFunctor.h
1 
17 #pragma once
18 
31 #if defined(CLocalEstimatorFromSurfelFunctor_RECURSES)
32 #error Recursive header files inclusion detected in CLocalEstimatorFromSurfelFunctor.h
33 #else // defined(CLocalEstimatorFromSurfelFunctor_RECURSES)
35 #define CLocalEstimatorFromSurfelFunctor_RECURSES
36 
37 #if !defined CLocalEstimatorFromSurfelFunctor_h
39 #define CLocalEstimatorFromSurfelFunctor_h
40 
42 // Inclusions
43 #include <iostream>
44 #include "DGtal/base/Common.h"
45 #include "DGtal/topology/CSCellEmbedder.h"
46 #include "DGtal/base/CQuantity.h"
48 
49 namespace DGtal
50 {
51  namespace concepts
52  {
54 // class CLocalEstimatorFromSurfelFunctor
104 template <typename T>
106 {
107  // ----------------------- Concept checks ------------------------------
108 public:
109 
110  typedef typename T::Quantity Quantity;
111  typedef typename T::SCellEmbedder SCellEmbedder;
112  typedef typename T::Surfel Surfel;
113 
116 
117  // 2. then check the presence of data members, operators and methods with
119  {
120  ConceptUtils::sameType( myQ, myX.eval( ) );
121  myX.reset( );
122  myX.pushSurfel( myCA, myDist );
123  }
124 
125  // ------------------------- Private Datas --------------------------------
126 private:
127  T myX; // do not require T to be default constructible.
129  const Surfel myCA;
132  double myH;
133  double myDist;
134 
135  // ------------------------- Internals ------------------------------------
136 private:
137 
138 }; // end of concept CLocalEstimatorFromSurfelFunctor
139  }
140 } // namespace DGtal
141 
142 // //
144 
145 #endif // !defined CLocalEstimatorFromSurfelFunctor_h
146 
147 #undef CLocalEstimatorFromSurfelFunctor_RECURSES
148 #endif // else defined(CLocalEstimatorFromSurfelFunctor_RECURSES)
void sameType(const T &, const T &)
Definition: ConceptUtils.h:117
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: this concept describes functors on digtal surface surfel which can be used to define local estim...
BOOST_CONCEPT_ASSERT((concepts::CSCellEmbedder< SCellEmbedder >))
Aim: defines the concept of quantity in DGtal.
Definition: CQuantity.h:93
Aim: A cell embedder is a mapping from signed cells to Euclidean points. It adds inner types to funct...