From 299cea51a57d6c30c4c72f4e92038675e33d91b7 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Thu, 8 Dec 2022 20:36:03 +0100 Subject: [PATCH] OASIS writer: Writing repetitions for edge-representation paths too --- src/plugins/streamers/oasis/db_plugin/dbOASISWriter.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plugins/streamers/oasis/db_plugin/dbOASISWriter.cc b/src/plugins/streamers/oasis/db_plugin/dbOASISWriter.cc index 6d721f182..7985ba111 100644 --- a/src/plugins/streamers/oasis/db_plugin/dbOASISWriter.cc +++ b/src/plugins/streamers/oasis/db_plugin/dbOASISWriter.cc @@ -2964,7 +2964,7 @@ OASISWriter::write (const db::Path &path, db::properties_id_type prop_id, const } void -OASISWriter::write (const db::Edge &edge, db::properties_id_type prop_id, const db::Repetition & /*rep*/) +OASISWriter::write (const db::Edge &edge, db::properties_id_type prop_id, const db::Repetition &rep) { m_progress.set (mp_stream->pos ()); @@ -2980,6 +2980,9 @@ OASISWriter::write (const db::Edge &edge, db::properties_id_type prop_id, const if (mm_datatype != m_datatype) { info |= 0x02; } + if (! rep.is_singular ()) { + info |= 0x04; + } if (mm_geometry_x != edge.p1 ().x ()) { info |= 0x10; } @@ -3030,6 +3033,9 @@ OASISWriter::write (const db::Edge &edge, db::properties_id_type prop_id, const mm_geometry_y = edge.p1 ().y (); write_coord (edge.p1 ().y ()); } + if (info & 0x04) { + write (rep); + } if (prop_id != 0) { write_props (prop_id);