DGtal  1.5.beta
CTrivialConstImage.h
1 
17 #pragma once
18 
28 #if defined(CTrivialConstImageRECURSES)
29 #error Recursive header files inclusion detected in CTrivialConstImage.h
30 #else // defined(CTrivialConstImageRECURSES)
32 #define CTrivialConstImageRECURSES
33 
34 #if !defined CTrivialConstImage_h
36 #define CTrivialConstImage_h
37 
38 #include <boost/concept_check.hpp>
39 #include <boost/concept/assert.hpp>
40 #include <boost/concept/requires.hpp>
41 
42 #include "DGtal/kernel/CPointFunctor.h"
43 #include "DGtal/kernel/domains/CDomain.h"
44 #include "DGtal/base/CLabel.h"
45 
46 namespace DGtal
47 {
48  namespace concepts
49  {
51  // struct CTrivialConstImage
87  template <typename I>
89  {
90 
91  public:
92 
94  //Inner types
95  typedef typename I::Domain Domain;
97 
98 
100  {
101  ConceptUtils::sameType(i.domain(), d);
102  }
103 
104  private:
105  I i;
107 
108  };
109  }
110 } // namespace DGtal
111 
112 // //
114 
115 #endif // !defined CTrivialConstImage_h
116 
117 #undef CTrivialConstImageRECURSES
118 #endif // else defined(CTrivialConstImageRECURSES)
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 represents a digital domain, i.e. a non mutable subset of points of the given digit...
Definition: CDomain.h:130
Aim: Define the concept of DGtal labels. Models of CLabel can be default-constructible,...
Definition: CLabel.h:93
Aim: Defines a functor on points.
Definition: CPointFunctor.h:89
Aim: Defines the concept describing a read-only image, which is a refinement of CPointFunctor.
BOOST_CONCEPT_ASSERT((concepts::CDomain< Domain >))
BOOST_CONCEPT_ASSERT((CLabel< typename I::Value >))
HyperRectDomain< Space > Domain