Skip to content
Snippets Groups Projects
Commit 38b1df9e authored by Dmitri Naumov's avatar Dmitri Naumov
Browse files

[MeL] MS: Remove internal memory managment.

parent 421407d4
No related branches found
No related tags found
Loading
...@@ -51,23 +51,15 @@ public: ...@@ -51,23 +51,15 @@ public:
/// Construct a mesh subset from vector of nodes on the given mesh. /// Construct a mesh subset from vector of nodes on the given mesh.
/// \param msh Mesh /// \param msh Mesh
/// \param vec_items Vector of Node pointers. /// \param vec_items Vector of Node pointers.
/// \param delete_ptr Deletes the vector of Node pointers if true. MeshSubset(const Mesh& msh, std::vector<Node*> const* vec_items)
/// \note When delete_ptr is set only the vector is deleted, not the : _msh(msh), _nodes(vec_items), _eles(nullptr)
/// elements of the vector.
MeshSubset(const Mesh& msh, std::vector<Node*> const* vec_items,
bool const delete_ptr = false)
: _msh(msh), _nodes(vec_items), _eles(nullptr), _delete_ptr(delete_ptr)
{} {}
/// Construct a mesh subset from vector of elements on the given mesh. /// Construct a mesh subset from vector of elements on the given mesh.
/// \param msh Mesh /// \param msh Mesh
/// \param vec_items Vector of Element pointers. /// \param vec_items Vector of Element pointers.
/// \param delete_ptr Deletes the vector of Element pointers if true. MeshSubset(const Mesh& msh, std::vector<Element*> const* vec_items)
/// \note When delete_ptr is set only the vector is deleted, not the : _msh(msh), _nodes(nullptr), _eles(vec_items)
/// elements of the vector.
MeshSubset(const Mesh& msh, std::vector<Element*> const* vec_items,
bool const delete_ptr = false)
: _msh(msh), _nodes(nullptr), _eles(vec_items), _delete_ptr(delete_ptr)
{} {}
/// construct from both nodes and elements /// construct from both nodes and elements
...@@ -76,23 +68,11 @@ public: ...@@ -76,23 +68,11 @@ public:
/// \param msh Mesh /// \param msh Mesh
/// \param vec_nodes Vector of Node pointers. /// \param vec_nodes Vector of Node pointers.
/// \param vec_eles Vector of Element pointers. /// \param vec_eles Vector of Element pointers.
/// \param delete_ptr Deletes the vector of Node pointers if true.
/// \note When delete_ptr is set only the vectors are deleted, not the
/// elements of the vectors.
MeshSubset(const Mesh& msh, std::vector<Node*> const* vec_nodes, MeshSubset(const Mesh& msh, std::vector<Node*> const* vec_nodes,
std::vector<Element*> const* vec_eles, bool const delete_ptr = false) std::vector<Element*> const* vec_eles)
: _msh(msh), _nodes(vec_nodes), _eles(vec_eles), _delete_ptr(delete_ptr) : _msh(msh), _nodes(vec_nodes), _eles(vec_eles)
{} {}
~MeshSubset()
{
if (_delete_ptr)
{
delete _nodes;
delete _eles;
}
}
/// return the total number of mesh items /// return the total number of mesh items
std::size_t getNumberOfTotalItems() const std::size_t getNumberOfTotalItems() const
{ {
...@@ -160,7 +140,5 @@ private: ...@@ -160,7 +140,5 @@ private:
Mesh const& _msh; Mesh const& _msh;
std::vector<Node*> const* _nodes; std::vector<Node*> const* _nodes;
std::vector<Element*> const* _eles; std::vector<Element*> const* _eles;
bool const _delete_ptr = false;
}; };
} // namespace MeshLib } // namespace MeshLib
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment