- std::size_t ret=MEDFileMesh::getHeapMemorySize();
- if((const DataArrayInt*)_fam_nodes)
- ret+=_fam_nodes->getHeapMemorySize();
- if((const DataArrayInt*)_num_nodes)
- ret+=_num_nodes->getHeapMemorySize();
- if((const DataArrayInt*)_fam_cells)
- ret+=_fam_cells->getHeapMemorySize();
- if((const DataArrayInt*)_num_cells)
- ret+=_num_cells->getHeapMemorySize();
- if((const DataArrayInt*)_rev_num_nodes)
- ret+=_rev_num_nodes->getHeapMemorySize();
- if((const DataArrayInt*)_rev_num_cells)
- ret+=_rev_num_cells->getHeapMemorySize();
+ return MEDFileMesh::getHeapMemorySizeWithoutChildren();
+}
+
+std::vector<RefCountObject *> MEDFileStructuredMesh::getDirectChildren() const
+{
+ std::vector<RefCountObject *> ret(MEDFileMesh::getDirectChildren());
+ if((const DataArrayInt *)_fam_nodes)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_fam_nodes));
+ if((const DataArrayInt *)_num_nodes)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_num_nodes));
+ if((const DataArrayInt *)_fam_cells)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_fam_cells));
+ if((const DataArrayInt *)_num_cells)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_num_nodes));
+ if((const DataArrayInt *)_rev_num_nodes)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_rev_num_nodes));
+ if((const DataArrayInt *)_rev_num_cells)
+ ret.push_back(const_cast<DataArrayInt *>((const DataArrayInt *)_rev_num_cells));