DGtal 1.3.0
Loading...
Searching...
No Matches
CLMSTTangentFromDSS.h
1
17#pragma once
18
29#if defined(CLMSTTangentFromDSS_RECURSES)
30#error Recursive header files inclusion detected in CLMSTTangentFromDSS.h
31#else // defined(CLMSTTangentFromDSS_RECURSES)
33#define CLMSTTangentFromDSS_RECURSES
34
35#if !defined CLMSTTangentFromDSS_h
37#define CLMSTTangentFromDSS_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 CLMSTTangentFromDSS
92 template <typename T>
94 {
95 // ----------------------- Types ------------------------------
96 typedef typename T::Value Value;
97 typedef typename T::RealVector RealVector;
98 typedef typename T::TDSS TDSS;
99 // ----------------------- Concept checks ------------------------------
100 BOOST_CONCEPT_ASSERT(( CForwardSegmentComputer < TDSS > ));
101 BOOST_CONCEPT_ASSERT(( CBidirectionalRange < RealVector > ));
102 public:
104 {
107 concepts::ConceptUtils::sameType( v1, x.operator()( dss, 0, 10 ) );
108 concepts::ConceptUtils::sameType( v1, v1 += v2 );
109 }
111 {
112 ConceptUtils::sameType( v1, x.operator()( dss, 0, 10 ) );
113 }
114 // ------------------------- Private Datas --------------------------------
115 private:
118 T x;
119 double d;
121 }; // end of concept CLMSTTangentFromDSS
122
123 } // namespace concepts
124} // namespace DGtal
125
126// //
128
129#endif // !defined CLMSTTangentFromDSS_h
130
131#undef CLMSTTangentFromDSS_RECURSES
132#endif // else defined(CLMSTTangentFromDSS_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 calculates a direction of the 2D DSS and an eccen...
BOOST_CONCEPT_ASSERT((CBidirectionalRange< RealVector >))
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