SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
meshenginesync.h File Reference
#include "meshresult.h"
#include "meshedgebc.h"
#include <openswmm/engine/openswmm_callbacks.h>
#include <QLoggingCategory>
#include <QStringList>
#include <QVector>
Include dependency graph for meshenginesync.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  mesh
 

Functions

bool mesh::pushMeshEditsToEngine (SWMM_Engine engine, const MeshResult &mesh, const QVector< MeshEdgeBC > &bcs, QStringList *warnings=nullptr, bool *outTrianglesSynced=nullptr)
 Copy the layer's editable mesh state into the engine's 2D mesh.
 

Detailed Description

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License\n GPL-3.0-or-later

Push the GUI mesh layer's edited state (vertex Z, per-edge conveyance, per-edge boundary conditions) into the live engine's in-memory 2D mesh, so a subsequent swmm_model_write* serialises the edits. The engine is the source of truth on save: it already round-trips coupling maps, Manning's n, units, and options that the lightweight GUI mesh model does not retain, so syncing the few editable fields back into it is lossless for everything the GUI does not touch.