diff --git a/src/iec61850/inc/iec61850_dynamic_model.h b/src/iec61850/inc/iec61850_dynamic_model.h index ee011dbe..78c9ee76 100644 --- a/src/iec61850/inc/iec61850_dynamic_model.h +++ b/src/iec61850/inc/iec61850_dynamic_model.h @@ -303,6 +303,9 @@ DataSetEntry_getNext(DataSetEntry* self); * that have to contain the LN name, the FC and subsequent path elements separated by "$" instead of ".". * This is due to efficiency reasons to avoid the creation of additional strings. * + * If the variable parameter does not contain a logical device name (separated from the remaining variable + * name by the "/" character) the logical device where the data set resides is used automatically. + * * \param dataSet the data set to which the new entry will be added * \param variable the name of the variable as MMS variable name including FC ("$" used as separator!) * \param index the index if the FCDA is an array element, otherwise -1 diff --git a/src/iec61850/server/impl/ied_server.c b/src/iec61850/server/impl/ied_server.c index 72f07d45..ff1d6504 100644 --- a/src/iec61850/server/impl/ied_server.c +++ b/src/iec61850/server/impl/ied_server.c @@ -1,7 +1,7 @@ /* * ied_server.c * - * Copyright 2013-2016 Michael Zillgith + * Copyright 2013-2018 Michael Zillgith * * This file is part of libIEC61850. * diff --git a/src/iec61850/server/model/config_file_parser.c b/src/iec61850/server/model/config_file_parser.c index c63a802d..a05d79dd 100644 --- a/src/iec61850/server/model/config_file_parser.c +++ b/src/iec61850/server/model/config_file_parser.c @@ -392,6 +392,16 @@ ConfigFileParser_createModelFromConfigFile(FileHandle fileHandle) } break; + case IEC61850_OPTFLDS: + case IEC61850_TRGOPS: + { + int value; + if (sscanf(valueIndicator + 1, "%i", &value) != 1) goto exit_error; + dataAttribute->mmsValue = MmsValue_newBitString(2); + MmsValue_setBitStringFromIntegerBigEndian(dataAttribute->mmsValue, value); + } + break; + default: break; diff --git a/tools/model_generator/genmodel.jar b/tools/model_generator/genmodel.jar index 6c45543a..f7894e4e 100644 Binary files a/tools/model_generator/genmodel.jar and b/tools/model_generator/genmodel.jar differ diff --git a/tools/model_generator/src/com/libiec61850/scl/model/AttributeType.java b/tools/model_generator/src/com/libiec61850/scl/model/AttributeType.java index 0d0e1f8f..9bde75a5 100644 --- a/tools/model_generator/src/com/libiec61850/scl/model/AttributeType.java +++ b/tools/model_generator/src/com/libiec61850/scl/model/AttributeType.java @@ -56,7 +56,9 @@ public enum AttributeType { CONSTRUCTED(27), ENTRY_TIME(28), PHYCOMADDR(29), - CURRENCY(30); + CURRENCY(30), + OPTFLDS(31), + TRGOPS(32); private int intValue; @@ -125,9 +127,9 @@ public enum AttributeType { else if (typeString.equals("Unicode255")) return UNICODE_STRING_255; else if (typeString.equals("OptFlds")) - return GENERIC_BITSTRING; + return OPTFLDS; else if (typeString.equals("TrgOps")) - return GENERIC_BITSTRING; + return TRGOPS; else if (typeString.equals("EntryID")) return OCTET_STRING_8; else if (typeString.equals("EntryTime"))