Class to implement entity set functionality. More...
#include <MeshSet.hpp>
Classes | |
union | CompactList |
If the number of entities is less than 3, store the handles directly in the hnd member. Otherwise use the ptr member to hold the beginning and end of a dynamically allocated array. More... | |
struct | dim_test |
struct | hdl_iter |
struct | not_dim_test |
struct | not_type_test |
struct | type_test |
Public Types | |
enum | Count { ZERO = 0 , ONE = 1 , TWO = 2 , MANY = 3 } |
Possible values of mParentCount and mChildCount. More... | |
Public Member Functions | |
MeshSet () | |
create an empty meshset More... | |
MeshSet (unsigned flags) | |
create an empty meshset More... | |
~MeshSet () | |
destructor More... | |
ErrorCode | set_flags (unsigned flags, EntityHandle my_handle, AEntityFactory *adjacencies) |
const EntityHandle * | get_children (int &count_out) const |
get all children pointed to by this meshset More... | |
const EntityHandle * | get_parents (int &count_out) const |
get all parents pointed to by this meshset More... | |
int | num_children () const |
return the number of children pointed to by this meshset More... | |
int | num_parents () const |
return the number of parents pointed to by this meshset More... | |
int | add_parent (EntityHandle parent) |
add a parent to this meshset; returns true if parent was added, 0 if it was already a parent of this meshset More... | |
int | add_child (EntityHandle child) |
add a child to this meshset; returns true if child was added, 0 if it was already a child of this meshset More... | |
int | remove_parent (EntityHandle parent) |
remove a parent from this meshset; returns true if parent was removed, 0 if it was not a parent of this meshset More... | |
int | remove_child (EntityHandle child) |
remove a child from this meshset; returns true if child was removed, 0 if it was not a child of this meshset More... | |
unsigned | flags () const |
int | tracking () const |
returns whether entities of meshsets know this meshset More... | |
int | set () const |
int | ordered () const |
int | vector_based () const |
ErrorCode | replace_entities (EntityHandle my_handle, const EntityHandle *old_entities, const EntityHandle *new_entities, size_t num_entities, AEntityFactory *mAdjFact) |
replace one entity with another in the set (contents and parent/child lists); returns whether it was replaced or not More... | |
ErrorCode | clear (EntityHandle myhandle, AEntityFactory *adjacencies) |
ErrorCode | clear_all (EntityHandle myhandle, AEntityFactory *adjacencies) |
const EntityHandle * | get_contents (size_t &count_out) const |
EntityHandle * | get_contents (size_t &count_out) |
ErrorCode | get_entities (std::vector< EntityHandle > &entities) const |
ErrorCode | get_entities (Range &entities) const |
ErrorCode | get_entities_by_type (EntityType entity_type, std::vector< EntityHandle > &entity_list) const |
get all entities in this MeshSet with the specified type More... | |
ErrorCode | get_entities_by_type (EntityType type, Range &entity_list) const |
unsigned int | num_entities_by_type (EntityType type) const |
return the number of entities with the given type contained in this meshset More... | |
ErrorCode | get_entities_by_dimension (int dimension, std::vector< EntityHandle > &entity_list) const |
ErrorCode | get_entities_by_dimension (int dimension, Range &entity_list) const |
unsigned int | num_entities_by_dimension (int dimension) const |
return the number of entities with the given type contained in this meshset More... | |
ErrorCode | get_non_set_entities (Range &range) const |
bool | contains_entities (const EntityHandle *entities, int num_entities, const int op) const |
ErrorCode | subtract (const MeshSet *meshset_2, EntityHandle my_handle, AEntityFactory *adjacencies) |
subtract/intersect/unite meshset_2 from/with/into meshset_1; modifies meshset_1 More... | |
ErrorCode | intersect (const MeshSet *meshset_2, EntityHandle my_handle, AEntityFactory *adjacencies) |
ErrorCode | unite (const MeshSet *meshset_2, EntityHandle my_handle, AEntityFactory *adjacencies) |
ErrorCode | add_entities (const EntityHandle *entity_handles, const int num_entities, EntityHandle my_handle, AEntityFactory *adjacencies) |
add these entities to this meshset More... | |
ErrorCode | add_entities (const Range &entities, EntityHandle my_handle, AEntityFactory *adjacencies) |
add these entities to this meshset More... | |
ErrorCode | remove_entities (const Range &entities, EntityHandle my_handle, AEntityFactory *adjacencies) |
add these entities to this meshset More... | |
ErrorCode | remove_entities (const EntityHandle *entities, const int num_entities, EntityHandle my_handle, AEntityFactory *adjacencies) |
remove these entities from this meshset More... | |
unsigned int | num_entities () const |
return the number of entities contained in this meshset More... | |
bool | empty () const |
unsigned long | get_memory_use () const |
Static Public Member Functions | |
static int | DIM_FROM_HANDLE (EntityHandle h) |
static EntityHandle | FIRST_OF_DIM (int dim) |
static EntityHandle | LAST_OF_DIM (int dim) |
Protected Member Functions | |
ErrorCode | convert (unsigned flags, EntityHandle my_handle, AEntityFactory *adj) |
ErrorCode | create_adjacencies (EntityHandle myhandle, AEntityFactory *adjacencies) |
ErrorCode | remove_adjacencies (EntityHandle myhandle, AEntityFactory *adjacencies) |
ErrorCode | insert_entity_vector (const EntityHandle *vect, size_t len, EntityHandle my_h, AEntityFactory *adj) |
ErrorCode | insert_entity_ranges (const EntityHandle *range_vect, size_t len, EntityHandle my_h, AEntityFactory *adj) |
ErrorCode | insert_entity_ranges (const Range &range, EntityHandle my_h, AEntityFactory *adj) |
ErrorCode | remove_entity_vector (const EntityHandle *vect, size_t len, EntityHandle my_h, AEntityFactory *adj) |
ErrorCode | remove_entity_ranges (const EntityHandle *range_vect, size_t len, EntityHandle my_h, AEntityFactory *adj) |
ErrorCode | remove_entity_ranges (const Range &range, EntityHandle my_h, AEntityFactory *adj) |
Private Attributes | |
unsigned char | mFlags |
Meshset propery flags. More... | |
unsigned | mParentCount: 2 |
If less than MANY, the number of parents stored inline in parentMeshSets.hnd. If MANY, then parentMeshSets.ptr contains array begin and end pointers for a dynamically allocated array of parent handles. More... | |
unsigned | mChildCount: 2 |
If less than MANY, the number of children stored inline in childMeshSets.hnd. If MANY, then childMeshSets.ptr contains array begin and end pointers for a dynamically allocated array of child handles. More... | |
unsigned | mContentCount: 2 |
If less than MANY, the number of children stored inline in contentList.hnd. If MANY, then contentList.ptr contains array begin and end pointers for a dynamically allocated array.. More... | |
CompactList | parentMeshSets |
Storage for data lists. More... | |
CompactList | childMeshSets |
CompactList | contentList |
Class to implement entity set functionality.
Definition at line 26 of file MeshSet.hpp.
enum moab::MeshSet::Count |
|
inline |
|
inline |
create an empty meshset
Definition at line 396 of file MeshSet.hpp.
|
inline |
destructor
Definition at line 402 of file MeshSet.hpp.
References childMeshSets, contentList, MANY, mChildCount, mContentCount, mParentCount, parentMeshSets, moab::MeshSet::CompactList::ptr, and ZERO.
Referenced by moab::MeshSetSequence::deallocate_set().
int moab::MeshSet::add_child | ( | EntityHandle | child | ) |
add a child to this meshset; returns true if child was added, 0 if it was already a child of this meshset
Definition at line 244 of file MeshSet.cpp.
References child, childMeshSets, moab::insert_in_vector(), and mChildCount.
Referenced by moab::Core::add_child_meshset(), moab::Core::add_child_meshsets(), and moab::Core::add_parent_child().
|
inline |
add these entities to this meshset
Definition at line 858 of file MeshSet.hpp.
References insert_entity_vector().
Referenced by moab::Core::add_entities(), and replace_entities().
|
inline |
add these entities to this meshset
Definition at line 867 of file MeshSet.hpp.
References entities, and insert_entity_ranges().
int moab::MeshSet::add_parent | ( | EntityHandle | parent | ) |
add a parent to this meshset; returns true if parent was added, 0 if it was already a parent of this meshset
Definition at line 238 of file MeshSet.cpp.
References moab::insert_in_vector(), mParentCount, and parentMeshSets.
Referenced by moab::Core::add_parent_child(), moab::Core::add_parent_meshset(), and moab::Core::add_parent_meshsets().
|
inline |
Clear contents of set (not parents or children)
Definition at line 459 of file MeshSet.hpp.
References contentList, MANY, MB_SUCCESS, mContentCount, moab::MeshSet::CompactList::ptr, remove_adjacencies(), tracking(), and ZERO.
Referenced by clear_all(), moab::Core::clear_meshset(), and intersect().
|
inline |
Clear all set lists (contents, parents, and children)
Definition at line 467 of file MeshSet.hpp.
References childMeshSets, clear(), ErrorCode, MANY, mChildCount, mParentCount, parentMeshSets, moab::MeshSet::CompactList::ptr, and ZERO.
|
inline |
Test of meshset contains some or all of passed entities
entities | Array of entities |
num_entities | Length of array of entities. |
op | - Interface::UNION : Test if set contains any of the input entities
|
Definition at line 812 of file MeshSet.hpp.
References entities, get_contents(), moab::Interface::INTERSECT, and vector_based().
|
protected |
Convert for changing flag values
Definition at line 268 of file MeshSet.cpp.
References contentList, moab::convert_to_ranges(), create_adjacencies(), ErrorCode, get_contents(), MB_SUCCESS, mContentCount, MESHSET_TRACK_OWNER, mFlags, num_entities(), remove_adjacencies(), and moab::resize_compact_list().
Referenced by set_flags().
|
protected |
Add explicit adjacencies from all contained entities to this (i.e. convert to tracking)
Definition at line 323 of file MeshSet.cpp.
References moab::AEntityFactory::add_adjacency(), ErrorCode, get_contents(), MB_SUCCESS, moab::AEntityFactory::remove_adjacency(), and vector_based().
Referenced by convert().
|
inlinestatic |
get dimension of enity
Definition at line 250 of file MeshSet.hpp.
References moab::CN::Dimension(), and moab::TYPE_FROM_HANDLE().
Referenced by get_entities_by_dimension(), num_entities_by_dimension(), moab::MeshSet::not_dim_test::operator()(), and moab::MeshSet::dim_test::operator()().
|
inline |
Definition at line 167 of file MeshSet.hpp.
References mContentCount, and ZERO.
|
inlinestatic |
Get smallest possible handle with specified dimension (first handle for first type of dimension)
Definition at line 257 of file MeshSet.hpp.
References dim, moab::GeomUtil::first(), moab::FIRST_HANDLE(), and moab::CN::TypeDimensionMap.
Referenced by get_entities_by_dimension(), and num_entities_by_dimension().
|
inline |
Definition at line 66 of file MeshSet.hpp.
References mFlags.
Referenced by moab::WriteUtil::get_entity_list_pointers(), and moab::Core::get_meshset_options().
|
inline |
get all children pointed to by this meshset
Definition at line 422 of file MeshSet.hpp.
References childMeshSets, moab::MeshSet::CompactList::hnd, MANY, mChildCount, and moab::MeshSet::CompactList::ptr.
Referenced by moab::MeshSetSequence::get_children(), moab::WriteUtil::get_entity_list_pointers(), and moab::MeshSetSequence::get_parent_child_meshsets().
|
inline |
Get contents data array. NOTE: this may not contain what you expect if not vector_based
Definition at line 491 of file MeshSet.hpp.
References contentList, moab::MeshSet::CompactList::hnd, MANY, mContentCount, and moab::MeshSet::CompactList::ptr.
|
inline |
Get contents data array. NOTE: this may not contain what you expect if not vector_based
Definition at line 477 of file MeshSet.hpp.
References contentList, moab::MeshSet::CompactList::hnd, MANY, mContentCount, and moab::MeshSet::CompactList::ptr.
Referenced by contains_entities(), convert(), create_adjacencies(), get_entities(), get_entities_by_dimension(), get_entities_by_type(), moab::WriteUtil::get_entity_list_pointers(), get_non_set_entities(), moab::MeshSetSequence::get_parent_child_meshsets(), intersect(), num_entities(), num_entities_by_dimension(), num_entities_by_type(), remove_adjacencies(), replace_entities(), subtract(), and unite().
Get entities contained in set
Definition at line 524 of file MeshSet.hpp.
References entities, get_contents(), MB_SUCCESS, and vector_based().
|
inline |
Get entities contained in set
Definition at line 505 of file MeshSet.hpp.
References entities, get_contents(), MB_SUCCESS, and vector_based().
Referenced by moab::MeshSetSequence::get_entities(), get_entities_by_type(), and intersect().
|
inline |
Definition at line 707 of file MeshSet.hpp.
References moab::Range::begin(), DIM_FROM_HANDLE(), FIRST_OF_DIM(), get_contents(), moab::Range::insert(), LAST_OF_DIM(), MB_SUCCESS, and vector_based().
|
inline |
Definition at line 670 of file MeshSet.hpp.
References DIM_FROM_HANDLE(), FIRST_OF_DIM(), get_contents(), LAST_OF_DIM(), MB_SUCCESS, and vector_based().
Referenced by moab::MeshSetSequence::get_dimension().
|
inline |
get all entities in this MeshSet with the specified type
Definition at line 543 of file MeshSet.hpp.
References moab::FIRST_HANDLE(), get_contents(), get_entities(), moab::LAST_HANDLE(), MB_SUCCESS, MBMAXTYPE, moab::TYPE_FROM_HANDLE(), and vector_based().
Referenced by moab::MeshSetSequence::get_contained_sets(), moab::MeshSetSequence::get_type(), and moab::MeshSetSequence::recursive_get_sets().
Definition at line 584 of file MeshSet.hpp.
References moab::Range::begin(), moab::FIRST_HANDLE(), get_contents(), get_entities(), moab::Range::insert(), moab::LAST_HANDLE(), MB_SUCCESS, MBMAXTYPE, moab::TYPE_FROM_HANDLE(), and vector_based().
unsigned long moab::MeshSet::get_memory_use | ( | ) | const |
Definition at line 1279 of file MeshSet.cpp.
References childMeshSets, contentList, MANY, mChildCount, mContentCount, mParentCount, parentMeshSets, and moab::MeshSet::CompactList::ptr.
Referenced by moab::MeshSetSequence::get_per_entity_memory_use().
Definition at line 785 of file MeshSet.hpp.
References moab::Range::begin(), get_contents(), moab::Range::insert(), moab::LAST_HANDLE(), MB_SUCCESS, MBENTITYSET, moab::TYPE_FROM_HANDLE(), and vector_based().
|
inline |
get all parents pointed to by this meshset
Definition at line 432 of file MeshSet.hpp.
References moab::MeshSet::CompactList::hnd, MANY, mParentCount, parentMeshSets, and moab::MeshSet::CompactList::ptr.
Referenced by moab::WriteUtil::get_entity_list_pointers(), moab::MeshSetSequence::get_parent_child_meshsets(), and moab::MeshSetSequence::get_parents().
|
protected |
Insert vector of handle range pairs into MeshSet
Definition at line 1052 of file MeshSet.cpp.
References contentList, ErrorCode, mContentCount, tracking(), vector_based(), and moab::range_tool< pair_iter_t >::vector_insert_entities().
Referenced by add_entities(), and unite().
|
protected |
Insert Range of handles into MeshSet
Definition at line 1071 of file MeshSet.cpp.
References moab::Range::const_pair_begin(), moab::Range::const_pair_end(), contentList, ErrorCode, mContentCount, tracking(), vector_based(), and moab::range_tool< pair_iter_t >::vector_insert_entities().
|
protected |
Insert vector of handles into MeshSet
Definition at line 1196 of file MeshSet.cpp.
References contentList, moab::convert_to_ranges(), ErrorCode, mContentCount, moab::range_tool< pair_iter_t >::ranged_insert_entities(), tracking(), vector_based(), and moab::vector_insert_vector().
Referenced by add_entities(), and unite().
ErrorCode moab::MeshSet::intersect | ( | const MeshSet * | meshset_2, |
EntityHandle | my_handle, | ||
AEntityFactory * | adjacencies | ||
) |
Definition at line 1118 of file MeshSet.cpp.
References clear(), ErrorCode, get_contents(), get_entities(), MB_SUCCESS, remove_entities(), remove_entity_ranges(), moab::subtract(), and vector_based().
Referenced by moab::Core::intersect_meshset().
|
inlinestatic |
Get largest possible handle with specified dimension (largest handle for last type of dimension)
Definition at line 264 of file MeshSet.hpp.
References dim, moab::LAST_HANDLE(), and moab::CN::TypeDimensionMap.
Referenced by get_entities_by_dimension(), and num_entities_by_dimension().
|
inline |
return the number of children pointed to by this meshset
Definition at line 442 of file MeshSet.hpp.
References childMeshSets, MANY, mChildCount, and moab::MeshSet::CompactList::ptr.
Referenced by moab::MeshSetSequence::num_children().
|
inline |
return the number of entities contained in this meshset
Definition at line 888 of file MeshSet.hpp.
References get_contents(), and vector_based().
Referenced by convert(), moab::MeshSetSequence::num_entities(), and num_entities_by_type().
|
inline |
return the number of entities with the given type contained in this meshset
Definition at line 744 of file MeshSet.hpp.
References DIM_FROM_HANDLE(), FIRST_OF_DIM(), get_contents(), LAST_OF_DIM(), and vector_based().
Referenced by moab::MeshSetSequence::num_dimension().
|
inline |
return the number of entities with the given type contained in this meshset
Definition at line 625 of file MeshSet.hpp.
References moab::FIRST_HANDLE(), get_contents(), moab::LAST_HANDLE(), MBMAXTYPE, num_entities(), moab::TYPE_FROM_HANDLE(), and vector_based().
Referenced by moab::MeshSetSequence::num_contained_sets(), and moab::MeshSetSequence::num_type().
|
inline |
return the number of parents pointed to by this meshset
Definition at line 451 of file MeshSet.hpp.
References MANY, mParentCount, parentMeshSets, and moab::MeshSet::CompactList::ptr.
Referenced by moab::MeshSetSequence::num_parents().
|
inline |
|
protected |
Remvoe explicit adjacencies from all contained entities to this (i.e. convert from tracking)
Definition at line 366 of file MeshSet.cpp.
References get_contents(), MB_SUCCESS, moab::AEntityFactory::remove_adjacency(), and vector_based().
int moab::MeshSet::remove_child | ( | EntityHandle | child | ) |
remove a child from this meshset; returns true if child was removed, 0 if it was not a child of this meshset
Definition at line 257 of file MeshSet.cpp.
References child, childMeshSets, mChildCount, and moab::remove_from_vector().
Referenced by moab::Core::remove_child_meshset(), and moab::Core::remove_parent_child().
|
inline |
remove these entities from this meshset
Definition at line 879 of file MeshSet.hpp.
References entities, and remove_entity_vector().
|
inline |
add these entities to this meshset
Definition at line 873 of file MeshSet.hpp.
References entities, and remove_entity_ranges().
Referenced by intersect(), moab::Core::remove_entities(), and replace_entities().
|
protected |
Remove vector of handle range pairs from MeshSet
Definition at line 1085 of file MeshSet.cpp.
References contentList, ErrorCode, mContentCount, moab::range_tool< pair_iter_t >::ranged_remove_entities(), tracking(), vector_based(), and moab::vector_remove_ranges().
Referenced by intersect(), remove_entities(), and subtract().
|
protected |
Remove Range of handles from MeshSet
Definition at line 1105 of file MeshSet.cpp.
References moab::Range::const_pair_begin(), moab::Range::const_pair_end(), contentList, ErrorCode, mContentCount, moab::range_tool< pair_iter_t >::ranged_remove_entities(), tracking(), vector_based(), and moab::vector_remove_range().
|
protected |
Remove vector of handles from MeshSet
Definition at line 1215 of file MeshSet.cpp.
References contentList, moab::convert_to_ranges(), ErrorCode, mContentCount, moab::range_tool< pair_iter_t >::ranged_remove_entities(), tracking(), vector_based(), and moab::vector_remove_vector().
Referenced by remove_entities(), and subtract().
int moab::MeshSet::remove_parent | ( | EntityHandle | parent | ) |
remove a parent from this meshset; returns true if parent was removed, 0 if it was not a parent of this meshset
Definition at line 251 of file MeshSet.cpp.
References mParentCount, parentMeshSets, and moab::remove_from_vector().
Referenced by moab::Core::remove_parent_child(), and moab::Core::remove_parent_meshset().
ErrorCode moab::MeshSet::replace_entities | ( | EntityHandle | my_handle, |
const EntityHandle * | old_entities, | ||
const EntityHandle * | new_entities, | ||
size_t | num_entities, | ||
AEntityFactory * | mAdjFact | ||
) |
replace one entity with another in the set (contents and parent/child lists); returns whether it was replaced or not
Definition at line 1234 of file MeshSet.cpp.
References moab::AEntityFactory::add_adjacency(), add_entities(), ErrorCode, get_contents(), MB_ENTITY_NOT_FOUND, MB_SUCCESS, moab::AEntityFactory::remove_adjacency(), remove_entities(), tracking(), and vector_based().
Referenced by moab::Core::replace_entities().
|
inline |
Definition at line 75 of file MeshSet.hpp.
References MESHSET_SET, and mFlags.
|
inline |
Definition at line 410 of file MeshSet.hpp.
References convert(), ErrorCode, MB_SUCCESS, mContentCount, mFlags, and ZERO.
Referenced by moab::Core::set_meshset_options().
|
inline |
subtract/intersect/unite meshset_2 from/with/into meshset_1; modifies meshset_1
Definition at line 837 of file MeshSet.hpp.
References get_contents(), remove_entity_ranges(), remove_entity_vector(), and vector_based().
Referenced by moab::Core::subtract_meshset().
|
inline |
returns whether entities of meshsets know this meshset
Definition at line 71 of file MeshSet.hpp.
References MESHSET_TRACK_OWNER, and mFlags.
Referenced by clear(), insert_entity_ranges(), insert_entity_vector(), remove_entity_ranges(), remove_entity_vector(), and replace_entities().
|
inline |
Definition at line 847 of file MeshSet.hpp.
References get_contents(), insert_entity_ranges(), insert_entity_vector(), and vector_based().
Referenced by moab::Core::unite_meshset().
|
inline |
Definition at line 83 of file MeshSet.hpp.
References ordered().
Referenced by contains_entities(), create_adjacencies(), get_entities(), get_entities_by_dimension(), get_entities_by_type(), get_non_set_entities(), moab::MeshSetSequence::get_parent_child_meshsets(), insert_entity_ranges(), insert_entity_vector(), intersect(), num_entities(), num_entities_by_dimension(), num_entities_by_type(), remove_adjacencies(), remove_entity_ranges(), remove_entity_vector(), replace_entities(), subtract(), and unite().
|
private |
Definition at line 246 of file MeshSet.hpp.
Referenced by add_child(), clear_all(), get_children(), get_memory_use(), num_children(), remove_child(), and ~MeshSet().
|
private |
Definition at line 246 of file MeshSet.hpp.
Referenced by clear(), convert(), get_contents(), get_memory_use(), insert_entity_ranges(), insert_entity_vector(), remove_entity_ranges(), remove_entity_vector(), and ~MeshSet().
|
private |
If less than MANY, the number of children stored inline in childMeshSets.hnd. If MANY, then childMeshSets.ptr contains array begin and end pointers for a dynamically allocated array of child handles.
Definition at line 240 of file MeshSet.hpp.
Referenced by add_child(), clear_all(), get_children(), get_memory_use(), num_children(), remove_child(), and ~MeshSet().
|
private |
If less than MANY, the number of children stored inline in contentList.hnd. If MANY, then contentList.ptr contains array begin and end pointers for a dynamically allocated array..
Definition at line 244 of file MeshSet.hpp.
Referenced by clear(), convert(), empty(), get_contents(), get_memory_use(), insert_entity_ranges(), insert_entity_vector(), remove_entity_ranges(), remove_entity_vector(), set_flags(), and ~MeshSet().
|
private |
Meshset propery flags.
Definition at line 230 of file MeshSet.hpp.
Referenced by convert(), flags(), ordered(), set(), set_flags(), and tracking().
|
private |
If less than MANY, the number of parents stored inline in parentMeshSets.hnd. If MANY, then parentMeshSets.ptr contains array begin and end pointers for a dynamically allocated array of parent handles.
Definition at line 235 of file MeshSet.hpp.
Referenced by add_parent(), clear_all(), get_memory_use(), get_parents(), num_parents(), remove_parent(), and ~MeshSet().
|
private |
Storage for data lists.
Definition at line 246 of file MeshSet.hpp.
Referenced by add_parent(), clear_all(), get_memory_use(), get_parents(), num_parents(), remove_parent(), and ~MeshSet().