Skip to content
Snippets Groups Projects
Commit 09baf91f authored by Tom Fischer's avatar Tom Fischer
Browse files

[MeL/IO/XDMF] Return also computed parent data type

parent 5e043699
No related branches found
No related tags found
No related merge requests found
...@@ -314,14 +314,14 @@ ParentDataType getTopologyType(MeshLib::Mesh const& mesh) ...@@ -314,14 +314,14 @@ ParentDataType getTopologyType(MeshLib::Mesh const& mesh)
return cellTypeOGS2XDMF(ogs_cell_type).id; return cellTypeOGS2XDMF(ogs_cell_type).id;
} }
std::vector<int> transformToXDMFTopology(MeshLib::Mesh const& mesh, std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
std::size_t const offset) MeshLib::Mesh const& mesh, std::size_t const offset)
{ {
std::vector<MeshLib::Element*> const& elements = mesh.getElements(); std::vector<MeshLib::Element*> const& elements = mesh.getElements();
std::vector<int> values; std::vector<int> values;
values.reserve(elements.size()); values.reserve(elements.size());
auto topology_type = getTopologyType(mesh); auto const topology_type = getTopologyType(mesh);
if (topology_type == ParentDataType::MIXED) if (topology_type == ParentDataType::MIXED)
{ {
for (auto const& cell : elements) for (auto const& cell : elements)
...@@ -349,7 +349,7 @@ std::vector<int> transformToXDMFTopology(MeshLib::Mesh const& mesh, ...@@ -349,7 +349,7 @@ std::vector<int> transformToXDMFTopology(MeshLib::Mesh const& mesh,
} }
} }
return values; return {values, topology_type};
} }
XdmfHdfData transformTopology(std::vector<int> const& values, XdmfHdfData transformTopology(std::vector<int> const& values,
......
...@@ -75,8 +75,8 @@ std::vector<double> transformToXDMFGeometry(MeshLib::Mesh const& mesh); ...@@ -75,8 +75,8 @@ std::vector<double> transformToXDMFGeometry(MeshLib::Mesh const& mesh);
* \param mesh OGS mesh can be mesh or partitionedMesh * \param mesh OGS mesh can be mesh or partitionedMesh
* \param offset Local offset to transform local to global cell ID. Offset must * \param offset Local offset to transform local to global cell ID. Offset must
* be zero in serial and must be defined for each process in parallel execution. * be zero in serial and must be defined for each process in parallel execution.
* \return vector containing a copy of the data * \return vector containing a copy of the data and the computed ParentDataType
*/ */
std::vector<int> transformToXDMFTopology(MeshLib::Mesh const& mesh, std::pair<std::vector<int>, ParentDataType> transformToXDMFTopology(
std::size_t const offset); MeshLib::Mesh const& mesh, std::size_t const offset);
} // namespace MeshLib::IO } // namespace MeshLib::IO
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