Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CGoGN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Etienne Schmitt
CGoGN
Commits
ccbffacd
Commit
ccbffacd
authored
Jul 25, 2014
by
Sylvain Thery
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
changing FUNCT& tot const FUNC&
parent
1568a9a5
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
112 additions
and
112 deletions
+112
-112
include/Topology/ihmap/ihm2.h
include/Topology/ihmap/ihm2.h
+3
-3
include/Topology/ihmap/ihm2.hpp
include/Topology/ihmap/ihm2.hpp
+16
-16
include/Topology/map/map1.h
include/Topology/map/map1.h
+3
-3
include/Topology/map/map1.hpp
include/Topology/map/map1.hpp
+13
-13
include/Topology/map/map2.h
include/Topology/map/map2.h
+10
-10
include/Topology/map/map2.hpp
include/Topology/map/map2.hpp
+24
-24
include/Topology/map/map3.h
include/Topology/map/map3.h
+13
-13
include/Topology/map/map3.hpp
include/Topology/map/map3.hpp
+30
-30
No files found.
include/Topology/ihmap/ihm2.h
View file @
ccbffacd
...
...
@@ -105,10 +105,10 @@ public:
inline
void
next
(
Dart
&
d
)
const
;
// template <unsigned int ORBIT, typename FUNC>
// void foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread = 0) const ;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
=
0
)
const
;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
template
<
typename
FUNC
>
void
foreach_dart_of_vertex
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
...
...
include/Topology/ihmap/ihm2.hpp
View file @
ccbffacd
...
...
@@ -168,24 +168,24 @@ inline void ImplicitHierarchicalMap2::next(Dart& d) const
d
=
TOPO_MAP
::
end
()
;
}
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
ImplicitHierarchicalMap2
::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
case
DART
:
f
(
c
);
break
;
case
VERTEX
:
foreach_dart_of_vertex
(
c
,
f
,
thread
);
break
;
case
EDGE
:
foreach_dart_of_edge
(
c
,
f
,
thread
);
break
;
case
FACE
:
foreach_dart_of_face
(
c
,
f
,
thread
);
break
;
case
VOLUME
:
foreach_dart_of_volume
(
c
,
f
,
thread
);
break
;
case
VERTEX1
:
foreach_dart_of_vertex1
(
c
,
f
,
thread
);
break
;
case
EDGE1
:
foreach_dart_of_edge1
(
c
,
f
,
thread
);
break
;
default:
assert
(
!
"Cells of this dimension are not handled"
);
break
;
}
}
//
template <unsigned int ORBIT, typename FUNC>
//
void ImplicitHierarchicalMap2::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread) const
//
{
//
switch(ORBIT)
//
{
//
case DART: f(c); break;
//
case VERTEX: foreach_dart_of_vertex(c, f, thread); break;
//
case EDGE: foreach_dart_of_edge(c, f, thread); break;
//
case FACE: foreach_dart_of_face(c, f, thread); break;
//
case VOLUME: foreach_dart_of_volume(c, f, thread); break;
//
case VERTEX1: foreach_dart_of_vertex1(c, f, thread); break;
//
case EDGE1: foreach_dart_of_edge1(c, f, thread); break;
//
default: assert(!"Cells of this dimension are not handled"); break;
//
}
//
}
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
ImplicitHierarchicalMap2
::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
ImplicitHierarchicalMap2
::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
...
...
include/Topology/map/map1.h
View file @
ccbffacd
...
...
@@ -208,10 +208,10 @@ public:
/*! @param c a cell
* @param f a function
*/
// template <unsigned int ORBIT, typename FUNC>
// void foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread = 0) const ;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
=
0
)
const
;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a vertex
/*! @param d a dart of the vertex
...
...
include/Topology/map/map1.hpp
View file @
ccbffacd
...
...
@@ -285,22 +285,22 @@ inline bool Map1<MAP_IMPL>::isCycleTriangle(Dart d) const
* Apply functors to all darts of a cell
*************************************************************************/
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map1
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
case
DART
:
f
(
c
);
break
;
case
VERTEX
:
foreach_dart_of_vertex
(
c
,
f
,
thread
);
break
;
case
EDGE
:
foreach_dart_of_edge
(
c
,
f
,
thread
);
break
;
default:
assert
(
!
"Cells of this dimension are not handled"
);
break
;
}
}
//
template <typename MAP_IMPL>
//
template <unsigned int ORBIT, typename FUNC>
//
void Map1<MAP_IMPL>::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread) const
//
{
//
switch(ORBIT)
//
{
//
case DART: f(c); break;
//
case VERTEX: foreach_dart_of_vertex(c, f, thread); break;
//
case EDGE: foreach_dart_of_edge(c, f, thread); break;
//
default: assert(!"Cells of this dimension are not handled"); break;
//
}
//
}
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map1
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map1
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
...
...
include/Topology/map/map2.h
View file @
ccbffacd
...
...
@@ -446,59 +446,59 @@ public:
/*! @param c a cell
* @param f a function
*/
// template <unsigned int ORBIT, typename FUNC>
// void foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread = 0) const ;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
=
0
)
const
;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a vertex
/*! @param d a dart of the vertex
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_vertex
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_vertex
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of an edge
/*! @param d a dart of the edge
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_edge
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_edge
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a face
/*! @param d a dart of the volume
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_face
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_face
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a volume
/*! @param d a dart of the volume
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_volume
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_volume
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a vertex of map1 representing the face of d
/*! @param d a dart of the vertex
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_vertex1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_vertex1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of an edge of map1 representing the face of d
/*! @param d a dart of the edge
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_edge1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_edge1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on every dart of a connected component
/*! @param d a dart of the connected component
* @param f the functor to apply
*/
template
<
typename
FUNC
>
void
foreach_dart_of_cc
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_cc
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//@}
...
...
include/Topology/map/map2.hpp
View file @
ccbffacd
...
...
@@ -987,26 +987,26 @@ bool Map2<MAP_IMPL>::checkSimpleOrientedPath(std::vector<Dart>& vd)
* Apply functors to all darts of a cell
*************************************************************************/
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
case
DART
:
f
(
c
);
break
;
case
VERTEX
:
foreach_dart_of_vertex
(
c
,
f
,
thread
);
break
;
case
EDGE
:
foreach_dart_of_edge
(
c
,
f
,
thread
);
break
;
case
FACE
:
foreach_dart_of_face
(
c
,
f
,
thread
);
break
;
case
VOLUME
:
foreach_dart_of_volume
(
c
,
f
,
thread
);
break
;
case
VERTEX1
:
foreach_dart_of_vertex1
(
c
,
f
,
thread
);
break
;
case
EDGE1
:
foreach_dart_of_edge1
(
c
,
f
,
thread
);
break
;
default:
assert
(
!
"Cells of this dimension are not handled"
);
break
;
}
}
//
template <typename MAP_IMPL>
//
template <unsigned int ORBIT, typename FUNC>
//
void Map2<MAP_IMPL>::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread) const
//
{
//
switch(ORBIT)
//
{
//
case DART: f(c); break;
//
case VERTEX: foreach_dart_of_vertex(c, f, thread); break;
//
case EDGE: foreach_dart_of_edge(c, f, thread); break;
//
case FACE: foreach_dart_of_face(c, f, thread); break;
//
case VOLUME: foreach_dart_of_volume(c, f, thread); break;
//
case VERTEX1: foreach_dart_of_vertex1(c, f, thread); break;
//
case EDGE1: foreach_dart_of_edge1(c, f, thread); break;
//
default: assert(!"Cells of this dimension are not handled"); break;
//
}
//
}
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
...
...
@@ -1023,7 +1023,7 @@ void Map2<MAP_IMPL>::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC& f, unsigned int
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_vertex
(
Dart
d
,
FUNC
&
f
,
unsigned
int
/*thread*/
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_vertex
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
/*thread*/
)
const
{
Dart
dNext
=
d
;
do
...
...
@@ -1035,7 +1035,7 @@ inline void Map2<MAP_IMPL>::foreach_dart_of_vertex(Dart d, FUNC& f, unsigned int
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_edge
(
Dart
d
,
FUNC
&
f
,
unsigned
int
/*thread*/
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_edge
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
/*thread*/
)
const
{
f
(
d
);
f
(
phi2
(
d
));
...
...
@@ -1043,35 +1043,35 @@ inline void Map2<MAP_IMPL>::foreach_dart_of_edge(Dart d, FUNC& f, unsigned int /
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_face
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_face
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_cc
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_volume
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_volume
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
foreach_dart_of_cc
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_vertex1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_vertex1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
return
ParentMap
::
foreach_dart_of_vertex
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_edge1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_edge1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
return
ParentMap
::
foreach_dart_of_edge
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_cc
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map2
<
MAP_IMPL
>::
foreach_dart_of_cc
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
DartMarkerStore
<
Map2
<
MAP_IMPL
>
>
mark
(
*
this
,
thread
);
// Lock a marker
...
...
include/Topology/map/map3.h
View file @
ccbffacd
...
...
@@ -389,80 +389,80 @@ public:
/*! @param c a cell
* @param f a function
*/
// template <unsigned int ORBIT, typename FUNC>
// void foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread = 0) const ;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
=
0
)
const
;
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a vertex
/*! @param d a dart of the vertex
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_vertex
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_vertex
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of an edge
/*! @param d a dart of the oriented edge
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_edge
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_edge
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a face
/*! @param d a dart of the oriented face
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_face
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_face
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a face
/*! @param d a dart of the oriented face
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_volume
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_volume
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a vertex
/*! @param d a dart of the vertex
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_vertex1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_vertex1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of an edge
/*! @param d a dart of the oriented edge
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_edge1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_edge1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a vertex
/*! @param d a dart of the vertex
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_vertex2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_vertex2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of an edge
/*! @param d a dart of the oriented edge
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_edge2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_edge2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of an oriented face
/*! @param d a dart of the oriented face
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_face2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_face2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//! Apply a functor on each dart of a cc
/*! @param d a dart of the cc
* @param fonct the functor
*/
template
<
typename
FUNC
>
void
foreach_dart_of_cc
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
void
foreach_dart_of_cc
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
=
0
)
const
;
//@}
...
...
include/Topology/map/map3.hpp
View file @
ccbffacd
...
...
@@ -1148,29 +1148,29 @@ bool Map3<MAP_IMPL>::check() const
* Apply functors to all darts of a cell
*************************************************************************/
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
case
DART
:
f
(
c
);
break
;
case
VERTEX
:
foreach_dart_of_vertex
(
c
,
f
,
thread
);
break
;
case
EDGE
:
foreach_dart_of_edge
(
c
,
f
,
thread
);
break
;
case
FACE
:
foreach_dart_of_face
(
c
,
f
,
thread
);
break
;
case
VOLUME
:
foreach_dart_of_volume
(
c
,
f
,
thread
);
break
;
case
VERTEX1
:
foreach_dart_of_vertex1
(
c
,
f
,
thread
);
break
;
case
EDGE1
:
foreach_dart_of_edge1
(
c
,
f
,
thread
);
break
;
case
VERTEX2
:
foreach_dart_of_vertex2
(
c
,
f
,
thread
);
break
;
case
EDGE2
:
foreach_dart_of_edge2
(
c
,
f
,
thread
);
break
;
case
FACE2
:
foreach_dart_of_face2
(
c
,
f
,
thread
);
break
;
default:
assert
(
!
"Cells of this dimension are not handled"
);
break
;
}
}
//
template <typename MAP_IMPL>
//
template <unsigned int ORBIT, typename FUNC>
//
void Map3<MAP_IMPL>::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC f, unsigned int thread) const
//
{
//
switch(ORBIT)
//
{
//
case DART: f(c); break;
//
case VERTEX: foreach_dart_of_vertex(c, f, thread); break;
//
case EDGE: foreach_dart_of_edge(c, f, thread); break;
//
case FACE: foreach_dart_of_face(c, f, thread); break;
//
case VOLUME: foreach_dart_of_volume(c, f, thread); break;
//
case VERTEX1: foreach_dart_of_vertex1(c, f, thread); break;
//
case EDGE1: foreach_dart_of_edge1(c, f, thread); break;
//
case VERTEX2: foreach_dart_of_vertex2(c, f, thread); break;
//
case EDGE2: foreach_dart_of_edge2(c, f, thread); break;
//
case FACE2: foreach_dart_of_face2(c, f, thread); break;
//
default: assert(!"Cells of this dimension are not handled"); break;
//
}
//
}
template
<
typename
MAP_IMPL
>
template
<
unsigned
int
ORBIT
,
typename
FUNC
>
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_orbit
(
Cell
<
ORBIT
>
c
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
switch
(
ORBIT
)
{
...
...
@@ -1190,7 +1190,7 @@ void Map3<MAP_IMPL>::foreach_dart_of_orbit(Cell<ORBIT> c, FUNC& f, unsigned int
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
DartMarkerStore
<
Map3
<
MAP_IMPL
>
>
mv
(
*
this
,
thread
);
// Lock a marker
...
...
@@ -1223,7 +1223,7 @@ void Map3<MAP_IMPL>::foreach_dart_of_vertex(Dart d, FUNC& f, unsigned int thread
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
Dart
it
=
d
;
do
...
...
@@ -1235,7 +1235,7 @@ inline void Map3<MAP_IMPL>::foreach_dart_of_edge(Dart d, FUNC& f, unsigned int t
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_face
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_face
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_face
(
d
,
f
,
thread
);
ParentMap
::
foreach_dart_of_face
(
phi3
(
d
),
f
,
thread
);
...
...
@@ -1243,49 +1243,49 @@ inline void Map3<MAP_IMPL>::foreach_dart_of_face(Dart d, FUNC& f, unsigned int t
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_volume
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_volume
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_cc
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
ParentMap
::
foreach_dart_of_vertex
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge1
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge1
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
ParentMap
::
foreach_dart_of_edge
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_vertex2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_vertex
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_edge2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_edge
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_face2
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
inline
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_face2
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
ParentMap
::
foreach_dart_of_face
(
d
,
f
,
thread
);
}
template
<
typename
MAP_IMPL
>
template
<
typename
FUNC
>
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_cc
(
Dart
d
,
FUNC
&
f
,
unsigned
int
thread
)
const
void
Map3
<
MAP_IMPL
>::
foreach_dart_of_cc
(
Dart
d
,
const
FUNC
&
f
,
unsigned
int
thread
)
const
{
DartMarkerStore
<
Map3
<
MAP_IMPL
>
>
mv
(
*
this
,
thread
);
// Lock a marker
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment