DGtal 1.3.0
Loading...
Searching...
No Matches
CLMSTDSSFilter.h
1
17#pragma once
18
29#if defined(CLMSTDSSFilter_RECURSES)
30#error Recursive header files inclusion detected in CLMSTDSSFilter.h
31#else // defined(CLMSTDSSFilter_RECURSES)
33#define CLMSTDSSFilter_RECURSES
34
35#if !defined CLMSTDSSFilter_h
37#define CLMSTDSSFilter_h
38
40// Inclusions
41#include <iostream>
42#include "DGtal/base/Common.h"
43#include "boost/concept_check.hpp"
44#include "DGtal/base/ConceptUtils.h"
45#include "DGtal/base/CBidirectionalRange.h"
46#include "DGtal/geometry/curves/CForwardSegmentComputer.h"
48
49namespace DGtal
50{
51 namespace concepts
52 {
53
55 // class CLMSTDSSFilter
88 template <typename T>
90 {
91 // ----------------------- Types ------------------------------
92 typedef typename T::DSSType TDSS;
93 // ----------------------- Concept checks ------------------------------
94 BOOST_CONCEPT_ASSERT(( CForwardSegmentComputer < TDSS > ));
95 public:
97 {
98 ConceptUtils::sameType( c, x.operator()( dss ) );
99 ConceptUtils::sameType( c, x.admissibility ( dss, p ) );
100 ConceptUtils::sameType( i, x.position ( dss, p ) );
101 }
103 {
104 ConceptUtils::sameType( c, x.operator()( dss ) );
105 ConceptUtils::sameType( c, x.admissibility ( dss, p ) );
106 ConceptUtils::sameType( i, x.position ( dss, p ) );
107 }
108 // ------------------------- Private Datas --------------------------------
109 private:
110 bool c;
111 long int i;
112 T x;
113 typename T::Point p;
115 }; // end of concept CLMSTDSSFilter
116
117 } // namespace concepts
118} // namespace DGtal
119
120// //
122
123#endif // !defined CLMSTDSSFilter_h
124
125#undef CLMSTDSSFilter_RECURSES
126#endif // else defined(CLMSTDSSFilter_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: Defines the concept describing a functor which filters DSSes for L-MST calculations.
BOOST_CONCEPT_ASSERT((CForwardSegmentComputer< TDSS >))
Go to http://www.sgi.com/tech/stl/Assignable.html.
Definition: Boost.dox:32
Go to http://www.sgi.com/tech/stl/CopyConstructible.html.
Definition: Boost.dox:34
Go to http://www.sgi.com/tech/stl/DefaultConstructible.html.
Definition: Boost.dox:30