/// <summary> /// Adds a node to the node list of the graph. /// </summary> /// <param name="node"></param> private void AddNode(OnnxCSharpToProtoWrapper.NodeProto node) { _host.CheckValue(node, nameof(node)); _host.Assert(!_nodeNames.Contains(node.Name)); _nodeNames.Add(node.Name); _nodes.Add(node); }
public static OnnxCSharpToProtoWrapper.NodeProto MakeNode(string opType, IEnumerable <string> inputs, IEnumerable <string> outputs, string name, string domain = null) { Contracts.CheckNonEmpty(opType, nameof(opType)); Contracts.CheckValue(inputs, nameof(inputs)); Contracts.CheckValue(outputs, nameof(outputs)); Contracts.CheckNonEmpty(name, nameof(name)); var node = new OnnxCSharpToProtoWrapper.NodeProto(); node.OpType = opType; node.Input.Add(inputs); node.Output.Add(outputs); node.Name = name; node.Domain = domain ?? "ai.onnx.ml"; return(node); }
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, Type value) => node.Attribute.Add(MakeAttribute(argName, ConvertToTensorProtoType(value)));
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, bool value) => node.Attribute.Add(MakeAttribute(argName, value));
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, IEnumerable <OnnxCSharpToProtoWrapper.GraphProto> value) => node.Attribute.Add(MakeAttribute(argName, value));
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, IEnumerable <string> value) => node.Attribute.Add(MakeAttribute(argName, StringToByteString(value)));
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, ReadOnlyMemory <char> value) => node.Attribute.Add(MakeAttribute(argName, StringToByteString(value)));
public static void NodeAddAttributes(OnnxCSharpToProtoWrapper.NodeProto node, string argName, IEnumerable <bool> value) => node.Attribute.Add(MakeAttribute(argName, value.Select(v => v ? (long)1 : 0)));