create a child node variable args are nodeid, browsename, value, [variant type], [data type] or idx, name, value, [variant type], [data type]
(parent, nodeid, bname, val, varianttype=None, datatype=None)
| 74 | |
| 75 | |
| 76 | def create_variable(parent, nodeid, bname, val, varianttype=None, datatype=None): |
| 77 | """ |
| 78 | create a child node variable |
| 79 | args are nodeid, browsename, value, [variant type], [data type] |
| 80 | or idx, name, value, [variant type], [data type] |
| 81 | """ |
| 82 | nodeid, qname = _parse_nodeid_qname(nodeid, bname) |
| 83 | var = ua.Variant(val, varianttype) |
| 84 | if datatype and isinstance(datatype, int): |
| 85 | datatype = ua.NodeId(datatype, 0) |
| 86 | if datatype and not isinstance(datatype, ua.NodeId): |
| 87 | raise RuntimeError("datatype argument must be a nodeid or an int refering to a nodeid") |
| 88 | |
| 89 | return node.Node(parent.server, _create_variable(parent.server, parent.nodeid, nodeid, qname, var, datatype=datatype, isproperty=False)) |
| 90 | |
| 91 | |
| 92 | def create_variable_type(parent, nodeid, bname, datatype): |
nothing calls this directly
no test coverage detected