nndeploy.basic.input 源代码


import nndeploy._nndeploy_internal as _C

import nndeploy.base
import nndeploy.device
import nndeploy.dag

import json

import numpy as np

[文档]class InputStr(nndeploy.dag.Node):
[文档] def __init__(self, name, inputs: [nndeploy.dag.Edge] = [], outputs: [nndeploy.dag.Edge] = []): super().__init__(name, inputs, outputs) self.set_key("nndeploy.basic.InputStr") self.set_desc("Input Str on python") self.set_output_type(str) self.set_node_type(nndeploy.dag.NodeType.Input) self.set_io_type(nndeploy.dag.IOType.String) self.str_ = ""
[文档] def run(self) -> bool: output_edge = self.get_output(0) # 获取输出边 output_edge.set(self.str_) # 将输出写入到输出边中 return nndeploy.base.Status.ok()
[文档] def serialize(self): self.add_required_param("str_") json_str = super().serialize() json_obj = json.loads(json_str) json_obj["str_"] = self.str_ return json.dumps(json_obj)
[文档] def deserialize(self, target: str): json_obj = json.loads(target) self.str_ = json_obj["str_"] return super().deserialize(target)
[文档]class InputStrCreator(nndeploy.dag.NodeCreator):
[文档] def __init__(self): super().__init__()
[文档] def create_node(self, name: str, inputs: list[nndeploy.dag.Edge], outputs: list[nndeploy.dag.Edge]): self.node = InputStr(name, inputs, outputs) return self.node
input_str_node_creator = InputStrCreator() nndeploy.dag.register_node("nndeploy.basic.InputStr", input_str_node_creator)