[MOAB-dev] r4846 - MOAB/trunk/src
James Porter
jvporter at wisc.edu
Wed May 18 17:09:42 CDT 2011
With this and my proposed patch for the iMesh unit tests, MOAB will
finally have 100% on the unit tests (yay, woohoo, etc).
- Jim
On Wed, 2011-05-18 at 17:13 -0500, jvporter at wisc.edu wrote:
> Author: jvporter
> Date: 2011-05-18 17:13:06 -0500 (Wed, 18 May 2011)
> New Revision: 4846
>
> Modified:
> MOAB/trunk/src/AEntityFactory.cpp
> MOAB/trunk/src/AEntityFactory.hpp
> Log:
> Don't allow deletion of vertices if they have upward adjacencies
>
>
> Modified: MOAB/trunk/src/AEntityFactory.cpp
> ===================================================================
> --- MOAB/trunk/src/AEntityFactory.cpp 2011-05-18 20:40:51 UTC (rev 4845)
> +++ MOAB/trunk/src/AEntityFactory.cpp 2011-05-18 22:13:06 UTC (rev 4846)
> @@ -1512,5 +1512,24 @@
> amortized += min_per_ent;
> return (rval == MB_FAILURE) ? MB_SUCCESS : rval;
> }
> +
> +/*!
> + calling code is notifying this that an entity is going to be deleted
> + from the database
> +*/
> +ErrorCode AEntityFactory::notify_delete_entity(EntityHandle entity)
> +{
> + if (TYPE_FROM_HANDLE(entity) == MBVERTEX) {
> + std::vector<EntityHandle> adj_entities;
> + for (int dim = 1; dim < 4; ++dim) {
> + get_adjacencies(entity, dim, false, adj_entities);
> + if (!adj_entities.empty())
> + return MB_FAILURE;
> + }
> + }
> +
> + // remove any references to this entity from other entities
> + return remove_all_adjacencies(entity, true);
> +}
>
> } // namespace moab
>
> Modified: MOAB/trunk/src/AEntityFactory.hpp
> ===================================================================
> --- MOAB/trunk/src/AEntityFactory.hpp 2011-05-18 20:40:51 UTC (rev 4845)
> +++ MOAB/trunk/src/AEntityFactory.hpp 2011-05-18 22:13:06 UTC (rev 4846)
> @@ -230,17 +230,7 @@
> ErrorCode create_explicit_adjs(EntityHandle this_ent);
>
> };
> -
> -/*!
> - calling code is notifying this that an entity is going to be deleted
> - from the database
> -*/
> -inline ErrorCode AEntityFactory::notify_delete_entity(EntityHandle entity)
> -{
> - // remove any references to this entity from other entities
> - return remove_all_adjacencies(entity, true);
> -}
> -
> +
> } // namespace moab
More information about the moab-dev
mailing list