--- a/src/parallel/ParallelComm.cpp +++ b/src/parallel/ParallelComm.cpp @@ -416,19 +416,6 @@ namespace moab { result = mbImpl->get_entities_by_dimension(this_set, dim, entities[dim] RRA("Failed to get vertices in assign_global_ids."); } - - // need to filter out non-locally-owned entities!!! - pstatus.resize(entities[dim].size()); - result = mbImpl->tag_get_data(pstatus_tag(), entities[dim], &pstatus[0]); - RRA("Failed to get pstatus in assign_global_ids."); - - Range dum_range; - Range::iterator rit; - unsigned int i; - for (rit = entities[dim].begin(), i = 0; rit != entities[dim].end(); rit+ - if (pstatus[i] & PSTATUS_NOT_OWNED) - dum_range.insert(*rit); - entities[dim] = subtract( entities[dim], dum_range); } return assign_global_ids(entities, dimension, start_id, parallel, owned_onl @@ -447,8 +434,21 @@ namespace moab { std::vector pstatus; for (int dim = 0; dim <= dimension; dim++) { local_num_elements[dim] = entities[dim].size(); + + // need to filter out non-locally-owned entities!!! + pstatus.resize(entities[dim].size()); + result = mbImpl->tag_get_data(pstatus_tag(), entities[dim], &pstatus[0]); + RRA("Failed to get pstatus in assign_global_ids."); + + Range dum_range; + Range::iterator rit; + unsigned int i; + for (rit = entities[dim].begin(), i = 0; rit != entities[dim].end(); rit+ + if (pstatus[i] & PSTATUS_NOT_OWNED) + dum_range.insert(*rit); + entities[dim] = subtract( entities[dim], dum_range); } - +