From f70d43b99b0515a410877493f4b45804ab521560 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Tue, 3 Mar 2015 12:10:36 +0100 Subject: [PATCH] - changed FC names (added prefix IEC61850_FC_). --- CMakeLists.txt | 2 +- config/stack_config.h | 7 +- config/stack_config.h.cmake | 3 + demos/beaglebone/static_model.c | 228 +++---- dotnet/IEC61850forCSharp/IEC61850ClientAPI.cs | 70 +++ dotnet/IEC61850forCSharp/MmsValue.cs | 1 + dotnet/model_browsing/ModelBrowsing.cs | 8 + .../client_example1.c | 4 +- .../client_example3.c | 4 +- examples/server_example1/static_model.c | 182 +++--- examples/server_example2/static_model.c | 430 ++++++------- examples/server_example3/static_model.c | 228 +++---- examples/server_example4/static_model.c | 226 +++---- examples/server_example5/server_example5.c | 2 +- examples/server_example5/static_model.c | 430 ++++++------- .../server_example_61400_25/static_model.c | 572 +++++++++--------- .../server_example_ca.c | 2 +- .../static_model.c | 64 +- .../server_example_control/static_model.c | 550 ++++++++--------- examples/server_example_goose/static_model.c | 226 +++---- .../static_model.c | 142 ++--- .../server_example_threadless/static_model.c | 228 +++---- src/iec61850/client/client_control.c | 2 +- src/iec61850/common/iec61850_common.c | 68 +-- src/iec61850/inc/iec61850_common.h | 49 +- src/iec61850/server/impl/ied_server.c | 20 +- src/iec61850/server/mms_mapping/mms_mapping.c | 110 ++-- src/iec61850/server/model/cdc.c | 318 +++++----- src/mms/inc/mms_client_connection.h | 8 + .../iso_mms/client/mms_client_connection.c | 148 ++++- src/vs/libiec61850-wo-goose.def | 2 + src/vs/libiec61850.def | 2 + tools/model_generator/genconfig.jar | Bin 74049 -> 74060 bytes tools/model_generator/genmodel.jar | Bin 74048 -> 74059 bytes .../tools/StaticModelGenerator.java | 2 +- 35 files changed, 2279 insertions(+), 2059 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7ee233d1..6419c64d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,7 @@ project(libiec61850) set(LIB_VERSION_MAJOR "0") set(LIB_VERSION_MINOR "8") -set(LIB_VERSION_PATCH "5") +set(LIB_VERSION_PATCH "6") # feature checks include(CheckLibraryExists) diff --git a/config/stack_config.h b/config/stack_config.h index da921a3c..1c8ac382 100644 --- a/config/stack_config.h +++ b/config/stack_config.h @@ -17,7 +17,7 @@ #define DEBUG_COTP 0 #define DEBUG_ISO_SERVER 0 #define DEBUG_ISO_CLIENT 0 -#define DEBUG_IED_SERVER 0 +#define DEBUG_IED_SERVER 1 #define DEBUG_IED_CLIENT 0 #define DEBUG_MMS_CLIENT 0 #define DEBUG_MMS_SERVER 0 @@ -141,7 +141,7 @@ /* default results for MMS identify service */ #define CONFIG_DEFAULT_MMS_VENDOR_NAME "libiec61850.com" #define CONFIG_DEFAULT_MMS_MODEL_NAME "LIBIEC61850" -#define CONFIG_DEFAULT_MMS_REVISION "0.8.5" +#define CONFIG_DEFAULT_MMS_REVISION "0.8.6" /* MMS virtual file store base path - where file services are looking for files */ #define CONFIG_VIRTUAL_FILESTORE_BASEPATH "./vmd-filestore/" @@ -190,4 +190,7 @@ #define CONFIG_INCLUDE_PLATFORM_SPECIFIC_HEADERS 0 +/* use short FC defines as in old API */ +#define CONFIG_PROVIDE_OLD_FC_DEFINES 0 + #endif /* STACK_CONFIG_H_ */ diff --git a/config/stack_config.h.cmake b/config/stack_config.h.cmake index d91bc67d..011cbf82 100644 --- a/config/stack_config.h.cmake +++ b/config/stack_config.h.cmake @@ -183,4 +183,7 @@ #define CONFIG_IEC61850_CONTROL_SERVICE 0 #endif +/* use short FC defines as in old API */ +#define CONFIG_PROVIDE_OLD_FC_DEFINES 0 + #endif /* STACK_CONFIG_H_ */ diff --git a/demos/beaglebone/static_model.c b/demos/beaglebone/static_model.c index 902f64e4..a9ca5919 100644 --- a/demos/beaglebone/static_model.c +++ b/demos/beaglebone/static_model.c @@ -234,7 +234,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -247,7 +247,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -260,7 +260,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -273,7 +273,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -295,7 +295,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -308,7 +308,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -321,7 +321,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -343,7 +343,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -356,7 +356,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -369,7 +369,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -391,7 +391,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -404,7 +404,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -417,7 +417,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -430,7 +430,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -443,7 +443,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -473,7 +473,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -495,7 +495,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -508,7 +508,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -521,7 +521,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -543,7 +543,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -556,7 +556,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -569,7 +569,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -599,7 +599,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -612,7 +612,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -625,7 +625,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -647,7 +647,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -660,7 +660,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -673,7 +673,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -695,7 +695,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -708,7 +708,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -721,7 +721,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -743,7 +743,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -756,7 +756,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -769,7 +769,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -791,7 +791,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -804,7 +804,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -817,7 +817,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -830,7 +830,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -852,7 +852,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -865,7 +865,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -878,7 +878,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -891,7 +891,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -913,7 +913,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -926,7 +926,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -939,7 +939,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -952,7 +952,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -974,7 +974,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -987,7 +987,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1000,7 +1000,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1013,7 +1013,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1035,7 +1035,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1048,7 +1048,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1061,7 +1061,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1074,7 +1074,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1087,7 +1087,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1100,7 +1100,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1113,7 +1113,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1126,7 +1126,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1139,7 +1139,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1152,7 +1152,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1165,7 +1165,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1178,7 +1178,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1191,7 +1191,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1213,7 +1213,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1226,7 +1226,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1239,7 +1239,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1252,7 +1252,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1265,7 +1265,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1278,7 +1278,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1291,7 +1291,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1304,7 +1304,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1317,7 +1317,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1330,7 +1330,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1343,7 +1343,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1356,7 +1356,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1369,7 +1369,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1391,7 +1391,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1404,7 +1404,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1417,7 +1417,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1430,7 +1430,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1443,7 +1443,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1456,7 +1456,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1469,7 +1469,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1482,7 +1482,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1495,7 +1495,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1508,7 +1508,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1521,7 +1521,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1534,7 +1534,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1547,7 +1547,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1569,7 +1569,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, CODEDENUM, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1582,7 +1582,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1595,7 +1595,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1608,7 +1608,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1621,7 +1621,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1634,7 +1634,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1647,7 +1647,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1660,7 +1660,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1673,7 +1673,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1686,7 +1686,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1699,7 +1699,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1712,7 +1712,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_DPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1725,7 +1725,7 @@ DataAttribute iedModel_GenericIO_GGIO1_DPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1747,7 +1747,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1760,7 +1760,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1773,7 +1773,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1795,7 +1795,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1808,7 +1808,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1821,7 +1821,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1843,7 +1843,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1856,7 +1856,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1869,7 +1869,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1891,7 +1891,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1904,7 +1904,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1917,7 +1917,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/dotnet/IEC61850forCSharp/IEC61850ClientAPI.cs b/dotnet/IEC61850forCSharp/IEC61850ClientAPI.cs index d23eefc8..e1336319 100644 --- a/dotnet/IEC61850forCSharp/IEC61850ClientAPI.cs +++ b/dotnet/IEC61850forCSharp/IEC61850ClientAPI.cs @@ -39,6 +39,69 @@ namespace IEC61850 namespace Client { + [StructLayout(LayoutKind.Sequential)] + public class MmsServerIdentity + { + public string vendorName; + public string modelName; + public string revision; + } + + public class MmsConnection + { + + [DllImport ("iec61850", CallingConvention=CallingConvention.Cdecl)] + private static extern IntPtr MmsConnection_create(); + + [DllImport ("iec61850", CallingConvention=CallingConvention.Cdecl)] + private static extern void MmsConnection_destroy(IntPtr self); + + [DllImport ("iec61850", CallingConvention=CallingConvention.Cdecl)] + private static extern IntPtr MmsConnection_identify(IntPtr self, out int mmsError); + + [DllImport ("iec61850", CallingConvention=CallingConvention.Cdecl)] + private static extern void MmsServerIdentity_destroy(IntPtr self); + + private IntPtr self = IntPtr.Zero; + private bool selfDestroy = false; + + public MmsConnection() { + selfDestroy = true; + + self = MmsConnection_create(); + } + + internal MmsConnection(IntPtr mmsConnection) { + self = mmsConnection; + } + + ~MmsConnection () + { + if (selfDestroy) + if (self != IntPtr.Zero) + MmsConnection_destroy(self); + } + + public MmsServerIdentity GetServerIdentity () + { + int mmsError; + + if (self == IntPtr.Zero) { + throw new IedConnectionException("Pointer is Zero!"); + } + + IntPtr identity = MmsConnection_identify(self, out mmsError); + + MmsServerIdentity serverIdentity = (MmsServerIdentity) + Marshal.PtrToStructure(identity, typeof(MmsServerIdentity)); + + MmsServerIdentity_destroy(identity); + + return serverIdentity; + } + + } + /// /// This class acts as the entry point for the IEC 61850 client API. It represents a single /// (MMS) connection to a server. @@ -229,6 +292,13 @@ namespace IEC61850 } + public MmsConnection GetMmsConnection () + { + IntPtr mmsConnectionPtr = IedConnection_getMmsConnection(connection); + + return new MmsConnection(mmsConnectionPtr); + } + /// Establish an MMS connection to a server /// This exception is thrown if there is a connection or service error public void Connect (string hostname, int tcpPort) diff --git a/dotnet/IEC61850forCSharp/MmsValue.cs b/dotnet/IEC61850forCSharp/MmsValue.cs index cb85814e..a9fa22f3 100644 --- a/dotnet/IEC61850forCSharp/MmsValue.cs +++ b/dotnet/IEC61850forCSharp/MmsValue.cs @@ -32,6 +32,7 @@ namespace IEC61850 { namespace Common { + /// /// This class is used to hold MMS data values of different types. /// diff --git a/dotnet/model_browsing/ModelBrowsing.cs b/dotnet/model_browsing/ModelBrowsing.cs index ce4f7fec..40dc2673 100644 --- a/dotnet/model_browsing/ModelBrowsing.cs +++ b/dotnet/model_browsing/ModelBrowsing.cs @@ -31,6 +31,14 @@ namespace model_browsing Console.WriteLine("Connected."); + MmsConnection mmsCon = con.GetMmsConnection(); + + MmsServerIdentity identity = mmsCon.GetServerIdentity(); + + Console.WriteLine("Vendor: " + identity.vendorName); + Console.WriteLine("Model: " + identity.modelName); + Console.WriteLine("Revision: " + identity.revision); + List serverDirectory = con.GetServerDirectory(false); foreach (string ldName in serverDirectory) diff --git a/examples/iec61850_client_example1/client_example1.c b/examples/iec61850_client_example1/client_example1.c index 4ddea92b..e993be95 100644 --- a/examples/iec61850_client_example1/client_example1.c +++ b/examples/iec61850_client_example1/client_example1.c @@ -51,7 +51,7 @@ int main(int argc, char** argv) { if (error == IED_ERROR_OK) { /* read an analog measurement value from server */ - MmsValue* value = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.AnIn1.mag.f", MX); + MmsValue* value = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.AnIn1.mag.f", IEC61850_FC_MX); if (value != NULL) { float fval = MmsValue_toFloat(value); @@ -61,7 +61,7 @@ int main(int argc, char** argv) { /* write a variable to the server */ value = MmsValue_newVisibleString("libiec61850.com"); - IedConnection_writeObject(con, &error, "simpleIOGenericIO/GGIO1.NamPlt.vendor", DC, value); + IedConnection_writeObject(con, &error, "simpleIOGenericIO/GGIO1.NamPlt.vendor", IEC61850_FC_DC, value); if (error != IED_ERROR_OK) printf("failed to write simpleIOGenericIO/GGIO1.NamPlt.vendor!\n"); diff --git a/examples/iec61850_client_example3/client_example3.c b/examples/iec61850_client_example3/client_example3.c index 6e8e0533..9c2e0140 100644 --- a/examples/iec61850_client_example3/client_example3.c +++ b/examples/iec61850_client_example3/client_example3.c @@ -70,7 +70,7 @@ int main(int argc, char** argv) { /* Check if status value has changed */ - MmsValue* stVal = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.SPCSO1.stVal", ST); + MmsValue* stVal = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.SPCSO1.stVal", IEC61850_FC_ST); if (error == IED_ERROR_OK) { bool state = MmsValue_getBoolean(stVal); @@ -135,7 +135,7 @@ int main(int argc, char** argv) { /* Check if status value has changed */ - stVal = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.SPCSO3.stVal", ST); + stVal = IedConnection_readObject(con, &error, "simpleIOGenericIO/GGIO1.SPCSO3.stVal", IEC61850_FC_ST); if (error == IED_ERROR_OK) { bool state = MmsValue_getBoolean(stVal); diff --git a/examples/server_example1/static_model.c b/examples/server_example1/static_model.c index a5f5dcf9..88e51ab6 100644 --- a/examples/server_example1/static_model.c +++ b/examples/server_example1/static_model.c @@ -217,7 +217,7 @@ DataAttribute iedModel_Device1_LLN0_Mod_q = { (ModelNode*) &iedModel_Device1_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -230,7 +230,7 @@ DataAttribute iedModel_Device1_LLN0_Mod_t = { (ModelNode*) &iedModel_Device1_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -243,7 +243,7 @@ DataAttribute iedModel_Device1_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -265,7 +265,7 @@ DataAttribute iedModel_Device1_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Device1_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -278,7 +278,7 @@ DataAttribute iedModel_Device1_LLN0_Beh_q = { (ModelNode*) &iedModel_Device1_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -291,7 +291,7 @@ DataAttribute iedModel_Device1_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -313,7 +313,7 @@ DataAttribute iedModel_Device1_LLN0_Health_stVal = { (ModelNode*) &iedModel_Device1_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -326,7 +326,7 @@ DataAttribute iedModel_Device1_LLN0_Health_q = { (ModelNode*) &iedModel_Device1_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -339,7 +339,7 @@ DataAttribute iedModel_Device1_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -361,7 +361,7 @@ DataAttribute iedModel_Device1_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Device1_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -374,7 +374,7 @@ DataAttribute iedModel_Device1_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Device1_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -387,7 +387,7 @@ DataAttribute iedModel_Device1_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Device1_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -400,7 +400,7 @@ DataAttribute iedModel_Device1_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Device1_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -413,7 +413,7 @@ DataAttribute iedModel_Device1_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -443,7 +443,7 @@ DataAttribute iedModel_Device1_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -465,7 +465,7 @@ DataAttribute iedModel_Device1_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Device1_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -478,7 +478,7 @@ DataAttribute iedModel_Device1_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Device1_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -491,7 +491,7 @@ DataAttribute iedModel_Device1_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -513,7 +513,7 @@ DataAttribute iedModel_Device1_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Device1_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -526,7 +526,7 @@ DataAttribute iedModel_Device1_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Device1_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -539,7 +539,7 @@ DataAttribute iedModel_Device1_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -569,7 +569,7 @@ DataAttribute iedModel_Device1_DGEN1_Mod_q = { (ModelNode*) &iedModel_Device1_DGEN1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -582,7 +582,7 @@ DataAttribute iedModel_Device1_DGEN1_Mod_t = { (ModelNode*) &iedModel_Device1_DGEN1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -595,7 +595,7 @@ DataAttribute iedModel_Device1_DGEN1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -617,7 +617,7 @@ DataAttribute iedModel_Device1_DGEN1_Beh_stVal = { (ModelNode*) &iedModel_Device1_DGEN1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -630,7 +630,7 @@ DataAttribute iedModel_Device1_DGEN1_Beh_q = { (ModelNode*) &iedModel_Device1_DGEN1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -643,7 +643,7 @@ DataAttribute iedModel_Device1_DGEN1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -665,7 +665,7 @@ DataAttribute iedModel_Device1_DGEN1_Health_stVal = { (ModelNode*) &iedModel_Device1_DGEN1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -678,7 +678,7 @@ DataAttribute iedModel_Device1_DGEN1_Health_q = { (ModelNode*) &iedModel_Device1_DGEN1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -691,7 +691,7 @@ DataAttribute iedModel_Device1_DGEN1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -713,7 +713,7 @@ DataAttribute iedModel_Device1_DGEN1_NamPlt_vendor = { (ModelNode*) &iedModel_Device1_DGEN1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -726,7 +726,7 @@ DataAttribute iedModel_Device1_DGEN1_NamPlt_swRev = { (ModelNode*) &iedModel_Device1_DGEN1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -739,7 +739,7 @@ DataAttribute iedModel_Device1_DGEN1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -761,7 +761,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmh_stVal = { (ModelNode*) &iedModel_Device1_DGEN1_OpTmh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -774,7 +774,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmh_q = { (ModelNode*) &iedModel_Device1_DGEN1_OpTmh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -787,7 +787,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -809,7 +809,7 @@ DataAttribute iedModel_Device1_DGEN1_GnOpSt_stVal = { (ModelNode*) &iedModel_Device1_DGEN1_GnOpSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -822,7 +822,7 @@ DataAttribute iedModel_Device1_DGEN1_GnOpSt_q = { (ModelNode*) &iedModel_Device1_DGEN1_GnOpSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -835,7 +835,7 @@ DataAttribute iedModel_Device1_DGEN1_GnOpSt_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -857,7 +857,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmsRs_stVal = { (ModelNode*) &iedModel_Device1_DGEN1_OpTmsRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -870,7 +870,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmsRs_q = { (ModelNode*) &iedModel_Device1_DGEN1_OpTmsRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -883,7 +883,7 @@ DataAttribute iedModel_Device1_DGEN1_OpTmsRs_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -905,7 +905,7 @@ DataAttribute iedModel_Device1_DGEN1_TotWh_mag = { (ModelNode*) &iedModel_Device1_DGEN1_TotWh_q, (ModelNode*) &iedModel_Device1_DGEN1_TotWh_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -918,7 +918,7 @@ DataAttribute iedModel_Device1_DGEN1_TotWh_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -931,7 +931,7 @@ DataAttribute iedModel_Device1_DGEN1_TotWh_q = { (ModelNode*) &iedModel_Device1_DGEN1_TotWh_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -944,7 +944,7 @@ DataAttribute iedModel_Device1_DGEN1_TotWh_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -974,7 +974,7 @@ DataAttribute iedModel_Device1_DSCH1_Mod_q = { (ModelNode*) &iedModel_Device1_DSCH1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -987,7 +987,7 @@ DataAttribute iedModel_Device1_DSCH1_Mod_t = { (ModelNode*) &iedModel_Device1_DSCH1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1000,7 +1000,7 @@ DataAttribute iedModel_Device1_DSCH1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1022,7 +1022,7 @@ DataAttribute iedModel_Device1_DSCH1_Beh_stVal = { (ModelNode*) &iedModel_Device1_DSCH1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1035,7 +1035,7 @@ DataAttribute iedModel_Device1_DSCH1_Beh_q = { (ModelNode*) &iedModel_Device1_DSCH1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1048,7 +1048,7 @@ DataAttribute iedModel_Device1_DSCH1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1070,7 +1070,7 @@ DataAttribute iedModel_Device1_DSCH1_Health_stVal = { (ModelNode*) &iedModel_Device1_DSCH1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1083,7 +1083,7 @@ DataAttribute iedModel_Device1_DSCH1_Health_q = { (ModelNode*) &iedModel_Device1_DSCH1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1096,7 +1096,7 @@ DataAttribute iedModel_Device1_DSCH1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1118,7 +1118,7 @@ DataAttribute iedModel_Device1_DSCH1_NamPlt_vendor = { (ModelNode*) &iedModel_Device1_DSCH1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1131,7 +1131,7 @@ DataAttribute iedModel_Device1_DSCH1_NamPlt_swRev = { (ModelNode*) &iedModel_Device1_DSCH1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1144,7 +1144,7 @@ DataAttribute iedModel_Device1_DSCH1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1166,7 +1166,7 @@ DataAttribute iedModel_Device1_DSCH1_SchdSt_stVal = { (ModelNode*) &iedModel_Device1_DSCH1_SchdSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1179,7 +1179,7 @@ DataAttribute iedModel_Device1_DSCH1_SchdSt_q = { (ModelNode*) &iedModel_Device1_DSCH1_SchdSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1192,7 +1192,7 @@ DataAttribute iedModel_Device1_DSCH1_SchdSt_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1241,7 +1241,7 @@ DataAttribute iedModel_Device1_DSCH1_SchdAbsTm_val = { (ModelNode*) &iedModel_Device1_DSCH1_SchdAbsTm_time, NULL, 255, - SP, + IEC61850_FC_SP, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1254,7 +1254,7 @@ DataAttribute iedModel_Device1_DSCH1_SchdAbsTm_time = { NULL, NULL, 255, - SP, + IEC61850_FC_SP, TIMESTAMP, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1284,7 +1284,7 @@ DataAttribute iedModel_Device1_MMXU1_Mod_q = { (ModelNode*) &iedModel_Device1_MMXU1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1297,7 +1297,7 @@ DataAttribute iedModel_Device1_MMXU1_Mod_t = { (ModelNode*) &iedModel_Device1_MMXU1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1310,7 +1310,7 @@ DataAttribute iedModel_Device1_MMXU1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1332,7 +1332,7 @@ DataAttribute iedModel_Device1_MMXU1_Beh_stVal = { (ModelNode*) &iedModel_Device1_MMXU1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1345,7 +1345,7 @@ DataAttribute iedModel_Device1_MMXU1_Beh_q = { (ModelNode*) &iedModel_Device1_MMXU1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1358,7 +1358,7 @@ DataAttribute iedModel_Device1_MMXU1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1380,7 +1380,7 @@ DataAttribute iedModel_Device1_MMXU1_Health_stVal = { (ModelNode*) &iedModel_Device1_MMXU1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1393,7 +1393,7 @@ DataAttribute iedModel_Device1_MMXU1_Health_q = { (ModelNode*) &iedModel_Device1_MMXU1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1406,7 +1406,7 @@ DataAttribute iedModel_Device1_MMXU1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1428,7 +1428,7 @@ DataAttribute iedModel_Device1_MMXU1_NamPlt_vendor = { (ModelNode*) &iedModel_Device1_MMXU1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1441,7 +1441,7 @@ DataAttribute iedModel_Device1_MMXU1_NamPlt_swRev = { (ModelNode*) &iedModel_Device1_MMXU1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1454,7 +1454,7 @@ DataAttribute iedModel_Device1_MMXU1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1484,7 +1484,7 @@ DataAttribute iedModel_Device1_MMXU2_Mod_q = { (ModelNode*) &iedModel_Device1_MMXU2_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1497,7 +1497,7 @@ DataAttribute iedModel_Device1_MMXU2_Mod_t = { (ModelNode*) &iedModel_Device1_MMXU2_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1510,7 +1510,7 @@ DataAttribute iedModel_Device1_MMXU2_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1532,7 +1532,7 @@ DataAttribute iedModel_Device1_MMXU2_Beh_stVal = { (ModelNode*) &iedModel_Device1_MMXU2_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1545,7 +1545,7 @@ DataAttribute iedModel_Device1_MMXU2_Beh_q = { (ModelNode*) &iedModel_Device1_MMXU2_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1558,7 +1558,7 @@ DataAttribute iedModel_Device1_MMXU2_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1580,7 +1580,7 @@ DataAttribute iedModel_Device1_MMXU2_Health_stVal = { (ModelNode*) &iedModel_Device1_MMXU2_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1593,7 +1593,7 @@ DataAttribute iedModel_Device1_MMXU2_Health_q = { (ModelNode*) &iedModel_Device1_MMXU2_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1606,7 +1606,7 @@ DataAttribute iedModel_Device1_MMXU2_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1628,7 +1628,7 @@ DataAttribute iedModel_Device1_MMXU2_NamPlt_vendor = { (ModelNode*) &iedModel_Device1_MMXU2_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1641,7 +1641,7 @@ DataAttribute iedModel_Device1_MMXU2_NamPlt_swRev = { (ModelNode*) &iedModel_Device1_MMXU2_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1654,7 +1654,7 @@ DataAttribute iedModel_Device1_MMXU2_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1676,7 +1676,7 @@ DataAttribute iedModel_Device1_MMXU2_TotW_mag = { (ModelNode*) &iedModel_Device1_MMXU2_TotW_q, (ModelNode*) &iedModel_Device1_MMXU2_TotW_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1689,7 +1689,7 @@ DataAttribute iedModel_Device1_MMXU2_TotW_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1702,7 +1702,7 @@ DataAttribute iedModel_Device1_MMXU2_TotW_q = { (ModelNode*) &iedModel_Device1_MMXU2_TotW_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1715,7 +1715,7 @@ DataAttribute iedModel_Device1_MMXU2_TotW_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, diff --git a/examples/server_example2/static_model.c b/examples/server_example2/static_model.c index a483753c..fdc336cb 100644 --- a/examples/server_example2/static_model.c +++ b/examples/server_example2/static_model.c @@ -403,7 +403,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_q = { (ModelNode*) &iedModel_Inverter_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -416,7 +416,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_t = { (ModelNode*) &iedModel_Inverter_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -429,7 +429,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -451,7 +451,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Inverter_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -464,7 +464,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_q = { (ModelNode*) &iedModel_Inverter_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -477,7 +477,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -499,7 +499,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_stVal = { (ModelNode*) &iedModel_Inverter_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -512,7 +512,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_q = { (ModelNode*) &iedModel_Inverter_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -525,7 +525,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -547,7 +547,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -560,7 +560,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -573,7 +573,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -586,7 +586,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -599,7 +599,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -629,7 +629,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -651,7 +651,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Inverter_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -664,7 +664,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Inverter_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -677,7 +677,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -699,7 +699,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Inverter_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -712,7 +712,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Inverter_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -725,7 +725,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -755,7 +755,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -768,7 +768,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_t = { (ModelNode*) &iedModel_Inverter_ZINV1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -781,7 +781,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -803,7 +803,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_stVal = { (ModelNode*) &iedModel_Inverter_ZINV1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -816,7 +816,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -829,7 +829,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -851,7 +851,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_stVal = { (ModelNode*) &iedModel_Inverter_ZINV1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -864,7 +864,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -877,7 +877,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -899,7 +899,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_ZINV1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -912,7 +912,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_ZINV1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -925,7 +925,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -947,7 +947,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_units, (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -960,7 +960,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -973,7 +973,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -986,7 +986,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1008,7 +1008,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_units, (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1021,7 +1021,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1034,7 +1034,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1047,7 +1047,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1069,7 +1069,7 @@ DataAttribute iedModel_Inverter_ZINV1_ACTyp_setVal = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, INT32, 0, NULL, @@ -1091,7 +1091,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_units, (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1104,7 +1104,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1117,7 +1117,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1130,7 +1130,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1152,7 +1152,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_units, (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1165,7 +1165,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1178,7 +1178,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1191,7 +1191,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1221,7 +1221,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1234,7 +1234,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_t = { (ModelNode*) &iedModel_Inverter_MMXU1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1247,7 +1247,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1269,7 +1269,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_stVal = { (ModelNode*) &iedModel_Inverter_MMXU1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1282,7 +1282,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1295,7 +1295,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1317,7 +1317,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_stVal = { (ModelNode*) &iedModel_Inverter_MMXU1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1330,7 +1330,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1343,7 +1343,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1365,7 +1365,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_MMXU1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1378,7 +1378,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_MMXU1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1391,7 +1391,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1413,7 +1413,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotW_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotW_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1426,7 +1426,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1439,7 +1439,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotW_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1452,7 +1452,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1474,7 +1474,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1487,7 +1487,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1500,7 +1500,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1513,7 +1513,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1535,7 +1535,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1548,7 +1548,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1561,7 +1561,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1574,7 +1574,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1596,7 +1596,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_Hz_q, (ModelNode*) &iedModel_Inverter_MMXU1_Hz_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1609,7 +1609,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1622,7 +1622,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Hz_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1635,7 +1635,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1666,7 +1666,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1679,7 +1679,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1692,7 +1692,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1705,7 +1705,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1718,7 +1718,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1740,7 +1740,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1753,7 +1753,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1766,7 +1766,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1779,7 +1779,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1792,7 +1792,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1814,7 +1814,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1827,7 +1827,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1840,7 +1840,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1853,7 +1853,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1866,7 +1866,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1888,7 +1888,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1901,7 +1901,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1914,7 +1914,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1927,7 +1927,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1940,7 +1940,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1971,7 +1971,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1984,7 +1984,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1997,7 +1997,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2010,7 +2010,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2023,7 +2023,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2045,7 +2045,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2058,7 +2058,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2071,7 +2071,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2084,7 +2084,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2097,7 +2097,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2119,7 +2119,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2132,7 +2132,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2145,7 +2145,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2158,7 +2158,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2171,7 +2171,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2193,7 +2193,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2206,7 +2206,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2219,7 +2219,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2232,7 +2232,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2245,7 +2245,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2276,7 +2276,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2289,7 +2289,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2302,7 +2302,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2315,7 +2315,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2328,7 +2328,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2350,7 +2350,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2363,7 +2363,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2376,7 +2376,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2389,7 +2389,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2402,7 +2402,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2424,7 +2424,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2437,7 +2437,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2450,7 +2450,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2463,7 +2463,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2476,7 +2476,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2515,7 +2515,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_q = { (ModelNode*) &iedModel_Battery_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2528,7 +2528,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_t = { (ModelNode*) &iedModel_Battery_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2541,7 +2541,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2563,7 +2563,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Battery_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2576,7 +2576,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_q = { (ModelNode*) &iedModel_Battery_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2589,7 +2589,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2611,7 +2611,7 @@ DataAttribute iedModel_Battery_LLN0_Health_stVal = { (ModelNode*) &iedModel_Battery_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2624,7 +2624,7 @@ DataAttribute iedModel_Battery_LLN0_Health_q = { (ModelNode*) &iedModel_Battery_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2637,7 +2637,7 @@ DataAttribute iedModel_Battery_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2659,7 +2659,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2672,7 +2672,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2685,7 +2685,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2698,7 +2698,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2711,7 +2711,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -2741,7 +2741,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2763,7 +2763,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Battery_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2776,7 +2776,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Battery_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2789,7 +2789,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2811,7 +2811,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Battery_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2824,7 +2824,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Battery_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2837,7 +2837,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2867,7 +2867,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2880,7 +2880,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_t = { (ModelNode*) &iedModel_Battery_ZBAT1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2893,7 +2893,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2915,7 +2915,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_stVal = { (ModelNode*) &iedModel_Battery_ZBAT1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2928,7 +2928,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2941,7 +2941,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2963,7 +2963,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_stVal = { (ModelNode*) &iedModel_Battery_ZBAT1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2976,7 +2976,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2989,7 +2989,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3011,7 +3011,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_ZBAT1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3024,7 +3024,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_ZBAT1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3037,7 +3037,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3059,7 +3059,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_mag = { (ModelNode*) &iedModel_Battery_ZBAT1_Vol_q, (ModelNode*) &iedModel_Battery_ZBAT1_Vol_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3072,7 +3072,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3085,7 +3085,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Vol_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3098,7 +3098,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3120,7 +3120,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_mag = { (ModelNode*) &iedModel_Battery_ZBAT1_Amp_q, (ModelNode*) &iedModel_Battery_ZBAT1_Amp_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3133,7 +3133,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3146,7 +3146,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Amp_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3159,7 +3159,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3189,7 +3189,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3202,7 +3202,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_t = { (ModelNode*) &iedModel_Battery_ZBTC1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3215,7 +3215,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3237,7 +3237,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_stVal = { (ModelNode*) &iedModel_Battery_ZBTC1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3250,7 +3250,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3263,7 +3263,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3285,7 +3285,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_stVal = { (ModelNode*) &iedModel_Battery_ZBTC1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3298,7 +3298,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3311,7 +3311,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3333,7 +3333,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_ZBTC1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3346,7 +3346,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_ZBTC1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3359,7 +3359,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3408,7 +3408,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_mag = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_q, (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3421,7 +3421,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3434,7 +3434,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_q = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3447,7 +3447,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3469,7 +3469,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_mag = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_q, (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3482,7 +3482,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3495,7 +3495,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_q = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3508,7 +3508,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3547,7 +3547,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3560,7 +3560,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_t = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3573,7 +3573,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3595,7 +3595,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3608,7 +3608,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3621,7 +3621,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3643,7 +3643,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3656,7 +3656,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3669,7 +3669,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3691,7 +3691,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3704,7 +3704,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3717,7 +3717,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3730,7 +3730,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3743,7 +3743,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -3773,7 +3773,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3795,7 +3795,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3808,7 +3808,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3821,7 +3821,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3843,7 +3843,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3856,7 +3856,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3869,7 +3869,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example3/static_model.c b/examples/server_example3/static_model.c index eb1941b3..f0428e1e 100644 --- a/examples/server_example3/static_model.c +++ b/examples/server_example3/static_model.c @@ -390,7 +390,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -403,7 +403,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -416,7 +416,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -429,7 +429,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -451,7 +451,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -464,7 +464,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -477,7 +477,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -499,7 +499,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -512,7 +512,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -525,7 +525,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -547,7 +547,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -560,7 +560,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -573,7 +573,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -586,7 +586,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -599,7 +599,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -629,7 +629,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -651,7 +651,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -664,7 +664,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -677,7 +677,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -699,7 +699,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -712,7 +712,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -725,7 +725,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -755,7 +755,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -768,7 +768,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -781,7 +781,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -803,7 +803,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -816,7 +816,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -829,7 +829,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -851,7 +851,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -864,7 +864,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -877,7 +877,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -899,7 +899,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -912,7 +912,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -925,7 +925,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -947,7 +947,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -960,7 +960,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -973,7 +973,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -986,7 +986,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1008,7 +1008,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1021,7 +1021,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1034,7 +1034,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1047,7 +1047,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1069,7 +1069,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1082,7 +1082,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1095,7 +1095,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1108,7 +1108,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1130,7 +1130,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1143,7 +1143,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1156,7 +1156,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1169,7 +1169,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1191,7 +1191,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1204,7 +1204,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1217,7 +1217,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1230,7 +1230,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1243,7 +1243,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1256,7 +1256,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1269,7 +1269,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1282,7 +1282,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1295,7 +1295,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1308,7 +1308,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1321,7 +1321,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1334,7 +1334,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1347,7 +1347,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1369,7 +1369,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1382,7 +1382,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1395,7 +1395,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1408,7 +1408,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1421,7 +1421,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1434,7 +1434,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1447,7 +1447,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1460,7 +1460,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1473,7 +1473,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1486,7 +1486,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1499,7 +1499,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1512,7 +1512,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1525,7 +1525,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1547,7 +1547,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1560,7 +1560,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1573,7 +1573,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1586,7 +1586,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1599,7 +1599,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1612,7 +1612,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1625,7 +1625,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1638,7 +1638,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1651,7 +1651,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1664,7 +1664,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1677,7 +1677,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1690,7 +1690,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1703,7 +1703,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1725,7 +1725,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1738,7 +1738,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1751,7 +1751,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1764,7 +1764,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1777,7 +1777,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1790,7 +1790,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1803,7 +1803,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1816,7 +1816,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1829,7 +1829,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1842,7 +1842,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1855,7 +1855,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1868,7 +1868,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1881,7 +1881,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1903,7 +1903,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1916,7 +1916,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1929,7 +1929,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1951,7 +1951,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1964,7 +1964,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1977,7 +1977,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1999,7 +1999,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2012,7 +2012,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2025,7 +2025,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2047,7 +2047,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2060,7 +2060,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2073,7 +2073,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example4/static_model.c b/examples/server_example4/static_model.c index 6bee7cec..c391fde0 100644 --- a/examples/server_example4/static_model.c +++ b/examples/server_example4/static_model.c @@ -237,7 +237,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -250,7 +250,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -263,7 +263,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -285,7 +285,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -298,7 +298,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -311,7 +311,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -333,7 +333,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -346,7 +346,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -359,7 +359,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -381,7 +381,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -394,7 +394,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -407,7 +407,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -420,7 +420,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -433,7 +433,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -463,7 +463,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -485,7 +485,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -498,7 +498,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -511,7 +511,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -533,7 +533,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -546,7 +546,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -559,7 +559,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -589,7 +589,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -602,7 +602,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -615,7 +615,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -637,7 +637,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -650,7 +650,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -663,7 +663,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -685,7 +685,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -698,7 +698,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -711,7 +711,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -733,7 +733,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -746,7 +746,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -759,7 +759,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -781,7 +781,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -794,7 +794,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -807,7 +807,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -820,7 +820,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -842,7 +842,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -855,7 +855,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -868,7 +868,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -881,7 +881,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -903,7 +903,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -916,7 +916,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -929,7 +929,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -942,7 +942,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -964,7 +964,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -977,7 +977,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -990,7 +990,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1003,7 +1003,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1025,7 +1025,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1038,7 +1038,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1051,7 +1051,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1064,7 +1064,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1077,7 +1077,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1090,7 +1090,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1103,7 +1103,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1116,7 +1116,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1129,7 +1129,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1142,7 +1142,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1155,7 +1155,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1168,7 +1168,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1181,7 +1181,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1203,7 +1203,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1216,7 +1216,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1229,7 +1229,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1242,7 +1242,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1255,7 +1255,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1268,7 +1268,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1281,7 +1281,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1294,7 +1294,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1307,7 +1307,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1320,7 +1320,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1333,7 +1333,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1346,7 +1346,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1359,7 +1359,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1381,7 +1381,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1394,7 +1394,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1407,7 +1407,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1420,7 +1420,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1433,7 +1433,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1446,7 +1446,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1459,7 +1459,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1472,7 +1472,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1485,7 +1485,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1498,7 +1498,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1511,7 +1511,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1524,7 +1524,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1537,7 +1537,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1559,7 +1559,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1572,7 +1572,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1585,7 +1585,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1598,7 +1598,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1611,7 +1611,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1624,7 +1624,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1637,7 +1637,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1650,7 +1650,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1663,7 +1663,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1676,7 +1676,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1689,7 +1689,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1702,7 +1702,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1715,7 +1715,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1737,7 +1737,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1750,7 +1750,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1763,7 +1763,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1785,7 +1785,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1798,7 +1798,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1811,7 +1811,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1833,7 +1833,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1846,7 +1846,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1859,7 +1859,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1881,7 +1881,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1894,7 +1894,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1907,7 +1907,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example5/server_example5.c b/examples/server_example5/server_example5.c index d1798f42..c34f742b 100644 --- a/examples/server_example5/server_example5.c +++ b/examples/server_example5/server_example5.c @@ -40,7 +40,7 @@ int main(int argc, char** argv) { IedServer_start(iedServer, 102); /* Don't allow access to SP variables by default */ - IedServer_setWriteAccessPolicy(iedServer, SP, ACCESS_POLICY_DENY); + IedServer_setWriteAccessPolicy(iedServer, IEC61850_FC_SP, ACCESS_POLICY_DENY); /* Instruct the server that we will be informed if a clients writes to a * certain variables we are interested in. diff --git a/examples/server_example5/static_model.c b/examples/server_example5/static_model.c index a483753c..fdc336cb 100644 --- a/examples/server_example5/static_model.c +++ b/examples/server_example5/static_model.c @@ -403,7 +403,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_q = { (ModelNode*) &iedModel_Inverter_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -416,7 +416,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_t = { (ModelNode*) &iedModel_Inverter_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -429,7 +429,7 @@ DataAttribute iedModel_Inverter_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -451,7 +451,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Inverter_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -464,7 +464,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_q = { (ModelNode*) &iedModel_Inverter_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -477,7 +477,7 @@ DataAttribute iedModel_Inverter_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -499,7 +499,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_stVal = { (ModelNode*) &iedModel_Inverter_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -512,7 +512,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_q = { (ModelNode*) &iedModel_Inverter_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -525,7 +525,7 @@ DataAttribute iedModel_Inverter_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -547,7 +547,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -560,7 +560,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -573,7 +573,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -586,7 +586,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Inverter_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -599,7 +599,7 @@ DataAttribute iedModel_Inverter_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -629,7 +629,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -651,7 +651,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Inverter_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -664,7 +664,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Inverter_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -677,7 +677,7 @@ DataAttribute iedModel_Inverter_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -699,7 +699,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Inverter_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -712,7 +712,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Inverter_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -725,7 +725,7 @@ DataAttribute iedModel_Inverter_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -755,7 +755,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -768,7 +768,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_t = { (ModelNode*) &iedModel_Inverter_ZINV1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -781,7 +781,7 @@ DataAttribute iedModel_Inverter_ZINV1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -803,7 +803,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_stVal = { (ModelNode*) &iedModel_Inverter_ZINV1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -816,7 +816,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -829,7 +829,7 @@ DataAttribute iedModel_Inverter_ZINV1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -851,7 +851,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_stVal = { (ModelNode*) &iedModel_Inverter_ZINV1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -864,7 +864,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_q = { (ModelNode*) &iedModel_Inverter_ZINV1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -877,7 +877,7 @@ DataAttribute iedModel_Inverter_ZINV1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -899,7 +899,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_ZINV1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -912,7 +912,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_ZINV1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -925,7 +925,7 @@ DataAttribute iedModel_Inverter_ZINV1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -947,7 +947,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_units, (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -960,7 +960,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -973,7 +973,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_WRtg_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -986,7 +986,7 @@ DataAttribute iedModel_Inverter_ZINV1_WRtg_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1008,7 +1008,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_units, (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1021,7 +1021,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1034,7 +1034,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_VarRtg_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1047,7 +1047,7 @@ DataAttribute iedModel_Inverter_ZINV1_VarRtg_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1069,7 +1069,7 @@ DataAttribute iedModel_Inverter_ZINV1_ACTyp_setVal = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, INT32, 0, NULL, @@ -1091,7 +1091,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_units, (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1104,7 +1104,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1117,7 +1117,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_OutWSet_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1130,7 +1130,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutWSet_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1152,7 +1152,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag = { (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_units, (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_setMag_f, 0, - SP, + IEC61850_FC_SP, CONSTRUCTED, 0, NULL, @@ -1165,7 +1165,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_setMag_f = { NULL, NULL, 0, - SP, + IEC61850_FC_SP, FLOAT32, 0, NULL, @@ -1178,7 +1178,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units = { NULL, (ModelNode*) &iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit, 0, - CF, + IEC61850_FC_CF, CONSTRUCTED, 0, NULL, @@ -1191,7 +1191,7 @@ DataAttribute iedModel_Inverter_ZINV1_OutVarSet_units_SIUnit = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1221,7 +1221,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1234,7 +1234,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_t = { (ModelNode*) &iedModel_Inverter_MMXU1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1247,7 +1247,7 @@ DataAttribute iedModel_Inverter_MMXU1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1269,7 +1269,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_stVal = { (ModelNode*) &iedModel_Inverter_MMXU1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1282,7 +1282,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1295,7 +1295,7 @@ DataAttribute iedModel_Inverter_MMXU1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1317,7 +1317,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_stVal = { (ModelNode*) &iedModel_Inverter_MMXU1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1330,7 +1330,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1343,7 +1343,7 @@ DataAttribute iedModel_Inverter_MMXU1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1365,7 +1365,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_vendor = { (ModelNode*) &iedModel_Inverter_MMXU1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1378,7 +1378,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_swRev = { (ModelNode*) &iedModel_Inverter_MMXU1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1391,7 +1391,7 @@ DataAttribute iedModel_Inverter_MMXU1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1413,7 +1413,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotW_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotW_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1426,7 +1426,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1439,7 +1439,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotW_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1452,7 +1452,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotW_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1474,7 +1474,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1487,7 +1487,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1500,7 +1500,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVAr_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1513,7 +1513,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVAr_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1535,7 +1535,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_q, (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1548,7 +1548,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1561,7 +1561,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_TotVA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1574,7 +1574,7 @@ DataAttribute iedModel_Inverter_MMXU1_TotVA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1596,7 +1596,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_mag = { (ModelNode*) &iedModel_Inverter_MMXU1_Hz_q, (ModelNode*) &iedModel_Inverter_MMXU1_Hz_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1609,7 +1609,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1622,7 +1622,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_q = { (ModelNode*) &iedModel_Inverter_MMXU1_Hz_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1635,7 +1635,7 @@ DataAttribute iedModel_Inverter_MMXU1_Hz_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1666,7 +1666,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1679,7 +1679,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1692,7 +1692,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1705,7 +1705,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1718,7 +1718,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1740,7 +1740,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1753,7 +1753,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1766,7 +1766,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1779,7 +1779,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1792,7 +1792,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1814,7 +1814,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1827,7 +1827,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1840,7 +1840,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1853,7 +1853,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1866,7 +1866,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1888,7 +1888,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_q, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1901,7 +1901,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1914,7 +1914,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1927,7 +1927,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_q = { (ModelNode*) &iedModel_Inverter_MMXU1_PhV_neut_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1940,7 +1940,7 @@ DataAttribute iedModel_Inverter_MMXU1_PhV_neut_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1971,7 +1971,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1984,7 +1984,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1997,7 +1997,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2010,7 +2010,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2023,7 +2023,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2045,7 +2045,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2058,7 +2058,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2071,7 +2071,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2084,7 +2084,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2097,7 +2097,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2119,7 +2119,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2132,7 +2132,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2145,7 +2145,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2158,7 +2158,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2171,7 +2171,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2193,7 +2193,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_q, (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2206,7 +2206,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2219,7 +2219,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2232,7 +2232,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_q = { (ModelNode*) &iedModel_Inverter_MMXU1_A_neut_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2245,7 +2245,7 @@ DataAttribute iedModel_Inverter_MMXU1_A_neut_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2276,7 +2276,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2289,7 +2289,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2302,7 +2302,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2315,7 +2315,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2328,7 +2328,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2350,7 +2350,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2363,7 +2363,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2376,7 +2376,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2389,7 +2389,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsB_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2402,7 +2402,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsB_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2424,7 +2424,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_q, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2437,7 +2437,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag = { NULL, (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2450,7 +2450,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2463,7 +2463,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_q = { (ModelNode*) &iedModel_Inverter_MMXU1_W_phsC_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2476,7 +2476,7 @@ DataAttribute iedModel_Inverter_MMXU1_W_phsC_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -2515,7 +2515,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_q = { (ModelNode*) &iedModel_Battery_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2528,7 +2528,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_t = { (ModelNode*) &iedModel_Battery_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2541,7 +2541,7 @@ DataAttribute iedModel_Battery_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2563,7 +2563,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Battery_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2576,7 +2576,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_q = { (ModelNode*) &iedModel_Battery_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2589,7 +2589,7 @@ DataAttribute iedModel_Battery_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2611,7 +2611,7 @@ DataAttribute iedModel_Battery_LLN0_Health_stVal = { (ModelNode*) &iedModel_Battery_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2624,7 +2624,7 @@ DataAttribute iedModel_Battery_LLN0_Health_q = { (ModelNode*) &iedModel_Battery_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2637,7 +2637,7 @@ DataAttribute iedModel_Battery_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2659,7 +2659,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2672,7 +2672,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2685,7 +2685,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2698,7 +2698,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Battery_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2711,7 +2711,7 @@ DataAttribute iedModel_Battery_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -2741,7 +2741,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -2763,7 +2763,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Battery_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2776,7 +2776,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Battery_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2789,7 +2789,7 @@ DataAttribute iedModel_Battery_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2811,7 +2811,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Battery_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2824,7 +2824,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Battery_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2837,7 +2837,7 @@ DataAttribute iedModel_Battery_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2867,7 +2867,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2880,7 +2880,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_t = { (ModelNode*) &iedModel_Battery_ZBAT1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2893,7 +2893,7 @@ DataAttribute iedModel_Battery_ZBAT1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2915,7 +2915,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_stVal = { (ModelNode*) &iedModel_Battery_ZBAT1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2928,7 +2928,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2941,7 +2941,7 @@ DataAttribute iedModel_Battery_ZBAT1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2963,7 +2963,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_stVal = { (ModelNode*) &iedModel_Battery_ZBAT1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2976,7 +2976,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2989,7 +2989,7 @@ DataAttribute iedModel_Battery_ZBAT1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3011,7 +3011,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_ZBAT1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3024,7 +3024,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_ZBAT1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3037,7 +3037,7 @@ DataAttribute iedModel_Battery_ZBAT1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3059,7 +3059,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_mag = { (ModelNode*) &iedModel_Battery_ZBAT1_Vol_q, (ModelNode*) &iedModel_Battery_ZBAT1_Vol_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3072,7 +3072,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3085,7 +3085,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Vol_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3098,7 +3098,7 @@ DataAttribute iedModel_Battery_ZBAT1_Vol_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3120,7 +3120,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_mag = { (ModelNode*) &iedModel_Battery_ZBAT1_Amp_q, (ModelNode*) &iedModel_Battery_ZBAT1_Amp_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3133,7 +3133,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3146,7 +3146,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_q = { (ModelNode*) &iedModel_Battery_ZBAT1_Amp_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3159,7 +3159,7 @@ DataAttribute iedModel_Battery_ZBAT1_Amp_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3189,7 +3189,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3202,7 +3202,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_t = { (ModelNode*) &iedModel_Battery_ZBTC1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3215,7 +3215,7 @@ DataAttribute iedModel_Battery_ZBTC1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3237,7 +3237,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_stVal = { (ModelNode*) &iedModel_Battery_ZBTC1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3250,7 +3250,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3263,7 +3263,7 @@ DataAttribute iedModel_Battery_ZBTC1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3285,7 +3285,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_stVal = { (ModelNode*) &iedModel_Battery_ZBTC1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3298,7 +3298,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_q = { (ModelNode*) &iedModel_Battery_ZBTC1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3311,7 +3311,7 @@ DataAttribute iedModel_Battery_ZBTC1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3333,7 +3333,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_vendor = { (ModelNode*) &iedModel_Battery_ZBTC1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3346,7 +3346,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_swRev = { (ModelNode*) &iedModel_Battery_ZBTC1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3359,7 +3359,7 @@ DataAttribute iedModel_Battery_ZBTC1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3408,7 +3408,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_mag = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_q, (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3421,7 +3421,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3434,7 +3434,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_q = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaV_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3447,7 +3447,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaV_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3469,7 +3469,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_mag = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_q, (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3482,7 +3482,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3495,7 +3495,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_q = { (ModelNode*) &iedModel_Battery_ZBTC1_ChaA_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3508,7 +3508,7 @@ DataAttribute iedModel_Battery_ZBTC1_ChaA_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3547,7 +3547,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3560,7 +3560,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_t = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3573,7 +3573,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3595,7 +3595,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3608,7 +3608,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3621,7 +3621,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3643,7 +3643,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3656,7 +3656,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_q = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3669,7 +3669,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3691,7 +3691,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3704,7 +3704,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3717,7 +3717,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_d = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3730,7 +3730,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_Physical_Measurements_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3743,7 +3743,7 @@ DataAttribute iedModel_Physical_Measurements_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -3773,7 +3773,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -3795,7 +3795,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3808,7 +3808,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3821,7 +3821,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3843,7 +3843,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3856,7 +3856,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_q = { (ModelNode*) &iedModel_Physical_Measurements_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3869,7 +3869,7 @@ DataAttribute iedModel_Physical_Measurements_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example_61400_25/static_model.c b/examples/server_example_61400_25/static_model.c index d40302fc..ba022fdc 100644 --- a/examples/server_example_61400_25/static_model.c +++ b/examples/server_example_61400_25/static_model.c @@ -374,7 +374,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper = { (ModelNode*) &iedModel_WTG_LLN0_Mod_stVal, (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -387,7 +387,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -400,7 +400,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_operTm = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -413,7 +413,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_ctlNum, (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -426,7 +426,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -439,7 +439,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -452,7 +452,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -465,7 +465,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_T = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -478,7 +478,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_Test = { (ModelNode*) &iedModel_WTG_LLN0_Mod_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -491,7 +491,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -504,7 +504,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_stVal = { (ModelNode*) &iedModel_WTG_LLN0_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -517,7 +517,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_q = { (ModelNode*) &iedModel_WTG_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -530,7 +530,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_t = { (ModelNode*) &iedModel_WTG_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -543,7 +543,7 @@ DataAttribute iedModel_WTG_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -565,7 +565,7 @@ DataAttribute iedModel_WTG_LLN0_Beh_stVal = { (ModelNode*) &iedModel_WTG_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -578,7 +578,7 @@ DataAttribute iedModel_WTG_LLN0_Beh_q = { (ModelNode*) &iedModel_WTG_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -591,7 +591,7 @@ DataAttribute iedModel_WTG_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -613,7 +613,7 @@ DataAttribute iedModel_WTG_LLN0_Health_stVal = { (ModelNode*) &iedModel_WTG_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -626,7 +626,7 @@ DataAttribute iedModel_WTG_LLN0_Health_q = { (ModelNode*) &iedModel_WTG_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -639,7 +639,7 @@ DataAttribute iedModel_WTG_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -661,7 +661,7 @@ DataAttribute iedModel_WTG_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_WTG_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -674,7 +674,7 @@ DataAttribute iedModel_WTG_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_WTG_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -687,7 +687,7 @@ DataAttribute iedModel_WTG_LLN0_NamPlt_configRev = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -717,7 +717,7 @@ DataAttribute iedModel_WTG_LPHD1_NamPlt_vendor = { (ModelNode*) &iedModel_WTG_LPHD1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -730,7 +730,7 @@ DataAttribute iedModel_WTG_LPHD1_NamPlt_swRev = { (ModelNode*) &iedModel_WTG_LPHD1_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -743,7 +743,7 @@ DataAttribute iedModel_WTG_LPHD1_NamPlt_configRev = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -765,7 +765,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyNam_vendor = { (ModelNode*) &iedModel_WTG_LPHD1_PhyNam_hwRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -778,7 +778,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyNam_hwRev = { (ModelNode*) &iedModel_WTG_LPHD1_PhyNam_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -791,7 +791,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyNam_swRev = { (ModelNode*) &iedModel_WTG_LPHD1_PhyNam_serNum, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -804,7 +804,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyNam_serNum = { (ModelNode*) &iedModel_WTG_LPHD1_PhyNam_model, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -817,7 +817,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyNam_model = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -839,7 +839,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_WTG_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -852,7 +852,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_WTG_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -865,7 +865,7 @@ DataAttribute iedModel_WTG_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -887,7 +887,7 @@ DataAttribute iedModel_WTG_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_WTG_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -900,7 +900,7 @@ DataAttribute iedModel_WTG_LPHD1_Proxy_q = { (ModelNode*) &iedModel_WTG_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -913,7 +913,7 @@ DataAttribute iedModel_WTG_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -943,7 +943,7 @@ DataAttribute iedModel_WTG_WTUR1_NamPlt_vendor = { (ModelNode*) &iedModel_WTG_WTUR1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -956,7 +956,7 @@ DataAttribute iedModel_WTG_WTUR1_NamPlt_swRev = { (ModelNode*) &iedModel_WTG_WTUR1_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -969,7 +969,7 @@ DataAttribute iedModel_WTG_WTUR1_NamPlt_configRev = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -1000,7 +1000,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1013,7 +1013,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1026,7 +1026,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1039,7 +1039,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1052,7 +1052,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1065,7 +1065,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1078,7 +1078,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1091,7 +1091,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1104,7 +1104,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1117,7 +1117,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1130,7 +1130,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1143,7 +1143,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1156,7 +1156,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1169,7 +1169,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_ctlModel = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_sboTimeout, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1182,7 +1182,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_sboTimeout = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_manRs_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -1195,7 +1195,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_manRs_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1217,7 +1217,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1230,7 +1230,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -1243,7 +1243,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1256,7 +1256,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1269,7 +1269,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1282,7 +1282,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1295,7 +1295,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1308,7 +1308,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1321,7 +1321,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1334,7 +1334,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1347,7 +1347,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1360,7 +1360,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1373,7 +1373,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_hisRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1386,7 +1386,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_hisRs_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1408,7 +1408,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_actCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1421,7 +1421,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_actCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1434,7 +1434,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_actCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1456,7 +1456,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_oldCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1469,7 +1469,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_oldCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1482,7 +1482,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_oldCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1495,7 +1495,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_ctTot = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_dly, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -1508,7 +1508,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_dly = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_mly, NULL, 32, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -1521,7 +1521,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_mly = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_yly, NULL, 13, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -1534,7 +1534,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_yly = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_tot, NULL, 21, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -1547,7 +1547,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_tot = { (ModelNode*) &iedModel_WTG_WTUR1_TotWh_rsPer, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -1560,7 +1560,7 @@ DataAttribute iedModel_WTG_WTUR1_TotWh_rsPer = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1591,7 +1591,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_actSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1604,7 +1604,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_actSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1617,7 +1617,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_actSt_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1639,7 +1639,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_oldSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1652,7 +1652,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_oldSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1665,7 +1665,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_oldSt_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1696,7 +1696,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1709,7 +1709,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1722,7 +1722,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1735,7 +1735,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1748,7 +1748,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1761,7 +1761,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1774,7 +1774,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1787,7 +1787,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1800,7 +1800,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1813,7 +1813,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1826,7 +1826,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1839,7 +1839,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1852,7 +1852,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1865,7 +1865,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_ctlModel = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboTimeout, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1878,7 +1878,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboTimeout = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -1891,7 +1891,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_manRs_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1913,7 +1913,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1926,7 +1926,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -1939,7 +1939,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1952,7 +1952,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1965,7 +1965,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1978,7 +1978,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1991,7 +1991,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2004,7 +2004,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2017,7 +2017,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2030,7 +2030,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2043,7 +2043,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2056,7 +2056,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2069,7 +2069,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_hisRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2082,7 +2082,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_hisRs_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2104,7 +2104,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2117,7 +2117,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2130,7 +2130,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_actTmVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2152,7 +2152,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2165,7 +2165,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2178,7 +2178,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_oldTmVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2191,7 +2191,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_tmTot = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_dly, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2204,7 +2204,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_dly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_mly, NULL, 32, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2217,7 +2217,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_mly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_yly, NULL, 13, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2230,7 +2230,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_yly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_tot, NULL, 21, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2243,7 +2243,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_tot = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stTm_rsPer, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2256,7 +2256,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stTm_rsPer = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2287,7 +2287,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2300,7 +2300,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2313,7 +2313,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2326,7 +2326,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2339,7 +2339,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2352,7 +2352,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2365,7 +2365,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2378,7 +2378,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2391,7 +2391,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2404,7 +2404,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2417,7 +2417,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2430,7 +2430,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2443,7 +2443,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2456,7 +2456,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_ctlModel = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboTimeout, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2469,7 +2469,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboTimeout = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -2482,7 +2482,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_manRs_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2504,7 +2504,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2517,7 +2517,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -2530,7 +2530,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2543,7 +2543,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2556,7 +2556,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2569,7 +2569,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2582,7 +2582,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2595,7 +2595,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2608,7 +2608,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2621,7 +2621,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2634,7 +2634,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2647,7 +2647,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2660,7 +2660,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_hisRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2673,7 +2673,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_hisRs_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2695,7 +2695,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2708,7 +2708,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2721,7 +2721,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_actCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2743,7 +2743,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2756,7 +2756,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2769,7 +2769,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_oldCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2782,7 +2782,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_ctTot = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_dly, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2795,7 +2795,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_dly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_mly, NULL, 32, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2808,7 +2808,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_mly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_yly, NULL, 13, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2821,7 +2821,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_yly = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_tot, NULL, 21, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2834,7 +2834,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_tot = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_stCt_rsPer, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -2847,7 +2847,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_stCt_rsPer = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2860,7 +2860,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_preTmms = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_pstTmms, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -2873,7 +2873,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_pstTmms = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_smpTmms, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -2886,7 +2886,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_smpTmms = { (ModelNode*) &iedModel_WTG_WTUR1_TurSt_datSetMx, NULL, 0, - CF, + IEC61850_FC_CF, INT16U, 0, NULL, @@ -2899,7 +2899,7 @@ DataAttribute iedModel_WTG_WTUR1_TurSt_datSetMx = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, VISIBLE_STRING_129, 0, NULL, @@ -2921,7 +2921,7 @@ DataAttribute iedModel_WTG_WTUR1_W_instMag = { (ModelNode*) &iedModel_WTG_WTUR1_W_mag, (ModelNode*) &iedModel_WTG_WTUR1_W_instMag_i, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0, NULL, @@ -2934,7 +2934,7 @@ DataAttribute iedModel_WTG_WTUR1_W_instMag_i = { (ModelNode*) &iedModel_WTG_WTUR1_W_instMag_f, NULL, 0, - MX, + IEC61850_FC_MX, INT32, 0, NULL, @@ -2947,7 +2947,7 @@ DataAttribute iedModel_WTG_WTUR1_W_instMag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0, NULL, @@ -2960,7 +2960,7 @@ DataAttribute iedModel_WTG_WTUR1_W_mag = { (ModelNode*) &iedModel_WTG_WTUR1_W_q, (ModelNode*) &iedModel_WTG_WTUR1_W_mag_i, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2973,7 +2973,7 @@ DataAttribute iedModel_WTG_WTUR1_W_mag_i = { (ModelNode*) &iedModel_WTG_WTUR1_W_mag_f, NULL, 0, - MX, + IEC61850_FC_MX, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2986,7 +2986,7 @@ DataAttribute iedModel_WTG_WTUR1_W_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2999,7 +2999,7 @@ DataAttribute iedModel_WTG_WTUR1_W_q = { (ModelNode*) &iedModel_WTG_WTUR1_W_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3012,7 +3012,7 @@ DataAttribute iedModel_WTG_WTUR1_W_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -3043,7 +3043,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_stVal, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3056,7 +3056,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -3069,7 +3069,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3082,7 +3082,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3095,7 +3095,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3108,7 +3108,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3121,7 +3121,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3134,7 +3134,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3147,7 +3147,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3160,7 +3160,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3173,7 +3173,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3186,7 +3186,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3199,7 +3199,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_t = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_actSt_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3212,7 +3212,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_actSt_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3234,7 +3234,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_oldSt_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3247,7 +3247,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_oldSt_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3260,7 +3260,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_oldSt_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3291,7 +3291,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3304,7 +3304,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3317,7 +3317,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3330,7 +3330,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3343,7 +3343,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3356,7 +3356,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3369,7 +3369,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3382,7 +3382,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3395,7 +3395,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3408,7 +3408,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3421,7 +3421,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3434,7 +3434,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3447,7 +3447,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3460,7 +3460,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_ctlModel = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboTimeout, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3473,7 +3473,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboTimeout = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -3486,7 +3486,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_manRs_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3508,7 +3508,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3521,7 +3521,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -3534,7 +3534,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3547,7 +3547,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3560,7 +3560,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3573,7 +3573,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3586,7 +3586,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3599,7 +3599,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3612,7 +3612,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3625,7 +3625,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3638,7 +3638,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3651,7 +3651,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3664,7 +3664,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3677,7 +3677,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_hisRs_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3699,7 +3699,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3712,7 +3712,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3725,7 +3725,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_actTmVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3747,7 +3747,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3760,7 +3760,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3773,7 +3773,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_oldTmVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3786,7 +3786,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_tmTot = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_dly, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -3799,7 +3799,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_dly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_mly, NULL, 32, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -3812,7 +3812,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_mly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_yly, NULL, 13, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -3825,7 +3825,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_yly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_tot, NULL, 21, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -3838,7 +3838,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_tot = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmTm_rsPer, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -3851,7 +3851,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmTm_rsPer = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3882,7 +3882,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3895,7 +3895,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3908,7 +3908,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3921,7 +3921,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3934,7 +3934,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3947,7 +3947,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3960,7 +3960,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3973,7 +3973,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3986,7 +3986,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3999,7 +3999,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -4012,7 +4012,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4025,7 +4025,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4038,7 +4038,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4051,7 +4051,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_ctlModel = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboTimeout, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -4064,7 +4064,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboTimeout = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, INT32U, 0, NULL, @@ -4077,7 +4077,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_manRs_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -4099,7 +4099,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_stVal, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -4112,7 +4112,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, INT32, 0, NULL, @@ -4125,7 +4125,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_operTm = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -4138,7 +4138,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlNum, (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -4151,7 +4151,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orCat = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -4164,7 +4164,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -4177,7 +4177,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_ctlNum = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -4190,7 +4190,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_T = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -4203,7 +4203,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Test = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -4216,7 +4216,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -4229,7 +4229,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4242,7 +4242,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4255,7 +4255,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_t = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4268,7 +4268,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_hisRs_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -4290,7 +4290,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4303,7 +4303,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4316,7 +4316,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_actCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4338,7 +4338,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_stVal = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4351,7 +4351,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_q = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4364,7 +4364,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_oldCtVal_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4377,7 +4377,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_ctTot = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_dly, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -4390,7 +4390,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_dly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_mly, NULL, 32, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -4403,7 +4403,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_mly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_yly, NULL, 13, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -4416,7 +4416,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_yly = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_tot, NULL, 21, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -4429,7 +4429,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_tot = { (ModelNode*) &iedModel_WTG_WTUR1_SetTurOp_cmCt_rsPer, NULL, 0, - ST, + IEC61850_FC_ST, INT32U, 0, NULL, @@ -4442,7 +4442,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmCt_rsPer = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -4455,7 +4455,7 @@ DataAttribute iedModel_WTG_WTUR1_SetTurOp_cmAcs = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, INT8U, 0, NULL, diff --git a/examples/server_example_complex_array/server_example_ca.c b/examples/server_example_complex_array/server_example_ca.c index 5db5a755..23d729aa 100644 --- a/examples/server_example_complex_array/server_example_ca.c +++ b/examples/server_example_complex_array/server_example_ca.c @@ -68,7 +68,7 @@ int main(int argc, char** argv) { assert(mhai1_ha_phsAHar != NULL); /* Get access to the corresponding MMS value data structure - the MX(FC) part of the data object */ - MmsValue* mhai1_ha_phsAHar_mx = IedServer_getFunctionalConstrainedData(iedServer, mhai1_ha_phsAHar, MX); + MmsValue* mhai1_ha_phsAHar_mx = IedServer_getFunctionalConstrainedData(iedServer, mhai1_ha_phsAHar, IEC61850_FC_MX); /* assuming the array has 16 elements */ diff --git a/examples/server_example_complex_array/static_model.c b/examples/server_example_complex_array/static_model.c index 979e8d35..458b189f 100644 --- a/examples/server_example_complex_array/static_model.c +++ b/examples/server_example_complex_array/static_model.c @@ -88,7 +88,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Mod_q = { (ModelNode*) &iedModel_ComplexArray_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -101,7 +101,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Mod_t = { (ModelNode*) &iedModel_ComplexArray_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -114,7 +114,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -136,7 +136,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Beh_stVal = { (ModelNode*) &iedModel_ComplexArray_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -149,7 +149,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Beh_q = { (ModelNode*) &iedModel_ComplexArray_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -162,7 +162,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -184,7 +184,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Health_stVal = { (ModelNode*) &iedModel_ComplexArray_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -197,7 +197,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Health_q = { (ModelNode*) &iedModel_ComplexArray_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -210,7 +210,7 @@ DataAttribute iedModel_ComplexArray_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -232,7 +232,7 @@ DataAttribute iedModel_ComplexArray_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_ComplexArray_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -245,7 +245,7 @@ DataAttribute iedModel_ComplexArray_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_ComplexArray_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -258,7 +258,7 @@ DataAttribute iedModel_ComplexArray_LLN0_NamPlt_d = { (ModelNode*) &iedModel_ComplexArray_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -271,7 +271,7 @@ DataAttribute iedModel_ComplexArray_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_ComplexArray_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -284,7 +284,7 @@ DataAttribute iedModel_ComplexArray_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -314,7 +314,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -336,7 +336,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_ComplexArray_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -349,7 +349,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_ComplexArray_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -362,7 +362,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -384,7 +384,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_ComplexArray_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -397,7 +397,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_Proxy_q = { (ModelNode*) &iedModel_ComplexArray_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -410,7 +410,7 @@ DataAttribute iedModel_ComplexArray_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -449,7 +449,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_q, (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED + TRG_OPT_DATA_UPDATE, NULL, @@ -462,7 +462,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang, (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED + TRG_OPT_DATA_UPDATE, NULL, @@ -475,7 +475,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED + TRG_OPT_DATA_UPDATE, NULL, @@ -488,7 +488,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang = { NULL, (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED + TRG_OPT_DATA_UPDATE, NULL, @@ -501,7 +501,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_cVal_ang_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED + TRG_OPT_DATA_UPDATE, NULL, @@ -514,7 +514,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_q = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_phsAHar_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -527,7 +527,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_phsAHar_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -540,7 +540,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_numHar = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_numCyc, NULL, 0, - CF, + IEC61850_FC_CF, INT16U, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -553,7 +553,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_numCyc = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_evalTm, NULL, 0, - CF, + IEC61850_FC_CF, INT16U, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -566,7 +566,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_evalTm = { (ModelNode*) &iedModel_ComplexArray_MHAI1_HA_frequency, NULL, 0, - CF, + IEC61850_FC_CF, INT16U, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -579,7 +579,7 @@ DataAttribute iedModel_ComplexArray_MHAI1_HA_frequency = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, diff --git a/examples/server_example_control/static_model.c b/examples/server_example_control/static_model.c index 50e3df5d..fe058594 100644 --- a/examples/server_example_control/static_model.c +++ b/examples/server_example_control/static_model.c @@ -350,7 +350,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -363,7 +363,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -376,7 +376,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -398,7 +398,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -411,7 +411,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -424,7 +424,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -446,7 +446,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -459,7 +459,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -472,7 +472,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -494,7 +494,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -507,7 +507,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -520,7 +520,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -533,7 +533,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -546,7 +546,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -576,7 +576,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -598,7 +598,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -611,7 +611,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -624,7 +624,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -646,7 +646,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -659,7 +659,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -672,7 +672,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -702,7 +702,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -715,7 +715,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -728,7 +728,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -750,7 +750,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -763,7 +763,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -776,7 +776,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -798,7 +798,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -811,7 +811,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -824,7 +824,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -846,7 +846,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -859,7 +859,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -872,7 +872,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -894,7 +894,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -907,7 +907,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -920,7 +920,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -933,7 +933,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -955,7 +955,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -968,7 +968,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -981,7 +981,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -994,7 +994,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1016,7 +1016,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1029,7 +1029,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1042,7 +1042,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1055,7 +1055,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1077,7 +1077,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1090,7 +1090,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1103,7 +1103,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1116,7 +1116,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1138,7 +1138,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1151,7 +1151,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1164,7 +1164,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1177,7 +1177,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1190,7 +1190,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1203,7 +1203,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1216,7 +1216,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1229,7 +1229,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1242,7 +1242,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1255,7 +1255,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1268,7 +1268,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1281,7 +1281,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1294,7 +1294,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1316,7 +1316,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_SBO = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - CO, + IEC61850_FC_CO, VISIBLE_STRING_64, 0, NULL, @@ -1329,7 +1329,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1342,7 +1342,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1355,7 +1355,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1368,7 +1368,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1381,7 +1381,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1394,7 +1394,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1407,7 +1407,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1420,7 +1420,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1433,7 +1433,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1446,7 +1446,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1459,7 +1459,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1472,7 +1472,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1485,7 +1485,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1498,7 +1498,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1511,7 +1511,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1524,7 +1524,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1537,7 +1537,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1550,7 +1550,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1563,7 +1563,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1576,7 +1576,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1589,7 +1589,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_sboClass, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1602,7 +1602,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_sboClass = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1624,7 +1624,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1637,7 +1637,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1650,7 +1650,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1663,7 +1663,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1676,7 +1676,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1689,7 +1689,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1702,7 +1702,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1715,7 +1715,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1728,7 +1728,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1741,7 +1741,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1754,7 +1754,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1767,7 +1767,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1780,7 +1780,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1793,7 +1793,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1806,7 +1806,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1819,7 +1819,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1832,7 +1832,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1845,7 +1845,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1858,7 +1858,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1871,7 +1871,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1884,7 +1884,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1906,7 +1906,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1919,7 +1919,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1932,7 +1932,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1945,7 +1945,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1958,7 +1958,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1971,7 +1971,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1984,7 +1984,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1997,7 +1997,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2010,7 +2010,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_SBOw_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2023,7 +2023,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2036,7 +2036,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2049,7 +2049,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2062,7 +2062,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2075,7 +2075,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2088,7 +2088,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2101,7 +2101,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2114,7 +2114,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2127,7 +2127,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2140,7 +2140,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2153,7 +2153,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2166,7 +2166,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2179,7 +2179,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2192,7 +2192,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2205,7 +2205,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2218,7 +2218,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2231,7 +2231,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2244,7 +2244,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2257,7 +2257,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2270,7 +2270,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2283,7 +2283,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2305,7 +2305,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2318,7 +2318,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2331,7 +2331,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2344,7 +2344,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2357,7 +2357,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2370,7 +2370,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2383,7 +2383,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2396,7 +2396,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2409,7 +2409,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2422,7 +2422,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2435,7 +2435,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2448,7 +2448,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2461,7 +2461,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2474,7 +2474,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2487,7 +2487,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel = { NULL, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2500,7 +2500,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2513,7 +2513,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2526,7 +2526,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2539,7 +2539,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2552,7 +2552,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2565,7 +2565,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO5_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2578,7 +2578,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO5_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2600,7 +2600,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_SBO = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper, NULL, 0, - CO, + IEC61850_FC_CO, VISIBLE_STRING_64, 0, NULL, @@ -2613,7 +2613,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2626,7 +2626,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2639,7 +2639,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2652,7 +2652,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2665,7 +2665,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2678,7 +2678,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2691,7 +2691,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2704,7 +2704,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2717,7 +2717,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2730,7 +2730,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -2743,7 +2743,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2756,7 +2756,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2769,7 +2769,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2782,7 +2782,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2795,7 +2795,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2808,7 +2808,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2821,7 +2821,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -2834,7 +2834,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2847,7 +2847,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2860,7 +2860,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -2873,7 +2873,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -2886,7 +2886,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO6_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -2899,7 +2899,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO6_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -2921,7 +2921,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2934,7 +2934,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -2947,7 +2947,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -2960,7 +2960,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -2973,7 +2973,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -2986,7 +2986,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -2999,7 +2999,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3012,7 +3012,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3025,7 +3025,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3038,7 +3038,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3051,7 +3051,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3064,7 +3064,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3077,7 +3077,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3090,7 +3090,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3103,7 +3103,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3116,7 +3116,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3129,7 +3129,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3142,7 +3142,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3155,7 +3155,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3168,7 +3168,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3181,7 +3181,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3194,7 +3194,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO7_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3207,7 +3207,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO7_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3229,7 +3229,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3242,7 +3242,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3255,7 +3255,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3268,7 +3268,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3281,7 +3281,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3294,7 +3294,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3307,7 +3307,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3320,7 +3320,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3333,7 +3333,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3346,7 +3346,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_SBOw_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3359,7 +3359,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3372,7 +3372,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3385,7 +3385,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3398,7 +3398,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3411,7 +3411,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3424,7 +3424,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3437,7 +3437,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3450,7 +3450,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3463,7 +3463,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3476,7 +3476,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3489,7 +3489,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_origin, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3502,7 +3502,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_operTm, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3515,7 +3515,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_operTm = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3528,7 +3528,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3541,7 +3541,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3554,7 +3554,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3567,7 +3567,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3580,7 +3580,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3593,7 +3593,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3606,7 +3606,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_origin_orCat, 0, - ST, + IEC61850_FC_ST, CONSTRUCTED, 0, NULL, @@ -3619,7 +3619,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_origin_orIdent, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0, NULL, @@ -3632,7 +3632,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_origin_orIdent = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, OCTET_STRING_64, 0, NULL, @@ -3645,7 +3645,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_stVal, NULL, 0, - ST, + IEC61850_FC_ST, INT8U, 0, NULL, @@ -3658,7 +3658,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3671,7 +3671,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3684,7 +3684,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO8_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3697,7 +3697,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO8_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -3719,7 +3719,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3732,7 +3732,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3745,7 +3745,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3758,7 +3758,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3771,7 +3771,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3784,7 +3784,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3797,7 +3797,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3810,7 +3810,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3823,7 +3823,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -3836,7 +3836,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_stVal, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3849,7 +3849,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3862,7 +3862,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -3875,7 +3875,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -3888,7 +3888,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -3901,7 +3901,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -3914,7 +3914,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_Cancel_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -3927,7 +3927,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_Cancel_Test = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -3940,7 +3940,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -3953,7 +3953,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -3966,7 +3966,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO9_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -3979,7 +3979,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO9_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -4001,7 +4001,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4014,7 +4014,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4027,7 +4027,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4049,7 +4049,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4062,7 +4062,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4075,7 +4075,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4097,7 +4097,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4110,7 +4110,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4123,7 +4123,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -4145,7 +4145,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -4158,7 +4158,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -4171,7 +4171,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example_goose/static_model.c b/examples/server_example_goose/static_model.c index 0bddaafe..8c60853e 100644 --- a/examples/server_example_goose/static_model.c +++ b/examples/server_example_goose/static_model.c @@ -291,7 +291,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -304,7 +304,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -317,7 +317,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -339,7 +339,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -352,7 +352,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -365,7 +365,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -387,7 +387,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -400,7 +400,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -413,7 +413,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -435,7 +435,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -448,7 +448,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -461,7 +461,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -474,7 +474,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -487,7 +487,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -517,7 +517,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -539,7 +539,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -552,7 +552,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -565,7 +565,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -587,7 +587,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -600,7 +600,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -613,7 +613,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -643,7 +643,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -656,7 +656,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -669,7 +669,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -691,7 +691,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -704,7 +704,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -717,7 +717,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -739,7 +739,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -752,7 +752,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -765,7 +765,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -787,7 +787,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -800,7 +800,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -813,7 +813,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -835,7 +835,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -848,7 +848,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -861,7 +861,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -874,7 +874,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -896,7 +896,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -909,7 +909,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -922,7 +922,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -935,7 +935,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -957,7 +957,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -970,7 +970,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -983,7 +983,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -996,7 +996,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1018,7 +1018,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1031,7 +1031,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1044,7 +1044,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1057,7 +1057,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1079,7 +1079,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1092,7 +1092,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1105,7 +1105,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1118,7 +1118,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1131,7 +1131,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1144,7 +1144,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1157,7 +1157,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1170,7 +1170,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1183,7 +1183,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1196,7 +1196,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1209,7 +1209,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1222,7 +1222,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1235,7 +1235,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1257,7 +1257,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1270,7 +1270,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1283,7 +1283,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1296,7 +1296,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1309,7 +1309,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1322,7 +1322,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1335,7 +1335,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1348,7 +1348,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1361,7 +1361,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1374,7 +1374,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1387,7 +1387,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1400,7 +1400,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1413,7 +1413,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1435,7 +1435,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1448,7 +1448,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1461,7 +1461,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1474,7 +1474,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1487,7 +1487,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1500,7 +1500,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1513,7 +1513,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1526,7 +1526,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1539,7 +1539,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1552,7 +1552,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1565,7 +1565,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1578,7 +1578,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1591,7 +1591,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1613,7 +1613,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1626,7 +1626,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1639,7 +1639,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1652,7 +1652,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1665,7 +1665,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1678,7 +1678,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1691,7 +1691,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1704,7 +1704,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1717,7 +1717,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1730,7 +1730,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1743,7 +1743,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1756,7 +1756,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1769,7 +1769,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1791,7 +1791,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1804,7 +1804,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1817,7 +1817,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1839,7 +1839,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1852,7 +1852,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1865,7 +1865,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1887,7 +1887,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1900,7 +1900,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1913,7 +1913,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1935,7 +1935,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1948,7 +1948,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1961,7 +1961,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/examples/server_example_setting_groups/static_model.c b/examples/server_example_setting_groups/static_model.c index 78a1a5c6..af840569 100644 --- a/examples/server_example_setting_groups/static_model.c +++ b/examples/server_example_setting_groups/static_model.c @@ -133,7 +133,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper = { (ModelNode*) &iedModel_PROT_LLN0_Mod_stVal, (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -146,7 +146,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_ctlVal = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -159,7 +159,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_operTm = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -172,7 +172,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_ctlNum, (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -185,7 +185,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin_orCat = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -198,7 +198,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -211,7 +211,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_ctlNum = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -224,7 +224,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_T = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -237,7 +237,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_Test = { (ModelNode*) &iedModel_PROT_LLN0_Mod_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -250,7 +250,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -263,7 +263,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_stVal = { (ModelNode*) &iedModel_PROT_LLN0_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -276,7 +276,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_q = { (ModelNode*) &iedModel_PROT_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -289,7 +289,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_t = { (ModelNode*) &iedModel_PROT_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -302,7 +302,7 @@ DataAttribute iedModel_PROT_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -324,7 +324,7 @@ DataAttribute iedModel_PROT_LLN0_Beh_stVal = { (ModelNode*) &iedModel_PROT_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -337,7 +337,7 @@ DataAttribute iedModel_PROT_LLN0_Beh_q = { (ModelNode*) &iedModel_PROT_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -350,7 +350,7 @@ DataAttribute iedModel_PROT_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -372,7 +372,7 @@ DataAttribute iedModel_PROT_LLN0_Health_stVal = { (ModelNode*) &iedModel_PROT_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -385,7 +385,7 @@ DataAttribute iedModel_PROT_LLN0_Health_q = { (ModelNode*) &iedModel_PROT_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -398,7 +398,7 @@ DataAttribute iedModel_PROT_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -420,7 +420,7 @@ DataAttribute iedModel_PROT_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_PROT_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -433,7 +433,7 @@ DataAttribute iedModel_PROT_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_PROT_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -446,7 +446,7 @@ DataAttribute iedModel_PROT_LLN0_NamPlt_d = { (ModelNode*) &iedModel_PROT_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -459,7 +459,7 @@ DataAttribute iedModel_PROT_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_PROT_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -472,7 +472,7 @@ DataAttribute iedModel_PROT_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -502,7 +502,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_vendor = { (ModelNode*) &iedModel_PROT_LPHD1_PhyNam_hwRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -515,7 +515,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_hwRev = { (ModelNode*) &iedModel_PROT_LPHD1_PhyNam_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -528,7 +528,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_swRev = { (ModelNode*) &iedModel_PROT_LPHD1_PhyNam_serNum, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -541,7 +541,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_serNum = { (ModelNode*) &iedModel_PROT_LPHD1_PhyNam_model, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -554,7 +554,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_model = { (ModelNode*) &iedModel_PROT_LPHD1_PhyNam_location, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -567,7 +567,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyNam_location = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -589,7 +589,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_PROT_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -602,7 +602,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_PROT_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -615,7 +615,7 @@ DataAttribute iedModel_PROT_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -637,7 +637,7 @@ DataAttribute iedModel_PROT_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_PROT_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -650,7 +650,7 @@ DataAttribute iedModel_PROT_LPHD1_Proxy_q = { (ModelNode*) &iedModel_PROT_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -663,7 +663,7 @@ DataAttribute iedModel_PROT_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -693,7 +693,7 @@ DataAttribute iedModel_PROT_PTOC1_Beh_stVal = { (ModelNode*) &iedModel_PROT_PTOC1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -706,7 +706,7 @@ DataAttribute iedModel_PROT_PTOC1_Beh_q = { (ModelNode*) &iedModel_PROT_PTOC1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -719,7 +719,7 @@ DataAttribute iedModel_PROT_PTOC1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -741,7 +741,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_stVal, (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -754,7 +754,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_ctlVal = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_operTm, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -767,7 +767,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_operTm = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -780,7 +780,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_ctlNum, (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -793,7 +793,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin_orCat = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -806,7 +806,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -819,7 +819,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_ctlNum = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -832,7 +832,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_T = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -845,7 +845,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_Test = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -858,7 +858,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -871,7 +871,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_stVal = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -884,7 +884,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_q = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -897,7 +897,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_t = { (ModelNode*) &iedModel_PROT_PTOC1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -910,7 +910,7 @@ DataAttribute iedModel_PROT_PTOC1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -932,7 +932,7 @@ DataAttribute iedModel_PROT_PTOC1_Str_general = { (ModelNode*) &iedModel_PROT_PTOC1_Str_dirGeneral, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -945,7 +945,7 @@ DataAttribute iedModel_PROT_PTOC1_Str_dirGeneral = { (ModelNode*) &iedModel_PROT_PTOC1_Str_q, NULL, 0, - ST, + IEC61850_FC_ST, ENUMERATED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -958,7 +958,7 @@ DataAttribute iedModel_PROT_PTOC1_Str_q = { (ModelNode*) &iedModel_PROT_PTOC1_Str_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -971,7 +971,7 @@ DataAttribute iedModel_PROT_PTOC1_Str_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -993,7 +993,7 @@ DataAttribute iedModel_PROT_PTOC1_Op_general = { (ModelNode*) &iedModel_PROT_PTOC1_Op_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1006,7 +1006,7 @@ DataAttribute iedModel_PROT_PTOC1_Op_q = { (ModelNode*) &iedModel_PROT_PTOC1_Op_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1019,7 +1019,7 @@ DataAttribute iedModel_PROT_PTOC1_Op_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1041,7 +1041,7 @@ DataAttribute iedModel_PROT_PTOC1_StrVal_setMag = { (ModelNode*) &iedModel_SE_PROT_PTOC1_StrVal_setMag, (ModelNode*) &iedModel_PROT_PTOC1_StrVal_setMag_f, 0, - SG, + IEC61850_FC_SG, CONSTRUCTED, 0, NULL, @@ -1054,7 +1054,7 @@ DataAttribute iedModel_PROT_PTOC1_StrVal_setMag_f = { NULL, NULL, 0, - SG, + IEC61850_FC_SG, FLOAT32, 0, NULL, @@ -1067,7 +1067,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_StrVal_setMag = { NULL, (ModelNode*) &iedModel_SE_PROT_PTOC1_StrVal_setMag_f, 0, - SE, + IEC61850_FC_SE, CONSTRUCTED, 0, NULL, @@ -1080,7 +1080,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_StrVal_setMag_f = { NULL, NULL, 0, - SE, + IEC61850_FC_SE, FLOAT32, 0, NULL, @@ -1102,7 +1102,7 @@ DataAttribute iedModel_PROT_PTOC1_OpDlTmms_setVal = { (ModelNode*) &iedModel_SE_PROT_PTOC1_OpDlTmms_setVal, NULL, 0, - SG, + IEC61850_FC_SG, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1115,7 +1115,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_OpDlTmms_setVal = { NULL, NULL, 0, - SE, + IEC61850_FC_SE, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1137,7 +1137,7 @@ DataAttribute iedModel_PROT_PTOC1_RsDlTmms_setVal = { (ModelNode*) &iedModel_SE_PROT_PTOC1_RsDlTmms_setVal, NULL, 0, - SG, + IEC61850_FC_SG, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1150,7 +1150,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_RsDlTmms_setVal = { NULL, NULL, 0, - SE, + IEC61850_FC_SE, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1172,7 +1172,7 @@ DataAttribute iedModel_PROT_PTOC1_RstTms_setVal = { (ModelNode*) &iedModel_SE_PROT_PTOC1_RstTms_setVal, NULL, 0, - SG, + IEC61850_FC_SG, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1185,7 +1185,7 @@ DataAttribute iedModel_SE_PROT_PTOC1_RstTms_setVal = { NULL, NULL, 0, - SE, + IEC61850_FC_SE, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, diff --git a/examples/server_example_threadless/static_model.c b/examples/server_example_threadless/static_model.c index f63c227c..10cab577 100644 --- a/examples/server_example_threadless/static_model.c +++ b/examples/server_example_threadless/static_model.c @@ -292,7 +292,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -305,7 +305,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -318,7 +318,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_t = { (ModelNode*) &iedModel_GenericIO_LLN0_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -331,7 +331,7 @@ DataAttribute iedModel_GenericIO_LLN0_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -353,7 +353,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -366,7 +366,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -379,7 +379,7 @@ DataAttribute iedModel_GenericIO_LLN0_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -401,7 +401,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_stVal = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -414,7 +414,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_q = { (ModelNode*) &iedModel_GenericIO_LLN0_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -427,7 +427,7 @@ DataAttribute iedModel_GenericIO_LLN0_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -449,7 +449,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -462,7 +462,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -475,7 +475,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_d = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_configRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -488,7 +488,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_configRev = { (ModelNode*) &iedModel_GenericIO_LLN0_NamPlt_ldNs, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -501,7 +501,7 @@ DataAttribute iedModel_GenericIO_LLN0_NamPlt_ldNs = { NULL, NULL, 0, - EX, + IEC61850_FC_EX, VISIBLE_STRING_255, 0, NULL, @@ -531,7 +531,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyNam_vendor = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -553,7 +553,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -566,7 +566,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_PhyHealth_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -579,7 +579,7 @@ DataAttribute iedModel_GenericIO_LPHD1_PhyHealth_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -601,7 +601,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_stVal = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -614,7 +614,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_q = { (ModelNode*) &iedModel_GenericIO_LPHD1_Proxy_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -627,7 +627,7 @@ DataAttribute iedModel_GenericIO_LPHD1_Proxy_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -657,7 +657,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -670,7 +670,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_t = { (ModelNode*) &iedModel_GenericIO_GGIO1_Mod_ctlModel, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -683,7 +683,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Mod_ctlModel = { NULL, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -705,7 +705,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -718,7 +718,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Beh_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -731,7 +731,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Beh_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -753,7 +753,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_q, NULL, 0, - ST, + IEC61850_FC_ST, INT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -766,7 +766,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Health_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -779,7 +779,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Health_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -801,7 +801,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_vendor = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_swRev, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -814,7 +814,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_swRev = { (ModelNode*) &iedModel_GenericIO_GGIO1_NamPlt_d, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -827,7 +827,7 @@ DataAttribute iedModel_GenericIO_GGIO1_NamPlt_d = { NULL, NULL, 0, - DC, + IEC61850_FC_DC, VISIBLE_STRING_255, 0, NULL, @@ -849,7 +849,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -862,7 +862,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -875,7 +875,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn1_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -888,7 +888,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn1_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -910,7 +910,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -923,7 +923,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -936,7 +936,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn2_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -949,7 +949,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn2_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -971,7 +971,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -984,7 +984,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -997,7 +997,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn3_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1010,7 +1010,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn3_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1032,7 +1032,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_q, (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_mag_f, 0, - MX, + IEC61850_FC_MX, CONSTRUCTED, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1045,7 +1045,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_mag_f = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, FLOAT32, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1058,7 +1058,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_AnIn4_t, NULL, 0, - MX, + IEC61850_FC_MX, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1071,7 +1071,7 @@ DataAttribute iedModel_GenericIO_GGIO1_AnIn4_t = { NULL, NULL, 0, - MX, + IEC61850_FC_MX, TIMESTAMP, 0, NULL, @@ -1093,7 +1093,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1106,7 +1106,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1119,7 +1119,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1132,7 +1132,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1145,7 +1145,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1158,7 +1158,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1171,7 +1171,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1184,7 +1184,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1197,7 +1197,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1210,7 +1210,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1223,7 +1223,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1236,7 +1236,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO1_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1249,7 +1249,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1271,7 +1271,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1284,7 +1284,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1297,7 +1297,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1310,7 +1310,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1323,7 +1323,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1336,7 +1336,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1349,7 +1349,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1362,7 +1362,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1375,7 +1375,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1388,7 +1388,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1401,7 +1401,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1414,7 +1414,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO2_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1427,7 +1427,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1449,7 +1449,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1462,7 +1462,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1475,7 +1475,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1488,7 +1488,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1501,7 +1501,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1514,7 +1514,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1527,7 +1527,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1540,7 +1540,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1553,7 +1553,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1566,7 +1566,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1579,7 +1579,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1592,7 +1592,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO3_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1605,7 +1605,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1627,7 +1627,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1640,7 +1640,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1653,7 +1653,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_ctlModel, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1666,7 +1666,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1679,7 +1679,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum, (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat, 0, - CO, + IEC61850_FC_CO, CONSTRUCTED, 0, NULL, @@ -1692,7 +1692,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orCat = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent, NULL, 0, - CO, + IEC61850_FC_CO, ENUMERATED, 0, NULL, @@ -1705,7 +1705,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_origin_orIdent = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, OCTET_STRING_64, 0, NULL, @@ -1718,7 +1718,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_ctlNum = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_T, NULL, 0, - CO, + IEC61850_FC_CO, INT8U, 0, NULL, @@ -1731,7 +1731,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_T = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test, NULL, 0, - CO, + IEC61850_FC_CO, TIMESTAMP, 0, NULL, @@ -1744,7 +1744,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Test = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check, NULL, 0, - CO, + IEC61850_FC_CO, BOOLEAN, 0, NULL, @@ -1757,7 +1757,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_Oper_Check = { NULL, NULL, 0, - CO, + IEC61850_FC_CO, CHECK, 0, NULL, @@ -1770,7 +1770,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_ctlModel = { (ModelNode*) &iedModel_GenericIO_GGIO1_SPCSO4_t, NULL, 0, - CF, + IEC61850_FC_CF, ENUMERATED, 0, NULL, @@ -1783,7 +1783,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1805,7 +1805,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1818,7 +1818,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind1_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1831,7 +1831,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind1_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1853,7 +1853,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1866,7 +1866,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind2_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1879,7 +1879,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind2_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1901,7 +1901,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1914,7 +1914,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind3_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1927,7 +1927,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind3_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, @@ -1949,7 +1949,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_stVal = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_q, NULL, 0, - ST, + IEC61850_FC_ST, BOOLEAN, 0 + TRG_OPT_DATA_CHANGED, NULL, @@ -1962,7 +1962,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_q = { (ModelNode*) &iedModel_GenericIO_GGIO1_Ind4_t, NULL, 0, - ST, + IEC61850_FC_ST, QUALITY, 0 + TRG_OPT_QUALITY_CHANGED, NULL, @@ -1975,7 +1975,7 @@ DataAttribute iedModel_GenericIO_GGIO1_Ind4_t = { NULL, NULL, 0, - ST, + IEC61850_FC_ST, TIMESTAMP, 0, NULL, diff --git a/src/iec61850/client/client_control.c b/src/iec61850/client/client_control.c index 0c717d47..9c71ad3d 100644 --- a/src/iec61850/client/client_control.c +++ b/src/iec61850/client/client_control.c @@ -200,7 +200,7 @@ ControlObjectClient_create(const char* objectReference, IedConnection connection /* get default parameters for Oper control variable */ - MmsValue* oper = IedConnection_readObject(connection, &error, itemId, CO); + MmsValue* oper = IedConnection_readObject(connection, &error, itemId, IEC61850_FC_CO); if (oper == NULL) { if (DEBUG_IED_CLIENT) diff --git a/src/iec61850/common/iec61850_common.c b/src/iec61850/common/iec61850_common.c index 1f2d3830..9babce8e 100644 --- a/src/iec61850/common/iec61850_common.c +++ b/src/iec61850/common/iec61850_common.c @@ -99,31 +99,31 @@ Dbpos_toMmsValue(MmsValue* mmsValue, Dbpos dbpos) char* FunctionalConstraint_toString(FunctionalConstraint fc) { switch (fc) { - case ST: + case IEC61850_FC_ST: return "ST"; - case MX: + case IEC61850_FC_MX: return "MX"; - case SP: + case IEC61850_FC_SP: return "SP"; - case SV: + case IEC61850_FC_SV: return "SV"; - case CF: + case IEC61850_FC_CF: return "CF"; - case DC: + case IEC61850_FC_DC: return "DC"; - case SG: + case IEC61850_FC_SG: return "SG"; - case SE: + case IEC61850_FC_SE: return "SE"; - case SR: + case IEC61850_FC_SR: return "SR"; - case OR: + case IEC61850_FC_OR: return "OR"; - case BL: + case IEC61850_FC_BL: return "BL"; - case EX: + case IEC61850_FC_EX: return "EX"; - case CO: + case IEC61850_FC_CO: return "CO"; default: return NULL; @@ -135,60 +135,60 @@ FunctionalConstraint_fromString(const char* fcString) { if (fcString[0] == 'S') { if (fcString[1] == 'T') - return ST; + return IEC61850_FC_ST; if (fcString[1] == 'P') - return SP; + return IEC61850_FC_SP; if (fcString[1] == 'V') - return SV; + return IEC61850_FC_SV; if (fcString[1] == 'G') - return SG; + return IEC61850_FC_SG; if (fcString[1] == 'E') - return SE; + return IEC61850_FC_SE; if (fcString[1] == 'R') - return SR; + return IEC61850_FC_SR; - return NONE; + return IEC61850_FC_NONE; } if (fcString[0] == 'M') { if (fcString[1] == 'X') - return MX; - return NONE; + return IEC61850_FC_MX; + return IEC61850_FC_NONE; } if (fcString[0] == 'C') { if (fcString[1] == 'F') - return CF; + return IEC61850_FC_CF; if (fcString[1] == 'O') - return CO; - return NONE; + return IEC61850_FC_CO; + return IEC61850_FC_NONE; } if (fcString[0] == 'D') { if (fcString[1] == 'C') - return DC; - return NONE; + return IEC61850_FC_DC; + return IEC61850_FC_NONE; } if (fcString[0] == 'O') { if (fcString[1] == 'R') - return OR; - return NONE; + return IEC61850_FC_OR; + return IEC61850_FC_NONE; } if (fcString[0] == 'B') { if (fcString[1] == 'L') - return BL; - return NONE; + return IEC61850_FC_BL; + return IEC61850_FC_NONE; } if (fcString[0] == 'E') { if (fcString[1] == 'X') - return EX; - return NONE; + return IEC61850_FC_EX; + return IEC61850_FC_NONE; } - return NONE; + return IEC61850_FC_NONE; } void diff --git a/src/iec61850/inc/iec61850_common.h b/src/iec61850/inc/iec61850_common.h index b019bb70..c3d3bc65 100644 --- a/src/iec61850/inc/iec61850_common.h +++ b/src/iec61850/inc/iec61850_common.h @@ -170,36 +170,55 @@ typedef enum { * @{ */ +#if (CONFIG_PROVIDE_OLD_FC_DEFINES == 1) +#define ST IEC61850_FC_ST +#define MX IEC61850_FC_MX +#define SP IEC61850_FC_SP +#define SV IEC61850_FC_SV +#define CF IEC61850_FC_CF +#define DC IEC61850_FC_DC +#define SG IEC61850_FC_SG +#define SE IEC61850_FC_SE +#define SR IEC61850_FC_SR +#define OR IEC61850_FC_OR +#define BL IEC61850_FC_BL +#define EX IEC61850_FC_EX +#define CO IEC61850_FC_CO +#define ALL IEC61850_FC_ALL +#define NONE IEC61850_FC_NONE +#endif /* (CONFIG_PROVIDE_OLD_FC_DEFINES == 1) */ + + /** FCs (Functional constraints) according to IEC 61850-7-2 */ typedef enum eFunctionalConstraint { /** Status information */ - ST = 0, + IEC61850_FC_ST = 0, /** Measurands - analog values */ - MX = 1, + IEC61850_FC_MX = 1, /** Setpoint */ - SP = 2, + IEC61850_FC_SP = 2, /** Substitution */ - SV = 3, + IEC61850_FC_SV = 3, /** Configuration */ - CF = 4, + IEC61850_FC_CF = 4, /** Description */ - DC = 5, + IEC61850_FC_DC = 5, /** Setting group */ - SG = 6, + IEC61850_FC_SG = 6, /** Setting group editable */ - SE = 7, + IEC61850_FC_SE = 7, /** Service response / Service tracking */ - SR = 8, + IEC61850_FC_SR = 8, /** Operate received */ - OR = 9, + IEC61850_FC_OR = 9, /** Blocking */ - BL = 10, + IEC61850_FC_BL = 10, /** Extended definition */ - EX = 11, + IEC61850_FC_EX = 11, /** Control */ - CO = 12, - ALL = 99, - NONE = -1 + IEC61850_FC_CO = 12, + IEC61850_FC_ALL = 99, + IEC61850_FC_NONE = -1 } FunctionalConstraint; /**extern "C" { diff --git a/src/iec61850/server/impl/ied_server.c b/src/iec61850/server/impl/ied_server.c index 18208f2f..842c199e 100644 --- a/src/iec61850/server/impl/ied_server.c +++ b/src/iec61850/server/impl/ied_server.c @@ -1034,19 +1034,19 @@ IedServer_setWriteAccessPolicy(IedServer self, FunctionalConstraint fc, AccessPo { if (policy == ACCESS_POLICY_ALLOW) { switch (fc) { - case DC: + case IEC61850_FC_DC: self->writeAccessPolicies |= ALLOW_WRITE_ACCESS_DC; break; - case CF: + case IEC61850_FC_CF: self->writeAccessPolicies |= ALLOW_WRITE_ACCESS_CF; break; - case SP: + case IEC61850_FC_SP: self->writeAccessPolicies |= ALLOW_WRITE_ACCESS_SP; break; - case SV: + case IEC61850_FC_SV: self->writeAccessPolicies |= ALLOW_WRITE_ACCESS_SV; break; - case SE: + case IEC61850_FC_SE: self->writeAccessPolicies |= ALLOW_WRITE_ACCESS_SE; break; default: /* ignore - request is invalid */ @@ -1055,19 +1055,19 @@ IedServer_setWriteAccessPolicy(IedServer self, FunctionalConstraint fc, AccessPo } else { switch (fc) { - case DC: + case IEC61850_FC_DC: self->writeAccessPolicies &= ~ALLOW_WRITE_ACCESS_DC; break; - case CF: + case IEC61850_FC_CF: self->writeAccessPolicies &= ~ALLOW_WRITE_ACCESS_CF; break; - case SP: + case IEC61850_FC_SP: self->writeAccessPolicies &= ~ALLOW_WRITE_ACCESS_SP; break; - case SV: + case IEC61850_FC_SV: self->writeAccessPolicies &= ~ALLOW_WRITE_ACCESS_SV; break; - case SE: + case IEC61850_FC_SE: self->writeAccessPolicies &= ALLOW_WRITE_ACCESS_SE; break; default: /* ignore - request is invalid */ diff --git a/src/iec61850/server/mms_mapping/mms_mapping.c b/src/iec61850/server/mms_mapping/mms_mapping.c index 881d1b6e..feeca507 100644 --- a/src/iec61850/server/mms_mapping/mms_mapping.c +++ b/src/iec61850/server/mms_mapping/mms_mapping.c @@ -472,7 +472,7 @@ createFCNamedVariableSPWithSGCB(LogicalNode* logicalNode) DataObject* dataObject = (DataObject*) logicalNode->firstChild; while (dataObject != NULL) { - if (DataObject_hasFCData(dataObject, SP)) + if (DataObject_hasFCData(dataObject, IEC61850_FC_SP)) dataObjectCount++; dataObject = (DataObject*) dataObject->sibling; @@ -489,10 +489,10 @@ createFCNamedVariableSPWithSGCB(LogicalNode* logicalNode) dataObject = (DataObject*) logicalNode->firstChild; while (dataObject != NULL) { - if (DataObject_hasFCData(dataObject, SP)) { + if (DataObject_hasFCData(dataObject, IEC61850_FC_SP)) { namedVariable->typeSpec.structure.elements[dataObjectCount] = - createFCNamedVariableFromDataObject(dataObject, SP); + createFCNamedVariableFromDataObject(dataObject, IEC61850_FC_SP); dataObjectCount++; } @@ -687,43 +687,43 @@ determineLogicalNodeComponentCount(LogicalNode* logicalNode) { int componentCount = 0; - if (LogicalNode_hasFCData(logicalNode, ST)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_ST)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, MX)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_MX)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, SP)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SP)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, SV)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SV)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, CF)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_CF)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, DC)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_DC)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, SG)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SG)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, SE)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SE)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, SR)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SR)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, OR)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_OR)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, BL)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_BL)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, EX)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_EX)) componentCount++; - if (LogicalNode_hasFCData(logicalNode, CO)) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_CO)) componentCount++; return componentCount; @@ -811,7 +811,7 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain, sgControlBlock = checkForSgcb(self, logicalNode); if (sgControlBlock != NULL) { - if (LogicalNode_hasFCData(logicalNode, SP) == false) + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SP) == false) componentCount++; SettingGroup* settingGroup = (SettingGroup*) GLOBAL_CALLOC(1, sizeof(SettingGroup)); @@ -865,33 +865,33 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain, /* Create a named variable of type structure for each functional constrained */ int currentComponent = 0; - if (LogicalNode_hasFCData(logicalNode, MX)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_MX)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, MX); + createFCNamedVariable(logicalNode, IEC61850_FC_MX); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, ST)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_ST)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, ST); + createFCNamedVariable(logicalNode, IEC61850_FC_ST); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, CO)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_CO)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, CO); + createFCNamedVariable(logicalNode, IEC61850_FC_CO); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, CF)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_CF)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, CF); + createFCNamedVariable(logicalNode, IEC61850_FC_CF); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, DC)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_DC)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, DC); + createFCNamedVariable(logicalNode, IEC61850_FC_DC); currentComponent++; } @@ -903,15 +903,15 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain, } else #endif /* (CONFIG_IEC61850_SETTING_GROUPS == 1) */ - if (LogicalNode_hasFCData(logicalNode, SP)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SP)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, SP); + createFCNamedVariable(logicalNode, IEC61850_FC_SP); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, SG)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SG)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, SG); + createFCNamedVariable(logicalNode, IEC61850_FC_SG); currentComponent++; } @@ -946,39 +946,39 @@ createNamedVariableFromLogicalNode(MmsMapping* self, MmsDomain* domain, - if (LogicalNode_hasFCData(logicalNode, SV)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SV)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, SV); + createFCNamedVariable(logicalNode, IEC61850_FC_SV); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, SE)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SE)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, SE); + createFCNamedVariable(logicalNode, IEC61850_FC_SE); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, EX)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_EX)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, EX); + createFCNamedVariable(logicalNode, IEC61850_FC_EX); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, SR)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_SR)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, SR); + createFCNamedVariable(logicalNode, IEC61850_FC_SR); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, OR)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_OR)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, OR); + createFCNamedVariable(logicalNode, IEC61850_FC_OR); currentComponent++; } - if (LogicalNode_hasFCData(logicalNode, BL)) { + if (LogicalNode_hasFCData(logicalNode, IEC61850_FC_BL)) { namedVariable->typeSpec.structure.elements[currentComponent] = - createFCNamedVariable(logicalNode, BL); + createFCNamedVariable(logicalNode, IEC61850_FC_BL); currentComponent++; } @@ -1518,51 +1518,51 @@ static FunctionalConstraint getFunctionalConstraintForWritableNode(MmsMapping* self, char* separator) { if (isFunctionalConstraintCF(separator)) - return CF; + return IEC61850_FC_CF; if (isFunctionalConstraintDC(separator)) - return DC; + return IEC61850_FC_DC; if (isFunctionalConstraintSP(separator)) - return SP; + return IEC61850_FC_SP; if (isFunctionalConstraintSV(separator)) - return SV; + return IEC61850_FC_SV; if (isFunctionalConstraintSE(separator)) - return SE; + return IEC61850_FC_SE; - return NONE; + return IEC61850_FC_NONE; } static AccessPolicy getAccessPolicyForFC(MmsMapping* self, FunctionalConstraint fc) { - if (fc == CF) { + if (fc == IEC61850_FC_CF) { if (self->iedServer->writeAccessPolicies & ALLOW_WRITE_ACCESS_CF) return ACCESS_POLICY_ALLOW; else return ACCESS_POLICY_DENY; } - if (fc == DC) { + if (fc == IEC61850_FC_DC) { if (self->iedServer->writeAccessPolicies & ALLOW_WRITE_ACCESS_DC) return ACCESS_POLICY_ALLOW; else return ACCESS_POLICY_DENY; } - if (fc == SP) { + if (fc == IEC61850_FC_SP) { if (self->iedServer->writeAccessPolicies & ALLOW_WRITE_ACCESS_SP) return ACCESS_POLICY_ALLOW; else return ACCESS_POLICY_DENY; } - if (fc == SV) { + if (fc == IEC61850_FC_SV) { if (self->iedServer->writeAccessPolicies & ALLOW_WRITE_ACCESS_SV) return ACCESS_POLICY_ALLOW; else return ACCESS_POLICY_DENY; } - if (fc == SE) { + if (fc == IEC61850_FC_SE) { if (self->iedServer->writeAccessPolicies & ALLOW_WRITE_ACCESS_SE) return ACCESS_POLICY_ALLOW; else @@ -1783,7 +1783,7 @@ mmsWriteHandler(void* parameter, MmsDomain* domain, FunctionalConstraint fc = getFunctionalConstraintForWritableNode(self, separator); /* writable data model elements - SP, SV, CF, DC */ - if (fc != NONE) { + if (fc != IEC61850_FC_NONE) { MmsValue* cachedValue; cachedValue = MmsServer_getValueFromCache(self->mmsServer, domain, variableId); diff --git a/src/iec61850/server/model/cdc.c b/src/iec61850/server/model/cdc.c index 05b20da4..18dbad34 100644 --- a/src/iec61850/server/model/cdc.c +++ b/src/iec61850/server/model/cdc.c @@ -90,10 +90,10 @@ CAC_Point_create(const char* name, ModelNode* parent, FunctionalConstraint fc, u DataAttribute* CAC_ScaledValueConfig_create(const char* name, ModelNode* parent) { - DataAttribute* scaling = DataAttribute_create(name, parent, CONSTRUCTED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute* scaling = DataAttribute_create(name, parent, CONSTRUCTED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("scaleFactor", (ModelNode*) scaling, FLOAT32, CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("offset", (ModelNode*) scaling, FLOAT32, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("scaleFactor", (ModelNode*) scaling, FLOAT32, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("offset", (ModelNode*) scaling, FLOAT32, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); return scaling; } @@ -101,12 +101,12 @@ CAC_ScaledValueConfig_create(const char* name, ModelNode* parent) DataAttribute* CAC_Unit_create(const char* name, ModelNode* parent, bool hasMagnitude) { - DataAttribute* unit = DataAttribute_create(name, parent, CONSTRUCTED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute* unit = DataAttribute_create(name, parent, CONSTRUCTED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("SIUnit", (ModelNode*) unit, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("SIUnit", (ModelNode*) unit, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); if (hasMagnitude) - DataAttribute_create("multiplier", (ModelNode*) unit, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("multiplier", (ModelNode*) unit, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); return unit; } @@ -128,41 +128,41 @@ addOriginator(char* name, ModelNode* parent, FunctionalConstraint fc) static void addGenericOperateElements(DataAttribute* oper, DataAttributeType type, bool isTimeActivated, bool hasCheck) { - DataAttribute_create("ctlVal", (ModelNode*) oper, type, CO, 0, 0, 0); + DataAttribute_create("ctlVal", (ModelNode*) oper, type, IEC61850_FC_CO, 0, 0, 0); if (isTimeActivated) - DataAttribute_create("operTm", (ModelNode*) oper, TIMESTAMP, CO, 0, 0, 0); + DataAttribute_create("operTm", (ModelNode*) oper, TIMESTAMP, IEC61850_FC_CO, 0, 0, 0); - addOriginator("origin", (ModelNode*) oper, CO); + addOriginator("origin", (ModelNode*) oper, IEC61850_FC_CO); - DataAttribute_create("ctlNum", (ModelNode*) oper, INT8U, CO, 0, 0, 0); - DataAttribute_create("T", (ModelNode*) oper, TIMESTAMP, CO, 0, 0, 0); - DataAttribute_create("Test", (ModelNode*) oper, BOOLEAN, CO, 0, 0, 0); + DataAttribute_create("ctlNum", (ModelNode*) oper, INT8U, IEC61850_FC_CO, 0, 0, 0); + DataAttribute_create("T", (ModelNode*) oper, TIMESTAMP, IEC61850_FC_CO, 0, 0, 0); + DataAttribute_create("Test", (ModelNode*) oper, BOOLEAN, IEC61850_FC_CO, 0, 0, 0); if (hasCheck) - DataAttribute_create("Check", (ModelNode*) oper, CHECK, CO, 0, 0, 0); + DataAttribute_create("Check", (ModelNode*) oper, CHECK, IEC61850_FC_CO, 0, 0, 0); } static void addCommonOperateElements(DataAttribute* oper, bool isTimeActivated, bool hasCheck) { if (isTimeActivated) - DataAttribute_create("operTm", (ModelNode*) oper, TIMESTAMP, CO, 0, 0, 0); + DataAttribute_create("operTm", (ModelNode*) oper, TIMESTAMP, IEC61850_FC_CO, 0, 0, 0); - addOriginator("origin", (ModelNode*) oper, CO); + addOriginator("origin", (ModelNode*) oper, IEC61850_FC_CO); - DataAttribute_create("ctlNum", (ModelNode*) oper, INT8U, CO, 0, 0, 0); - DataAttribute_create("T", (ModelNode*) oper, TIMESTAMP, CO, 0, 0, 0); - DataAttribute_create("Test", (ModelNode*) oper, BOOLEAN, CO, 0, 0, 0); + DataAttribute_create("ctlNum", (ModelNode*) oper, INT8U, IEC61850_FC_CO, 0, 0, 0); + DataAttribute_create("T", (ModelNode*) oper, TIMESTAMP, IEC61850_FC_CO, 0, 0, 0); + DataAttribute_create("Test", (ModelNode*) oper, BOOLEAN, IEC61850_FC_CO, 0, 0, 0); if (hasCheck) - DataAttribute_create("Check", (ModelNode*) oper, CHECK, CO, 0, 0, 0); + DataAttribute_create("Check", (ModelNode*) oper, CHECK, IEC61850_FC_CO, 0, 0, 0); } static DataAttribute* CDA_Oper(ModelNode* parent, DataAttributeType type, bool isTImeActivated) { - DataAttribute* oper = DataAttribute_create("Oper", parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* oper = DataAttribute_create("Oper", parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); addGenericOperateElements(oper, type, isTImeActivated, true); @@ -172,7 +172,7 @@ CDA_Oper(ModelNode* parent, DataAttributeType type, bool isTImeActivated) static DataAttribute* CDA_SBOw(ModelNode* parent, DataAttributeType type, bool isTImeActivated) { - DataAttribute* oper = DataAttribute_create("SBOw", parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* oper = DataAttribute_create("SBOw", parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); addGenericOperateElements(oper, type, isTImeActivated, true); @@ -182,7 +182,7 @@ CDA_SBOw(ModelNode* parent, DataAttributeType type, bool isTImeActivated) static DataAttribute* CDA_Cancel(ModelNode* parent, DataAttributeType type, bool isTImeActivated) { - DataAttribute* oper = DataAttribute_create("Cancel", parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* oper = DataAttribute_create("Cancel", parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); addGenericOperateElements(oper, type, isTImeActivated, false); @@ -205,28 +205,28 @@ CDC_addTimeQuality(DataObject* dataObject, FunctionalConstraint fc) static void CDC_addStatusToDataObject(DataObject* dataObject, DataAttributeType statusType) { - DataAttribute_create("stVal", (ModelNode*) dataObject, statusType, ST, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, 0, 0); - CDC_addTimeQuality(dataObject, ST); + DataAttribute_create("stVal", (ModelNode*) dataObject, statusType, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, 0, 0); + CDC_addTimeQuality(dataObject, IEC61850_FC_ST); } static void CDC_addOptionPicsSubst(DataObject* dataObject, DataAttributeType type) { - DataAttribute_create("subEna", (ModelNode*) dataObject, BOOLEAN, SV, 0, 0, 0); - DataAttribute_create("subVal", (ModelNode*) dataObject, type, SV, 0, 0, 0); - DataAttribute_create("subQ", (ModelNode*) dataObject, QUALITY, SV, 0, 0, 0); - DataAttribute_create("subID", (ModelNode*) dataObject, VISIBLE_STRING_64, SV, 0, 0, 0); + DataAttribute_create("subEna", (ModelNode*) dataObject, BOOLEAN, IEC61850_FC_SV, 0, 0, 0); + DataAttribute_create("subVal", (ModelNode*) dataObject, type, IEC61850_FC_SV, 0, 0, 0); + DataAttribute_create("subQ", (ModelNode*) dataObject, QUALITY, IEC61850_FC_SV, 0, 0, 0); + DataAttribute_create("subID", (ModelNode*) dataObject, VISIBLE_STRING_64, IEC61850_FC_SV, 0, 0, 0); } static void CDC_addOptionPicsSubstValWithTrans(DataObject* dataObject, bool hasTransientIndicator) { - DataAttribute_create("subEna", (ModelNode*) dataObject, BOOLEAN, SV, 0, 0, 0); + DataAttribute_create("subEna", (ModelNode*) dataObject, BOOLEAN, IEC61850_FC_SV, 0, 0, 0); - CAC_ValWithTrans_create("subVal", (ModelNode*) dataObject, SV, 0, hasTransientIndicator); + CAC_ValWithTrans_create("subVal", (ModelNode*) dataObject, IEC61850_FC_SV, 0, hasTransientIndicator); - DataAttribute_create("subQ", (ModelNode*) dataObject, QUALITY, SV, 0, 0, 0); - DataAttribute_create("subID", (ModelNode*) dataObject, VISIBLE_STRING_64, SV, 0, 0, 0); + DataAttribute_create("subQ", (ModelNode*) dataObject, QUALITY, IEC61850_FC_SV, 0, 0, 0); + DataAttribute_create("subID", (ModelNode*) dataObject, VISIBLE_STRING_64, IEC61850_FC_SV, 0, 0, 0); } /* Add optional attributes for extension (name spaces) and textual descriptions */ @@ -235,18 +235,18 @@ CDC_addStandardOptions(DataObject* dataObject, uint32_t options) { /* Standard options ? */ if (options & CDC_OPTION_DESC) - DataAttribute_create("d",(ModelNode*) dataObject, VISIBLE_STRING_255, DC, 0, 0, 0); + DataAttribute_create("d",(ModelNode*) dataObject, VISIBLE_STRING_255, IEC61850_FC_DC, 0, 0, 0); if (options & CDC_OPTION_DESC_UNICODE) - DataAttribute_create("dU", (ModelNode*) dataObject, UNICODE_STRING_255, DC, 0, 0, 0); + DataAttribute_create("dU", (ModelNode*) dataObject, UNICODE_STRING_255, IEC61850_FC_DC, 0, 0, 0); if (options & CDC_OPTION_AC_DLNDA) { - DataAttribute_create("cdcNs", (ModelNode*) dataObject, VISIBLE_STRING_255, EX, 0, 0, 0); - DataAttribute_create("cdcName", (ModelNode*) dataObject, VISIBLE_STRING_255, EX, 0, 0, 0); + DataAttribute_create("cdcNs", (ModelNode*) dataObject, VISIBLE_STRING_255, IEC61850_FC_EX, 0, 0, 0); + DataAttribute_create("cdcName", (ModelNode*) dataObject, VISIBLE_STRING_255, IEC61850_FC_EX, 0, 0, 0); } if (options & CDC_OPTION_AC_DLN) - DataAttribute_create("dataNs", (ModelNode*) dataObject, VISIBLE_STRING_255, EX, 0, 0, 0); + DataAttribute_create("dataNs", (ModelNode*) dataObject, VISIBLE_STRING_255, IEC61850_FC_EX, 0, 0, 0); } /************************************************ @@ -264,7 +264,7 @@ CDC_SPS_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_addOptionPicsSubst(newSPS, BOOLEAN); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newSPS, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newSPS, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newSPS, options); @@ -282,7 +282,7 @@ CDC_DPS_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_addOptionPicsSubst(newDPS, CODEDENUM); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newDPS, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newDPS, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newDPS, options); @@ -300,7 +300,7 @@ CDC_INS_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_addOptionPicsSubst(newINS, INT32); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newINS, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newINS, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newINS, options); @@ -319,7 +319,7 @@ CDC_ENS_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_addOptionPicsSubst(newENS, ENUMERATED); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newENS, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newENS, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newENS, options); @@ -331,25 +331,25 @@ CDC_BCR_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newBCR = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("actVal", (ModelNode*) newBCR, INT64, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("actVal", (ModelNode*) newBCR, INT64, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_FROZEN_VALUE) { - DataAttribute_create("frVal", (ModelNode*) newBCR, INT64, ST, TRG_OPT_DATA_UPDATE, 0, 0); - DataAttribute_create("frTm", (ModelNode*) newBCR, TIMESTAMP, ST, 0, 0, 0); + DataAttribute_create("frVal", (ModelNode*) newBCR, INT64, IEC61850_FC_ST, TRG_OPT_DATA_UPDATE, 0, 0); + DataAttribute_create("frTm", (ModelNode*) newBCR, TIMESTAMP, IEC61850_FC_ST, 0, 0, 0); } - CDC_addTimeQuality(newBCR, ST); + CDC_addTimeQuality(newBCR, IEC61850_FC_ST); if (options & CDC_OPTION_UNIT) - DataAttribute_create("units", (ModelNode*) newBCR, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("units", (ModelNode*) newBCR, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("pulsQty", (ModelNode*) newBCR, FLOAT32, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("pulsQty", (ModelNode*) newBCR, FLOAT32, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_FROZEN_VALUE) { - DataAttribute_create("frEna", (ModelNode*) newBCR, BOOLEAN, CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("strTm", (ModelNode*) newBCR, TIMESTAMP, CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("frPd", (ModelNode*) newBCR, INT32, CF, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("frRs", (ModelNode*) newBCR, BOOLEAN, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("frEna", (ModelNode*) newBCR, BOOLEAN, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("strTm", (ModelNode*) newBCR, TIMESTAMP, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("frPd", (ModelNode*) newBCR, INT32, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("frRs", (ModelNode*) newBCR, BOOLEAN, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); } CDC_addStandardOptions(newBCR, options); @@ -362,15 +362,15 @@ CDC_SEC_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newSEC = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("cnt", (ModelNode*) newSEC, INT32U, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("sev", (ModelNode*) newSEC, ENUMERATED, ST, 0, 0, 0); - DataAttribute_create("t", (ModelNode*) newSEC, TIMESTAMP, ST, 0, 0, 0); + DataAttribute_create("cnt", (ModelNode*) newSEC, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("sev", (ModelNode*) newSEC, ENUMERATED, IEC61850_FC_ST, 0, 0, 0); + DataAttribute_create("t", (ModelNode*) newSEC, TIMESTAMP, IEC61850_FC_ST, 0, 0, 0); if (options & CDC_OPTION_ADDR) - DataAttribute_create("addr", (ModelNode*) newSEC, OCTET_STRING_64, ST, 0, 0, 0); + DataAttribute_create("addr", (ModelNode*) newSEC, OCTET_STRING_64, IEC61850_FC_ST, 0, 0, 0); if (options & CDC_OPTION_ADDINFO) - DataAttribute_create("addInfo", (ModelNode*) newSEC, VISIBLE_STRING_64, ST, 0, 0, 0); + DataAttribute_create("addInfo", (ModelNode*) newSEC, VISIBLE_STRING_64, IEC61850_FC_ST, 0, 0, 0); CDC_addStandardOptions(newSEC, options); @@ -391,14 +391,14 @@ CDC_MV_create(const char* dataObjectName, ModelNode* parent, uint32_t options, b DataObject* newMV = DataObject_create(dataObjectName, parent, 0); if (options & CDC_OPTION_INST_MAG) - CAC_AnalogueValue_create("instMag", (ModelNode*) newMV, MX, 0, isIntegerNotFloat); + CAC_AnalogueValue_create("instMag", (ModelNode*) newMV, IEC61850_FC_MX, 0, isIntegerNotFloat); - CAC_AnalogueValue_create("mag", (ModelNode*) newMV, MX, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, isIntegerNotFloat); + CAC_AnalogueValue_create("mag", (ModelNode*) newMV, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, isIntegerNotFloat); if (options & CDC_OPTION_RANGE) - DataAttribute_create("range", (ModelNode*) newMV, ENUMERATED, MX, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("range", (ModelNode*) newMV, ENUMERATED, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED, 0, 0); - CDC_addTimeQuality(newMV, MX); + CDC_addTimeQuality(newMV, IEC61850_FC_MX); // if (options & CDC_OPTION_PICS_SUBST) // CDC_addOptionPicsSubst(newMV, ) @@ -418,17 +418,17 @@ CDC_CMV_create(const char* dataObjectName, ModelNode* parent, uint32_t options) DataObject* newMV = DataObject_create(dataObjectName, parent, 0); if (options & CDC_OPTION_INST_MAG) - CAC_Vector_create("instCVal", (ModelNode*) newMV, options, MX, 0); + CAC_Vector_create("instCVal", (ModelNode*) newMV, options, IEC61850_FC_MX, 0); - CAC_Vector_create("cVal", (ModelNode*) newMV, options, MX, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE); + CAC_Vector_create("cVal", (ModelNode*) newMV, options, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE); if (options & CDC_OPTION_RANGE) - DataAttribute_create("range", (ModelNode*) newMV, ENUMERATED, MX, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("range", (ModelNode*) newMV, ENUMERATED, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_RANGE_ANG) - DataAttribute_create("rangeAng", (ModelNode*) newMV, ENUMERATED, MX, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("rangeAng", (ModelNode*) newMV, ENUMERATED, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED, 0, 0); - CDC_addTimeQuality(newMV, MX); + CDC_addTimeQuality(newMV, IEC61850_FC_MX); // if (options & CDC_OPTION_PICS_SUBST) // CDC_addOptionPicsSubst(newMV, ) @@ -450,9 +450,9 @@ CDC_SAV_create(const char* dataObjectName, ModelNode* parent, uint32_t options, { DataObject* newSAV = DataObject_create(dataObjectName, parent, 0); - CAC_AnalogueValue_create("instMag", (ModelNode*) newSAV, MX, 0, isIntegerNotFloat); + CAC_AnalogueValue_create("instMag", (ModelNode*) newSAV, IEC61850_FC_MX, 0, isIntegerNotFloat); - CDC_addTimeQuality(newSAV, MX); + CDC_addTimeQuality(newSAV, IEC61850_FC_MX); if (options & CDC_OPTION_UNIT) CAC_Unit_create("units", (ModelNode*) newSAV, options & CDC_OPTION_UNIT_MULTIPLIER); @@ -461,10 +461,10 @@ CDC_SAV_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CAC_ScaledValueConfig_create("sVC", (ModelNode*) newSAV); if (options & CDC_OPTION_MIN) - CAC_AnalogueValue_create("min", (ModelNode*) newSAV, CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("min", (ModelNode*) newSAV, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); if (options & CDC_OPTION_MAX) - CAC_AnalogueValue_create("max", (ModelNode*) newSAV, CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("max", (ModelNode*) newSAV, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); CDC_addStandardOptions(newSAV, options); @@ -476,17 +476,17 @@ CDC_HST_create(const char* dataObjectName, ModelNode* parent, uint32_t options, { DataObject* newHST = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("hstVal", (ModelNode*) newHST, INT32, ST, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, maxPts, 0); + DataAttribute_create("hstVal", (ModelNode*) newHST, INT32, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED | TRG_OPT_DATA_UPDATE, maxPts, 0); - CDC_addTimeQuality(newHST, ST); + CDC_addTimeQuality(newHST, IEC61850_FC_ST); - DataAttribute_create("numPts", (ModelNode*) newHST, INT16U, CF, 0, 0, 0); + DataAttribute_create("numPts", (ModelNode*) newHST, INT16U, IEC61850_FC_CF, 0, 0, 0); //TODO add mandatory attribute "hstRangeC" CAC_Unit_create("units", (ModelNode*) newHST, options & CDC_OPTION_UNIT_MULTIPLIER); - DataAttribute_create("maxPts", (ModelNode*) newHST, INT16U, CF, 0, 0, 0); + DataAttribute_create("maxPts", (ModelNode*) newHST, INT16U, IEC61850_FC_CF, 0, 0, 0); CDC_addStandardOptions(newHST, options); @@ -498,7 +498,7 @@ static void addControls(DataObject* parent, DataAttributeType type, uint32_t controlOptions) { DataAttribute* ctlModel = - DataAttribute_create("ctlModel", (ModelNode*) parent, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("ctlModel", (ModelNode*) parent, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); int controlModel = controlOptions & 0x07; @@ -507,7 +507,7 @@ addControls(DataObject* parent, DataAttributeType type, uint32_t controlOptions) if (controlModel > 0) { if (controlModel == CDC_CTL_MODEL_SBO_NORMAL) - DataAttribute_create("SBO", (ModelNode*) parent, VISIBLE_STRING_129, CO, 0, 0, 0); + DataAttribute_create("SBO", (ModelNode*) parent, VISIBLE_STRING_129, IEC61850_FC_CO, 0, 0, 0); bool isTimeActivated = false; @@ -529,10 +529,10 @@ static void addOriginatorAndCtlNumOptions(ModelNode* parent, uint32_t controlOptions) { if (controlOptions & CDC_CTL_OPTION_ORIGIN) - addOriginator("origin", parent, ST); + addOriginator("origin", parent, IEC61850_FC_ST); if (controlOptions & CDC_CTL_OPTION_CTL_NUM) - DataAttribute_create("ctlNum", parent, INT8U, ST, 0, 0, 0); + DataAttribute_create("ctlNum", parent, INT8U, IEC61850_FC_ST, 0, 0, 0); } /** @@ -559,7 +559,7 @@ CDC_SPC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CDC_addOptionPicsSubst(newSPC, BOOLEAN); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newSPC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newSPC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newSPC, options); @@ -590,7 +590,7 @@ CDC_DPC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CDC_addOptionPicsSubst(newDPC, CODEDENUM); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newDPC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newDPC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newDPC, options); @@ -601,7 +601,7 @@ static void addAnalogControls(DataObject* parent, uint32_t controlOptions, bool isIntegerNotFloat) { DataAttribute* ctlModel = - DataAttribute_create("ctlModel", (ModelNode*) parent, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("ctlModel", (ModelNode*) parent, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); int controlModel = controlOptions & 0x07; @@ -610,7 +610,7 @@ addAnalogControls(DataObject* parent, uint32_t controlOptions, bool isIntegerNot if (controlModel != CDC_CTL_MODEL_NONE) { if (controlModel == CDC_CTL_MODEL_SBO_NORMAL) - DataAttribute_create("SBO", (ModelNode*) parent, VISIBLE_STRING_129, CO, 0, 0, 0); + DataAttribute_create("SBO", (ModelNode*) parent, VISIBLE_STRING_129, IEC61850_FC_CO, 0, 0, 0); bool isTimeActivated = false; @@ -618,23 +618,23 @@ addAnalogControls(DataObject* parent, uint32_t controlOptions, bool isIntegerNot isTimeActivated = true; if (controlModel == CDC_CTL_MODEL_SBO_ENHANCED) { - DataAttribute* sBOw = DataAttribute_create("SBOw", (ModelNode*) parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* sBOw = DataAttribute_create("SBOw", (ModelNode*) parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); - CAC_AnalogueValue_create("ctlVal", (ModelNode*) sBOw, CO, 0, isIntegerNotFloat); + CAC_AnalogueValue_create("ctlVal", (ModelNode*) sBOw, IEC61850_FC_CO, 0, isIntegerNotFloat); addCommonOperateElements(sBOw, isTimeActivated, true); } - DataAttribute* oper = DataAttribute_create("Oper", (ModelNode*) parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* oper = DataAttribute_create("Oper", (ModelNode*) parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); - CAC_AnalogueValue_create("ctlVal", (ModelNode*) oper, CO, 0, isIntegerNotFloat); + CAC_AnalogueValue_create("ctlVal", (ModelNode*) oper, IEC61850_FC_CO, 0, isIntegerNotFloat); addCommonOperateElements(oper, isTimeActivated, true); if (controlOptions & CDC_CTL_MODEL_HAS_CANCEL) { - DataAttribute* cancel = DataAttribute_create("SBOw", (ModelNode*) parent, CONSTRUCTED, CO, 0, 0, 0); + DataAttribute* cancel = DataAttribute_create("SBOw", (ModelNode*) parent, CONSTRUCTED, IEC61850_FC_CO, 0, 0, 0); - CAC_AnalogueValue_create("ctlVal", (ModelNode*) cancel, CO, 0, isIntegerNotFloat); + CAC_AnalogueValue_create("ctlVal", (ModelNode*) cancel, IEC61850_FC_CO, 0, isIntegerNotFloat); addCommonOperateElements(cancel, isTimeActivated, true); } @@ -648,36 +648,36 @@ CDC_APC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, DataObject* newAPC = DataObject_create(dataObjectName, parent, 0); if (controlOptions & CDC_CTL_OPTION_ORIGIN) - addOriginator("origin", (ModelNode*) newAPC, MX); + addOriginator("origin", (ModelNode*) newAPC, IEC61850_FC_MX); if (controlOptions & CDC_CTL_OPTION_CTL_NUM) - DataAttribute_create("ctlNum", (ModelNode*) newAPC, INT8U, MX, 0, 0, 0); + DataAttribute_create("ctlNum", (ModelNode*) newAPC, INT8U, IEC61850_FC_MX, 0, 0, 0); - CAC_AnalogueValue_create("mxVal", (ModelNode*) newAPC, MX, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("mxVal", (ModelNode*) newAPC, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); - CDC_addTimeQuality(newAPC, MX); + CDC_addTimeQuality(newAPC, IEC61850_FC_MX); if (controlOptions & CDC_CTL_OPTION_ST_SELD) - DataAttribute_create("stSeld", (ModelNode*) newAPC, BOOLEAN, MX, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("stSeld", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_MX, TRG_OPT_DATA_CHANGED, 0, 0); if (controlOptions & CDC_CTL_OPTION_OP_RCVD) - DataAttribute_create("opRcvd", (ModelNode*) newAPC, BOOLEAN, OR, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("opRcvd", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_OR, TRG_OPT_DATA_CHANGED, 0, 0); if (controlOptions & CDC_CTL_OPTION_OP_OK) - DataAttribute_create("opOk", (ModelNode*) newAPC, BOOLEAN, OR, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("opOk", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_OR, TRG_OPT_DATA_CHANGED, 0, 0); if (controlOptions & CDC_CTL_OPTION_T_OP_OK) - DataAttribute_create("tOpOk", (ModelNode*) newAPC, BOOLEAN, OR, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("tOpOk", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_OR, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PICS_SUBST) { - DataAttribute_create("subEna", (ModelNode*) newAPC, BOOLEAN, SV, 0, 0, 0); - CAC_AnalogueValue_create("subVal", (ModelNode*) newAPC, SV, 0, isIntegerNotFloat); - DataAttribute_create("subQ", (ModelNode*) newAPC, QUALITY, SV, 0, 0, 0); - DataAttribute_create("subID", (ModelNode*) newAPC, VISIBLE_STRING_64, SV, 0, 0, 0); + DataAttribute_create("subEna", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_SV, 0, 0, 0); + CAC_AnalogueValue_create("subVal", (ModelNode*) newAPC, IEC61850_FC_SV, 0, isIntegerNotFloat); + DataAttribute_create("subQ", (ModelNode*) newAPC, QUALITY, IEC61850_FC_SV, 0, 0, 0); + DataAttribute_create("subID", (ModelNode*) newAPC, VISIBLE_STRING_64, IEC61850_FC_SV, 0, 0, 0); } if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newAPC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newAPC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); addAnalogControls(newAPC, controlOptions, isIntegerNotFloat); @@ -702,16 +702,16 @@ CDC_INC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CDC_addOptionPicsSubst(newINC, INT32); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newINC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newINC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); if (options & CDC_OPTION_MIN) - DataAttribute_create("minVal", (ModelNode*) newINC, INT32, CF, 0, 0, 0); + DataAttribute_create("minVal", (ModelNode*) newINC, INT32, IEC61850_FC_CF, 0, 0, 0); if (options & CDC_OPTION_MAX) - DataAttribute_create("maxVal", (ModelNode*) newINC, INT32, CF, 0, 0, 0); + DataAttribute_create("maxVal", (ModelNode*) newINC, INT32, IEC61850_FC_CF, 0, 0, 0); if (options & CDC_OPTION_STEP_SIZE) - DataAttribute_create("stepSize", (ModelNode*) newINC, INT32U, CF, 0, 0, 0); + DataAttribute_create("stepSize", (ModelNode*) newINC, INT32U, IEC61850_FC_CF, 0, 0, 0); CDC_addStandardOptions(newINC, options); @@ -733,7 +733,7 @@ CDC_ENC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CDC_addOptionPicsSubst(newENC, ENUMERATED); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newENC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newENC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newENC, options); @@ -747,10 +747,10 @@ CDC_BSC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, addOriginatorAndCtlNumOptions((ModelNode*) newBSC, controlOptions); - CAC_ValWithTrans_create("valWTr", (ModelNode*) newBSC, ST, TRG_OPT_DATA_CHANGED, hasTransientIndicator); - CDC_addTimeQuality(newBSC, ST); + CAC_ValWithTrans_create("valWTr", (ModelNode*) newBSC, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, hasTransientIndicator); + CDC_addTimeQuality(newBSC, IEC61850_FC_ST); - DataAttribute_create("persistent", (ModelNode*) newBSC, BOOLEAN, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("persistent", (ModelNode*) newBSC, BOOLEAN, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); addControls(newBSC, CODEDENUM, controlOptions); @@ -758,7 +758,7 @@ CDC_BSC_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CDC_addOptionPicsSubstValWithTrans(newBSC, hasTransientIndicator); if (options & CDC_OPTION_BLK_ENA) - DataAttribute_create("blkEna", (ModelNode*) newBSC, BOOLEAN, BL, 0, 0, 0); + DataAttribute_create("blkEna", (ModelNode*) newBSC, BOOLEAN, IEC61850_FC_BL, 0, 0, 0); CDC_addStandardOptions(newBSC, options); @@ -770,8 +770,8 @@ CDC_LPL_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newLPL = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("vendor", (ModelNode*) newLPL, VISIBLE_STRING_255, DC, 0, 0, 0); - DataAttribute_create("swRev", (ModelNode*) newLPL, VISIBLE_STRING_255, DC, 0, 0, 0); + DataAttribute_create("vendor", (ModelNode*) newLPL, VISIBLE_STRING_255, IEC61850_FC_DC, 0, 0, 0); + DataAttribute_create("swRev", (ModelNode*) newLPL, VISIBLE_STRING_255, IEC61850_FC_DC, 0, 0, 0); CDC_addStandardOptions(newLPL, options); @@ -784,30 +784,30 @@ CDC_ACD_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newACD = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("general", (ModelNode*) newACD, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("dirGeneral", (ModelNode*) newACD, ENUMERATED, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("general", (ModelNode*) newACD, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("dirGeneral", (ModelNode*) newACD, ENUMERATED, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PHASE_A) { - DataAttribute_create("phsA", (ModelNode*) newACD, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("dirPhsA", (ModelNode*) newACD, ENUMERATED, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsA", (ModelNode*) newACD, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("dirPhsA", (ModelNode*) newACD, ENUMERATED, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); } if (options & CDC_OPTION_PHASE_B) { - DataAttribute_create("phsB", (ModelNode*) newACD, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("dirPhsB", (ModelNode*) newACD, ENUMERATED, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsB", (ModelNode*) newACD, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("dirPhsB", (ModelNode*) newACD, ENUMERATED, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); } if (options & CDC_OPTION_PHASE_C) { - DataAttribute_create("phsC", (ModelNode*) newACD, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("dirPhsC", (ModelNode*) newACD, ENUMERATED, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsC", (ModelNode*) newACD, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("dirPhsC", (ModelNode*) newACD, ENUMERATED, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); } if (options & CDC_OPTION_PHASE_NEUT) { - DataAttribute_create("neut", (ModelNode*) newACD, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); - DataAttribute_create("dirNeut", (ModelNode*) newACD, ENUMERATED, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("neut", (ModelNode*) newACD, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("dirNeut", (ModelNode*) newACD, ENUMERATED, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); } - CDC_addTimeQuality(newACD, ST); + CDC_addTimeQuality(newACD, IEC61850_FC_ST); CDC_addStandardOptions(newACD, options); @@ -819,21 +819,21 @@ CDC_ACT_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newACT = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("general", (ModelNode*) newACT, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("general", (ModelNode*) newACT, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PHASE_A) - DataAttribute_create("phsA", (ModelNode*) newACT, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsA", (ModelNode*) newACT, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PHASE_B) - DataAttribute_create("phsB", (ModelNode*) newACT, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsB", (ModelNode*) newACT, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PHASE_C) - DataAttribute_create("phsC", (ModelNode*) newACT, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("phsC", (ModelNode*) newACT, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_PHASE_NEUT) - DataAttribute_create("neut", (ModelNode*) newACT, BOOLEAN, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("neut", (ModelNode*) newACT, BOOLEAN, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); - CDC_addTimeQuality(newACT, ST); + CDC_addTimeQuality(newACT, IEC61850_FC_ST); CDC_addStandardOptions(newACT, options); @@ -855,7 +855,7 @@ CDC_WYE_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_CMV_create("res", (ModelNode*) newWYE, options); if (options & CDC_OPTION_ANGLE_REF) - DataAttribute_create("angRef", (ModelNode*) newWYE, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("angRef", (ModelNode*) newWYE, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newWYE, options); @@ -874,7 +874,7 @@ CDC_DEL_create(const char* dataObjectName, ModelNode* parent, uint32_t options) CDC_CMV_create("phsCA", (ModelNode*) newDEL, options); if (options & CDC_OPTION_ANGLE_REF) - DataAttribute_create("angRef", (ModelNode*) newDEL, ENUMERATED, CF, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("angRef", (ModelNode*) newDEL, ENUMERATED, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newDEL, options); @@ -887,7 +887,7 @@ CDC_SPG_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newSPG = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("setVal", (ModelNode*) newSPG, BOOLEAN, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("setVal", (ModelNode*) newSPG, BOOLEAN, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newSPG, options); @@ -899,7 +899,7 @@ CDC_ENG_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newENG = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("setVal", (ModelNode*) newENG, ENUMERATED, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("setVal", (ModelNode*) newENG, ENUMERATED, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newENG, options); @@ -911,19 +911,19 @@ CDC_ING_create(const char* dataObjectName, ModelNode* parent, uint32_t options) { DataObject* newING = DataObject_create(dataObjectName, parent, 0); - DataAttribute_create("setVal", (ModelNode*) newING, INT32, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("setVal", (ModelNode*) newING, INT32, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_UNIT) CAC_Unit_create("units", (ModelNode*) newING, options & CDC_OPTION_UNIT_MULTIPLIER); if (options & CDC_OPTION_MIN) - DataAttribute_create("minVal", (ModelNode*) newING, INT32, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("minVal", (ModelNode*) newING, INT32, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_MAX) - DataAttribute_create("maxVal", (ModelNode*) newING, INT32, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("maxVal", (ModelNode*) newING, INT32, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); if (options & CDC_OPTION_STEP_SIZE) - DataAttribute_create("stepSize", (ModelNode*) newING, INT32U, SP, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("stepSize", (ModelNode*) newING, INT32U, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newING, options); @@ -936,7 +936,7 @@ CDC_ASG_create(const char* dataObjectName, ModelNode* parent, uint32_t options, { DataObject* newASG = DataObject_create(dataObjectName, parent, 0); - CAC_AnalogueValue_create("setMag", (ModelNode*) newASG, SP, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("setMag", (ModelNode*) newASG, IEC61850_FC_SP, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); if (options & CDC_OPTION_UNIT) CAC_Unit_create("units", (ModelNode*) newASG, options & CDC_OPTION_UNIT_MULTIPLIER); @@ -945,13 +945,13 @@ CDC_ASG_create(const char* dataObjectName, ModelNode* parent, uint32_t options, CAC_ScaledValueConfig_create("sVC", (ModelNode*) newASG); if (options & CDC_OPTION_MIN) - CAC_AnalogueValue_create("minVal", (ModelNode*) newASG, CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("minVal", (ModelNode*) newASG, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); if (options & CDC_OPTION_MAX) - CAC_AnalogueValue_create("maxVal", (ModelNode*) newASG, CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("maxVal", (ModelNode*) newASG, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); if (options & CDC_OPTION_STEP_SIZE) - CAC_AnalogueValue_create("stepSize", (ModelNode*) newASG, CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); + CAC_AnalogueValue_create("stepSize", (ModelNode*) newASG, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, isIntegerNotFloat); CDC_addStandardOptions(newASG, options); @@ -975,31 +975,31 @@ CDC_SPV_create(const char* dataObjectName, ModelNode* parent, uint32_t options, //TOOO add optional "oldVal" APC if (wpOptions & CDC_OPTION_61400_MIN_MX_VAL) - CAC_AnalogueValue_create("minMxVal", (ModelNode*) newSPV, MX, 0, false); + CAC_AnalogueValue_create("minMxVal", (ModelNode*) newSPV, IEC61850_FC_MX, 0, false); if (wpOptions & CDC_OPTION_61400_MAX_MX_VAL) - CAC_AnalogueValue_create("maxMxVal", (ModelNode*) newSPV, MX, 0, false); + CAC_AnalogueValue_create("maxMxVal", (ModelNode*) newSPV, IEC61850_FC_MX, 0, false); if (wpOptions & CDC_OPTION_61400_TOT_AV_VAL) - CAC_AnalogueValue_create("totAvVal", (ModelNode*) newSPV, MX, 0, false); + CAC_AnalogueValue_create("totAvVal", (ModelNode*) newSPV, IEC61850_FC_MX, 0, false); if (wpOptions & CDC_OPTION_61400_SDV_VAL) - CAC_AnalogueValue_create("sdvVal", (ModelNode*) newSPV, MX, 0, false); + CAC_AnalogueValue_create("sdvVal", (ModelNode*) newSPV, IEC61850_FC_MX, 0, false); if (options & CDC_OPTION_UNIT) CAC_Unit_create("units", (ModelNode*) newSPV, options & CDC_OPTION_UNIT_MULTIPLIER); if (options & CDC_OPTION_MIN) - CAC_AnalogueValue_create("minVal", (ModelNode*) newSPV, CF, TRG_OPT_DATA_CHANGED, false); + CAC_AnalogueValue_create("minVal", (ModelNode*) newSPV, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, false); if (options & CDC_OPTION_MAX) - CAC_AnalogueValue_create("maxVal", (ModelNode*) newSPV, CF, TRG_OPT_DATA_CHANGED, false); + CAC_AnalogueValue_create("maxVal", (ModelNode*) newSPV, IEC61850_FC_CF, TRG_OPT_DATA_CHANGED, false); if (wpOptions & CDC_OPTION_61400_SP_ACS) - DataAttribute_create("spAcs", (ModelNode*) newSPV, CODEDENUM, CF, 0, 0, 0); + DataAttribute_create("spAcs", (ModelNode*) newSPV, CODEDENUM, IEC61850_FC_CF, 0, 0, 0); if (wpOptions & CDC_OPTION_61400_CHA_PER_RS) - DataAttribute_create("chaPerRs", (ModelNode*) newSPV, CODEDENUM, CF, 0, 0, 0); + DataAttribute_create("chaPerRs", (ModelNode*) newSPV, CODEDENUM, IEC61850_FC_CF, 0, 0, 0); CDC_addStandardOptions(newSPV, options); @@ -1063,7 +1063,7 @@ CDC_CMD_create(const char* dataObjectName, ModelNode* parent, CDC_INS_create("oldSt", (ModelNode*) newCMD, 0); if (wpOptions & CDC_OPTION_61400_CM_ACS) - DataAttribute_create("cmAcs", (ModelNode*) newCMD, INT8U, CF, 0, 0, 0); + DataAttribute_create("cmAcs", (ModelNode*) newCMD, INT8U, IEC61850_FC_CF, 0, 0, 0); CDC_addStandardOptions(newCMD, options); @@ -1093,19 +1093,19 @@ CDC_CTE_create(const char* dataObjectName, ModelNode* parent, CDC_INS_create("oldCtVal", (ModelNode*) newCTE, 0); if (wpOptions & CDC_OPTION_61400_TM_TOT) - DataAttribute_create("ctTot", (ModelNode*) newCTE, INT32U, ST, 0, 0, 0); + DataAttribute_create("ctTot", (ModelNode*) newCTE, INT32U, IEC61850_FC_ST, 0, 0, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_DAILY) - DataAttribute_create("dly", (ModelNode*) newCTE, INT32U, ST, TRG_OPT_DATA_CHANGED, 32, 0); + DataAttribute_create("dly", (ModelNode*) newCTE, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 32, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_MONTHLY) - DataAttribute_create("mly", (ModelNode*) newCTE, INT32U, ST, TRG_OPT_DATA_CHANGED, 13, 0); + DataAttribute_create("mly", (ModelNode*) newCTE, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 13, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_YEARLY) - DataAttribute_create("mly", (ModelNode*) newCTE, INT32U, ST, TRG_OPT_DATA_CHANGED, 21, 0); + DataAttribute_create("mly", (ModelNode*) newCTE, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 21, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_TOTAL) - DataAttribute_create("tot", (ModelNode*) newCTE, INT32U, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("tot", (ModelNode*) newCTE, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newCTE, options); @@ -1132,19 +1132,19 @@ CDC_TMS_create(const char* dataObjectName, ModelNode* parent, CDC_INS_create("oldTmVal", (ModelNode*) newTMS, 0); if (wpOptions & CDC_OPTION_61400_TM_TOT) - DataAttribute_create("tmTot", (ModelNode*) newTMS, INT32U, ST, 0, 0, 0); + DataAttribute_create("tmTot", (ModelNode*) newTMS, INT32U, IEC61850_FC_ST, 0, 0, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_DAILY) - DataAttribute_create("dly", (ModelNode*) newTMS, INT32U, ST, TRG_OPT_DATA_CHANGED, 32, 0); + DataAttribute_create("dly", (ModelNode*) newTMS, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 32, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_MONTHLY) - DataAttribute_create("mly", (ModelNode*) newTMS, INT32U, ST, TRG_OPT_DATA_CHANGED, 13, 0); + DataAttribute_create("mly", (ModelNode*) newTMS, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 13, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_YEARLY) - DataAttribute_create("mly", (ModelNode*) newTMS, INT32U, ST, TRG_OPT_DATA_CHANGED, 21, 0); + DataAttribute_create("mly", (ModelNode*) newTMS, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 21, 0); if (wpOptions & CDC_OPTION_61400_COUNTING_TOTAL) - DataAttribute_create("tot", (ModelNode*) newTMS, INT32U, ST, TRG_OPT_DATA_CHANGED, 0, 0); + DataAttribute_create("tot", (ModelNode*) newTMS, INT32U, IEC61850_FC_ST, TRG_OPT_DATA_CHANGED, 0, 0); CDC_addStandardOptions(newTMS, options); diff --git a/src/mms/inc/mms_client_connection.h b/src/mms/inc/mms_client_connection.h index 0f28b6a6..d87667e2 100644 --- a/src/mms/inc/mms_client_connection.h +++ b/src/mms/inc/mms_client_connection.h @@ -668,6 +668,14 @@ MmsConnection_getFileDirectory(MmsConnection self, MmsError* mmsError, const cha MmsFileDirectoryHandler handler, void* handlerParameter); +/** + * \brief Destroy (free) an MmsServerIdentity object + * + * \param self the object to destroy + */ +void +MmsServerIdentity_destroy(MmsServerIdentity* self); + /**@}*/ #ifdef __cplusplus diff --git a/src/mms/iso_mms/client/mms_client_connection.c b/src/mms/iso_mms/client/mms_client_connection.c index 5e7d0082..90455d98 100644 --- a/src/mms/iso_mms/client/mms_client_connection.c +++ b/src/mms/iso_mms/client/mms_client_connection.c @@ -1,7 +1,7 @@ /* * mms_client_connection.c * - * Copyright 2013, 2014 Michael Zillgith + * Copyright 2013, 2014, 2015 Michael Zillgith * * This file is part of libIEC61850. * @@ -958,14 +958,14 @@ sendConcludeRequestAndWaitForResponse(MmsConnection self) while (currentTime < waitUntilTime) { if (self->associationState == MMS_STATE_CLOSED) - return; + goto exit_function; if (self->concludeState != CONCLUDE_STATE_REQUESTED) { success = true; break; } - Thread_sleep(10); + Thread_sleep(1); currentTime = Hal_getTimeInMs(); } @@ -976,11 +976,18 @@ sendConcludeRequestAndWaitForResponse(MmsConnection self) self->lastResponseError = MMS_ERROR_SERVICE_TIMEOUT; } +exit_function: + return; } void MmsConnection_conclude(MmsConnection self, MmsError* mmsError) { + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + *mmsError = MMS_ERROR_NONE; sendConcludeRequestAndWaitForResponse(self); @@ -1000,6 +1007,9 @@ MmsConnection_conclude(MmsConnection self, MmsError* mmsError) } self->connectionLostHandler = NULL; + +exit_function: + return; } void @@ -1020,6 +1030,13 @@ mmsClient_getNameListSingleRequest( bool associationSpecific, const char* continueAfter) { + bool moreFollows = false; + + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1041,7 +1058,7 @@ mmsClient_getNameListSingleRequest( ByteBuffer* responseMessage = sendRequestAndWaitForResponse(self, invokeId, payload); - bool moreFollows = false; + if (responseMessage != NULL) moreFollows = mmsClient_parseGetNameListResponse(nameList, self->lastResponse, NULL); @@ -1051,6 +1068,7 @@ mmsClient_getNameListSingleRequest( if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return moreFollows; } @@ -1116,10 +1134,15 @@ MmsValue* MmsConnection_readVariable(MmsConnection self, MmsError* mmsError, const char* domainId, const char* itemId) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsValue* value = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1138,6 +1161,7 @@ MmsConnection_readVariable(MmsConnection self, MmsError* mmsError, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return value; } @@ -1146,10 +1170,15 @@ MmsConnection_readArrayElements(MmsConnection self, MmsError* mmsError, const char* domainId, const char* itemId, uint32_t startIndex, uint32_t numberOfElements) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsValue* value = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1169,6 +1198,7 @@ MmsConnection_readArrayElements(MmsConnection self, MmsError* mmsError, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return value; } @@ -1176,10 +1206,15 @@ MmsValue* MmsConnection_readMultipleVariables(MmsConnection self, MmsError* mmsError, const char* domainId, LinkedList /**/items) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsValue* value = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1198,6 +1233,7 @@ MmsConnection_readMultipleVariables(MmsConnection self, MmsError* mmsError, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return value; } @@ -1206,10 +1242,15 @@ MmsConnection_readNamedVariableListValues(MmsConnection self, MmsError* mmsError const char* domainId, const char* listName, bool specWithResult) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsValue* value = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1231,6 +1272,7 @@ MmsConnection_readNamedVariableListValues(MmsConnection self, MmsError* mmsError if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return value; } @@ -1240,10 +1282,15 @@ MmsConnection_readNamedVariableListValuesAssociationSpecific( const char* listName, bool specWithResult) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsValue* value = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1263,6 +1310,7 @@ MmsConnection_readNamedVariableListValuesAssociationSpecific( if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return value; } @@ -1270,12 +1318,17 @@ LinkedList /* */ MmsConnection_readNamedVariableListDirectory(MmsConnection self, MmsError* mmsError, const char* domainId, const char* listName, bool* deletable) { + LinkedList attributes = NULL; + + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; - LinkedList attributes = NULL; - uint32_t invokeId = getNextInvokeId(self); mmsClient_createGetNamedVariableListAttributesRequest(invokeId, payload, domainId, @@ -1294,6 +1347,7 @@ MmsConnection_readNamedVariableListDirectory(MmsConnection self, MmsError* mmsEr if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return attributes; } @@ -1301,12 +1355,17 @@ LinkedList /* */ MmsConnection_readNamedVariableListDirectoryAssociationSpecific(MmsConnection self, MmsError* mmsError, const char* listName, bool* deletable) { + LinkedList attributes = NULL; + + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; - LinkedList attributes = NULL; - uint32_t invokeId = getNextInvokeId(self); mmsClient_createGetNamedVariableListAttributesRequestAssociationSpecific(invokeId, payload, @@ -1325,6 +1384,7 @@ MmsConnection_readNamedVariableListDirectoryAssociationSpecific(MmsConnection se if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return attributes; } @@ -1332,6 +1392,11 @@ void MmsConnection_defineNamedVariableList(MmsConnection self, MmsError* mmsError, const char* domainId, const char* listName, LinkedList variableSpecs) { + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; @@ -1353,12 +1418,20 @@ MmsConnection_defineNamedVariableList(MmsConnection self, MmsError* mmsError, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; + +exit_function: + return; } void MmsConnection_defineNamedVariableListAssociationSpecific(MmsConnection self, MmsError* mmsError, const char* listName, LinkedList variableSpecs) { + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; @@ -1380,12 +1453,20 @@ MmsConnection_defineNamedVariableListAssociationSpecific(MmsConnection self, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; + +exit_function: + return; } void MmsConnection_deleteNamedVariableList(MmsConnection self, MmsError* mmsError, const char* domainId, const char* listName) { + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; @@ -1406,12 +1487,20 @@ MmsConnection_deleteNamedVariableList(MmsConnection self, MmsError* mmsError, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; + +exit_function: + return; } void MmsConnection_deleteAssociationSpecificNamedVariableList(MmsConnection self, MmsError* mmsError, const char* listName) { + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); *mmsError = MMS_ERROR_NONE; @@ -1433,16 +1522,24 @@ MmsConnection_deleteAssociationSpecificNamedVariableList(MmsConnection self, if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; + +exit_function: + return; } MmsVariableSpecification* MmsConnection_getVariableAccessAttributes(MmsConnection self, MmsError* mmsError, const char* domainId, const char* itemId) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsVariableSpecification* typeSpec = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1461,16 +1558,22 @@ MmsConnection_getVariableAccessAttributes(MmsConnection self, MmsError* mmsError if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return typeSpec; } MmsServerIdentity* MmsConnection_identify(MmsConnection self, MmsError* mmsError) { - ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); - MmsServerIdentity* identity = NULL; + if (self->associationState != MMS_STATE_CONNECTED) { + *mmsError = MMS_ERROR_CONNECTION_LOST; + goto exit_function; + } + + ByteBuffer* payload = IsoClientConnection_allocateTransmitBuffer(self->isoClient); + *mmsError = MMS_ERROR_NONE; uint32_t invokeId = getNextInvokeId(self); @@ -1489,6 +1592,7 @@ MmsConnection_identify(MmsConnection self, MmsError* mmsError) if (self->associationState == MMS_STATE_CLOSED) *mmsError = MMS_ERROR_CONNECTION_LOST; +exit_function: return identity; } diff --git a/src/vs/libiec61850-wo-goose.def b/src/vs/libiec61850-wo-goose.def index 893bb39a..8459efe2 100644 --- a/src/vs/libiec61850-wo-goose.def +++ b/src/vs/libiec61850-wo-goose.def @@ -486,3 +486,5 @@ EXPORTS MmsValue_getUtcTimeBuffer Timestamp_clearFlags IedServer_setGooseInterfaceId + MmsServerIdentity_destroy + \ No newline at end of file diff --git a/src/vs/libiec61850.def b/src/vs/libiec61850.def index 198982ab..cbfa8884 100644 --- a/src/vs/libiec61850.def +++ b/src/vs/libiec61850.def @@ -510,3 +510,5 @@ EXPORTS MmsValue_getUtcTimeBuffer Timestamp_clearFlags IedServer_setGooseInterfaceId + MmsServerIdentity_destroy + diff --git a/tools/model_generator/genconfig.jar b/tools/model_generator/genconfig.jar index 625d0eb1c3a0ff8b4f6a9e93606c3de0cfe3f7ca..7f06e7780dabdd2b16c6e43eadfebfcdb793b2b0 100644 GIT binary patch delta 13296 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 IvjXD(0rxNZIsgCw delta 13537 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 delta 13526 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 V!1`ZPAqap9@CL~V3zj_G{|6x$T}S`` diff --git a/tools/model_generator/src/com/libiec61850/tools/StaticModelGenerator.java b/tools/model_generator/src/com/libiec61850/tools/StaticModelGenerator.java index 22ad738e..4a52edf7 100644 --- a/tools/model_generator/src/com/libiec61850/tools/StaticModelGenerator.java +++ b/tools/model_generator/src/com/libiec61850/tools/StaticModelGenerator.java @@ -498,7 +498,7 @@ public class StaticModelGenerator { cOut.println(" NULL,"); cOut.println(" " + dataAttribute.getCount() + ","); - cOut.println(" " + dataAttribute.getFc().toString() + ","); + cOut.println(" IEC61850_FC_" + dataAttribute.getFc().toString() + ","); cOut.println(" " + dataAttribute.getType() + ","); /* print trigger options */