DGtal
0.6.devel
Main Page
Related Pages
Modules
Namespaces
Data Structures
Examples
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
src
DGtal
topology
CSCellEmbedder.h
1
17
#pragma once
18
31
#if defined(CSCellEmbedder_RECURSES)
32
#error Recursive header files inclusion detected in CSCellEmbedder.h
33
#else // defined(CSCellEmbedder_RECURSES)
34
35
#define CSCellEmbedder_RECURSES
36
37
#if !defined CSCellEmbedder_h
38
39
#define CSCellEmbedder_h
40
42
// Inclusions
43
#include <iostream>
44
#include "DGtal/base/Common.h"
45
#include "DGtal/base/CUnaryFunctor.h"
46
#include "DGtal/topology/CCellularGridSpaceND.h"
48
49
namespace
DGtal
50
{
51
53
// class CSCellEmbedder
94
template
<
typename
T>
95
struct
CSCellEmbedder
:
CUnaryFunctor
<T, typename T::SCell, typename T::RealPoint>
96
{
97
// ----------------------- Concept checks ------------------------------
98
public
:
99
typedef
typename
T::KSpace
KSpace
;
100
typedef
typename
T::SCell
SCell
;
101
typedef
typename
T::RealPoint
RealPoint
;
102
typedef
typename
T::Argument
Argument
;
103
typedef
typename
T::Value
Value
;
104
105
BOOST_CONCEPT_ASSERT
((
CCellularGridSpaceND< KSpace >
));
106
BOOST_STATIC_ASSERT
((
ConceptUtils::SameType< SCell, typename KSpace::SCell >::value
));
107
BOOST_STATIC_ASSERT
((
ConceptUtils::SameType< SCell, Argument >::value
));
108
BOOST_STATIC_ASSERT
((
ConceptUtils::SameType< RealPoint, Value >::value
));
109
BOOST_CONCEPT_USAGE
(
CSCellEmbedder
)
110
{
111
checkConstConstraints
();
112
}
113
114
void
checkConstConstraints
()
const
115
{
// operator()
116
ConceptUtils::sameType
(
myRP
,
myX
(
myP
) );
117
}
118
// ------------------------- Private Datas --------------------------------
119
private
:
120
T
myX
;
// do not require T to be default constructible.
121
SCell
myP
;
122
RealPoint
myRP
;
123
124
// ------------------------- Internals ------------------------------------
125
private
:
126
127
};
// end of concept CSCellEmbedder
128
129
}
// namespace DGtal
130
131
// //
133
134
#endif // !defined CSCellEmbedder_h
135
136
#undef CSCellEmbedder_RECURSES
137
#endif // else defined(CSCellEmbedder_RECURSES)
Generated on Wed Dec 19 2012 19:10:21 for DGtal by
1.8.1.1