OpenSWMM Engine  6.0.0-alpha.1
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.1)
Loading...
Searching...
No Matches
openswmm_model.h
Go to the documentation of this file.
1
23#ifndef OPENSWMM_MODEL_H
24#define OPENSWMM_MODEL_H
25
26#include "openswmm_engine.h"
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32/* =========================================================================
33 * Model building — programmatic construction (state guard: BUILDING only)
34 * ========================================================================= */
35
47
48/* =========================================================================
49 * Model finalisation and validation
50 * ========================================================================= */
51
63
76
77/* =========================================================================
78 * Model serialisation
79 * ========================================================================= */
80
93SWMM_ENGINE_API int swmm_model_write(SWMM_Engine engine, const char* new_inp_path);
94
95/* =========================================================================
96 * OPTIONS access
97 * ========================================================================= */
98
109 SWMM_Engine engine,
110 const char* key,
111 char* buf,
112 int buflen
113);
114
124 SWMM_Engine engine,
125 const char* key,
126 const char* value
127);
128
139 SWMM_Engine engine,
140 const char* key,
141 char* buf,
142 int buflen
143);
144
154 SWMM_Engine engine,
155 const char* key,
156 const char* value
157);
158
167SWMM_ENGINE_API int swmm_get_crs(SWMM_Engine engine, char* buf, int buflen);
168
169/* =========================================================================
170 * User flags
171 * ========================================================================= */
172
180SWMM_ENGINE_API int swmm_userflag_get_bool(SWMM_Engine engine, const char* name, int* value);
181
189SWMM_ENGINE_API int swmm_userflag_get_int (SWMM_Engine engine, const char* name, int* value);
190
198SWMM_ENGINE_API int swmm_userflag_get_real(SWMM_Engine engine, const char* name, double* value);
199
201SWMM_ENGINE_API int swmm_userflag_set_bool(SWMM_Engine engine, const char* name, int value);
202
204SWMM_ENGINE_API int swmm_userflag_set_int (SWMM_Engine engine, const char* name, int value);
205
207SWMM_ENGINE_API int swmm_userflag_set_real(SWMM_Engine engine, const char* name, double value);
208
209#ifdef __cplusplus
210} /* extern "C" */
211#endif
212
213#endif /* OPENSWMM_MODEL_H */
void * SWMM_Engine
Opaque handle to an OpenSWMM Engine instance.
Definition openswmm_callbacks.h:35
OpenSWMM Engine — primary transparent C API (master header).
#define SWMM_ENGINE_API
Definition openswmm_engine.h:87
SWMM_ENGINE_API int swmm_model_write(SWMM_Engine engine, const char *new_inp_path)
Write the current model state to a SWMM input (.inp) file.
Definition openswmm_model_impl.cpp:108
SWMM_ENGINE_API int swmm_userflag_get_bool(SWMM_Engine engine, const char *name, int *value)
Get the value of a BOOLEAN user flag (schema-level).
Definition openswmm_model_impl.cpp:228
SWMM_ENGINE_API SWMM_Engine swmm_engine_new(void)
Create an empty engine in BUILDING state (no .inp file required).
Definition openswmm_model_impl.cpp:23
SWMM_ENGINE_API int swmm_finalize_model(SWMM_Engine engine)
Finalise a programmatically-built model.
Definition openswmm_model_impl.cpp:67
SWMM_ENGINE_API int swmm_options_set_ext(SWMM_Engine engine, const char *key, const char *value)
Set (or create) an extension OPTIONS value.
Definition openswmm_model_impl.cpp:206
SWMM_ENGINE_API int swmm_options_get_ext(SWMM_Engine engine, const char *key, char *buf, int buflen)
Retrieve an extension OPTIONS value (keys unknown to standard SWMM).
Definition openswmm_model_impl.cpp:192
SWMM_ENGINE_API int swmm_userflag_set_int(SWMM_Engine engine, const char *name, int value)
Set an INTEGER user flag at runtime.
Definition openswmm_model_impl.cpp:279
SWMM_ENGINE_API int swmm_userflag_get_int(SWMM_Engine engine, const char *name, int *value)
Get the value of an INTEGER user flag.
Definition openswmm_model_impl.cpp:242
SWMM_ENGINE_API int swmm_userflag_set_real(SWMM_Engine engine, const char *name, double value)
Set a REAL user flag at runtime.
Definition openswmm_model_impl.cpp:288
SWMM_ENGINE_API int swmm_options_set(SWMM_Engine engine, const char *key, const char *value)
Set a standard OPTIONS value.
Definition openswmm_model_impl.cpp:141
SWMM_ENGINE_API int swmm_get_crs(SWMM_Engine engine, char *buf, int buflen)
Retrieve the CRS string (e.g., "EPSG:4326" or PROJ string).
Definition openswmm_model_impl.cpp:214
SWMM_ENGINE_API int swmm_validate_model(SWMM_Engine engine)
Validate model topology without changing state.
Definition openswmm_model_impl.cpp:33
SWMM_ENGINE_API int swmm_userflag_get_real(SWMM_Engine engine, const char *name, double *value)
Get the value of a REAL user flag.
Definition openswmm_model_impl.cpp:256
SWMM_ENGINE_API int swmm_userflag_set_bool(SWMM_Engine engine, const char *name, int value)
Set a BOOLEAN user flag at runtime.
Definition openswmm_model_impl.cpp:270
SWMM_ENGINE_API int swmm_options_get(SWMM_Engine engine, const char *key, char *buf, int buflen)
Retrieve a standard OPTIONS value as a string.
Definition openswmm_model_impl.cpp:118