DGtal
1.1.0
src
DGtal
base
CSinglePassRangeFromPoint.h
1
17
#pragma once
18
31
#if defined(CSinglePassRangeFromPoint_RECURSES)
32
#error Recursive header files inclusion detected in CSinglePassRangeFromPoint.h
33
#else // defined(CSinglePassRangeFromPoint_RECURSES)
34
35
#define CSinglePassRangeFromPoint_RECURSES
36
37
#if !defined CSinglePassRangeFromPoint_h
38
39
#define CSinglePassRangeFromPoint_h
40
42
// Inclusions
43
#include <iostream>
44
#include "DGtal/base/Common.h"
45
#include "DGtal/base/CSinglePassRange.h"
46
#include "DGtal/base/CConstSinglePassRangeFromPoint.h"
48
49
namespace
DGtal
50
{
51
52
namespace
concepts
53
{
54
56
// class CSinglePassRangeFromPoint
87
template
<
typename
T>
88
struct
CSinglePassRangeFromPoint
:
89
CSinglePassRange
<T>,
90
CConstSinglePassRangeFromPoint
<T>
91
{
92
// ----------------------- Concept checks ------------------------------
93
public
:
94
// 1. define first provided types (i.e. inner types), like
95
typedef
typename
T::Point
Point
;
96
97
// 2. then check the presence of data members, operators and methods with
98
BOOST_CONCEPT_USAGE
(
CSinglePassRangeFromPoint
)
99
{
100
ConceptUtils::sameType
(
myIt
,
myX
.begin(
myPoint
) );
101
}
102
103
// ------------------------- Private Datas --------------------------------
104
private
:
105
T
myX
;
// do not require T to be default constructible.
106
Point
myPoint
;
107
Iterartor
myIt
;
108
109
// ------------------------- Internals ------------------------------------
110
private
:
111
112
};
// end of concept CSinglePassRangeFromPoint
113
114
}
// namespace concepts
115
116
}
// namespace DGtal
117
118
// //
120
121
#endif // !defined CSinglePassRangeFromPoint_h
122
123
#undef CSinglePassRangeFromPoint_RECURSES
124
#endif // else defined(CSinglePassRangeFromPoint_RECURSES)
DGtal::concepts::CSinglePassRange
Aim: Defines the concept describing a range.
Definition:
CSinglePassRange.h:88
DGtal::concepts::CConstSinglePassRangeFromPoint
Aim: refined concept of const single pass range with a begin() method from a point.
Definition:
CConstSinglePassRangeFromPoint.h:87
DGtal::concepts::CSinglePassRangeFromPoint::myX
T myX
Definition:
CSinglePassRangeFromPoint.h:105
DGtal::concepts::CSinglePassRangeFromPoint::Point
T::Point Point
Definition:
CSinglePassRangeFromPoint.h:95
DGtal::concepts::CConstSinglePassRangeFromPoint::Point
T::Point Point
Definition:
CConstSinglePassRangeFromPoint.h:91
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
Definition:
ClosedIntegerHalfPlane.h:49
DGtal::concepts::CSinglePassRangeFromPoint::BOOST_CONCEPT_USAGE
BOOST_CONCEPT_USAGE(CSinglePassRangeFromPoint)
Definition:
CSinglePassRangeFromPoint.h:98
DGtal::concepts::ConceptUtils::sameType
void sameType(const T &, const T &)
Definition:
ConceptUtils.h:117
DGtal::concepts::CSinglePassRangeFromPoint
Aim: refined concept of single pass range with a begin() method from a point.
Definition:
CSinglePassRangeFromPoint.h:91
DGtal::concepts::CSinglePassRangeFromPoint::myPoint
Point myPoint
Definition:
CSinglePassRangeFromPoint.h:106
Point
MyPointD Point
Definition:
testClone2.cpp:383
DGtal::concepts::CSinglePassRangeFromPoint::myIt
Iterartor myIt
Definition:
CSinglePassRangeFromPoint.h:107
Generated on Fri Oct 9 2020 08:57:48 for DGtal by
1.8.20