DGtal 1.4.0
Loading...
Searching...
No Matches
CEuclideanBoundedShape.h
1
17#pragma once
18
31#if defined(CEuclideanBoundedShape_RECURSES)
32#error Recursive header files inclusion detected in CEuclideanBoundedShape.h
33#else // defined(CEuclideanBoundedShape_RECURSES)
35#define CEuclideanBoundedShape_RECURSES
36
37#if !defined CEuclideanBoundedShape_h
39#define CEuclideanBoundedShape_h
40
42// Inclusions
43#include <iostream>
44#include "boost/concept_check.hpp"
45#include "DGtal/base/Common.h"
46
47#include "DGtal/kernel/domains/CDomain.h"
48#include "DGtal/kernel/CSpace.h"
50
51namespace DGtal
52{
53 namespace concepts
54 {
56 // class CEuclideanBoundedShape
95 template <typename TShape>
97 {
98 // ----------------------- Concept checks ------------------------------
99 public:
100
101 typedef typename TShape::RealPoint RealPoint;
102
104 {
105 // Shape should have a getUpperBound() returning a Point.
106 ConceptUtils::sameType( myP, myT.getUpperBound() );
107 // Shape should have a getLowerBound() returning a Point.
108 ConceptUtils::sameType( myP, myT.getLowerBound() );
109 }
110
111 // ------------------------- Private Datas --------------------------------
112 private:
113 TShape myT;
115
116 }; // end of concept CEuclideanBoundedShape
117 }
118} // namespace DGtal
119
120
121// //
123
124#endif // !defined CEuclideanBoundedShape_h
125
126#undef CEuclideanBoundedShape_RECURSES
127#endif // else defined(CEuclideanBoundedShape_RECURSES)
void sameType(const T &, const T &)
DGtal is the top-level namespace which contains all DGtal functions and types.