![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
#include <ReactionTokens.hpp>
Public Types | |
| enum | Op : uint8_t { PUSH_NUM = 0 , PUSH_SPECIES , PUSH_COEF , PUSH_TERM , PUSH_HYDVAR , PUSH_POLLUT , ADD , SUB , MUL , DIV , POW , NEG , F_EXP , F_LOG , F_LOG10 , F_SQRT , F_ABS , F_SGN , F_STEP , F_SIN , F_COS , F_TAN , F_MIN , F_MAX } |
Public Attributes | |
| uint8_t | op = PUSH_NUM |
| int32_t | idx = 0 |
| double | value = 0.0 |
One VM instruction. POD, contiguous in the shared pool — no per-expression heap vectors (LARD plan §16 D-L3).
| enum openswmm::RxToken::Op : uint8_t |
| Enumerator | |
|---|---|
| PUSH_NUM | value |
| PUSH_SPECIES | idx = local species slot |
| PUSH_COEF | idx = coefficient slot |
| PUSH_TERM | idx = term slot (evaluated earlier in-order) |
| PUSH_HYDVAR | idx = RxHydVar |
| PUSH_POLLUT | idx = pollutant index (READ-ONLY coupling, R4) |
| ADD | |
| SUB | |
| MUL | |
| DIV | |
| POW | |
| NEG | |
| F_EXP | |
| F_LOG | |
| F_LOG10 | |
| F_SQRT | |
| F_ABS | |
| F_SGN | |
| F_STEP | |
| F_SIN | |
| F_COS | |
| F_TAN | |
| F_MIN | |
| F_MAX | binary |
| int32_t openswmm::RxToken::idx = 0 |
| uint8_t openswmm::RxToken::op = PUSH_NUM |
| double openswmm::RxToken::value = 0.0 |