diff --git a/include/epanet2.bas b/include/epanet2.bas index 1d6072c..b786bc5 100644 --- a/include/epanet2.bas +++ b/include/epanet2.bas @@ -25,7 +25,6 @@ Public Const EN_SOURCEMASS = 13 Public Const EN_INITVOLUME = 14 Public Const EN_MIXMODEL = 15 Public Const EN_MIXZONEVOL = 16 - Public Const EN_TANKDIAM = 17 Public Const EN_MINVOLUME = 18 Public Const EN_VOLCURVE = 19 @@ -37,6 +36,7 @@ Public Const EN_TANKVOLUME = 24 Public Const EN_MAXVOLUME = 25 Public Const EN_CANOVERFLOW = 26 Public Const EN_DEMANDDEFICIT = 27 +Public Const EN_NODE_INCONTROL = 28 Public Const EN_DIAMETER = 0 ' Link parameters Public Const EN_LENGTH = 1 @@ -61,6 +61,7 @@ Public Const EN_PUMP_HCURVE = 19 Public Const EN_PUMP_ECURVE = 20 Public Const EN_PUMP_ECOST = 21 Public Const EN_PUMP_EPAT = 22 +Public Const EN_LINK_INCONTROL = 23 Public Const EN_DURATION = 0 ' Time parameters Public Const EN_HYDSTEP = 1 diff --git a/include/epanet2.pas b/include/epanet2.pas index a532134..c1182ff 100644 --- a/include/epanet2.pas +++ b/include/epanet2.pas @@ -31,7 +31,6 @@ const EN_INITVOLUME = 14; EN_MIXMODEL = 15; EN_MIXZONEVOL = 16; - EN_TANKDIAM = 17; EN_MINVOLUME = 18; EN_VOLCURVE = 19; @@ -42,7 +41,8 @@ const EN_TANKVOLUME = 24; EN_MAXVOLUME = 25; EN_CANOVERFLOW = 26; - EN_DEMANDDEFICIT = 27; + EN_DEMANDDEFICIT = 27; + EN_NODE_INCONTROL = 28; EN_DIAMETER = 0; { Link parameters } EN_LENGTH = 1; @@ -67,6 +67,7 @@ const EN_PUMP_ECURVE = 20; EN_PUMP_ECOST = 21; EN_PUMP_EPAT = 22; + EN_LINK_INCONTROL = 23; EN_DURATION = 0; { Time parameters } EN_HYDSTEP = 1; diff --git a/include/epanet2.vb b/include/epanet2.vb index bfe65c2..0b84386 100644 --- a/include/epanet2.vb +++ b/include/epanet2.vb @@ -29,7 +29,6 @@ Public Const EN_SOURCEMASS = 13 Public Const EN_INITVOLUME = 14 Public Const EN_MIXMODEL = 15 Public Const EN_MIXZONEVOL = 16 - Public Const EN_TANKDIAM = 17 Public Const EN_MINVOLUME = 18 Public Const EN_VOLCURVE = 19 @@ -37,11 +36,11 @@ Public Const EN_MINLEVEL = 20 Public Const EN_MAXLEVEL = 21 Public Const EN_MIXFRACTION = 22 Public Const EN_TANK_KBULK = 23 - Public Const EN_TANKVOLUME = 24 Public Const EN_MAXVOLUME = 25 Public Const EN_CANOVERFLOW = 26 -Public Const EN_DEMANDDEFICIT = 27 +Public Const EN_DEMANDDEFICIT = 27 +Public Const EN_NODE_INCONTROL = 28 Public Const EN_DIAMETER = 0 ' Link parameters Public Const EN_LENGTH = 1 @@ -59,7 +58,6 @@ Public Const EN_SETTING = 12 Public Const EN_ENERGY = 13 Public Const EN_LINKQUAL = 14 Public Const EN_LINKPATTERN = 15 - Public Const EN_PUMP_STATE = 16 Public Const EN_PUMP_EFFIC = 17 Public Const EN_PUMP_POWER = 18 @@ -67,6 +65,7 @@ Public Const EN_PUMP_HCURVE = 19 Public Const EN_PUMP_ECURVE = 20 Public Const EN_PUMP_ECOST = 21 Public Const EN_PUMP_EPAT = 22 +Public Const EN_LINK_INCONTROL = 23 Public Const EN_DURATION = 0 ' Time parameters Public Const EN_HYDSTEP = 1 diff --git a/include/epanet2_enums.h b/include/epanet2_enums.h index 32d8171..8956d7b 100644 --- a/include/epanet2_enums.h +++ b/include/epanet2_enums.h @@ -63,7 +63,8 @@ typedef enum { EN_TANKVOLUME = 24, //!< Current computed tank volume (read only) EN_MAXVOLUME = 25, //!< Tank maximum volume (read only) EN_CANOVERFLOW = 26, //!< Tank can overflow (= 1) or not (= 0) - EN_DEMANDDEFICIT = 27 //!< Amount that full demand is reduced under PDA (read only) + EN_DEMANDDEFICIT = 27,//!< Amount that full demand is reduced under PDA (read only) + EN_NODE_INCONTROL = 28 //!< Is present in any simple or rule-based control (= 1) or not (= 0) } EN_NodeProperty; /// Link properties @@ -94,7 +95,8 @@ typedef enum { EN_PUMP_HCURVE = 19, //!< Pump head v. flow curve index EN_PUMP_ECURVE = 20, //!< Pump efficiency v. flow curve index EN_PUMP_ECOST = 21, //!< Pump average energy price - EN_PUMP_EPAT = 22 //!< Pump energy price time pattern index + EN_PUMP_EPAT = 22, //!< Pump energy price time pattern index + EN_LINK_INCONTROL = 23 //!< Is present in any simple or rule-based control (= 1) or not (= 0) } EN_LinkProperty; /// Time parameters diff --git a/src/epanet.c b/src/epanet.c index 46e7211..04d74af 100644 --- a/src/epanet.c +++ b/src/epanet.c @@ -2254,6 +2254,10 @@ int DLLEXPORT EN_getnodevalue(EN_Project p, int index, int property, double *val (hyd->NodeDemand[index] - hyd->EmitterFlow[index])) * Ucf[FLOW]; break; + case EN_NODE_INCONTROL: + v = (double)incontrols(p, NODE, index); + break; + default: return 251; } @@ -3787,6 +3791,10 @@ int DLLEXPORT EN_getlinkvalue(EN_Project p, int index, int property, double *val } break; + case EN_LINK_INCONTROL: + v = (double)incontrols(p, LINK, index); + break; + default: return 251; }