Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
KennethVanhoey
CGoGN
Commits
f73c649f
Commit
f73c649f
authored
Feb 03, 2011
by
Pierre Kraemer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
correction clear markers dart et cell apres suppression
parent
658baf8f
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
20 additions
and
6 deletions
+20
-6
include/Container/attrib_container.h
include/Container/attrib_container.h
+1
-1
include/Container/attrib_container.hpp
include/Container/attrib_container.hpp
+7
-2
include/Topology/generic/genericmap.hpp
include/Topology/generic/genericmap.hpp
+1
-0
include/Utils/mark.h
include/Utils/mark.h
+7
-2
src/Topology/generic/genericmap.cpp
src/Topology/generic/genericmap.cpp
+4
-1
No files found.
include/Container/attrib_container.h
View file @
f73c649f
...
...
@@ -290,7 +290,7 @@ public:
* Decremente le compteur de reference de la ligne
* @param eltIdx iterator sur cette ligne
*/
void
unrefLine
(
unsigned
int
eltIdx
);
bool
unrefLine
(
unsigned
int
eltIdx
);
void
setRefLine
(
unsigned
int
eltIdx
,
unsigned
int
nb
);
...
...
include/Container/attrib_container.hpp
View file @
f73c649f
...
...
@@ -222,9 +222,14 @@ inline void AttribContainer::refLine(unsigned int eltIdx)
m_holesBlocks
[
eltIdx
/
_BLOCKSIZE_
]
->
ref
(
eltIdx
%
_BLOCKSIZE_
);
}
inline
void
AttribContainer
::
unrefLine
(
unsigned
int
eltIdx
)
inline
bool
AttribContainer
::
unrefLine
(
unsigned
int
eltIdx
)
{
if
(
m_holesBlocks
[
eltIdx
/
_BLOCKSIZE_
]
->
unref
(
eltIdx
%
_BLOCKSIZE_
))
m_size
--
;
if
(
m_holesBlocks
[
eltIdx
/
_BLOCKSIZE_
]
->
unref
(
eltIdx
%
_BLOCKSIZE_
))
{
m_size
--
;
return
true
;
}
return
false
;
}
inline
void
AttribContainer
::
setRefLine
(
unsigned
int
eltIdx
,
unsigned
int
nb
)
...
...
include/Topology/generic/genericmap.hpp
View file @
f73c649f
...
...
@@ -54,6 +54,7 @@ inline void GenericMap::deleteDart(Dart d)
if
(
emb
!=
EMBNULL
)
m_attribs
[
orbit
].
unrefLine
(
emb
)
;
}
m_markerTables
[
DART_ORBIT
]
->
operator
[](
d
.
index
).
clear
()
;
}
}
...
...
include/Utils/mark.h
View file @
f73c649f
...
...
@@ -56,7 +56,7 @@ public:
//! Constructor
Mark
()
:
m_bits
(
0
)
{};
Mark
(
unsigned
a
)
:
m_bits
(
a
)
{};
Mark
(
unsigned
int
a
)
:
m_bits
(
a
)
{};
//! Copy constructor
Mark
(
const
Mark
&
m
)
:
m_bits
(
m
.
m_bits
)
{};
...
...
@@ -71,11 +71,16 @@ public:
return
n
;
}
inline
void
clear
()
{
m_bits
=
0
;
}
//! Test if all marks are set to NO (0)
inline
bool
isClear
()
{
return
(
m_bits
==
0
);
}
;
}
//! Set given marks to YES
/*! @param m the marks to set
...
...
src/Topology/generic/genericmap.cpp
View file @
f73c649f
...
...
@@ -100,7 +100,10 @@ void GenericMap::setDartEmbedding(unsigned int orbit, Dart d, unsigned int emb)
return
;
// if different then unref the old emb
if
(
old
!=
EMBNULL
)
m_attribs
[
orbit
].
unrefLine
(
old
);
{
if
(
m_attribs
[
orbit
].
unrefLine
(
old
))
m_markerTables
[
orbit
]
->
operator
[](
old
).
clear
();
}
// ref the new emb
if
(
emb
!=
EMBNULL
)
m_attribs
[
orbit
].
refLine
(
emb
);
...
...
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