|
OWA-EPANET Toolkit 2.3
|
#include "epanet2_enums.h"Go to the source code of this file.
Typedefs | |
| typedef struct Project * | EN_Project |
| The EPANET Project wrapper object. | |
Functions | |
| int DLLEXPORT | EN_createproject (EN_Project *ph) |
| Creates an EPANET project. | |
| int DLLEXPORT | EN_deleteproject (EN_Project ph) |
| Deletes a currently opened EPANET project. | |
| int DLLEXPORT | EN_runproject (EN_Project ph, const char *inpFile, const char *rptFile, const char *outFile, void(*pviewprog)(char *)) |
| Runs a complete EPANET simulation. | |
| int DLLEXPORT | EN_init (EN_Project ph, const char *rptFile, const char *outFile, int unitsType, int headLossType) |
| Initializes an EPANET project. | |
| int DLLEXPORT | EN_open (EN_Project ph, const char *inpFile, const char *rptFile, const char *outFile) |
| Reads an EPANET input file with no errors allowed. | |
| int DLLEXPORT | EN_openX (EN_Project ph, const char *inpFile, const char *rptFile, const char *outFile) |
| Reads an EPANET input file with errors allowed. | |
| int DLLEXPORT | EN_gettitle (EN_Project ph, char *out_line1, char *out_line2, char *out_line3) |
| Retrieves the title lines of the project. | |
| int DLLEXPORT | EN_settitle (EN_Project ph, const char *line1, const char *line2, const char *line3) |
| Sets the title lines of the project. | |
| int DLLEXPORT | EN_getcomment (EN_Project ph, int object, int index, char *out_comment) |
| Retrieves a descriptive comment assigned to a Node, Link, Pattern or Curve. | |
| int DLLEXPORT | EN_setcomment (EN_Project ph, int object, int index, const char *comment) |
| Assigns a descriptive comment to a Node, Link, Pattern or Curve. | |
| int DLLEXPORT | EN_gettag (EN_Project ph, int object, int index, char *out_tag) |
| Retrieves a tag string assigned to a Node or Link. | |
| int DLLEXPORT | EN_settag (EN_Project ph, int object, int index, const char *tag) |
| Assigns a tag string to a Node or Link. | |
| int DLLEXPORT | EN_getcount (EN_Project ph, int object, int *out_count) |
| Retrieves the number of objects of a given type in a project. | |
| int DLLEXPORT | EN_saveinpfile (EN_Project ph, const char *filename) |
| Saves a project's data to an EPANET-formatted text file. | |
| int DLLEXPORT | EN_close (EN_Project ph) |
| Closes a project and frees all of its memory. | |
| int DLLEXPORT | EN_solveH (EN_Project ph) |
| Runs a complete hydraulic simulation with results for all time periods written to a temporary hydraulics file. | |
| int DLLEXPORT | EN_usehydfile (EN_Project ph, const char *filename) |
| Uses a previously saved binary hydraulics file to supply a project's hydraulics. | |
| int DLLEXPORT | EN_openH (EN_Project ph) |
| Opens a project's hydraulic solver. | |
| int DLLEXPORT | EN_initH (EN_Project ph, int initFlag) |
| Initializes a network prior to running a hydraulic analysis. | |
| int DLLEXPORT | EN_runH (EN_Project ph, long *out_currentTime) |
| Computes a hydraulic solution for the current point in time. | |
| int DLLEXPORT | EN_nextH (EN_Project ph, long *out_tStep) |
| Determines the length of time until the next hydraulic event occurs in an extended period simulation. | |
| int DLLEXPORT | EN_saveH (EN_Project ph) |
| Transfers a project's hydraulics results from its temporary hydraulics file to its binary output file, where results are only reported at uniform reporting intervals. | |
| int DLLEXPORT | EN_savehydfile (EN_Project ph, const char *filename) |
| Saves a project's temporary hydraulics file to disk. | |
| int DLLEXPORT | EN_closeH (EN_Project ph) |
| Closes the hydraulic solver freeing all of its allocated memory. | |
| int DLLEXPORT | EN_solveQ (EN_Project ph) |
| Runs a complete water quality simulation with results at uniform reporting intervals written to the project's binary output file. | |
| int DLLEXPORT | EN_openQ (EN_Project ph) |
| Opens a project's water quality solver. | |
| int DLLEXPORT | EN_initQ (EN_Project ph, int saveFlag) |
| Initializes a network prior to running a water quality analysis. | |
| int DLLEXPORT | EN_runQ (EN_Project ph, long *out_currentTime) |
| Makes hydraulic and water quality results at the start of the current time period available to a project's water quality solver. | |
| int DLLEXPORT | EN_nextQ (EN_Project ph, long *out_tStep) |
| Advances a water quality simulation over the time until the next hydraulic event. | |
| int DLLEXPORT | EN_stepQ (EN_Project ph, long *out_timeLeft) |
| Advances a water quality simulation by a single water quality time step. | |
| int DLLEXPORT | EN_closeQ (EN_Project ph) |
| Closes the water quality solver, freeing all of its allocated memory. | |
| int DLLEXPORT | EN_setreportcallback (EN_Project ph, void(*callback)(void *userData, void *EN_projectHandle, const char *)) |
| Sets a user-supplied callback function for reporting. | |
| int DLLEXPORT | EN_setreportcallbackuserdata (EN_Project ph, void *userData) |
| Sets a pointer to a client-side data object. | |
| int DLLEXPORT | EN_writeline (EN_Project ph, const char *line) |
| Writes a line of text to a project's report file. | |
| int DLLEXPORT | EN_report (EN_Project ph) |
| Writes simulation results in a tabular format to a project's report file. | |
| int DLLEXPORT | EN_copyreport (EN_Project ph, const char *filename) |
| Copies the current contents of a project's report file to another file. | |
| int DLLEXPORT | EN_clearreport (EN_Project ph) |
| Clears the contents of a project's report file. | |
| int DLLEXPORT | EN_resetreport (EN_Project ph) |
| Resets a project's report options to their default values. | |
| int DLLEXPORT | EN_setreport (EN_Project ph, const char *format) |
| Processes a reporting format command. | |
| int DLLEXPORT | EN_setstatusreport (EN_Project ph, int level) |
| Sets the level of hydraulic status reporting. | |
| int DLLEXPORT | EN_getversion (int *out_version) |
| Retrieves the toolkit API version number. | |
| int DLLEXPORT | EN_geterror (int errcode, char *out_errmsg, int maxLen) |
| Returns the text of an error message generated by an error code. | |
| int DLLEXPORT | EN_getstatistic (EN_Project ph, int type, double *out_value) |
| Retrieves a particular simulation statistic. | |
| int DLLEXPORT | EN_timetonextevent (EN_Project ph, int *eventType, long *duration, int *elementIndex) |
| Gets information about when the next hydraulic time step occurs. | |
| int DLLEXPORT | EN_getresultindex (EN_Project ph, int type, int index, int *out_value) |
| Retrieves the order in which a node or link appears in an output file. | |
| int DLLEXPORT | EN_getoption (EN_Project ph, int option, double *out_value) |
| Retrieves the value of an analysis option. | |
| int DLLEXPORT | EN_setoption (EN_Project ph, int option, double value) |
| Sets the value for an analysis option. | |
| int DLLEXPORT | EN_getflowunits (EN_Project ph, int *out_units) |
| Retrieves a project's flow units. | |
| int DLLEXPORT | EN_setflowunits (EN_Project ph, int units) |
| Sets a project's flow units. | |
| int DLLEXPORT | EN_gettimeparam (EN_Project ph, int param, long *out_value) |
| Retrieves the value of a time parameter. | |
| int DLLEXPORT | EN_settimeparam (EN_Project ph, int param, long value) |
| Sets the value of a time parameter. | |
| int DLLEXPORT | EN_getqualinfo (EN_Project ph, int *out_qualType, char *out_chemName, char *out_chemUnits, int *out_traceNode) |
| Gets information about the type of water quality analysis requested. | |
| int DLLEXPORT | EN_getqualtype (EN_Project ph, int *out_qualType, int *out_traceNode) |
| Retrieves the type of water quality analysis to be run. | |
| int DLLEXPORT | EN_setqualtype (EN_Project ph, int qualType, const char *chemName, const char *chemUnits, const char *traceNode) |
| Sets the type of water quality analysis to run. | |
| int DLLEXPORT | EN_addnode (EN_Project ph, const char *id, int nodeType, int *out_index) |
| Adds a new node to a project. | |
| int DLLEXPORT | EN_deletenode (EN_Project ph, int index, int actionCode) |
| Deletes a node from a project. | |
| int DLLEXPORT | EN_getnodeindex (EN_Project ph, const char *id, int *out_index) |
| Gets the index of a node given its ID name. | |
| int DLLEXPORT | EN_getnodeid (EN_Project ph, int index, char *out_id) |
| Gets the ID name of a node given its index. | |
| int DLLEXPORT | EN_setnodeid (EN_Project ph, int index, const char *newid) |
| Changes the ID name of a node. | |
| int DLLEXPORT | EN_getnodetype (EN_Project ph, int index, int *out_nodeType) |
| Retrieves a node's type given its index. | |
| int DLLEXPORT | EN_getnodevalue (EN_Project ph, int index, int property, double *out_value) |
| Retrieves a property value for a node. | |
| int DLLEXPORT | EN_getnodevalues (EN_Project ph, int property, double *out_values) |
| Retrieves an array of property values for all nodes. | |
| int DLLEXPORT | EN_setnodevalue (EN_Project ph, int index, int property, double value) |
| Sets a property value for a node. | |
| int DLLEXPORT | EN_setjuncdata (EN_Project ph, int index, double elev, double dmnd, const char *dmndpat) |
| Sets a group of properties for a junction node. | |
| int DLLEXPORT | EN_settankdata (EN_Project ph, int index, double elev, double initlvl, double minlvl, double maxlvl, double diam, double minvol, const char *volcurve) |
| Sets a group of properties for a tank node. | |
| int DLLEXPORT | EN_getcoord (EN_Project ph, int index, double *out_x, double *out_y) |
| Gets the (x,y) coordinates of a node. | |
| int DLLEXPORT | EN_setcoord (EN_Project ph, int index, double x, double y) |
| Sets the (x,y) coordinates of a node. | |
| int DLLEXPORT | EN_getdemandmodel (EN_Project ph, int *out_type, double *out_pmin, double *out_preq, double *out_pexp) |
| Retrieves the type of demand model in use and its parameters. | |
| int DLLEXPORT | EN_setdemandmodel (EN_Project ph, int type, double pmin, double preq, double pexp) |
| Sets the type of demand model to use and its parameters. | |
| int DLLEXPORT | EN_adddemand (EN_Project ph, int nodeIndex, double baseDemand, const char *demandPattern, const char *demandName) |
| appends a new demand to a junction node demands list. | |
| int DLLEXPORT | EN_deletedemand (EN_Project ph, int nodeIndex, int demandIndex) |
| deletes a demand from a junction node. | |
| int DLLEXPORT | EN_getdemandindex (EN_Project ph, int nodeIndex, const char *demandName, int *out_demandIndex) |
| Retrieves the index of a node's named demand category. | |
| int DLLEXPORT | EN_getnumdemands (EN_Project ph, int nodeIndex, int *out_numDemands) |
| Retrieves the number of demand categories for a junction node. | |
| int DLLEXPORT | EN_getbasedemand (EN_Project ph, int nodeIndex, int demandIndex, double *out_baseDemand) |
| Gets the base demand for one of a node's demand categories. | |
| int DLLEXPORT | EN_setbasedemand (EN_Project ph, int nodeIndex, int demandIndex, double baseDemand) |
| Sets the base demand for one of a node's demand categories. | |
| int DLLEXPORT | EN_getdemandpattern (EN_Project ph, int nodeIndex, int demandIndex, int *out_patIndex) |
| Retrieves the index of a time pattern assigned to one of a node's demand categories. | |
| int DLLEXPORT | EN_setdemandpattern (EN_Project ph, int nodeIndex, int demandIndex, int patIndex) |
| Sets the index of a time pattern used for one of a node's demand categories. | |
| int DLLEXPORT | EN_getdemandname (EN_Project ph, int nodeIndex, int demandIndex, char *out_demandName) |
| Retrieves the name of a node's demand category. | |
| int DLLEXPORT | EN_setdemandname (EN_Project ph, int nodeIndex, int demandIdx, const char *demandName) |
| Assigns a name to a node's demand category. | |
| int DLLEXPORT | EN_addlink (EN_Project ph, const char *id, int linkType, const char *fromNode, const char *toNode, int *out_index) |
| Adds a new link to a project. | |
| int DLLEXPORT | EN_deletelink (EN_Project ph, int index, int actionCode) |
| Deletes a link from the project. | |
| int DLLEXPORT | EN_getlinkindex (EN_Project ph, const char *id, int *out_index) |
| Gets the index of a link given its ID name. | |
| int DLLEXPORT | EN_getlinkid (EN_Project ph, int index, char *out_id) |
| Gets the ID name of a link given its index. | |
| int DLLEXPORT | EN_setlinkid (EN_Project ph, int index, const char *newid) |
| Changes the ID name of a link. | |
| int DLLEXPORT | EN_getlinktype (EN_Project ph, int index, int *out_linkType) |
| Retrieves a link's type. | |
| int DLLEXPORT | EN_setlinktype (EN_Project ph, int *inout_index, int linkType, int actionCode) |
| Changes a link's type. | |
| int DLLEXPORT | EN_getlinknodes (EN_Project ph, int index, int *out_node1, int *out_node2) |
| Gets the indexes of a link's start- and end-nodes. | |
| int DLLEXPORT | EN_setlinknodes (EN_Project ph, int index, int node1, int node2) |
| Sets the indexes of a link's start- and end-nodes. | |
| int DLLEXPORT | EN_getlinkvalue (EN_Project ph, int index, int property, double *out_value) |
| Retrieves a property value for a link. | |
| int DLLEXPORT | EN_getlinkvalues (EN_Project ph, int property, double *out_values) |
| Retrieves an array of property values for all links. | |
| int DLLEXPORT | EN_setlinkvalue (EN_Project ph, int index, int property, double value) |
| Sets a property value for a link. | |
| int DLLEXPORT | EN_setpipedata (EN_Project ph, int index, double length, double diam, double rough, double mloss) |
| Sets a group of properties for a pipe link. | |
| int DLLEXPORT | EN_getvertexcount (EN_Project ph, int index, int *out_count) |
| Retrieves the number of internal vertex points assigned to a link. | |
| int DLLEXPORT | EN_getvertex (EN_Project ph, int index, int vertex, double *out_x, double *out_y) |
| Retrieves the coordinates of a vertex point assigned to a link. | |
| int DLLEXPORT | EN_setvertex (EN_Project ph, int index, int vertex, double x, double y) |
| Sets the coordinates of a vertex point assigned to a link. | |
| int DLLEXPORT | EN_setvertices (EN_Project ph, int index, double *x, double *y, int count) |
| Assigns a set of internal vertex points to a link. | |
| int DLLEXPORT | EN_getpumptype (EN_Project ph, int linkIndex, int *out_pumpType) |
| Retrieves the type of head curve used by a pump. | |
| int DLLEXPORT | EN_getheadcurveindex (EN_Project ph, int linkIndex, int *out_curveIndex) |
| Retrieves the curve assigned to a pump's head curve. | |
| int DLLEXPORT | EN_setheadcurveindex (EN_Project ph, int linkIndex, int curveIndex) |
| Assigns a curve to a pump's head curve. | |
| int DLLEXPORT | EN_addpattern (EN_Project ph, const char *id) |
| Adds a new time pattern to a project. | |
| int DLLEXPORT | EN_deletepattern (EN_Project ph, int index) |
| Deletes a time pattern from a project. | |
| int DLLEXPORT | EN_getpatternindex (EN_Project ph, const char *id, int *out_index) |
| Retrieves the index of a time pattern given its ID name. | |
| int DLLEXPORT | EN_getpatternid (EN_Project ph, int index, char *out_id) |
| Retrieves the ID name of a time pattern given its index. | |
| int DLLEXPORT | EN_setpatternid (EN_Project ph, int index, const char *id) |
| Changes the ID name of a time pattern given its index. | |
| int DLLEXPORT | EN_getpatternlen (EN_Project ph, int index, int *out_len) |
| Retrieves the number of time periods in a time pattern. | |
| int DLLEXPORT | EN_getpatternvalue (EN_Project ph, int index, int period, double *out_value) |
| Retrieves a time pattern's factor for a given time period. | |
| int DLLEXPORT | EN_setpatternvalue (EN_Project ph, int index, int period, double value) |
| Sets a time pattern's factor for a given time period. | |
| int DLLEXPORT | EN_getaveragepatternvalue (EN_Project ph, int index, double *out_value) |
| Retrieves the average of all pattern factors in a time pattern. | |
| int DLLEXPORT | EN_setpattern (EN_Project ph, int index, double *values, int len) |
| Sets the pattern factors for a given time pattern. | |
| int DLLEXPORT | EN_loadpatternfile (EN_Project ph, const char *filename, const char *id) |
| Loads time patterns from a file into a project under a specific pattern ID. | |
| int DLLEXPORT | EN_addcurve (EN_Project ph, const char *id) |
| Adds a new data curve to a project. | |
| int DLLEXPORT | EN_deletecurve (EN_Project ph, int index) |
| Deletes a data curve from a project. | |
| int DLLEXPORT | EN_getcurveindex (EN_Project ph, const char *id, int *out_index) |
| Retrieves the index of a curve given its ID name. | |
| int DLLEXPORT | EN_getcurveid (EN_Project ph, int index, char *out_id) |
| Retrieves the ID name of a curve given its index. | |
| int DLLEXPORT | EN_setcurveid (EN_Project ph, int index, const char *id) |
| Changes the ID name of a data curve given its index. | |
| int DLLEXPORT | EN_getcurvelen (EN_Project ph, int index, int *out_len) |
| Retrieves the number of points in a curve. | |
| int DLLEXPORT | EN_getcurvetype (EN_Project ph, int index, int *out_type) |
| Retrieves a curve's type. | |
| int DLLEXPORT | EN_setcurvetype (EN_Project ph, int index, int type) |
| Sets a curve's type. | |
| int DLLEXPORT | EN_getcurvevalue (EN_Project ph, int curveIndex, int pointIndex, double *out_x, double *out_y) |
| Retrieves the value of a single data point for a curve. | |
| int DLLEXPORT | EN_setcurvevalue (EN_Project ph, int curveIndex, int pointIndex, double x, double y) |
| Sets the value of a single data point for a curve. | |
| int DLLEXPORT | EN_getcurve (EN_Project ph, int index, char *out_id, int *out_nPoints, double *out_xValues, double *out_yValues) |
| Retrieves all of a curve's data. | |
| int DLLEXPORT | EN_setcurve (EN_Project ph, int index, double *xValues, double *yValues, int nPoints) |
| assigns a set of data points to a curve. | |
| int DLLEXPORT | EN_addcontrol (EN_Project ph, int type, int linkIndex, double setting, int nodeIndex, double level, int *out_index) |
| Adds a new simple control to a project. | |
| int DLLEXPORT | EN_deletecontrol (EN_Project ph, int index) |
| Deletes an existing simple control. | |
| int DLLEXPORT | EN_getcontrol (EN_Project ph, int index, int *out_type, int *out_linkIndex, double *out_setting, int *out_nodeIndex, double *out_level) |
| Retrieves the properties of a simple control. | |
| int DLLEXPORT | EN_setcontrol (EN_Project ph, int index, int type, int linkIndex, double setting, int nodeIndex, double level) |
| Sets the properties of an existing simple control. | |
| int DLLEXPORT | EN_getcontrolenabled (EN_Project ph, int index, int *out_enabled) |
| Gets the enabled status of a simple control. | |
| int DLLEXPORT | EN_setcontrolenabled (EN_Project ph, int index, int enabled) |
| Sets the enabled status of a simple control. | |
| int DLLEXPORT | EN_addrule (EN_Project ph, char *rule) |
| Adds a new rule-based control to a project. | |
| int DLLEXPORT | EN_deleterule (EN_Project ph, int index) |
| Deletes an existing rule-based control. | |
| int DLLEXPORT | EN_getrule (EN_Project ph, int index, int *out_nPremises, int *out_nThenActions, int *out_nElseActions, double *out_priority) |
| Retrieves summary information about a rule-based control. | |
| int DLLEXPORT | EN_getruleID (EN_Project ph, int index, char *out_id) |
| Gets the ID name of a rule-based control given its index. | |
| int DLLEXPORT | EN_getpremise (EN_Project ph, int ruleIndex, int premiseIndex, int *out_logop, int *out_object, int *out_objIndex, int *out_variable, int *out_relop, int *out_status, double *out_value) |
| Gets the properties of a premise in a rule-based control. | |
| int DLLEXPORT | EN_setpremise (EN_Project ph, int ruleIndex, int premiseIndex, int logop, int object, int objIndex, int variable, int relop, int status, double value) |
| Sets the properties of a premise in a rule-based control. | |
| int DLLEXPORT | EN_setpremiseindex (EN_Project ph, int ruleIndex, int premiseIndex, int objIndex) |
| Sets the index of an object in a premise of a rule-based control. | |
| int DLLEXPORT | EN_setpremisestatus (EN_Project ph, int ruleIndex, int premiseIndex, int status) |
| Sets the status being compared to in a premise of a rule-based control. | |
| int DLLEXPORT | EN_setpremisevalue (EN_Project ph, int ruleIndex, int premiseIndex, double value) |
| Sets the value in a premise of a rule-based control. | |
| int DLLEXPORT | EN_getthenaction (EN_Project ph, int ruleIndex, int actionIndex, int *out_linkIndex, int *out_status, double *out_setting) |
| Gets the properties of a THEN action in a rule-based control. | |
| int DLLEXPORT | EN_setthenaction (EN_Project ph, int ruleIndex, int actionIndex, int linkIndex, int status, double setting) |
| Sets the properties of a THEN action in a rule-based control. | |
| int DLLEXPORT | EN_getelseaction (EN_Project ph, int ruleIndex, int actionIndex, int *out_linkIndex, int *out_status, double *out_setting) |
| Gets the properties of an ELSE action in a rule-based control. | |
| int DLLEXPORT | EN_setelseaction (EN_Project ph, int ruleIndex, int actionIndex, int linkIndex, int status, double setting) |
| Sets the properties of an ELSE action in a rule-based control. | |
| int DLLEXPORT | EN_setrulepriority (EN_Project ph, int index, double priority) |
| Sets the priority of a rule-based control. | |
| int DLLEXPORT | EN_getruleenabled (EN_Project ph, int index, int *out_enabled) |
| Gets the enabled status of a rule-based control. | |
| int DLLEXPORT | EN_setruleenabled (EN_Project ph, int index, int enabled) |
| Sets the enabled status of a rule-based control. | |
| int DLLEXPORT EN_addlink | ( | EN_Project | ph, |
| const char * | id, | ||
| int | linkType, | ||
| const char * | fromNode, | ||
| const char * | toNode, | ||
| int * | out_index ) |
Adds a new link to a project.
| ph | an EPANET project handle. | |
| id | the ID name of the link to be added. | |
| linkType | The type of link being added (see EN_LinkType) | |
| fromNode | The ID name of the link's starting node. | |
| toNode | The ID name of the link's ending node. | |
| [out] | out_index | the index of the newly added link. |
A new pipe is assigned a diameter of 10 inches (254 mm) and a length of 330 feet (~ 100 meters). Its roughness coefficient depends on the head loss formula in effect (see EN_HeadLossType) as follows:
All other pipe properties are set to 0.
A new pump has a status of EN_OPEN, a speed setting of 1, and has no pump curve or power rating assigned to it.
A new valve has a diameter of 10 inches (254 mm) and all other properties set to 0.
See EN_LinkProperty.
| int DLLEXPORT EN_getpatternindex | ( | EN_Project | ph, |
| const char * | id, | ||
| int * | out_index ) |
Retrieves the index of a time pattern given its ID name.
| ph | an EPANET project handle. | |
| id | the ID name of a time pattern. | |
| [out] | out_index | the time pattern's index (starting from 1). |