![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
The org.hydrocouple.openswmm.reactions process component — phase R1: parse model.rxn [REACTION_*] sections into ReactionData + the species registry.
More...
#include <string>#include <vector>Go to the source code of this file.
Namespaces | |
| namespace | openswmm |
| namespace | openswmm::components |
| namespace | openswmm::transport |
Functions | |
| void | openswmm::transport::registerReactionsComponent () |
| const std::vector< std::string > & | openswmm::transport::reactionSectionTags () |
| void | openswmm::transport::applyReactionSections (SimulationContext &ctx, const components::ComponentConfigSections &config, std::vector< std::string > &errors) |
| void | openswmm::transport::applyEmbeddedReactionSections (SimulationContext &ctx, bool external_component_registered, std::vector< std::string > &errors) |
| bool | openswmm::transport::recompileReactionSystem (SimulationContext &ctx, std::vector< std::string > &errors) |
The org.hydrocouple.openswmm.reactions process component — phase R1: parse model.rxn [REACTION_*] sections into ReactionData + the species registry.
R1 scope: structure and references are fully validated (species declared before use, unique names, no collision with pollutant names, valid forms/kinds/options); expression BODIES are stored as source and compiled by phase R2's Tier-1 VM. Sections whose semantics land in later phases ([REACTION_SOURCES], [REACTION_PARAMETERS], [REACTION_PATTERNS], [REACTION_REPORT], [REACTION_SUBCATCHMENTS]) produce a precise "arrives with plan phase …" error rather than being silently accepted. Embedded [REACTION_*] sections in the legacy .inp are honored with a style warning when no external component is registered; the external file wins wholesale on conflict (TRANSPORT_IO_PLUGIN_CONFIG_PLAN §3.2).