Commit 8fa9ffa8 authored by Olivier R-D's avatar Olivier R-D

add methods in standard namespace

parent ac15d133
...@@ -1736,6 +1736,111 @@ def create_standard_address_space_Part10(server): ...@@ -1736,6 +1736,111 @@ def create_standard_address_space_Part10(server):
refs.append(ref) refs.append(ref)
server.add_references(refs) server.add_references(refs)
node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2426")
node.BrowseName = ua.QualifiedName.from_string("Start")
node.NodeClass = ua.NodeClass.Method
node.ParentNodeId = ua.NodeId.from_string("i=2391")
node.ReferenceTypeId = ua.NodeId.from_string("i=47")
attrs = ua.MethodAttributes()
attrs.Description = ua.LocalizedText("Causes the Program to transition from the Ready state to the Running state.")
attrs.DisplayName = ua.LocalizedText("Start")
node.NodeAttributes = attrs
server.add_nodes([node])
refs = []
ref = ua.AddReferencesItem()
ref.IsForward = true
ref.ReferenceTypeId = ua.NodeId.from_string("i=37")
ref.SourceNodeId = ua.NodeId.from_string("i=2426")
ref.TargetNodeClass = ua.NodeClass.DataType
ref.TargetNodeId = ua.NodeId.from_string("i=78")
refs.append(ref)
server.add_references(refs)
node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2427")
node.BrowseName = ua.QualifiedName.from_string("Suspend")
node.NodeClass = ua.NodeClass.Method
node.ParentNodeId = ua.NodeId.from_string("i=2391")
node.ReferenceTypeId = ua.NodeId.from_string("i=47")
attrs = ua.MethodAttributes()
attrs.Description = ua.LocalizedText("Causes the Program to transition from the Running state to the Suspended state.")
attrs.DisplayName = ua.LocalizedText("Suspend")
node.NodeAttributes = attrs
server.add_nodes([node])
refs = []
ref = ua.AddReferencesItem()
ref.IsForward = true
ref.ReferenceTypeId = ua.NodeId.from_string("i=37")
ref.SourceNodeId = ua.NodeId.from_string("i=2427")
ref.TargetNodeClass = ua.NodeClass.DataType
ref.TargetNodeId = ua.NodeId.from_string("i=78")
refs.append(ref)
server.add_references(refs)
node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2428")
node.BrowseName = ua.QualifiedName.from_string("Resume")
node.NodeClass = ua.NodeClass.Method
node.ParentNodeId = ua.NodeId.from_string("i=2391")
node.ReferenceTypeId = ua.NodeId.from_string("i=47")
attrs = ua.MethodAttributes()
attrs.Description = ua.LocalizedText("Causes the Program to transition from the Suspended state to the Running state.")
attrs.DisplayName = ua.LocalizedText("Resume")
node.NodeAttributes = attrs
server.add_nodes([node])
refs = []
ref = ua.AddReferencesItem()
ref.IsForward = true
ref.ReferenceTypeId = ua.NodeId.from_string("i=37")
ref.SourceNodeId = ua.NodeId.from_string("i=2428")
ref.TargetNodeClass = ua.NodeClass.DataType
ref.TargetNodeId = ua.NodeId.from_string("i=78")
refs.append(ref)
server.add_references(refs)
node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2429")
node.BrowseName = ua.QualifiedName.from_string("Halt")
node.NodeClass = ua.NodeClass.Method
node.ParentNodeId = ua.NodeId.from_string("i=2391")
node.ReferenceTypeId = ua.NodeId.from_string("i=47")
attrs = ua.MethodAttributes()
attrs.Description = ua.LocalizedText("Causes the Program to transition from the Ready, Running or Suspended state to the Halted state.")
attrs.DisplayName = ua.LocalizedText("Halt")
node.NodeAttributes = attrs
server.add_nodes([node])
refs = []
ref = ua.AddReferencesItem()
ref.IsForward = true
ref.ReferenceTypeId = ua.NodeId.from_string("i=37")
ref.SourceNodeId = ua.NodeId.from_string("i=2429")
ref.TargetNodeClass = ua.NodeClass.DataType
ref.TargetNodeId = ua.NodeId.from_string("i=78")
refs.append(ref)
server.add_references(refs)
node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2430")
node.BrowseName = ua.QualifiedName.from_string("Reset")
node.NodeClass = ua.NodeClass.Method
node.ParentNodeId = ua.NodeId.from_string("i=2391")
node.ReferenceTypeId = ua.NodeId.from_string("i=47")
attrs = ua.MethodAttributes()
attrs.Description = ua.LocalizedText("Causes the Program to transition from the Halted state to the Ready state.")
attrs.DisplayName = ua.LocalizedText("Reset")
node.NodeAttributes = attrs
server.add_nodes([node])
refs = []
ref = ua.AddReferencesItem()
ref.IsForward = true
ref.ReferenceTypeId = ua.NodeId.from_string("i=37")
ref.SourceNodeId = ua.NodeId.from_string("i=2430")
ref.TargetNodeClass = ua.NodeClass.DataType
ref.TargetNodeId = ua.NodeId.from_string("i=78")
refs.append(ref)
server.add_references(refs)
node = ua.AddNodesItem() node = ua.AddNodesItem()
node.RequestedNewNodeId = ua.NodeId.from_string("i=2378") node.RequestedNewNodeId = ua.NodeId.from_string("i=2378")
node.BrowseName = ua.QualifiedName.from_string("ProgramTransitionEventType") node.BrowseName = ua.QualifiedName.from_string("ProgramTransitionEventType")
......
This diff is collapsed.
This diff is collapsed.
...@@ -81,6 +81,9 @@ class CodeGenerator(object): ...@@ -81,6 +81,9 @@ class CodeGenerator(object):
elif child.tag[51:] == 'UADataType': elif child.tag[51:] == 'UADataType':
node = self.parse_node(child) node = self.parse_node(child)
self.make_datatype_code(node) self.make_datatype_code(node)
elif child.tag[51:] == 'UAMethod':
node = self.parse_node(child)
self.make_method_code(node)
elif child.tag[51:] == 'Aliases': elif child.tag[51:] == 'Aliases':
for el in child: for el in child:
self.aliases[el.attrib["Alias"]] = el.text self.aliases[el.attrib["Alias"]] = el.text
...@@ -277,6 +280,22 @@ def create_standard_address_space_%s(server): ...@@ -277,6 +280,22 @@ def create_standard_address_space_%s(server):
self.make_refs_code(obj, indent) self.make_refs_code(obj, indent)
def make_method_code(self, obj):
indent = " "
self.writecode(indent)
self.make_node_code(obj, indent)
self.writecode(indent, 'attrs = ua.MethodAttributes()')
if obj.desc: self.writecode(indent, 'attrs.Description = ua.LocalizedText("{}")'.format(obj.desc))
self.writecode(indent, 'attrs.DisplayName = ua.LocalizedText("{}")'.format(obj.displayname))
if obj.accesslevel: self.writecode(indent, 'attrs.AccessLevel = {}'.format(obj.accesslevel))
if obj.useraccesslevel: self.writecode(indent, 'attrs.UserAccessLevel = {}'.format(obj.useraccesslevel))
if obj.minsample: self.writecode(indent, 'attrs.MinimumSamplingInterval = {}'.format(obj.minsample))
if obj.dimensions: self.writecode(indent, 'attrs.ArrayDimensions = {}'.format(self.to_vector(obj.dimensions)))
self.writecode(indent, 'node.NodeAttributes = attrs')
self.writecode(indent, 'server.add_nodes([node])')
self.make_refs_code(obj, indent)
def make_reference_code(self, obj): def make_reference_code(self, obj):
indent = " " indent = " "
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment