OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
ReactionsComponent.hpp File Reference

The org.hydrocouple.openswmm.reactions process component — phase R1: parse model.rxn [REACTION_*] sections into ReactionData + the species registry. More...

#include <string>
#include <vector>
Include dependency graph for ReactionsComponent.hpp:
This graph shows which files directly or indirectly include this file:

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)
 

Detailed Description

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).

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n Apache-2.0