OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
RuntimeCouplingCheckpoint.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2
11
12#pragma once
13#include "RuntimeCoupling.hpp"
15
16namespace openswmm {
17struct TableData;
18}
19namespace openswmm::twoD {
25 std::string identity;
26 std::vector<bool> groundwater_cells;
27 double completed_time = 0.0;
28 std::vector<bool> boundary_slots; // exterior edges, flat MeshData slots
29 const BoundaryData* authored_boundary = nullptr; // immutable initial authored descriptors
30 const TableData* boundary_tables = nullptr; // referenced in-memory model signals
31};
32
37public:
59 static std::string validate(const RuntimeWaterCheckpointBinding&, const RuntimeSources& surface,
61 const BoundaryData* boundary = nullptr,
62 bool completed_boundary = true);
85 static std::string capture(const RuntimeWaterCheckpointBinding&, const RuntimeSources& surface,
87 std::string& bytes, const BoundaryData* boundary = nullptr);
111 static std::string restore(const RuntimeWaterCheckpointBinding&, std::string bytes,
113 RuntimeForcings&, BoundaryData* boundary = nullptr);
132 static std::string boundaryModel(const BoundaryData&, const TableData* tables = nullptr);
133};
134}
Structure-of-Arrays (SoA) storage for 2D mesh boundary conditions.
Runtime coupling state and canonical transport exchange quantities.
Definition RuntimeCouplingCheckpoint.hpp:36
static std::string validate(const RuntimeWaterCheckpointBinding &, const RuntimeSources &surface, const RuntimeSources &groundwater, const RuntimeForcings &, const BoundaryData *boundary=nullptr, bool completed_boundary=true)
Check copied water prescriptions against exact accepted model/receiver/time metadata.
Definition RuntimeCouplingCheckpoint.cpp:671
static std::string restore(const RuntimeWaterCheckpointBinding &, std::string bytes, RuntimeSources &surface, RuntimeSources &groundwater, RuntimeForcings &, BoundaryData *boundary=nullptr)
Validate and atomically replace copied prescription stores against a matching prepared model.
Definition RuntimeCouplingCheckpoint.cpp:762
static std::string boundaryModel(const BoundaryData &, const TableData *tables=nullptr)
Encode exact authored fallback descriptors and referenced in-memory signal identity.
Definition RuntimeCouplingCheckpoint.cpp:627
static std::string capture(const RuntimeWaterCheckpointBinding &, const RuntimeSources &surface, const RuntimeSources &groundwater, const RuntimeForcings &, std::string &bytes, const BoundaryData *boundary=nullptr)
Encode a fully validated completed copied-water prescription snapshot.
Definition RuntimeCouplingCheckpoint.cpp:705
Definition HotStartManager.hpp:99
Definition GroundHeat.hpp:19
Definition ExchangeLaw.hpp:60
Definition ExchangeLaw.hpp:60
SoA collection of all time series and curves in the model.
Definition TableData.hpp:741
SoA storage for per-edge boundary conditions.
Definition BoundaryData.hpp:73
Definition RuntimeCoupling.hpp:226
Definition RuntimeCoupling.hpp:44
Definition RuntimeCouplingCheckpoint.hpp:24
std::vector< bool > groundwater_cells
Definition RuntimeCouplingCheckpoint.hpp:26
const TableData * boundary_tables
Definition RuntimeCouplingCheckpoint.hpp:30
std::string identity
Definition RuntimeCouplingCheckpoint.hpp:25
const BoundaryData * authored_boundary
Definition RuntimeCouplingCheckpoint.hpp:29
double completed_time
Definition RuntimeCouplingCheckpoint.hpp:27
std::vector< bool > boundary_slots
Definition RuntimeCouplingCheckpoint.hpp:28