mirror of https://github.com/CGAL/cgal
Add some CGAL_assume functions in functions manipulating marks in combinatorial map class.
This commit is contained in:
parent
2d72cd7f7e
commit
8eddea1e5b
|
|
@ -743,6 +743,8 @@ namespace CGAL {
|
|||
bool is_reserved(int amark) const
|
||||
{
|
||||
CGAL_assertion(amark>=0 && (size_type)amark<NB_MARKS);
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
return (mnb_times_reserved_marks[(size_type)amark]!=0);
|
||||
}
|
||||
|
||||
|
|
@ -753,6 +755,8 @@ namespace CGAL {
|
|||
size_type number_of_marked_darts(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
return mnb_marked_darts[(size_type)amark];
|
||||
}
|
||||
|
||||
|
|
@ -813,14 +817,21 @@ namespace CGAL {
|
|||
void share_a_mark(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
++mnb_times_reserved_marks[amark];
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
++mnb_times_reserved_marks[(size_type)amark];
|
||||
}
|
||||
|
||||
/** @return the number of times a mark is reserved.
|
||||
* @param amark the mark to share.
|
||||
*/
|
||||
size_type get_number_of_times_mark_reserved(int amark) const
|
||||
{ return mnb_times_reserved_marks[amark]; }
|
||||
{
|
||||
CGAL_assertion( (size_type)amark<NB_MARKS );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
return mnb_times_reserved_marks[amark];
|
||||
}
|
||||
|
||||
/** Negate the mark of all the darts for a given mark.
|
||||
* After this call, all the marked darts become unmarked and all the
|
||||
|
|
@ -830,6 +841,7 @@ namespace CGAL {
|
|||
void negate_mark(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
mnb_marked_darts[amark] = number_of_darts() - mnb_marked_darts[amark];
|
||||
|
||||
|
|
@ -845,6 +857,7 @@ namespace CGAL {
|
|||
{
|
||||
// CGAL_assertion( adart != null_dart_handle );
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
return get_dart_mark(adart, amark)!=mmask_marks[(size_type)amark];
|
||||
}
|
||||
|
|
@ -859,6 +872,7 @@ namespace CGAL {
|
|||
{
|
||||
CGAL_assertion( adart != null_dart_handle );
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
if (is_marked(adart, amark) != astate)
|
||||
{
|
||||
|
|
@ -877,6 +891,7 @@ namespace CGAL {
|
|||
{
|
||||
CGAL_assertion( adart != null_dart_handle );
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
if (is_marked(adart, amark)) return;
|
||||
|
||||
|
|
@ -892,6 +907,7 @@ namespace CGAL {
|
|||
{
|
||||
CGAL_assertion( adart != null_dart_handle );
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
if (!is_marked(adart, amark)) return;
|
||||
|
||||
|
|
@ -907,6 +923,7 @@ namespace CGAL {
|
|||
void mark_null_dart(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
#ifdef CGAL_CMAP_DEPRECATED
|
||||
if ( null_dart_handle!=NULL ) // Pb with static null_dart_handle for windows
|
||||
|
|
@ -920,6 +937,7 @@ namespace CGAL {
|
|||
void unmark_null_dart(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
#ifdef CGAL_CMAP_DEPRECATED
|
||||
if ( null_dart_handle!=NULL ) // Pb with static null_dart_handle for windows
|
||||
|
|
@ -956,6 +974,7 @@ namespace CGAL {
|
|||
void free_mark(int amark) const
|
||||
{
|
||||
CGAL_assertion( is_reserved(amark) );
|
||||
CGAL_assume( (size_type)amark<NB_MARKS );
|
||||
|
||||
if ( mnb_times_reserved_marks[amark]>1 )
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue