def sequence_data(self, branchs, pipemap): data = ezDict() for connector in self.input_connectors(): connector_data, pipemap = connector.sequence_data(pipemap) data["fields"]["inputs"].update(connector_data) for connector in self._options.values(): connector_data, pipemap = connector.sequence_data(pipemap) data["fields"]["options"].update(connector_data) ### replace output pipe IDs with variable id for connector in self.output_connectors(): connector_data, pipemap = connector.sequence_data(pipemap) data["fields"]["outputs"].update(connector_data) data.update({"name": self.name(), "path": self.path(), "type": self.__class__.__name__}) return (self._PLUGIN, self._OPCODE, data), pipemap
def get_data(self): data = ezDict() for connector in self.input_connectors(): data["fields"]["inputs"].update(connector.get_data()) for connector in self.output_connectors(): data["fields"]["outputs"].update(connector.get_data()) data.update( { "id": id(self), "name": self.name(), "type": self.__class__.__name__, "gui_data": self._gui_data.get_data(), } ) return data.reduce() # remove 'empty' subdicts