![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
Phase A4 — per-(LID unit, layer, species) transported state. More...
#include <cstddef>#include <vector>Go to the source code of this file.
Classes | |
| struct | openswmm::LidLayerSpeciesState |
| Per-(unit, layer, species) state for every LID unit in the model. More... | |
Namespaces | |
| namespace | openswmm |
Enumerations | |
| enum class | openswmm::LidLayer : int { openswmm::SURFACE = 0 , openswmm::PAVEMENT = 1 , openswmm::SOIL = 2 , openswmm::STORAGE = 3 , openswmm::COUNT_ = 4 } |
| enum class | openswmm::LidSpecies : int { openswmm::AGE = 0 , openswmm::TEMPERATURE = 1 , openswmm::COUNT_ = 2 } |
| Species rows carried on the LID layers. More... | |
Phase A4 — per-(LID unit, layer, species) transported state.
Plan §7 A4 asks for a "generic per-layer species block — heat
reuses it", so this carries a species stride from the start. Water age is species 0; H5's temperature becomes species 1 by raising n_species and writing its own row, with no second array and no change to the layer indexing.
LID units live in per-TYPE groups (LIDManager::group(t)), not one flat list, so group_offset maps (type, unit-within-group) to the flat unit index this block is keyed on. It is built once from the manager and asserted against it on every use.