32#ifndef OPENSWMM_INFLOWS_H
33#define OPENSWMM_INFLOWS_H
76 const char* ts_name,
const char* type,
double m_factor,
77 double s_factor,
double baseline,
const char* pattern);
109 char* constituent_buf,
int constituent_buflen,
char* ts_buf,
110 int ts_buflen,
char* type_buf,
int type_buflen,
111 double* m_factor,
double* s_factor,
double* baseline,
112 char* pattern_buf,
int pattern_buflen);
191 double avg_value,
const char* pat1,
const char* pat2,
192 const char* pat3,
const char* pat4);
220 char* constituent_buf,
int constituent_buflen,
double* avg_value,
221 char* pat1_buf,
int pat1_buflen,
char* pat2_buf,
int pat2_buflen,
222 char* pat3_buf,
int pat3_buflen,
char* pat4_buf,
int pat4_buflen);
296 int buflen,
double* area);
352 int response,
double r,
double t,
double k,
double dmax,
353 double drecov,
double dinit);
379 int* month,
int* response,
double* r,
double* t,
double* k,
380 double* dmax,
double* drecov,
double* dinit);
404 const char* gage_name);
424 int uh_buflen,
char* gage_buf,
int gage_buflen);
518 int response,
double r,
double t,
double k);
539 int response,
double dmax,
double drecov,
double dinit);
601 const char* gage_name);
645 double k_dep,
double k_0,
double k_T,
double T_ref,
646 double theta_rec,
double T_freeze,
int snow_on,
647 double snow_T,
double snow_ddf);
699 double k_dep,
double k_0,
double k_T,
double T_ref,
700 double theta_rec,
double T_freeze,
int snow_on,
701 double snow_T,
double snow_ddf);
729 int* response,
double* k_dep,
double* k_0,
double* k_T,
730 double* T_ref,
double* theta_rec,
double* T_freeze,
731 int* snow_on,
double* snow_T,
double* snow_ddf);
#define SWMM_ENGINE_API
Definition openswmm_2d.h:62
void * SWMM_Engine
Opaque handle to an OpenSWMM Engine instance.
Definition openswmm_callbacks.h:55
OpenSWMM Engine — primary transparent C API (master header).
SWMM_ENGINE_API int swmm_rdii_decay_get(SWMM_Engine engine, int entry_idx, char *uh_buf, int buflen, int *response, double *k_dep, double *k_0, double *k_T, double *T_ref, double *theta_rec, double *T_freeze, int *snow_on, double *snow_T, double *snow_ddf)
Read back an exponential-decay parameter row by index.
Definition openswmm_inflows_impl.cpp:425
SWMM_ENGINE_API int swmm_ext_inflow_count(SWMM_Engine engine)
Get the total number of external inflows defined.
Definition openswmm_inflows_impl.cpp:789
SWMM_ENGINE_API int swmm_hydrograph_gage_count(SWMM_Engine engine)
Count stored hydrograph-to-gage assignment rows.
Definition openswmm_inflows_impl.cpp:366
SWMM_ENGINE_API int swmm_dwf_count(SWMM_Engine engine)
Get the total number of dry weather flow entries defined.
Definition openswmm_inflows_impl.cpp:795
SWMM_ENGINE_API int swmm_dwf_get(SWMM_Engine engine, int entry_idx, int *node_idx, char *constituent_buf, int constituent_buflen, double *avg_value, char *pat1_buf, int pat1_buflen, char *pat2_buf, int pat2_buflen, char *pat3_buf, int pat3_buflen, char *pat4_buf, int pat4_buflen)
Read back a dry weather flow entry by index.
Definition openswmm_inflows_impl.cpp:200
SWMM_ENGINE_API int swmm_hydrograph_set_gage(SWMM_Engine engine, const char *uh_name, const char *gage_name)
Set, replace, or clear the rain gage assigned to a UH group.
Definition openswmm_inflows_impl.cpp:654
SWMM_ENGINE_API int swmm_rdii_get(SWMM_Engine engine, int entry_idx, int *node_idx, char *uh_buf, int buflen, double *area)
Read back an RDII assignment by entry index.
Definition openswmm_inflows_impl.cpp:259
SWMM_ENGINE_API int swmm_rdii_count(SWMM_Engine engine)
Get the total number of RDII entries defined.
Definition openswmm_inflows_impl.cpp:801
SWMM_ENGINE_API int swmm_hydrograph_group_rename(SWMM_Engine engine, int idx, const char *new_id)
Rename a UH group, propagating the new name to parameter rows, gage assignments, [RDII_DECAY] rows,...
Definition openswmm_inflows_impl.cpp:680
SWMM_ENGINE_API int swmm_hydrograph_add(SWMM_Engine engine, const char *uh_name, int month, int response, double r, double t, double k, double dmax, double drecov, double dinit)
Add a unit hydrograph parameter line.
Definition openswmm_inflows_impl.cpp:286
SWMM_ENGINE_API int swmm_dwf_set_baseline(SWMM_Engine engine, int entry_idx, double avg_value)
Replace one dry-weather-flow average value.
Definition openswmm_inflows_impl.cpp:233
SWMM_ENGINE_API int swmm_rdii_add(SWMM_Engine engine, int node_idx, const char *uh_name, double area)
Add RDII inflow to a node using a unit hydrograph.
Definition openswmm_inflows_impl.cpp:246
SWMM_ENGINE_API int swmm_ext_inflow_set_baseline(SWMM_Engine engine, int entry_idx, double baseline)
Replace one external-inflow baseline.
Definition openswmm_inflows_impl.cpp:135
SWMM_ENGINE_API int swmm_hydrograph_clear_group_months(SWMM_Engine engine, const char *uh_name)
Remove a group's month-specific parameter rows while retaining ALL rows.
Definition openswmm_inflows_impl.cpp:638
SWMM_ENGINE_API int swmm_ext_inflow_remove(SWMM_Engine engine, int entry_idx)
Remove an external inflow entry by index.
Definition openswmm_inflows_impl.cpp:171
SWMM_ENGINE_API int swmm_hydrograph_get_gage(SWMM_Engine engine, int entry_idx, char *uh_buf, int uh_buflen, char *gage_buf, int gage_buflen)
Read back a UH-to-gage assignment by index.
Definition openswmm_inflows_impl.cpp:351
SWMM_ENGINE_API int swmm_rdii_decay_remove(SWMM_Engine engine, const char *uh_name, int response)
Remove the first exponential-decay row matching a group and response.
Definition openswmm_inflows_impl.cpp:769
SWMM_ENGINE_API int swmm_hydrograph_set_rtk(SWMM_Engine engine, const char *uh_name, int month, int response, double r, double t, double k)
Upsert R/T/K parameters for one (group, month, response) row.
Definition openswmm_inflows_impl.cpp:538
SWMM_ENGINE_API int swmm_ext_inflow_get(SWMM_Engine engine, int entry_idx, int *node_idx, char *constituent_buf, int constituent_buflen, char *ts_buf, int ts_buflen, char *type_buf, int type_buflen, double *m_factor, double *s_factor, double *baseline, char *pattern_buf, int pattern_buflen)
Read back an external inflow entry by index.
Definition openswmm_inflows_impl.cpp:145
SWMM_ENGINE_API int swmm_hydrograph_remove_group(SWMM_Engine engine, const char *uh_name)
Remove all authoring rows and RDII assignments for a hydrograph group.
Definition openswmm_inflows_impl.cpp:627
SWMM_ENGINE_API int swmm_hydrograph_remove_entry(SWMM_Engine engine, const char *uh_name, int month, int response)
Remove the first matching hydrograph parameter row.
Definition openswmm_inflows_impl.cpp:608
SWMM_ENGINE_API int swmm_dwf_remove(SWMM_Engine engine, int entry_idx)
Remove a DWF entry by index. Subsequent entries shift down.
Definition openswmm_inflows_impl.cpp:224
SWMM_ENGINE_API int swmm_ext_inflow_set_scale(SWMM_Engine engine, int entry_idx, double scale)
Replace an external-inflow timeseries scale factor.
Definition openswmm_inflows_impl.cpp:126
SWMM_ENGINE_API int swmm_rdii_decay_count(SWMM_Engine engine)
Count stored exponential-decay rows.
Definition openswmm_inflows_impl.cpp:451
SWMM_ENGINE_API int swmm_hydrograph_group_count(SWMM_Engine engine)
Count the unique unit-hydrograph group names defined.
Definition openswmm_inflows_impl.cpp:372
SWMM_ENGINE_API int swmm_hydrograph_get(SWMM_Engine engine, int entry_idx, char *uh_buf, int buflen, int *month, int *response, double *r, double *t, double *k, double *dmax, double *drecov, double *dinit)
Read back a hydrograph parameter entry by index.
Definition openswmm_inflows_impl.cpp:312
SWMM_ENGINE_API int swmm_rdii_decay_add(SWMM_Engine engine, const char *uh_name, int response, double k_dep, double k_0, double k_T, double T_ref, double theta_rec, double T_freeze, int snow_on, double snow_T, double snow_ddf)
Append an exponential-depletion and temperature-dependent IA-recovery row.
Definition openswmm_inflows_impl.cpp:394
SWMM_ENGINE_API int swmm_hydrograph_group_id(SWMM_Engine engine, int idx, char *buf, int buflen)
Read back the name of a unit-hydrograph group by its zero-based index.
Definition openswmm_inflows_impl.cpp:379
SWMM_ENGINE_API int swmm_rdii_remove(SWMM_Engine engine, int entry_idx)
Remove an RDII entry by index. Subsequent entries shift down.
Definition openswmm_inflows_impl.cpp:274
SWMM_ENGINE_API int swmm_ext_inflow_add(SWMM_Engine engine, int node_idx, const char *constituent, const char *ts_name, const char *type, double m_factor, double s_factor, double baseline, const char *pattern)
Add an external inflow to a node.
Definition openswmm_inflows_impl.cpp:110
SWMM_ENGINE_API int swmm_rdii_decay_set(SWMM_Engine engine, const char *uh_name, int response, double k_dep, double k_0, double k_T, double T_ref, double theta_rec, double T_freeze, int snow_on, double snow_T, double snow_ddf)
Upsert an exponential-depletion and temperature-dependent IA-recovery row.
Definition openswmm_inflows_impl.cpp:722
SWMM_ENGINE_API int swmm_dwf_add(SWMM_Engine engine, int node_idx, const char *constituent, double avg_value, const char *pat1, const char *pat2, const char *pat3, const char *pat4)
Add a dry weather flow component to a node.
Definition openswmm_inflows_impl.cpp:184
SWMM_ENGINE_API int swmm_hydrograph_count(SWMM_Engine engine)
Count stored hydrograph parameter rows, including duplicate keys.
Definition openswmm_inflows_impl.cpp:335
SWMM_ENGINE_API int swmm_hydrograph_add_gage(SWMM_Engine engine, const char *uh_name, const char *gage_name)
Assign a rain gage to a unit hydrograph group.
Definition openswmm_inflows_impl.cpp:341
SWMM_ENGINE_API int swmm_hydrograph_set_ia(SWMM_Engine engine, const char *uh_name, int month, int response, double dmax, double drecov, double dinit)
Upsert linear-IA parameters for one (group, month, response) row.
Definition openswmm_inflows_impl.cpp:573