SWMM  5.2.0
Documentation
Loading...
Searching...
No Matches
swmm_output.h
Go to the documentation of this file.
1
11#ifndef SWMM_OUTPUT_H_
12#define SWMM_OUTPUT_H_
13
18#define MAXFILENAME 259
19
24#define MAXELENAME 31
25
30typedef void *SMO_Handle;
31
32#include "swmm_output_export.h"
33#include "swmm_output_enums.h"
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
44int EXPORT_SWMM_OUTPUT_API SMO_init(SMO_Handle *p_handle);
45
51int EXPORT_SWMM_OUTPUT_API SMO_close(SMO_Handle *p_handle);
52
59int EXPORT_SWMM_OUTPUT_API SMO_open(SMO_Handle p_handle, const char *path);
60
67int EXPORT_SWMM_OUTPUT_API SMO_getVersion(SMO_Handle p_handle, int *version);
68
76int EXPORT_SWMM_OUTPUT_API SMO_getProjectSize(SMO_Handle p_handle, int **elementCount, int *length);
77
85int EXPORT_SWMM_OUTPUT_API SMO_getUnits(SMO_Handle p_handle, int **unitFlag, int *length);
86
99int EXPORT_SWMM_OUTPUT_API SMO_getFlowUnits(SMO_Handle p_handle, int *unitFlag);
100
114int EXPORT_SWMM_OUTPUT_API SMO_getPollutantUnits(SMO_Handle p_handle, int **unitFlag, int *length);
115
122int EXPORT_SWMM_OUTPUT_API SMO_getStartDate(SMO_Handle p_handle, double *date);
123
131int EXPORT_SWMM_OUTPUT_API SMO_getTimes(SMO_Handle p_handle, SMO_time code, int *time);
132
142int EXPORT_SWMM_OUTPUT_API SMO_getElementName(
143 SMO_Handle p_handle,
144 SMO_elementType type,
145 int elementIndex,
146 char **elementName,
147 int *size
148);
149
150
158int EXPORT_SWMM_OUTPUT_API SMO_getNumVars(
159 SMO_Handle p_handle,
160 SMO_elementType type,
161 int *count
162);
163
172int EXPORT_SWMM_OUTPUT_API SMO_getVarCode(SMO_Handle p_handle, SMO_elementType type, int varIndex, int *varCode);
173
182int EXPORT_SWMM_OUTPUT_API SMO_getVarCodes(SMO_Handle p_handle, SMO_elementType type, int **varCodes, int *size);
183
191int EXPORT_SWMM_OUTPUT_API SMO_getNumProperties(SMO_Handle p_handle, SMO_elementType type, int *count);
192
201int EXPORT_SWMM_OUTPUT_API SMO_getPropertyCode(SMO_Handle p_handle, SMO_elementType type, int propertyIndex, int *propertyCode);
202
211int EXPORT_SWMM_OUTPUT_API SMO_getPropertyCodes(SMO_Handle p_handle, SMO_elementType type, int **propertyCodes, int *size);
212
222int EXPORT_SWMM_OUTPUT_API SMO_getPropertyValue(
223 SMO_Handle p_handle,
224 SMO_elementType type,
225 int propertyIndex,
226 int elementIndex,
227 float *value
228);
229
239int EXPORT_SWMM_OUTPUT_API SMO_getPropertyValues(
240 SMO_Handle p_handle,
241 SMO_elementType type,
242 int elementIndex,
243 float **outValueArray,
244 int *length
245);
246
258int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchSeries(
259 SMO_Handle p_handle,
260 int subcatchIndex,
262 int startPeriod,
263 int endPeriod,
264 float **outValueArray,
265 int *length
266);
267
279int EXPORT_SWMM_OUTPUT_API SMO_getNodeSeries(
280 SMO_Handle p_handle,
281 int nodeIndex,
282 SMO_nodeAttribute attr,
283 int startPeriod,
284 int endPeriod,
285 float **outValueArray,
286 int *length
287);
288
300int EXPORT_SWMM_OUTPUT_API SMO_getLinkSeries(
301 SMO_Handle p_handle,
302 int linkIndex,
303 SMO_linkAttribute attr,
304 int startPeriod,
305 int endPeriod,
306 float **outValueArray,
307 int *length
308);
309
320int EXPORT_SWMM_OUTPUT_API SMO_getSystemSeries(
321 SMO_Handle p_handle,
323 int startPeriod,
324 int endPeriod,
325 float **outValueArray,
326 int *length
327);
328
338int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchAttribute(
339 SMO_Handle p_handle,
340 int timeIndex,
342 float **outValueArray,
343 int *length
344);
345
355int EXPORT_SWMM_OUTPUT_API SMO_getNodeAttribute(
356 SMO_Handle p_handle,
357 int timeIndex,
358 SMO_nodeAttribute attr,
359 float **outValueArray,
360 int *length
361);
362
372int EXPORT_SWMM_OUTPUT_API SMO_getLinkAttribute(
373 SMO_Handle p_handle,
374 int timeIndex,
375 SMO_linkAttribute attr,
376 float **outValueArray,
377 int *length
378);
379
389int EXPORT_SWMM_OUTPUT_API SMO_getSystemAttribute(
390 SMO_Handle p_handle,
391 int timeIndex,
393 float **outValueArray,
394 int *length
395);
396
406int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchResult(
407 SMO_Handle p_handle,
408 int timeIndex,
409 int subcatchIndex,
410 float **outValueArray,
411 int *length
412);
413
423int EXPORT_SWMM_OUTPUT_API SMO_getNodeResult(
424 SMO_Handle p_handle,
425 int timeIndex,
426 int nodeIndex,
427 float **outValueArray,
428 int *length
429);
430
440int EXPORT_SWMM_OUTPUT_API SMO_getLinkResult(
441 SMO_Handle p_handle,
442 int timeIndex,
443 int linkIndex,
444 float **outValueArray,
445 int *length
446);
447
457int EXPORT_SWMM_OUTPUT_API SMO_getSystemResult(
458 SMO_Handle p_handle,
459 int timeIndex,
460 int dummyIndex,
461 float **outValueArray,
462 int *length
463);
464
469void EXPORT_SWMM_OUTPUT_API SMO_free(void **array);
470
475void EXPORT_SWMM_OUTPUT_API SMO_clearError(SMO_Handle p_handle_in);
476
484int EXPORT_SWMM_OUTPUT_API SMO_checkError(SMO_Handle p_handle_in, char **msg_buffer);
485
486#ifdef __cplusplus
487}
488#endif
489
490#endif /* SWMM_OUTPUT_H_ */
int EXPORT_SWMM_OUTPUT_API SMO_getPropertyCodes(SMO_Handle p_handle, SMO_elementType type, int **propertyCodes, int *size)
Retrieves the property codes for a given element type that are stored in the output file.
Definition swmm_output.c:1086
int EXPORT_SWMM_OUTPUT_API SMO_getSystemAttribute(SMO_Handle p_handle, int timeIndex, SMO_systemAttribute attr, float **outValueArray, int *length)
Retrieves system attribute values for a given time period and attribute type.
Definition swmm_output.c:1518
int EXPORT_SWMM_OUTPUT_API SMO_getNodeAttribute(SMO_Handle p_handle, int timeIndex, SMO_nodeAttribute attr, float **outValueArray, int *length)
Retrieves node attribute values for a given time period and attribute type.
Definition swmm_output.c:1454
void EXPORT_SWMM_OUTPUT_API SMO_clearError(SMO_Handle p_handle_in)
Clears the error status of the SMO_Handle.
Definition swmm_output.c:1722
int EXPORT_SWMM_OUTPUT_API SMO_getLinkResult(SMO_Handle p_handle, int timeIndex, int linkIndex, float **outValueArray, int *length)
Retrieves link result values for a given time period.
Definition swmm_output.c:1628
int EXPORT_SWMM_OUTPUT_API SMO_getNumProperties(SMO_Handle p_handle, SMO_elementType type, int *count)
Retrieves the number of properties for a given element type that are stored in the output file.
Definition swmm_output.c:1006
int EXPORT_SWMM_OUTPUT_API SMO_getProjectSize(SMO_Handle p_handle, int **elementCount, int *length)
Get project size.
Definition swmm_output.c:601
int EXPORT_SWMM_OUTPUT_API SMO_getElementName(SMO_Handle p_handle, SMO_elementType type, int elementIndex, char **elementName, int *size)
Retrieves the element name by index and type from the SWMM output file.
Definition swmm_output.c:788
void EXPORT_SWMM_OUTPUT_API SMO_free(void **array)
Frees memory allocated by the API for the outValueArray.
Definition swmm_output.c:1710
int EXPORT_SWMM_OUTPUT_API SMO_getTimes(SMO_Handle p_handle, SMO_time code, int *time)
Retrieves the number of reporting periods in the simulation.
Definition swmm_output.c:756
int EXPORT_SWMM_OUTPUT_API SMO_getSystemSeries(SMO_Handle p_handle, SMO_systemAttribute attr, int startPeriod, int endPeriod, float **outValueArray, int *length)
Retrieves system attribute values for a given time period and attribute type.
Definition swmm_output.c:1389
int EXPORT_SWMM_OUTPUT_API SMO_getNumVars(SMO_Handle p_handle, SMO_elementType type, int *count)
Retrieves the number of variables for a given element type that are stored in the output file.
Definition swmm_output.c:870
int EXPORT_SWMM_OUTPUT_API SMO_getPropertyValue(SMO_Handle p_handle, SMO_elementType type, int propertyIndex, int elementIndex, float *value)
Retrieves the value of a property for a given element type, property index, and element index.
Definition swmm_output.c:1170
int EXPORT_SWMM_OUTPUT_API SMO_getLinkAttribute(SMO_Handle p_handle, int timeIndex, SMO_linkAttribute attr, float **outValueArray, int *length)
Retrieves link attribute values for a given time period and attribute type.
Definition swmm_output.c:1486
int EXPORT_SWMM_OUTPUT_API SMO_getPollutantUnits(SMO_Handle p_handle, int **unitFlag, int *length)
Returns unit flag for pollutant. Concentration units are located after the pollutant ID names and bef...
Definition swmm_output.c:707
int EXPORT_SWMM_OUTPUT_API SMO_getUnits(SMO_Handle p_handle, int **unitFlag, int *length)
Retrieves the unit system used in the SWMM model.
Definition swmm_output.c:633
int EXPORT_SWMM_OUTPUT_API SMO_close(SMO_Handle *p_handle)
Closes the SWMM output file handle.
Definition swmm_output.c:494
int EXPORT_SWMM_OUTPUT_API SMO_getNodeSeries(SMO_Handle p_handle, int nodeIndex, SMO_nodeAttribute attr, int startPeriod, int endPeriod, float **outValueArray, int *length)
Retrieves node attribute values for a given time period and attribute type.
Definition swmm_output.c:1317
int EXPORT_SWMM_OUTPUT_API SMO_getVarCode(SMO_Handle p_handle, SMO_elementType type, int varIndex, int *varCode)
Retrieves the variable code for a given element type and variable index that is stored in the output ...
Definition swmm_output.c:909
int EXPORT_SWMM_OUTPUT_API SMO_getSystemResult(SMO_Handle p_handle, int timeIndex, int dummyIndex, float **outValueArray, int *length)
Retrieves system result values for a given time period.
Definition swmm_output.c:1670
int EXPORT_SWMM_OUTPUT_API SMO_getPropertyCode(SMO_Handle p_handle, SMO_elementType type, int propertyIndex, int *propertyCode)
Retrieves the property code for a given element type and property index that is stored in the output ...
Definition swmm_output.c:1039
int EXPORT_SWMM_OUTPUT_API SMO_getPropertyValues(SMO_Handle p_handle, SMO_elementType type, int elementIndex, float **outValueArray, int *length)
Retrieves all property values for a given element type and element index.
Definition swmm_output.c:1244
void * SMO_Handle
Opaque pointer to struct. Do not access variables.
Definition swmm_output.h:30
int EXPORT_SWMM_OUTPUT_API SMO_getStartDate(SMO_Handle p_handle, double *date)
Retrieves the start date of the simulation.
Definition swmm_output.c:736
int EXPORT_SWMM_OUTPUT_API SMO_open(SMO_Handle p_handle, const char *path)
Opens a SWMM output file.
Definition swmm_output.c:345
int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchResult(SMO_Handle p_handle, int timeIndex, int subcatchIndex, float **outValueArray, int *length)
Retrieves subcatchment result values for a given time period.
Definition swmm_output.c:1548
int EXPORT_SWMM_OUTPUT_API SMO_init(SMO_Handle *p_handle)
Initializes the SWMM output file handle.
Definition swmm_output.c:310
int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchAttribute(SMO_Handle p_handle, int timeIndex, SMO_subcatchAttribute attr, float **outValueArray, int *length)
Retrieves subcatchment attribute values for a given time period and attribute type.
Definition swmm_output.c:1422
int EXPORT_SWMM_OUTPUT_API SMO_getVersion(SMO_Handle p_handle, int *version)
Retrieves the model version number that created the output file.
Definition swmm_output.c:579
int EXPORT_SWMM_OUTPUT_API SMO_getLinkSeries(SMO_Handle p_handle, int linkIndex, SMO_linkAttribute attr, int startPeriod, int endPeriod, float **outValueArray, int *length)
Retrieves link attribute values for a given time period and attribute type.
Definition swmm_output.c:1353
int EXPORT_SWMM_OUTPUT_API SMO_checkError(SMO_Handle p_handle_in, char **msg_buffer)
Checks for error in the error handle and copies the error message to the message buffer.
Definition swmm_output.c:1733
int EXPORT_SWMM_OUTPUT_API SMO_getVarCodes(SMO_Handle p_handle, SMO_elementType type, int **varCodes, int *size)
Retrieves the variable codes for a given element type that are stored in the output file.
Definition swmm_output.c:960
int EXPORT_SWMM_OUTPUT_API SMO_getFlowUnits(SMO_Handle p_handle, int *unitFlag)
Returns unit flag for flow.
Definition swmm_output.c:684
int EXPORT_SWMM_OUTPUT_API SMO_getSubcatchSeries(SMO_Handle p_handle, int subcatchIndex, SMO_subcatchAttribute attr, int startPeriod, int endPeriod, float **outValueArray, int *length)
Retrieves subcatchment attribute values for a given time period and attribute type.
Definition swmm_output.c:1128
int EXPORT_SWMM_OUTPUT_API SMO_getNodeResult(SMO_Handle p_handle, int timeIndex, int nodeIndex, float **outValueArray, int *length)
Retrieves node result values for a given time period.
Definition swmm_output.c:1587
Header file for SWMM output API enumeration types.
SMO_linkAttribute
Link attributes.
Definition swmm_output_enums.h:135
SMO_time
Report time related attributes.
Definition swmm_output_enums.h:78
SMO_nodeAttribute
Node attributes.
Definition swmm_output_enums.h:114
SMO_systemAttribute
System attributes.
Definition swmm_output_enums.h:154
SMO_subcatchAttribute
Subcatchment attributes.
Definition swmm_output_enums.h:89
SMO_elementType
SWMM element types.
Definition swmm_output_enums.h:61