DGtal 1.3.0
Loading...
Searching...
No Matches
CDigitalBoundedShape.h
1
17#pragma once
18
31#if defined(CDigitalBoundedShape_RECURSES)
32#error Recursive header files inclusion detected in CDigitalBoundedShape.h
33#else // defined(CDigitalBoundedShape_RECURSES)
35#define CDigitalBoundedShape_RECURSES
36
37#if !defined CDigitalBoundedShape_h
39#define CDigitalBoundedShape_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 CDigitalBoundedShape
89 template <typename TShape>
91 {
92 // ----------------------- Concept checks ------------------------------
93 public:
94
95 typedef typename TShape::Point Point;
96
98 {
99 // Shape should have a getUpperBound() returning a Point.
100 ConceptUtils::sameType( myP, myT.getUpperBound() );
101 // Shape should have a getLowerBound() returning a Point.
102 ConceptUtils::sameType( myP, myT.getLowerBound() );
103 }
104
105 // ------------------------- Private Datas --------------------------------
106 private:
107 TShape myT;
109
110 }; // end of concept CDigitalBoundedShape
111 }
112} // namespace DGtal
113
114
115// //
117
118#endif // !defined CDigitalBoundedShape_h
119
120#undef CDigitalBoundedShape_RECURSES
121#endif // else defined(CDigitalBoundedShape_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: designs the concept of bounded shapes in DGtal (shape for which upper and lower bounding bounds ...