def value(self, value): if not value and not isinstance(value, (int, float, bool, str)): return kwargs = {"setPortDefaultValues": [self.name, value]} if self.node.parent == "/" and not self.node.type: cmds.vnnCompound(self.board, self.node.parent, **kwargs) return node = self.node if self.node.type else self.node.parent cmds.vnnNode(self.board, str(node), **kwargs)
def exists(self): """Check if attribute exists.""" existing = [] nodes = cmds.vnnNode(self.board, str(self.node), listPorts=True) or [] for each in nodes: existing.append(each.split(".", 1)[-1]) return self.name in existing
def type(self): """Get node's type.""" type_ = cmds.vnnNode(self.board, self.path, queryTypeName=True) type_ = self._fix_type(type_) if type_.lower().startswith(self.board.lower()): type_ = type_.split(",", 1)[-1] return type_
def value(self): """Get and set attribute value.""" node = self.node if self.node.type else self.node.parent return cmds.vnnNode(self.board, str(node), queryPortDefaultValues=self.name)
def type(self): """Get attribute type.""" return cmds.vnnNode(self.board, str(self.node), queryPortDataType=self.name)
def set_metadata(self, metadata): """Set node metadata.""" cmds.vnnNode(self.board, self.path, setMetaData=metadata)
def uuid(self): """Get node's UUID.""" return cmds.vnnNode(self.board, self.path, queryMetaData="UUID")