![]() |
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 () |
| Register native reaction parser/serializer callbacks under the built-in component ID. | |
| const std::vector< std::string > & | openswmm::transport::reactionSectionTags () |
| Borrow the complete fixed set of supported embedded/external reaction section names. | |
| void | openswmm::transport::applyReactionSections (SimulationContext &ctx, const components::ComponentConfigSections &config, std::vector< std::string > &errors) |
| Parse, validate, compile and register one native multispecies reaction system. | |
| void | openswmm::transport::applyEmbeddedReactionSections (SimulationContext &ctx, bool external_component_registered, std::vector< std::string > &errors) |
| Apply retained INP reaction sections unless an external component has precedence. | |
| bool | openswmm::transport::recompileReactionSystem (SimulationContext &ctx, std::vector< std::string > &errors) |
| Rebuild all compiled reaction expressions and validate scoped availability/profile constraints. | |
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 the Tier-1 VM. Pipe, tank and wet non-LID subcatchment scopes have separate validated contexts. 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).