diff -r 7c2cd9d33070 -r b9a3f771aaab plcopen/types_enums.py --- a/plcopen/types_enums.py Mon Feb 19 13:24:57 2018 +0100 +++ b/plcopen/types_enums.py Mon Feb 19 15:14:30 2018 +0100 @@ -40,6 +40,8 @@ ITEM_VAR_INOUT ] = range(17, 24) +ITEM_CONFNODE = 25 + VAR_CLASS_INFOS = { "Local": ("localVars", ITEM_VAR_LOCAL), "Global": ("globalVars", ITEM_VAR_GLOBAL), @@ -78,5 +80,45 @@ DATA_TYPES, TRANSITIONS, ACTIONS, CONFIGURATIONS, RESOURCES, PROPERTIES] = UNEDITABLE_NAMES +# ------------------------------------------------------------------------------- +# Project Element tag name computation functions +# ------------------------------------------------------------------------------- + +# Compute a data type name +def ComputeDataTypeName(datatype): + return "D::%s" % datatype + +# Compute a pou name +def ComputePouName(pou): + return "P::%s" % pou + +# Compute a pou transition name +def ComputePouTransitionName(pou, transition): + return "T::%s::%s" % (pou, transition) + +# Compute a pou action name +def ComputePouActionName(pou, action): + return "A::%s::%s" % (pou, action) + +# Compute a pou name +def ComputeConfigurationName(config): + return "C::%s" % config + +# Compute a pou name +def ComputeConfigurationResourceName(config, resource): + return "R::%s::%s" % (config, resource) + +def GetElementType(tagname): + words = tagname.split("::") + return { + "D": ITEM_DATATYPE, + "P": ITEM_POU, + "T": ITEM_TRANSITION, + "A": ITEM_ACTION, + "C": ITEM_CONFIGURATION, + "R": ITEM_RESOURCE + }[words[0]] + + # remove gettext override del _