OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
openswmm::transport::RxToken Struct Reference

#include <ReactionTokens.hpp>

Collaboration diagram for openswmm::transport::RxToken:

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
 

Detailed Description

One VM instruction. POD, contiguous in the shared pool — no per-expression heap vectors (LARD plan §16 D-L3).

Member Enumeration Documentation

◆ Op

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

Member Data Documentation

◆ idx

int32_t openswmm::RxToken::idx = 0

◆ op

uint8_t openswmm::RxToken::op = PUSH_NUM

◆ value

double openswmm::RxToken::value = 0.0

The documentation for this struct was generated from the following file: