// // Generated by the protocol buffer compiler. DO NOT EDIT! // source: onnx.proto3 // #pragma warning disable 1591, 0612, 3021 #region Designer generated code using pb = global::Google.Protobuf; using pbc = global::Google.Protobuf.Collections; using pbr = global::Google.Protobuf.Reflection; using scg = global::System.Collections.Generic; namespace Onnx { /// Holder for reflection information generated from onnx.proto3 internal static partial class OnnxReflection { #region Descriptor /// File descriptor for onnx.proto3 public static pbr::FileDescriptor Descriptor { get { return descriptor; } } private static pbr::FileDescriptor descriptor; static OnnxReflection() { byte[] descriptorData = global::System.Convert.FromBase64String( string.Concat( "Cgtvbm54LnByb3RvMxIEb25ueCLoBAoOQXR0cmlidXRlUHJvdG8SDAoEbmFt", "ZRgBIAEoCRIVCg1yZWZfYXR0cl9uYW1lGBUgASgJEhIKCmRvY19zdHJpbmcY", "DSABKAkSMAoEdHlwZRgUIAEoDjIiLm9ubnguQXR0cmlidXRlUHJvdG8uQXR0", "cmlidXRlVHlwZRIJCgFmGAIgASgCEgkKAWkYAyABKAMSCQoBcxgEIAEoDBIc", "CgF0GAUgASgLMhEub25ueC5UZW5zb3JQcm90bxIbCgFnGAYgASgLMhAub25u", "eC5HcmFwaFByb3RvEi4KDXNwYXJzZV90ZW5zb3IYFiABKAsyFy5vbm54LlNw", "YXJzZVRlbnNvclByb3RvEg4KBmZsb2F0cxgHIAMoAhIMCgRpbnRzGAggAygD", "Eg8KB3N0cmluZ3MYCSADKAwSIgoHdGVuc29ycxgKIAMoCzIRLm9ubnguVGVu", "c29yUHJvdG8SIAoGZ3JhcGhzGAsgAygLMhAub25ueC5HcmFwaFByb3RvEi8K", "DnNwYXJzZV90ZW5zb3JzGBcgAygLMhcub25ueC5TcGFyc2VUZW5zb3JQcm90", "byK4AQoNQXR0cmlidXRlVHlwZRINCglVTkRFRklORUQQABIJCgVGTE9BVBAB", "EgcKA0lOVBACEgoKBlNUUklORxADEgoKBlRFTlNPUhAEEgkKBUdSQVBIEAUS", "EQoNU1BBUlNFX1RFTlNPUhALEgoKBkZMT0FUUxAGEggKBElOVFMQBxILCgdT", "VFJJTkdTEAgSCwoHVEVOU09SUxAJEgoKBkdSQVBIUxAKEhIKDlNQQVJTRV9U", "RU5TT1JTEAwiUQoOVmFsdWVJbmZvUHJvdG8SDAoEbmFtZRgBIAEoCRIdCgR0", "eXBlGAIgASgLMg8ub25ueC5UeXBlUHJvdG8SEgoKZG9jX3N0cmluZxgDIAEo", "CSKWAQoJTm9kZVByb3RvEg0KBWlucHV0GAEgAygJEg4KBm91dHB1dBgCIAMo", "CRIMCgRuYW1lGAMgASgJEg8KB29wX3R5cGUYBCABKAkSDgoGZG9tYWluGAcg", "ASgJEicKCWF0dHJpYnV0ZRgFIAMoCzIULm9ubnguQXR0cmlidXRlUHJvdG8S", "EgoKZG9jX3N0cmluZxgGIAEoCSKTAgoKTW9kZWxQcm90bxISCgppcl92ZXJz", "aW9uGAEgASgDEi4KDG9wc2V0X2ltcG9ydBgIIAMoCzIYLm9ubnguT3BlcmF0", "b3JTZXRJZFByb3RvEhUKDXByb2R1Y2VyX25hbWUYAiABKAkSGAoQcHJvZHVj", "ZXJfdmVyc2lvbhgDIAEoCRIOCgZkb21haW4YBCABKAkSFQoNbW9kZWxfdmVy", "c2lvbhgFIAEoAxISCgpkb2Nfc3RyaW5nGAYgASgJEh8KBWdyYXBoGAcgASgL", "MhAub25ueC5HcmFwaFByb3RvEjQKDm1ldGFkYXRhX3Byb3BzGA4gAygLMhwu", "b25ueC5TdHJpbmdTdHJpbmdFbnRyeVByb3RvIjQKFlN0cmluZ1N0cmluZ0Vu", "dHJ5UHJvdG8SCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJImsKEFRlbnNv", "ckFubm90YXRpb24SEwoLdGVuc29yX25hbWUYASABKAkSQgoccXVhbnRfcGFy", "YW1ldGVyX3RlbnNvcl9uYW1lcxgCIAMoCzIcLm9ubnguU3RyaW5nU3RyaW5n", "RW50cnlQcm90byLYAgoKR3JhcGhQcm90bxIdCgRub2RlGAEgAygLMg8ub25u", "eC5Ob2RlUHJvdG8SDAoEbmFtZRgCIAEoCRImCgtpbml0aWFsaXplchgFIAMo", "CzIRLm9ubnguVGVuc29yUHJvdG8SMwoSc3BhcnNlX2luaXRpYWxpemVyGA8g", "AygLMhcub25ueC5TcGFyc2VUZW5zb3JQcm90bxISCgpkb2Nfc3RyaW5nGAog", "ASgJEiMKBWlucHV0GAsgAygLMhQub25ueC5WYWx1ZUluZm9Qcm90bxIkCgZv", "dXRwdXQYDCADKAsyFC5vbm54LlZhbHVlSW5mb1Byb3RvEigKCnZhbHVlX2lu", "Zm8YDSADKAsyFC5vbm54LlZhbHVlSW5mb1Byb3RvEjcKF3F1YW50aXphdGlv", "bl9hbm5vdGF0aW9uGA4gAygLMhYub25ueC5UZW5zb3JBbm5vdGF0aW9uIrgF", "CgtUZW5zb3JQcm90bxIMCgRkaW1zGAEgAygDEhEKCWRhdGFfdHlwZRgCIAEo", "BRIqCgdzZWdtZW50GAMgASgLMhkub25ueC5UZW5zb3JQcm90by5TZWdtZW50", "EhYKCmZsb2F0X2RhdGEYBCADKAJCAhABEhYKCmludDMyX2RhdGEYBSADKAVC", "AhABEhMKC3N0cmluZ19kYXRhGAYgAygMEhYKCmludDY0X2RhdGEYByADKANC", "AhABEgwKBG5hbWUYCCABKAkSEgoKZG9jX3N0cmluZxgMIAEoCRIQCghyYXdf", "ZGF0YRgJIAEoDBIzCg1leHRlcm5hbF9kYXRhGA0gAygLMhwub25ueC5TdHJp", "bmdTdHJpbmdFbnRyeVByb3RvEjUKDWRhdGFfbG9jYXRpb24YDiABKA4yHi5v", "bm54LlRlbnNvclByb3RvLkRhdGFMb2NhdGlvbhIXCgtkb3VibGVfZGF0YRgK", "IAMoAUICEAESFwoLdWludDY0X2RhdGEYCyADKARCAhABGiUKB1NlZ21lbnQS", "DQoFYmVnaW4YASABKAMSCwoDZW5kGAIgASgDItoBCghEYXRhVHlwZRINCglV", "TkRFRklORUQQABIJCgVGTE9BVBABEgkKBVVJTlQ4EAISCAoESU5UOBADEgoK", "BlVJTlQxNhAEEgkKBUlOVDE2EAUSCQoFSU5UMzIQBhIJCgVJTlQ2NBAHEgoK", "BlNUUklORxAIEggKBEJPT0wQCRILCgdGTE9BVDE2EAoSCgoGRE9VQkxFEAsS", "CgoGVUlOVDMyEAwSCgoGVUlOVDY0EA0SDQoJQ09NUExFWDY0EA4SDgoKQ09N", "UExFWDEyOBAPEgwKCEJGTE9BVDE2EBAiKQoMRGF0YUxvY2F0aW9uEgsKB0RF", "RkFVTFQQABIMCghFWFRFUk5BTBABImgKEVNwYXJzZVRlbnNvclByb3RvEiEK", "BnZhbHVlcxgBIAEoCzIRLm9ubnguVGVuc29yUHJvdG8SIgoHaW5kaWNlcxgC", "IAEoCzIRLm9ubnguVGVuc29yUHJvdG8SDAoEZGltcxgDIAMoAyKVAQoQVGVu", "c29yU2hhcGVQcm90bxItCgNkaW0YASADKAsyIC5vbm54LlRlbnNvclNoYXBl", "UHJvdG8uRGltZW5zaW9uGlIKCURpbWVuc2lvbhITCglkaW1fdmFsdWUYASAB", "KANIABITCglkaW1fcGFyYW0YAiABKAlIABISCgpkZW5vdGF0aW9uGAMgASgJ", "QgcKBXZhbHVlIuUBCglUeXBlUHJvdG8SLQoLdGVuc29yX3R5cGUYASABKAsy", "Fi5vbm54LlR5cGVQcm90by5UZW5zb3JIABISCgpkZW5vdGF0aW9uGAYgASgJ", "GkIKBlRlbnNvchIRCgllbGVtX3R5cGUYASABKAUSJQoFc2hhcGUYAiABKAsy", "Fi5vbm54LlRlbnNvclNoYXBlUHJvdG8aSAoMU3BhcnNlVGVuc29yEhEKCWVs", "ZW1fdHlwZRgBIAEoBRIlCgVzaGFwZRgCIAEoCzIWLm9ubnguVGVuc29yU2hh", "cGVQcm90b0IHCgV2YWx1ZSI1ChJPcGVyYXRvclNldElkUHJvdG8SDgoGZG9t", "YWluGAEgASgJEg8KB3ZlcnNpb24YAiABKAMqsQEKB1ZlcnNpb24SEgoOX1NU", "QVJUX1ZFUlNJT04QABIZChVJUl9WRVJTSU9OXzIwMTdfMTBfMTAQARIZChVJ", "Ul9WRVJTSU9OXzIwMTdfMTBfMzAQAhIYChRJUl9WRVJTSU9OXzIwMTdfMTFf", "MxADEhgKFElSX1ZFUlNJT05fMjAxOV8xXzIyEAQSGAoUSVJfVkVSU0lPTl8y", "MDE5XzNfMTgQBRIOCgpJUl9WRVJTSU9OEAZiBnByb3RvMw==")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Onnx.Version), }, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.AttributeProto), global::Onnx.AttributeProto.Parser, new[]{ "Name", "RefAttrName", "DocString", "Type", "F", "I", "S", "T", "G", "SparseTensor", "Floats", "Ints", "Strings", "Tensors", "Graphs", "SparseTensors" }, null, new[]{ typeof(global::Onnx.AttributeProto.Types.AttributeType) }, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.ValueInfoProto), global::Onnx.ValueInfoProto.Parser, new[]{ "Name", "Type", "DocString" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.NodeProto), global::Onnx.NodeProto.Parser, new[]{ "Input", "Output", "Name", "OpType", "Domain", "Attribute", "DocString" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.ModelProto), global::Onnx.ModelProto.Parser, new[]{ "IrVersion", "OpsetImport", "ProducerName", "ProducerVersion", "Domain", "ModelVersion", "DocString", "Graph", "MetadataProps" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.StringStringEntryProto), global::Onnx.StringStringEntryProto.Parser, new[]{ "Key", "Value" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TensorAnnotation), global::Onnx.TensorAnnotation.Parser, new[]{ "TensorName", "QuantParameterTensorNames" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.GraphProto), global::Onnx.GraphProto.Parser, new[]{ "Node", "Name", "Initializer", "SparseInitializer", "DocString", "Input", "Output", "ValueInfo", "QuantizationAnnotation" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TensorProto), global::Onnx.TensorProto.Parser, new[]{ "Dims", "DataType", "Segment", "FloatData", "Int32Data", "StringData", "Int64Data", "Name", "DocString", "RawData", "ExternalData", "DataLocation", "DoubleData", "Uint64Data" }, null, new[]{ typeof(global::Onnx.TensorProto.Types.DataType), typeof(global::Onnx.TensorProto.Types.DataLocation) }, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TensorProto.Types.Segment), global::Onnx.TensorProto.Types.Segment.Parser, new[]{ "Begin", "End" }, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.SparseTensorProto), global::Onnx.SparseTensorProto.Parser, new[]{ "Values", "Indices", "Dims" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TensorShapeProto), global::Onnx.TensorShapeProto.Parser, new[]{ "Dim" }, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TensorShapeProto.Types.Dimension), global::Onnx.TensorShapeProto.Types.Dimension.Parser, new[]{ "DimValue", "DimParam", "Denotation" }, new[]{ "Value" }, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TypeProto), global::Onnx.TypeProto.Parser, new[]{ "TensorType", "Denotation" }, new[]{ "Value" }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TypeProto.Types.Tensor), global::Onnx.TypeProto.Types.Tensor.Parser, new[]{ "ElemType", "Shape" }, null, null, null), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.TypeProto.Types.SparseTensor), global::Onnx.TypeProto.Types.SparseTensor.Parser, new[]{ "ElemType", "Shape" }, null, null, null)}), new pbr::GeneratedClrTypeInfo(typeof(global::Onnx.OperatorSetIdProto), global::Onnx.OperatorSetIdProto.Parser, new[]{ "Domain", "Version" }, null, null, null) })); } #endregion } #region Enums /// /// Versioning /// /// ONNX versioning is specified in docs/IR.md and elaborated on in docs/Versioning.md /// /// To be compatible with both proto2 and proto3, we will use a version number /// that is not defined by the default value but an explicit enum number. /// internal enum Version { /// /// proto3 requires the first enum value to be zero. /// We add this just to appease the compiler. /// [pbr::OriginalName("_START_VERSION")] StartVersion = 0, /// /// The version field is always serialized and we will use it to store the /// version that the graph is generated from. This helps us set up version /// control. /// For the IR, we are using simple numbers starting with with 0x00000001, /// which was the version we published on Oct 10, 2017. /// [pbr::OriginalName("IR_VERSION_2017_10_10")] IrVersion20171010 = 1, /// /// IR_VERSION 2 published on Oct 30, 2017 /// - Added type discriminator to AttributeProto to support proto3 users /// [pbr::OriginalName("IR_VERSION_2017_10_30")] IrVersion20171030 = 2, /// /// IR VERSION 3 published on Nov 3, 2017 /// - For operator versioning: /// - Added new message OperatorSetIdProto /// - Added opset_import in ModelProto /// - For vendor extensions, added domain in NodeProto /// [pbr::OriginalName("IR_VERSION_2017_11_3")] IrVersion2017113 = 3, /// /// IR VERSION 4 published on Jan 22, 2019 /// - Relax constraint that initializers should be a subset of graph inputs /// - Add type BFLOAT16 /// [pbr::OriginalName("IR_VERSION_2019_1_22")] IrVersion2019122 = 4, /// /// IR VERSION 5 published on March 18, 2019 /// - Add message TensorAnnotation. /// - Add quantization annotation in GraphProto to map tensor with its scale and zero point quantization parameters. /// [pbr::OriginalName("IR_VERSION_2019_3_18")] IrVersion2019318 = 5, /// /// IR VERSION 6 published on <TBD> /// - Add support for sparse tensor constants stored in model. /// - Add message SparseTensorProto /// - Add sparse initializers /// [pbr::OriginalName("IR_VERSION")] IrVersion = 6, } #endregion #region Messages /// /// Attributes /// /// A named attribute containing either singular float, integer, string, graph, /// and tensor values, or repeated float, integer, string, graph, and tensor values. /// An AttributeProto MUST contain the name field, and *only one* of the /// following content fields, effectively enforcing a C/C++ union equivalent. /// internal sealed partial class AttributeProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new AttributeProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[0]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public AttributeProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public AttributeProto(AttributeProto other) : this() { name_ = other.name_; refAttrName_ = other.refAttrName_; docString_ = other.docString_; type_ = other.type_; f_ = other.f_; i_ = other.i_; s_ = other.s_; T = other.t_ != null ? other.T.Clone() : null; G = other.g_ != null ? other.G.Clone() : null; SparseTensor = other.sparseTensor_ != null ? other.SparseTensor.Clone() : null; floats_ = other.floats_.Clone(); ints_ = other.ints_.Clone(); strings_ = other.strings_.Clone(); tensors_ = other.tensors_.Clone(); graphs_ = other.graphs_.Clone(); sparseTensors_ = other.sparseTensors_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public AttributeProto Clone() { return new AttributeProto(this); } /// Field number for the "name" field. public const int NameFieldNumber = 1; private string name_ = ""; /// /// The name field MUST be present for this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Name { get { return name_; } set { name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "ref_attr_name" field. public const int RefAttrNameFieldNumber = 21; private string refAttrName_ = ""; /// /// if ref_attr_name is not empty, ref_attr_name is the attribute name in parent function. /// In this case, this AttributeProto does not contain data, and it's a reference of attribute /// in parent scope. /// NOTE: This should ONLY be used in function (sub-graph). It's invalid to be used in main graph. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string RefAttrName { get { return refAttrName_; } set { refAttrName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 13; private string docString_ = ""; /// /// A human-readable documentation for this attribute. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "type" field. public const int TypeFieldNumber = 20; private global::Onnx.AttributeProto.Types.AttributeType type_ = 0; /// /// The type field MUST be present for this version of the IR. /// For 0.0.1 versions of the IR, this field was not defined, and /// implementations needed to use has_field hueristics to determine /// which value field was in use. For IR_VERSION 0.0.2 or later, this /// field MUST be set and match the f|i|s|t|... field in use. This /// change was made to accomodate proto3 implementations. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.AttributeProto.Types.AttributeType Type { get { return type_; } set { type_ = value; } } /// Field number for the "f" field. public const int FFieldNumber = 2; private float f_; /// /// Exactly ONE of the following fields must be present for this version of the IR /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public float F { get { return f_; } set { f_ = value; } } /// Field number for the "i" field. public const int IFieldNumber = 3; private long i_; /// /// int /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long I { get { return i_; } set { i_ = value; } } /// Field number for the "s" field. public const int SFieldNumber = 4; private pb::ByteString s_ = pb::ByteString.Empty; /// /// UTF-8 string /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pb::ByteString S { get { return s_; } set { s_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "t" field. public const int TFieldNumber = 5; private global::Onnx.TensorProto t_; /// /// tensor value /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorProto T { get { return t_; } set { t_ = value; } } /// Field number for the "g" field. public const int GFieldNumber = 6; private global::Onnx.GraphProto g_; /// /// graph /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.GraphProto G { get { return g_; } set { g_ = value; } } /// Field number for the "sparse_tensor" field. public const int SparseTensorFieldNumber = 22; private global::Onnx.SparseTensorProto sparseTensor_; /// /// sparse tensor value /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.SparseTensorProto SparseTensor { get { return sparseTensor_; } set { sparseTensor_ = value; } } /// Field number for the "floats" field. public const int FloatsFieldNumber = 7; private static readonly pb::FieldCodec _repeated_floats_codec = pb::FieldCodec.ForFloat(58); private readonly pbc::RepeatedField floats_ = new pbc::RepeatedField(); /// /// list of floats /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Floats { get { return floats_; } } /// Field number for the "ints" field. public const int IntsFieldNumber = 8; private static readonly pb::FieldCodec _repeated_ints_codec = pb::FieldCodec.ForInt64(66); private readonly pbc::RepeatedField ints_ = new pbc::RepeatedField(); /// /// list of ints /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Ints { get { return ints_; } } /// Field number for the "strings" field. public const int StringsFieldNumber = 9; private static readonly pb::FieldCodec _repeated_strings_codec = pb::FieldCodec.ForBytes(74); private readonly pbc::RepeatedField strings_ = new pbc::RepeatedField(); /// /// list of UTF-8 strings /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Strings { get { return strings_; } } /// Field number for the "tensors" field. public const int TensorsFieldNumber = 10; private static readonly pb::FieldCodec _repeated_tensors_codec = pb::FieldCodec.ForMessage(82, global::Onnx.TensorProto.Parser); private readonly pbc::RepeatedField tensors_ = new pbc::RepeatedField(); /// /// list of tensors /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Tensors { get { return tensors_; } } /// Field number for the "graphs" field. public const int GraphsFieldNumber = 11; private static readonly pb::FieldCodec _repeated_graphs_codec = pb::FieldCodec.ForMessage(90, global::Onnx.GraphProto.Parser); private readonly pbc::RepeatedField graphs_ = new pbc::RepeatedField(); /// /// list of graph /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Graphs { get { return graphs_; } } /// Field number for the "sparse_tensors" field. public const int SparseTensorsFieldNumber = 23; private static readonly pb::FieldCodec _repeated_sparseTensors_codec = pb::FieldCodec.ForMessage(186, global::Onnx.SparseTensorProto.Parser); private readonly pbc::RepeatedField sparseTensors_ = new pbc::RepeatedField(); /// /// list of sparse tensors /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField SparseTensors { get { return sparseTensors_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as AttributeProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(AttributeProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (Name != other.Name) return false; if (RefAttrName != other.RefAttrName) return false; if (DocString != other.DocString) return false; if (Type != other.Type) return false; if (!pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.Equals(F, other.F)) return false; if (I != other.I) return false; if (S != other.S) return false; if (!object.Equals(T, other.T)) return false; if (!object.Equals(G, other.G)) return false; if (!object.Equals(SparseTensor, other.SparseTensor)) return false; if(!floats_.Equals(other.floats_)) return false; if(!ints_.Equals(other.ints_)) return false; if(!strings_.Equals(other.strings_)) return false; if(!tensors_.Equals(other.tensors_)) return false; if(!graphs_.Equals(other.graphs_)) return false; if(!sparseTensors_.Equals(other.sparseTensors_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (Name.Length != 0) hash ^= Name.GetHashCode(); if (RefAttrName.Length != 0) hash ^= RefAttrName.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); if (Type != 0) hash ^= Type.GetHashCode(); if (F != 0F) hash ^= pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.GetHashCode(F); if (I != 0L) hash ^= I.GetHashCode(); if (S.Length != 0) hash ^= S.GetHashCode(); if (t_ != null) hash ^= T.GetHashCode(); if (g_ != null) hash ^= G.GetHashCode(); if (sparseTensor_ != null) hash ^= SparseTensor.GetHashCode(); hash ^= floats_.GetHashCode(); hash ^= ints_.GetHashCode(); hash ^= strings_.GetHashCode(); hash ^= tensors_.GetHashCode(); hash ^= graphs_.GetHashCode(); hash ^= sparseTensors_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (Name.Length != 0) { output.WriteRawTag(10); output.WriteString(Name); } if (F != 0F) { output.WriteRawTag(21); output.WriteFloat(F); } if (I != 0L) { output.WriteRawTag(24); output.WriteInt64(I); } if (S.Length != 0) { output.WriteRawTag(34); output.WriteBytes(S); } if (t_ != null) { output.WriteRawTag(42); output.WriteMessage(T); } if (g_ != null) { output.WriteRawTag(50); output.WriteMessage(G); } floats_.WriteTo(output, _repeated_floats_codec); ints_.WriteTo(output, _repeated_ints_codec); strings_.WriteTo(output, _repeated_strings_codec); tensors_.WriteTo(output, _repeated_tensors_codec); graphs_.WriteTo(output, _repeated_graphs_codec); if (DocString.Length != 0) { output.WriteRawTag(106); output.WriteString(DocString); } if (Type != 0) { output.WriteRawTag(160, 1); output.WriteEnum((int) Type); } if (RefAttrName.Length != 0) { output.WriteRawTag(170, 1); output.WriteString(RefAttrName); } if (sparseTensor_ != null) { output.WriteRawTag(178, 1); output.WriteMessage(SparseTensor); } sparseTensors_.WriteTo(output, _repeated_sparseTensors_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (Name.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); } if (RefAttrName.Length != 0) { size += 2 + pb::CodedOutputStream.ComputeStringSize(RefAttrName); } if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } if (Type != 0) { size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) Type); } if (F != 0F) { size += 1 + 4; } if (I != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(I); } if (S.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeBytesSize(S); } if (t_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(T); } if (g_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(G); } if (sparseTensor_ != null) { size += 2 + pb::CodedOutputStream.ComputeMessageSize(SparseTensor); } size += floats_.CalculateSize(_repeated_floats_codec); size += ints_.CalculateSize(_repeated_ints_codec); size += strings_.CalculateSize(_repeated_strings_codec); size += tensors_.CalculateSize(_repeated_tensors_codec); size += graphs_.CalculateSize(_repeated_graphs_codec); size += sparseTensors_.CalculateSize(_repeated_sparseTensors_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(AttributeProto other) { if (other == null) { return; } if (other.Name.Length != 0) { Name = other.Name; } if (other.RefAttrName.Length != 0) { RefAttrName = other.RefAttrName; } if (other.DocString.Length != 0) { DocString = other.DocString; } if (other.Type != 0) { Type = other.Type; } if (other.F != 0F) { F = other.F; } if (other.I != 0L) { I = other.I; } if (other.S.Length != 0) { S = other.S; } if (other.t_ != null) { if (t_ == null) { t_ = new global::Onnx.TensorProto(); } T.MergeFrom(other.T); } if (other.g_ != null) { if (g_ == null) { g_ = new global::Onnx.GraphProto(); } G.MergeFrom(other.G); } if (other.sparseTensor_ != null) { if (sparseTensor_ == null) { sparseTensor_ = new global::Onnx.SparseTensorProto(); } SparseTensor.MergeFrom(other.SparseTensor); } floats_.Add(other.floats_); ints_.Add(other.ints_); strings_.Add(other.strings_); tensors_.Add(other.tensors_); graphs_.Add(other.graphs_); sparseTensors_.Add(other.sparseTensors_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { Name = input.ReadString(); break; } case 21: { F = input.ReadFloat(); break; } case 24: { I = input.ReadInt64(); break; } case 34: { S = input.ReadBytes(); break; } case 42: { if (t_ == null) { t_ = new global::Onnx.TensorProto(); } input.ReadMessage(t_); break; } case 50: { if (g_ == null) { g_ = new global::Onnx.GraphProto(); } input.ReadMessage(g_); break; } case 58: case 61: { floats_.AddEntriesFrom(input, _repeated_floats_codec); break; } case 66: case 64: { ints_.AddEntriesFrom(input, _repeated_ints_codec); break; } case 74: { strings_.AddEntriesFrom(input, _repeated_strings_codec); break; } case 82: { tensors_.AddEntriesFrom(input, _repeated_tensors_codec); break; } case 90: { graphs_.AddEntriesFrom(input, _repeated_graphs_codec); break; } case 106: { DocString = input.ReadString(); break; } case 160: { type_ = (global::Onnx.AttributeProto.Types.AttributeType) input.ReadEnum(); break; } case 170: { RefAttrName = input.ReadString(); break; } case 178: { if (sparseTensor_ == null) { sparseTensor_ = new global::Onnx.SparseTensorProto(); } input.ReadMessage(sparseTensor_); break; } case 186: { sparseTensors_.AddEntriesFrom(input, _repeated_sparseTensors_codec); break; } } } } #region Nested types /// Container for nested types declared in the AttributeProto message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static partial class Types { /// /// Note: this enum is structurally identical to the OpSchema::AttrType /// enum defined in schema.h. If you rev one, you likely need to rev the other. /// internal enum AttributeType { [pbr::OriginalName("UNDEFINED")] Undefined = 0, [pbr::OriginalName("FLOAT")] Float = 1, [pbr::OriginalName("INT")] Int = 2, [pbr::OriginalName("STRING")] String = 3, [pbr::OriginalName("TENSOR")] Tensor = 4, [pbr::OriginalName("GRAPH")] Graph = 5, [pbr::OriginalName("SPARSE_TENSOR")] SparseTensor = 11, [pbr::OriginalName("FLOATS")] Floats = 6, [pbr::OriginalName("INTS")] Ints = 7, [pbr::OriginalName("STRINGS")] Strings = 8, [pbr::OriginalName("TENSORS")] Tensors = 9, [pbr::OriginalName("GRAPHS")] Graphs = 10, [pbr::OriginalName("SPARSE_TENSORS")] SparseTensors = 12, } } #endregion } /// /// Defines information on value, including the name, the type, and /// the shape of the value. /// internal sealed partial class ValueInfoProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ValueInfoProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[1]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ValueInfoProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ValueInfoProto(ValueInfoProto other) : this() { name_ = other.name_; Type = other.type_ != null ? other.Type.Clone() : null; docString_ = other.docString_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ValueInfoProto Clone() { return new ValueInfoProto(this); } /// Field number for the "name" field. public const int NameFieldNumber = 1; private string name_ = ""; /// /// This field MUST be present in this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Name { get { return name_; } set { name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "type" field. public const int TypeFieldNumber = 2; private global::Onnx.TypeProto type_; /// /// This field MUST be present in this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TypeProto Type { get { return type_; } set { type_ = value; } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 3; private string docString_ = ""; /// /// A human-readable documentation for this value. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as ValueInfoProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(ValueInfoProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (Name != other.Name) return false; if (!object.Equals(Type, other.Type)) return false; if (DocString != other.DocString) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (Name.Length != 0) hash ^= Name.GetHashCode(); if (type_ != null) hash ^= Type.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (Name.Length != 0) { output.WriteRawTag(10); output.WriteString(Name); } if (type_ != null) { output.WriteRawTag(18); output.WriteMessage(Type); } if (DocString.Length != 0) { output.WriteRawTag(26); output.WriteString(DocString); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (Name.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); } if (type_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Type); } if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(ValueInfoProto other) { if (other == null) { return; } if (other.Name.Length != 0) { Name = other.Name; } if (other.type_ != null) { if (type_ == null) { type_ = new global::Onnx.TypeProto(); } Type.MergeFrom(other.Type); } if (other.DocString.Length != 0) { DocString = other.DocString; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { Name = input.ReadString(); break; } case 18: { if (type_ == null) { type_ = new global::Onnx.TypeProto(); } input.ReadMessage(type_); break; } case 26: { DocString = input.ReadString(); break; } } } } } /// /// Nodes /// /// Computation graphs are made up of a DAG of nodes, which represent what is /// commonly called a "layer" or "pipeline stage" in machine learning frameworks. /// /// For example, it can be a node of type "Conv" that takes in an image, a filter /// tensor and a bias tensor, and produces the convolved output. /// internal sealed partial class NodeProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new NodeProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[2]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public NodeProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public NodeProto(NodeProto other) : this() { input_ = other.input_.Clone(); output_ = other.output_.Clone(); name_ = other.name_; opType_ = other.opType_; domain_ = other.domain_; attribute_ = other.attribute_.Clone(); docString_ = other.docString_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public NodeProto Clone() { return new NodeProto(this); } /// Field number for the "input" field. public const int InputFieldNumber = 1; private static readonly pb::FieldCodec _repeated_input_codec = pb::FieldCodec.ForString(10); private readonly pbc::RepeatedField input_ = new pbc::RepeatedField(); /// /// namespace Value /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Input { get { return input_; } } /// Field number for the "output" field. public const int OutputFieldNumber = 2; private static readonly pb::FieldCodec _repeated_output_codec = pb::FieldCodec.ForString(18); private readonly pbc::RepeatedField output_ = new pbc::RepeatedField(); /// /// namespace Value /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Output { get { return output_; } } /// Field number for the "name" field. public const int NameFieldNumber = 3; private string name_ = ""; /// /// An optional identifier for this node in a graph. /// This field MAY be absent in ths version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Name { get { return name_; } set { name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "op_type" field. public const int OpTypeFieldNumber = 4; private string opType_ = ""; /// /// The symbolic identifier of the Operator to execute. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string OpType { get { return opType_; } set { opType_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "domain" field. public const int DomainFieldNumber = 7; private string domain_ = ""; /// /// The domain of the OperatorSet that specifies the operator named by op_type. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Domain { get { return domain_; } set { domain_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "attribute" field. public const int AttributeFieldNumber = 5; private static readonly pb::FieldCodec _repeated_attribute_codec = pb::FieldCodec.ForMessage(42, global::Onnx.AttributeProto.Parser); private readonly pbc::RepeatedField attribute_ = new pbc::RepeatedField(); /// /// Additional named attributes. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Attribute { get { return attribute_; } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 6; private string docString_ = ""; /// /// A human-readable documentation for this node. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as NodeProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(NodeProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if(!input_.Equals(other.input_)) return false; if(!output_.Equals(other.output_)) return false; if (Name != other.Name) return false; if (OpType != other.OpType) return false; if (Domain != other.Domain) return false; if(!attribute_.Equals(other.attribute_)) return false; if (DocString != other.DocString) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; hash ^= input_.GetHashCode(); hash ^= output_.GetHashCode(); if (Name.Length != 0) hash ^= Name.GetHashCode(); if (OpType.Length != 0) hash ^= OpType.GetHashCode(); if (Domain.Length != 0) hash ^= Domain.GetHashCode(); hash ^= attribute_.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { input_.WriteTo(output, _repeated_input_codec); output_.WriteTo(output, _repeated_output_codec); if (Name.Length != 0) { output.WriteRawTag(26); output.WriteString(Name); } if (OpType.Length != 0) { output.WriteRawTag(34); output.WriteString(OpType); } attribute_.WriteTo(output, _repeated_attribute_codec); if (DocString.Length != 0) { output.WriteRawTag(50); output.WriteString(DocString); } if (Domain.Length != 0) { output.WriteRawTag(58); output.WriteString(Domain); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; size += input_.CalculateSize(_repeated_input_codec); size += output_.CalculateSize(_repeated_output_codec); if (Name.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); } if (OpType.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(OpType); } if (Domain.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Domain); } size += attribute_.CalculateSize(_repeated_attribute_codec); if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(NodeProto other) { if (other == null) { return; } input_.Add(other.input_); output_.Add(other.output_); if (other.Name.Length != 0) { Name = other.Name; } if (other.OpType.Length != 0) { OpType = other.OpType; } if (other.Domain.Length != 0) { Domain = other.Domain; } attribute_.Add(other.attribute_); if (other.DocString.Length != 0) { DocString = other.DocString; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { input_.AddEntriesFrom(input, _repeated_input_codec); break; } case 18: { output_.AddEntriesFrom(input, _repeated_output_codec); break; } case 26: { Name = input.ReadString(); break; } case 34: { OpType = input.ReadString(); break; } case 42: { attribute_.AddEntriesFrom(input, _repeated_attribute_codec); break; } case 50: { DocString = input.ReadString(); break; } case 58: { Domain = input.ReadString(); break; } } } } } /// /// Models /// /// ModelProto is a top-level file/container format for bundling a ML model and /// associating its computation graph with metadata. /// /// The semantics of the model are described by the associated GraphProto. /// internal sealed partial class ModelProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new ModelProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[3]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ModelProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ModelProto(ModelProto other) : this() { irVersion_ = other.irVersion_; opsetImport_ = other.opsetImport_.Clone(); producerName_ = other.producerName_; producerVersion_ = other.producerVersion_; domain_ = other.domain_; modelVersion_ = other.modelVersion_; docString_ = other.docString_; Graph = other.graph_ != null ? other.Graph.Clone() : null; metadataProps_ = other.metadataProps_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ModelProto Clone() { return new ModelProto(this); } /// Field number for the "ir_version" field. public const int IrVersionFieldNumber = 1; private long irVersion_; /// /// The version of the IR this model targets. See Version enum above. /// This field MUST be present. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long IrVersion { get { return irVersion_; } set { irVersion_ = value; } } /// Field number for the "opset_import" field. public const int OpsetImportFieldNumber = 8; private static readonly pb::FieldCodec _repeated_opsetImport_codec = pb::FieldCodec.ForMessage(66, global::Onnx.OperatorSetIdProto.Parser); private readonly pbc::RepeatedField opsetImport_ = new pbc::RepeatedField(); /// /// The OperatorSets this model relies on. /// All ModelProtos MUST have at least one entry that /// specifies which version of the ONNX OperatorSet is /// being imported. /// /// All nodes in the ModelProto's graph will bind against the operator /// with the same-domain/same-op_type operator with the HIGHEST version /// in the referenced operator sets. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField OpsetImport { get { return opsetImport_; } } /// Field number for the "producer_name" field. public const int ProducerNameFieldNumber = 2; private string producerName_ = ""; /// /// The name of the framework or tool used to generate this model. /// This field SHOULD be present to indicate which implementation/tool/framework /// emitted the model. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string ProducerName { get { return producerName_; } set { producerName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "producer_version" field. public const int ProducerVersionFieldNumber = 3; private string producerVersion_ = ""; /// /// The version of the framework or tool used to generate this model. /// This field SHOULD be present to indicate which implementation/tool/framework /// emitted the model. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string ProducerVersion { get { return producerVersion_; } set { producerVersion_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "domain" field. public const int DomainFieldNumber = 4; private string domain_ = ""; /// /// Domain name of the model. /// We use reverse domain names as name space indicators. For example: /// `com.facebook.fair` or `com.microsoft.cognitiveservices` /// /// Together with `model_version` and GraphProto.name, this forms the unique identity of /// the graph. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Domain { get { return domain_; } set { domain_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "model_version" field. public const int ModelVersionFieldNumber = 5; private long modelVersion_; /// /// The version of the graph encoded. See Version enum below. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long ModelVersion { get { return modelVersion_; } set { modelVersion_ = value; } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 6; private string docString_ = ""; /// /// A human-readable documentation for this model. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "graph" field. public const int GraphFieldNumber = 7; private global::Onnx.GraphProto graph_; /// /// The parameterized graph that is evaluated to execute the model. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.GraphProto Graph { get { return graph_; } set { graph_ = value; } } /// Field number for the "metadata_props" field. public const int MetadataPropsFieldNumber = 14; private static readonly pb::FieldCodec _repeated_metadataProps_codec = pb::FieldCodec.ForMessage(114, global::Onnx.StringStringEntryProto.Parser); private readonly pbc::RepeatedField metadataProps_ = new pbc::RepeatedField(); /// /// Named metadata values; keys should be distinct. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField MetadataProps { get { return metadataProps_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as ModelProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(ModelProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (IrVersion != other.IrVersion) return false; if(!opsetImport_.Equals(other.opsetImport_)) return false; if (ProducerName != other.ProducerName) return false; if (ProducerVersion != other.ProducerVersion) return false; if (Domain != other.Domain) return false; if (ModelVersion != other.ModelVersion) return false; if (DocString != other.DocString) return false; if (!object.Equals(Graph, other.Graph)) return false; if(!metadataProps_.Equals(other.metadataProps_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (IrVersion != 0L) hash ^= IrVersion.GetHashCode(); hash ^= opsetImport_.GetHashCode(); if (ProducerName.Length != 0) hash ^= ProducerName.GetHashCode(); if (ProducerVersion.Length != 0) hash ^= ProducerVersion.GetHashCode(); if (Domain.Length != 0) hash ^= Domain.GetHashCode(); if (ModelVersion != 0L) hash ^= ModelVersion.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); if (graph_ != null) hash ^= Graph.GetHashCode(); hash ^= metadataProps_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (IrVersion != 0L) { output.WriteRawTag(8); output.WriteInt64(IrVersion); } if (ProducerName.Length != 0) { output.WriteRawTag(18); output.WriteString(ProducerName); } if (ProducerVersion.Length != 0) { output.WriteRawTag(26); output.WriteString(ProducerVersion); } if (Domain.Length != 0) { output.WriteRawTag(34); output.WriteString(Domain); } if (ModelVersion != 0L) { output.WriteRawTag(40); output.WriteInt64(ModelVersion); } if (DocString.Length != 0) { output.WriteRawTag(50); output.WriteString(DocString); } if (graph_ != null) { output.WriteRawTag(58); output.WriteMessage(Graph); } opsetImport_.WriteTo(output, _repeated_opsetImport_codec); metadataProps_.WriteTo(output, _repeated_metadataProps_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (IrVersion != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(IrVersion); } size += opsetImport_.CalculateSize(_repeated_opsetImport_codec); if (ProducerName.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(ProducerName); } if (ProducerVersion.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(ProducerVersion); } if (Domain.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Domain); } if (ModelVersion != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(ModelVersion); } if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } if (graph_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Graph); } size += metadataProps_.CalculateSize(_repeated_metadataProps_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(ModelProto other) { if (other == null) { return; } if (other.IrVersion != 0L) { IrVersion = other.IrVersion; } opsetImport_.Add(other.opsetImport_); if (other.ProducerName.Length != 0) { ProducerName = other.ProducerName; } if (other.ProducerVersion.Length != 0) { ProducerVersion = other.ProducerVersion; } if (other.Domain.Length != 0) { Domain = other.Domain; } if (other.ModelVersion != 0L) { ModelVersion = other.ModelVersion; } if (other.DocString.Length != 0) { DocString = other.DocString; } if (other.graph_ != null) { if (graph_ == null) { graph_ = new global::Onnx.GraphProto(); } Graph.MergeFrom(other.Graph); } metadataProps_.Add(other.metadataProps_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { IrVersion = input.ReadInt64(); break; } case 18: { ProducerName = input.ReadString(); break; } case 26: { ProducerVersion = input.ReadString(); break; } case 34: { Domain = input.ReadString(); break; } case 40: { ModelVersion = input.ReadInt64(); break; } case 50: { DocString = input.ReadString(); break; } case 58: { if (graph_ == null) { graph_ = new global::Onnx.GraphProto(); } input.ReadMessage(graph_); break; } case 66: { opsetImport_.AddEntriesFrom(input, _repeated_opsetImport_codec); break; } case 114: { metadataProps_.AddEntriesFrom(input, _repeated_metadataProps_codec); break; } } } } } /// /// StringStringEntryProto follows the pattern for cross-proto-version maps. /// See https://developers.google.com/protocol-buffers/docs/proto3#maps /// internal sealed partial class StringStringEntryProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new StringStringEntryProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[4]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public StringStringEntryProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public StringStringEntryProto(StringStringEntryProto other) : this() { key_ = other.key_; value_ = other.value_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public StringStringEntryProto Clone() { return new StringStringEntryProto(this); } /// Field number for the "key" field. public const int KeyFieldNumber = 1; private string key_ = ""; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Key { get { return key_; } set { key_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "value" field. public const int ValueFieldNumber = 2; private string value_ = ""; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Value { get { return value_; } set { value_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as StringStringEntryProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(StringStringEntryProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (Key != other.Key) return false; if (Value != other.Value) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (Key.Length != 0) hash ^= Key.GetHashCode(); if (Value.Length != 0) hash ^= Value.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (Key.Length != 0) { output.WriteRawTag(10); output.WriteString(Key); } if (Value.Length != 0) { output.WriteRawTag(18); output.WriteString(Value); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (Key.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Key); } if (Value.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Value); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(StringStringEntryProto other) { if (other == null) { return; } if (other.Key.Length != 0) { Key = other.Key; } if (other.Value.Length != 0) { Value = other.Value; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { Key = input.ReadString(); break; } case 18: { Value = input.ReadString(); break; } } } } } internal sealed partial class TensorAnnotation : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TensorAnnotation()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[5]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorAnnotation() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorAnnotation(TensorAnnotation other) : this() { tensorName_ = other.tensorName_; quantParameterTensorNames_ = other.quantParameterTensorNames_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorAnnotation Clone() { return new TensorAnnotation(this); } /// Field number for the "tensor_name" field. public const int TensorNameFieldNumber = 1; private string tensorName_ = ""; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string TensorName { get { return tensorName_; } set { tensorName_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "quant_parameter_tensor_names" field. public const int QuantParameterTensorNamesFieldNumber = 2; private static readonly pb::FieldCodec _repeated_quantParameterTensorNames_codec = pb::FieldCodec.ForMessage(18, global::Onnx.StringStringEntryProto.Parser); private readonly pbc::RepeatedField quantParameterTensorNames_ = new pbc::RepeatedField(); /// /// <key, value> pairs to annotate tensor specified by <tensor_name> above. /// The keys used in the mapping below must be pre-defined in ONNX spec. /// For example, for 8-bit linear quantization case, 'SCALE_TENSOR', 'ZERO_POINT_TENSOR' will be pre-defined as /// quantization parameter keys. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField QuantParameterTensorNames { get { return quantParameterTensorNames_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as TensorAnnotation); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(TensorAnnotation other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (TensorName != other.TensorName) return false; if(!quantParameterTensorNames_.Equals(other.quantParameterTensorNames_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (TensorName.Length != 0) hash ^= TensorName.GetHashCode(); hash ^= quantParameterTensorNames_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (TensorName.Length != 0) { output.WriteRawTag(10); output.WriteString(TensorName); } quantParameterTensorNames_.WriteTo(output, _repeated_quantParameterTensorNames_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (TensorName.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(TensorName); } size += quantParameterTensorNames_.CalculateSize(_repeated_quantParameterTensorNames_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(TensorAnnotation other) { if (other == null) { return; } if (other.TensorName.Length != 0) { TensorName = other.TensorName; } quantParameterTensorNames_.Add(other.quantParameterTensorNames_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { TensorName = input.ReadString(); break; } case 18: { quantParameterTensorNames_.AddEntriesFrom(input, _repeated_quantParameterTensorNames_codec); break; } } } } } /// /// Graphs /// /// A graph defines the computational logic of a model and is comprised of a parameterized /// list of nodes that form a directed acyclic graph based on their inputs and outputs. /// This is the equivalent of the "network" or "graph" in many deep learning /// frameworks. /// internal sealed partial class GraphProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new GraphProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[6]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public GraphProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public GraphProto(GraphProto other) : this() { node_ = other.node_.Clone(); name_ = other.name_; initializer_ = other.initializer_.Clone(); sparseInitializer_ = other.sparseInitializer_.Clone(); docString_ = other.docString_; input_ = other.input_.Clone(); output_ = other.output_.Clone(); valueInfo_ = other.valueInfo_.Clone(); quantizationAnnotation_ = other.quantizationAnnotation_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public GraphProto Clone() { return new GraphProto(this); } /// Field number for the "node" field. public const int NodeFieldNumber = 1; private static readonly pb::FieldCodec _repeated_node_codec = pb::FieldCodec.ForMessage(10, global::Onnx.NodeProto.Parser); private readonly pbc::RepeatedField node_ = new pbc::RepeatedField(); /// /// The nodes in the graph, sorted topologically. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Node { get { return node_; } } /// Field number for the "name" field. public const int NameFieldNumber = 2; private string name_ = ""; /// /// The name of the graph. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Name { get { return name_; } set { name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "initializer" field. public const int InitializerFieldNumber = 5; private static readonly pb::FieldCodec _repeated_initializer_codec = pb::FieldCodec.ForMessage(42, global::Onnx.TensorProto.Parser); private readonly pbc::RepeatedField initializer_ = new pbc::RepeatedField(); /// /// A list of named tensor values, used to specify constant inputs of the graph. /// Each TensorProto entry must have a distinct name (within the list) that /// MAY also appear in the input list. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Initializer { get { return initializer_; } } /// Field number for the "sparse_initializer" field. public const int SparseInitializerFieldNumber = 15; private static readonly pb::FieldCodec _repeated_sparseInitializer_codec = pb::FieldCodec.ForMessage(122, global::Onnx.SparseTensorProto.Parser); private readonly pbc::RepeatedField sparseInitializer_ = new pbc::RepeatedField(); /// /// Initializers (see above) stored in sparse format. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField SparseInitializer { get { return sparseInitializer_; } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 10; private string docString_ = ""; /// /// A human-readable documentation for this graph. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "input" field. public const int InputFieldNumber = 11; private static readonly pb::FieldCodec _repeated_input_codec = pb::FieldCodec.ForMessage(90, global::Onnx.ValueInfoProto.Parser); private readonly pbc::RepeatedField input_ = new pbc::RepeatedField(); /// /// The inputs and outputs of the graph. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Input { get { return input_; } } /// Field number for the "output" field. public const int OutputFieldNumber = 12; private static readonly pb::FieldCodec _repeated_output_codec = pb::FieldCodec.ForMessage(98, global::Onnx.ValueInfoProto.Parser); private readonly pbc::RepeatedField output_ = new pbc::RepeatedField(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Output { get { return output_; } } /// Field number for the "value_info" field. public const int ValueInfoFieldNumber = 13; private static readonly pb::FieldCodec _repeated_valueInfo_codec = pb::FieldCodec.ForMessage(106, global::Onnx.ValueInfoProto.Parser); private readonly pbc::RepeatedField valueInfo_ = new pbc::RepeatedField(); /// /// Information for the values in the graph. The ValueInfoProto.name's /// must be distinct. It is optional for a value to appear in value_info list. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField ValueInfo { get { return valueInfo_; } } /// Field number for the "quantization_annotation" field. public const int QuantizationAnnotationFieldNumber = 14; private static readonly pb::FieldCodec _repeated_quantizationAnnotation_codec = pb::FieldCodec.ForMessage(114, global::Onnx.TensorAnnotation.Parser); private readonly pbc::RepeatedField quantizationAnnotation_ = new pbc::RepeatedField(); /// /// This field carries information to indicate the mapping among a tensor and its /// quantization parameter tensors. For example: /// For tensor 'a', it may have {'SCALE_TENSOR', 'a_scale'} and {'ZERO_POINT_TENSOR', 'a_zero_point'} annotated, /// which means, tensor 'a_scale' and tensor 'a_zero_point' are scale and zero point of tensor 'a' in the model. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField QuantizationAnnotation { get { return quantizationAnnotation_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as GraphProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(GraphProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if(!node_.Equals(other.node_)) return false; if (Name != other.Name) return false; if(!initializer_.Equals(other.initializer_)) return false; if(!sparseInitializer_.Equals(other.sparseInitializer_)) return false; if (DocString != other.DocString) return false; if(!input_.Equals(other.input_)) return false; if(!output_.Equals(other.output_)) return false; if(!valueInfo_.Equals(other.valueInfo_)) return false; if(!quantizationAnnotation_.Equals(other.quantizationAnnotation_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; hash ^= node_.GetHashCode(); if (Name.Length != 0) hash ^= Name.GetHashCode(); hash ^= initializer_.GetHashCode(); hash ^= sparseInitializer_.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); hash ^= input_.GetHashCode(); hash ^= output_.GetHashCode(); hash ^= valueInfo_.GetHashCode(); hash ^= quantizationAnnotation_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { node_.WriteTo(output, _repeated_node_codec); if (Name.Length != 0) { output.WriteRawTag(18); output.WriteString(Name); } initializer_.WriteTo(output, _repeated_initializer_codec); if (DocString.Length != 0) { output.WriteRawTag(82); output.WriteString(DocString); } input_.WriteTo(output, _repeated_input_codec); output_.WriteTo(output, _repeated_output_codec); valueInfo_.WriteTo(output, _repeated_valueInfo_codec); quantizationAnnotation_.WriteTo(output, _repeated_quantizationAnnotation_codec); sparseInitializer_.WriteTo(output, _repeated_sparseInitializer_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; size += node_.CalculateSize(_repeated_node_codec); if (Name.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); } size += initializer_.CalculateSize(_repeated_initializer_codec); size += sparseInitializer_.CalculateSize(_repeated_sparseInitializer_codec); if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } size += input_.CalculateSize(_repeated_input_codec); size += output_.CalculateSize(_repeated_output_codec); size += valueInfo_.CalculateSize(_repeated_valueInfo_codec); size += quantizationAnnotation_.CalculateSize(_repeated_quantizationAnnotation_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(GraphProto other) { if (other == null) { return; } node_.Add(other.node_); if (other.Name.Length != 0) { Name = other.Name; } initializer_.Add(other.initializer_); sparseInitializer_.Add(other.sparseInitializer_); if (other.DocString.Length != 0) { DocString = other.DocString; } input_.Add(other.input_); output_.Add(other.output_); valueInfo_.Add(other.valueInfo_); quantizationAnnotation_.Add(other.quantizationAnnotation_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { node_.AddEntriesFrom(input, _repeated_node_codec); break; } case 18: { Name = input.ReadString(); break; } case 42: { initializer_.AddEntriesFrom(input, _repeated_initializer_codec); break; } case 82: { DocString = input.ReadString(); break; } case 90: { input_.AddEntriesFrom(input, _repeated_input_codec); break; } case 98: { output_.AddEntriesFrom(input, _repeated_output_codec); break; } case 106: { valueInfo_.AddEntriesFrom(input, _repeated_valueInfo_codec); break; } case 114: { quantizationAnnotation_.AddEntriesFrom(input, _repeated_quantizationAnnotation_codec); break; } case 122: { sparseInitializer_.AddEntriesFrom(input, _repeated_sparseInitializer_codec); break; } } } } } /// /// Tensors /// /// A serialized tensor value. /// internal sealed partial class TensorProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TensorProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[7]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorProto(TensorProto other) : this() { dims_ = other.dims_.Clone(); dataType_ = other.dataType_; Segment = other.segment_ != null ? other.Segment.Clone() : null; floatData_ = other.floatData_.Clone(); int32Data_ = other.int32Data_.Clone(); stringData_ = other.stringData_.Clone(); int64Data_ = other.int64Data_.Clone(); name_ = other.name_; docString_ = other.docString_; rawData_ = other.rawData_; externalData_ = other.externalData_.Clone(); dataLocation_ = other.dataLocation_; doubleData_ = other.doubleData_.Clone(); uint64Data_ = other.uint64Data_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorProto Clone() { return new TensorProto(this); } /// Field number for the "dims" field. public const int DimsFieldNumber = 1; private static readonly pb::FieldCodec _repeated_dims_codec = pb::FieldCodec.ForInt64(10); private readonly pbc::RepeatedField dims_ = new pbc::RepeatedField(); /// /// The shape of the tensor. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Dims { get { return dims_; } } /// Field number for the "data_type" field. public const int DataTypeFieldNumber = 2; private int dataType_; /// /// The data type of the tensor. /// This field MUST have a valid TensorProto.DataType value /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int DataType { get { return dataType_; } set { dataType_ = value; } } /// Field number for the "segment" field. public const int SegmentFieldNumber = 3; private global::Onnx.TensorProto.Types.Segment segment_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorProto.Types.Segment Segment { get { return segment_; } set { segment_ = value; } } /// Field number for the "float_data" field. public const int FloatDataFieldNumber = 4; private static readonly pb::FieldCodec _repeated_floatData_codec = pb::FieldCodec.ForFloat(34); private readonly pbc::RepeatedField floatData_ = new pbc::RepeatedField(); /// /// For float and complex64 values /// Complex64 tensors are encoded as a single array of floats, /// with the real components appearing in odd numbered positions, /// and the corresponding imaginary component apparing in the /// subsequent even numbered position. (e.g., [1.0 + 2.0i, 3.0 + 4.0i] /// is encoded as [1.0, 2.0 ,3.0 ,4.0] /// When this field is present, the data_type field MUST be FLOAT or COMPLEX64. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField FloatData { get { return floatData_; } } /// Field number for the "int32_data" field. public const int Int32DataFieldNumber = 5; private static readonly pb::FieldCodec _repeated_int32Data_codec = pb::FieldCodec.ForInt32(42); private readonly pbc::RepeatedField int32Data_ = new pbc::RepeatedField(); /// /// For int32, uint8, int8, uint16, int16, bool, and float16 values /// float16 values must be bit-wise converted to an uint16_t prior /// to writing to the buffer. /// When this field is present, the data_type field MUST be /// INT32, INT16, INT8, UINT16, UINT8, BOOL, or FLOAT16 /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Int32Data { get { return int32Data_; } } /// Field number for the "string_data" field. public const int StringDataFieldNumber = 6; private static readonly pb::FieldCodec _repeated_stringData_codec = pb::FieldCodec.ForBytes(50); private readonly pbc::RepeatedField stringData_ = new pbc::RepeatedField(); /// /// For strings. /// Each element of string_data is a UTF-8 encoded Unicode /// string. No trailing null, no leading BOM. The protobuf "string" /// scalar type is not used to match ML community conventions. /// When this field is present, the data_type field MUST be STRING /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField StringData { get { return stringData_; } } /// Field number for the "int64_data" field. public const int Int64DataFieldNumber = 7; private static readonly pb::FieldCodec _repeated_int64Data_codec = pb::FieldCodec.ForInt64(58); private readonly pbc::RepeatedField int64Data_ = new pbc::RepeatedField(); /// /// For int64. /// When this field is present, the data_type field MUST be INT64 /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Int64Data { get { return int64Data_; } } /// Field number for the "name" field. public const int NameFieldNumber = 8; private string name_ = ""; /// /// Optionally, a name for the tensor. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Name { get { return name_; } set { name_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "doc_string" field. public const int DocStringFieldNumber = 12; private string docString_ = ""; /// /// A human-readable documentation for this tensor. Markdown is allowed. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DocString { get { return docString_; } set { docString_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "raw_data" field. public const int RawDataFieldNumber = 9; private pb::ByteString rawData_ = pb::ByteString.Empty; /// /// Serializations can either use one of the fields above, or use this /// raw bytes field. The only exception is the string case, where one is /// required to store the content in the repeated bytes string_data field. /// /// When this raw_data field is used to store tensor value, elements MUST /// be stored in as fixed-width, little-endian order. /// Floating-point data types MUST be stored in IEEE 754 format. /// Complex64 elements must be written as two consecutive FLOAT values, real component first. /// Complex128 elements must be written as two consecutive DOUBLE values, real component first. /// Boolean type MUST be written one byte per tensor element (00000001 for true, 00000000 for false). /// /// Note: the advantage of specific field rather than the raw_data field is /// that in some cases (e.g. int data), protobuf does a better packing via /// variable length storage, and may lead to smaller binary footprint. /// When this field is present, the data_type field MUST NOT be STRING or UNDEFINED /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pb::ByteString RawData { get { return rawData_; } set { rawData_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "external_data" field. public const int ExternalDataFieldNumber = 13; private static readonly pb::FieldCodec _repeated_externalData_codec = pb::FieldCodec.ForMessage(106, global::Onnx.StringStringEntryProto.Parser); private readonly pbc::RepeatedField externalData_ = new pbc::RepeatedField(); /// /// Data can be stored inside the protobuf file using type-specific fields or raw_data. /// Alternatively, raw bytes data can be stored in an external file, using the external_data field. /// external_data stores key-value pairs describing data location. Recognized keys are: /// - "location" (required) - POSIX filesystem path relative to the directory where the ONNX /// protobuf model was stored /// - "offset" (optional) - position of byte at which stored data begins. Integer stored as string. /// Offset values SHOULD be multiples 4096 (page size) to enable mmap support. /// - "length" (optional) - number of bytes containing data. Integer stored as string. /// - "checksum" (optional) - SHA1 digest of file specified in under 'location' key. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField ExternalData { get { return externalData_; } } /// Field number for the "data_location" field. public const int DataLocationFieldNumber = 14; private global::Onnx.TensorProto.Types.DataLocation dataLocation_ = 0; /// /// If value not set, data is stored in raw_data (if set) otherwise in type-specified field. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorProto.Types.DataLocation DataLocation { get { return dataLocation_; } set { dataLocation_ = value; } } /// Field number for the "double_data" field. public const int DoubleDataFieldNumber = 10; private static readonly pb::FieldCodec _repeated_doubleData_codec = pb::FieldCodec.ForDouble(82); private readonly pbc::RepeatedField doubleData_ = new pbc::RepeatedField(); /// /// For double /// Complex128 tensors are encoded as a single array of doubles, /// with the real components appearing in odd numbered positions, /// and the corresponding imaginary component apparing in the /// subsequent even numbered position. (e.g., [1.0 + 2.0i, 3.0 + 4.0i] /// is encoded as [1.0, 2.0 ,3.0 ,4.0] /// When this field is present, the data_type field MUST be DOUBLE or COMPLEX128 /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField DoubleData { get { return doubleData_; } } /// Field number for the "uint64_data" field. public const int Uint64DataFieldNumber = 11; private static readonly pb::FieldCodec _repeated_uint64Data_codec = pb::FieldCodec.ForUInt64(90); private readonly pbc::RepeatedField uint64Data_ = new pbc::RepeatedField(); /// /// For uint64 and uint32 values /// When this field is present, the data_type field MUST be /// UINT32 or UINT64 /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Uint64Data { get { return uint64Data_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as TensorProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(TensorProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if(!dims_.Equals(other.dims_)) return false; if (DataType != other.DataType) return false; if (!object.Equals(Segment, other.Segment)) return false; if(!floatData_.Equals(other.floatData_)) return false; if(!int32Data_.Equals(other.int32Data_)) return false; if(!stringData_.Equals(other.stringData_)) return false; if(!int64Data_.Equals(other.int64Data_)) return false; if (Name != other.Name) return false; if (DocString != other.DocString) return false; if (RawData != other.RawData) return false; if(!externalData_.Equals(other.externalData_)) return false; if (DataLocation != other.DataLocation) return false; if(!doubleData_.Equals(other.doubleData_)) return false; if(!uint64Data_.Equals(other.uint64Data_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; hash ^= dims_.GetHashCode(); if (DataType != 0) hash ^= DataType.GetHashCode(); if (segment_ != null) hash ^= Segment.GetHashCode(); hash ^= floatData_.GetHashCode(); hash ^= int32Data_.GetHashCode(); hash ^= stringData_.GetHashCode(); hash ^= int64Data_.GetHashCode(); if (Name.Length != 0) hash ^= Name.GetHashCode(); if (DocString.Length != 0) hash ^= DocString.GetHashCode(); if (RawData.Length != 0) hash ^= RawData.GetHashCode(); hash ^= externalData_.GetHashCode(); if (DataLocation != 0) hash ^= DataLocation.GetHashCode(); hash ^= doubleData_.GetHashCode(); hash ^= uint64Data_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { dims_.WriteTo(output, _repeated_dims_codec); if (DataType != 0) { output.WriteRawTag(16); output.WriteInt32(DataType); } if (segment_ != null) { output.WriteRawTag(26); output.WriteMessage(Segment); } floatData_.WriteTo(output, _repeated_floatData_codec); int32Data_.WriteTo(output, _repeated_int32Data_codec); stringData_.WriteTo(output, _repeated_stringData_codec); int64Data_.WriteTo(output, _repeated_int64Data_codec); if (Name.Length != 0) { output.WriteRawTag(66); output.WriteString(Name); } if (RawData.Length != 0) { output.WriteRawTag(74); output.WriteBytes(RawData); } doubleData_.WriteTo(output, _repeated_doubleData_codec); uint64Data_.WriteTo(output, _repeated_uint64Data_codec); if (DocString.Length != 0) { output.WriteRawTag(98); output.WriteString(DocString); } externalData_.WriteTo(output, _repeated_externalData_codec); if (DataLocation != 0) { output.WriteRawTag(112); output.WriteEnum((int) DataLocation); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; size += dims_.CalculateSize(_repeated_dims_codec); if (DataType != 0) { size += 1 + pb::CodedOutputStream.ComputeInt32Size(DataType); } if (segment_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Segment); } size += floatData_.CalculateSize(_repeated_floatData_codec); size += int32Data_.CalculateSize(_repeated_int32Data_codec); size += stringData_.CalculateSize(_repeated_stringData_codec); size += int64Data_.CalculateSize(_repeated_int64Data_codec); if (Name.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Name); } if (DocString.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DocString); } if (RawData.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeBytesSize(RawData); } size += externalData_.CalculateSize(_repeated_externalData_codec); if (DataLocation != 0) { size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DataLocation); } size += doubleData_.CalculateSize(_repeated_doubleData_codec); size += uint64Data_.CalculateSize(_repeated_uint64Data_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(TensorProto other) { if (other == null) { return; } dims_.Add(other.dims_); if (other.DataType != 0) { DataType = other.DataType; } if (other.segment_ != null) { if (segment_ == null) { segment_ = new global::Onnx.TensorProto.Types.Segment(); } Segment.MergeFrom(other.Segment); } floatData_.Add(other.floatData_); int32Data_.Add(other.int32Data_); stringData_.Add(other.stringData_); int64Data_.Add(other.int64Data_); if (other.Name.Length != 0) { Name = other.Name; } if (other.DocString.Length != 0) { DocString = other.DocString; } if (other.RawData.Length != 0) { RawData = other.RawData; } externalData_.Add(other.externalData_); if (other.DataLocation != 0) { DataLocation = other.DataLocation; } doubleData_.Add(other.doubleData_); uint64Data_.Add(other.uint64Data_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: case 8: { dims_.AddEntriesFrom(input, _repeated_dims_codec); break; } case 16: { DataType = input.ReadInt32(); break; } case 26: { if (segment_ == null) { segment_ = new global::Onnx.TensorProto.Types.Segment(); } input.ReadMessage(segment_); break; } case 34: case 37: { floatData_.AddEntriesFrom(input, _repeated_floatData_codec); break; } case 42: case 40: { int32Data_.AddEntriesFrom(input, _repeated_int32Data_codec); break; } case 50: { stringData_.AddEntriesFrom(input, _repeated_stringData_codec); break; } case 58: case 56: { int64Data_.AddEntriesFrom(input, _repeated_int64Data_codec); break; } case 66: { Name = input.ReadString(); break; } case 74: { RawData = input.ReadBytes(); break; } case 82: case 81: { doubleData_.AddEntriesFrom(input, _repeated_doubleData_codec); break; } case 90: case 88: { uint64Data_.AddEntriesFrom(input, _repeated_uint64Data_codec); break; } case 98: { DocString = input.ReadString(); break; } case 106: { externalData_.AddEntriesFrom(input, _repeated_externalData_codec); break; } case 112: { dataLocation_ = (global::Onnx.TensorProto.Types.DataLocation) input.ReadEnum(); break; } } } } #region Nested types /// Container for nested types declared in the TensorProto message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static partial class Types { internal enum DataType { [pbr::OriginalName("UNDEFINED")] Undefined = 0, /// /// Basic types. /// [pbr::OriginalName("FLOAT")] Float = 1, /// /// uint8_t /// [pbr::OriginalName("UINT8")] Uint8 = 2, /// /// int8_t /// [pbr::OriginalName("INT8")] Int8 = 3, /// /// uint16_t /// [pbr::OriginalName("UINT16")] Uint16 = 4, /// /// int16_t /// [pbr::OriginalName("INT16")] Int16 = 5, /// /// int32_t /// [pbr::OriginalName("INT32")] Int32 = 6, /// /// int64_t /// [pbr::OriginalName("INT64")] Int64 = 7, /// /// string /// [pbr::OriginalName("STRING")] String = 8, /// /// bool /// [pbr::OriginalName("BOOL")] Bool = 9, /// /// IEEE754 half-precision floating-point format (16 bits wide). /// This format has 1 sign bit, 5 exponent bits, and 10 mantissa bits. /// [pbr::OriginalName("FLOAT16")] Float16 = 10, [pbr::OriginalName("DOUBLE")] Double = 11, [pbr::OriginalName("UINT32")] Uint32 = 12, [pbr::OriginalName("UINT64")] Uint64 = 13, /// /// complex with float32 real and imaginary components /// [pbr::OriginalName("COMPLEX64")] Complex64 = 14, /// /// complex with float64 real and imaginary components /// [pbr::OriginalName("COMPLEX128")] Complex128 = 15, /// /// Non-IEEE floating-point format based on IEEE754 single-precision /// floating-point number truncated to 16 bits. /// This format has 1 sign bit, 8 exponent bits, and 7 mantissa bits. /// [pbr::OriginalName("BFLOAT16")] Bfloat16 = 16, } /// /// Location of the data for this tensor. MUST be one of: /// - DEFAULT - data stored inside the protobuf message. Data is stored in raw_data (if set) otherwise in type-specified field. /// - EXTERNAL - data stored in an external location as described by external_data field. /// internal enum DataLocation { [pbr::OriginalName("DEFAULT")] Default = 0, [pbr::OriginalName("EXTERNAL")] External = 1, } /// /// For very large tensors, we may want to store them in chunks, in which /// case the following fields will specify the segment that is stored in /// the current TensorProto. /// internal sealed partial class Segment : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new Segment()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.TensorProto.Descriptor.NestedTypes[0]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Segment() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Segment(Segment other) : this() { begin_ = other.begin_; end_ = other.end_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Segment Clone() { return new Segment(this); } /// Field number for the "begin" field. public const int BeginFieldNumber = 1; private long begin_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long Begin { get { return begin_; } set { begin_ = value; } } /// Field number for the "end" field. public const int EndFieldNumber = 2; private long end_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long End { get { return end_; } set { end_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as Segment); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(Segment other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (Begin != other.Begin) return false; if (End != other.End) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (Begin != 0L) hash ^= Begin.GetHashCode(); if (End != 0L) hash ^= End.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (Begin != 0L) { output.WriteRawTag(8); output.WriteInt64(Begin); } if (End != 0L) { output.WriteRawTag(16); output.WriteInt64(End); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (Begin != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(Begin); } if (End != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(End); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(Segment other) { if (other == null) { return; } if (other.Begin != 0L) { Begin = other.Begin; } if (other.End != 0L) { End = other.End; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { Begin = input.ReadInt64(); break; } case 16: { End = input.ReadInt64(); break; } } } } } } #endregion } /// /// A serialized sparse-tensor value /// internal sealed partial class SparseTensorProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SparseTensorProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[8]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensorProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensorProto(SparseTensorProto other) : this() { Values = other.values_ != null ? other.Values.Clone() : null; Indices = other.indices_ != null ? other.Indices.Clone() : null; dims_ = other.dims_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensorProto Clone() { return new SparseTensorProto(this); } /// Field number for the "values" field. public const int ValuesFieldNumber = 1; private global::Onnx.TensorProto values_; /// /// The sequence of non-default values are encoded as a tensor of shape [NNZ]. /// The default-value is zero for numeric tensors, and empty-string for string tensors. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorProto Values { get { return values_; } set { values_ = value; } } /// Field number for the "indices" field. public const int IndicesFieldNumber = 2; private global::Onnx.TensorProto indices_; /// /// The indices of the non-default values, which may be stored in one of two formats. /// (a) Indices can be a tensor of shape [NNZ, rank] with the [i,j]-th value /// corresponding to the j-th index of the i-th value (in the values tensor). /// (b) Indices can be a tensor of shape [NNZ], in which case the i-th value /// must be the linearized-index of the i-th value (in the values tensor). /// The linearized-index can be converted into an index tuple (k_1,...,k_rank) /// using the shape provided below. /// The indices must appear in ascending order without duplication. /// In the first format, the ordering is lexicographic-ordering: /// e.g., index-value [1,4] must appear before [2,1] /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorProto Indices { get { return indices_; } set { indices_ = value; } } /// Field number for the "dims" field. public const int DimsFieldNumber = 3; private static readonly pb::FieldCodec _repeated_dims_codec = pb::FieldCodec.ForInt64(26); private readonly pbc::RepeatedField dims_ = new pbc::RepeatedField(); /// /// The shape of the underlying dense-tensor: [dim_1, dim_2, ... dim_rank] /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Dims { get { return dims_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as SparseTensorProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(SparseTensorProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (!object.Equals(Values, other.Values)) return false; if (!object.Equals(Indices, other.Indices)) return false; if(!dims_.Equals(other.dims_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (values_ != null) hash ^= Values.GetHashCode(); if (indices_ != null) hash ^= Indices.GetHashCode(); hash ^= dims_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (values_ != null) { output.WriteRawTag(10); output.WriteMessage(Values); } if (indices_ != null) { output.WriteRawTag(18); output.WriteMessage(Indices); } dims_.WriteTo(output, _repeated_dims_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (values_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Values); } if (indices_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Indices); } size += dims_.CalculateSize(_repeated_dims_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(SparseTensorProto other) { if (other == null) { return; } if (other.values_ != null) { if (values_ == null) { values_ = new global::Onnx.TensorProto(); } Values.MergeFrom(other.Values); } if (other.indices_ != null) { if (indices_ == null) { indices_ = new global::Onnx.TensorProto(); } Indices.MergeFrom(other.Indices); } dims_.Add(other.dims_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { if (values_ == null) { values_ = new global::Onnx.TensorProto(); } input.ReadMessage(values_); break; } case 18: { if (indices_ == null) { indices_ = new global::Onnx.TensorProto(); } input.ReadMessage(indices_); break; } case 26: case 24: { dims_.AddEntriesFrom(input, _repeated_dims_codec); break; } } } } } /// /// Defines a tensor shape. A dimension can be either an integer value /// or a symbolic variable. A symbolic variable represents an unknown /// dimension. /// internal sealed partial class TensorShapeProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TensorShapeProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[9]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorShapeProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorShapeProto(TensorShapeProto other) : this() { dim_ = other.dim_.Clone(); _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TensorShapeProto Clone() { return new TensorShapeProto(this); } /// Field number for the "dim" field. public const int DimFieldNumber = 1; private static readonly pb::FieldCodec _repeated_dim_codec = pb::FieldCodec.ForMessage(10, global::Onnx.TensorShapeProto.Types.Dimension.Parser); private readonly pbc::RepeatedField dim_ = new pbc::RepeatedField(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public pbc::RepeatedField Dim { get { return dim_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as TensorShapeProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(TensorShapeProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if(!dim_.Equals(other.dim_)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; hash ^= dim_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { dim_.WriteTo(output, _repeated_dim_codec); if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; size += dim_.CalculateSize(_repeated_dim_codec); if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(TensorShapeProto other) { if (other == null) { return; } dim_.Add(other.dim_); _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { dim_.AddEntriesFrom(input, _repeated_dim_codec); break; } } } } #region Nested types /// Container for nested types declared in the TensorShapeProto message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static partial class Types { internal sealed partial class Dimension : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new Dimension()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.TensorShapeProto.Descriptor.NestedTypes[0]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Dimension() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Dimension(Dimension other) : this() { denotation_ = other.denotation_; switch (other.ValueCase) { case ValueOneofCase.DimValue: DimValue = other.DimValue; break; case ValueOneofCase.DimParam: DimParam = other.DimParam; break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Dimension Clone() { return new Dimension(this); } /// Field number for the "dim_value" field. public const int DimValueFieldNumber = 1; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long DimValue { get { return valueCase_ == ValueOneofCase.DimValue ? (long) value_ : 0L; } set { value_ = value; valueCase_ = ValueOneofCase.DimValue; } } /// Field number for the "dim_param" field. public const int DimParamFieldNumber = 2; /// /// namespace Shape /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string DimParam { get { return valueCase_ == ValueOneofCase.DimParam ? (string) value_ : ""; } set { value_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); valueCase_ = ValueOneofCase.DimParam; } } /// Field number for the "denotation" field. public const int DenotationFieldNumber = 3; private string denotation_ = ""; /// /// Standard denotation can optionally be used to denote tensor /// dimensions with standard semantic descriptions to ensure /// that operations are applied to the correct axis of a tensor. /// Refer to https://github.com/onnx/onnx/blob/master/docs/DimensionDenotation.md#denotation-definition /// for pre-defined dimension denotations. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Denotation { get { return denotation_; } set { denotation_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } private object value_; /// Enum of possible cases for the "value" oneof. public enum ValueOneofCase { None = 0, DimValue = 1, DimParam = 2, } private ValueOneofCase valueCase_ = ValueOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ValueOneofCase ValueCase { get { return valueCase_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void ClearValue() { valueCase_ = ValueOneofCase.None; value_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as Dimension); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(Dimension other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (DimValue != other.DimValue) return false; if (DimParam != other.DimParam) return false; if (Denotation != other.Denotation) return false; if (ValueCase != other.ValueCase) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (valueCase_ == ValueOneofCase.DimValue) hash ^= DimValue.GetHashCode(); if (valueCase_ == ValueOneofCase.DimParam) hash ^= DimParam.GetHashCode(); if (Denotation.Length != 0) hash ^= Denotation.GetHashCode(); hash ^= (int) valueCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (valueCase_ == ValueOneofCase.DimValue) { output.WriteRawTag(8); output.WriteInt64(DimValue); } if (valueCase_ == ValueOneofCase.DimParam) { output.WriteRawTag(18); output.WriteString(DimParam); } if (Denotation.Length != 0) { output.WriteRawTag(26); output.WriteString(Denotation); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (valueCase_ == ValueOneofCase.DimValue) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(DimValue); } if (valueCase_ == ValueOneofCase.DimParam) { size += 1 + pb::CodedOutputStream.ComputeStringSize(DimParam); } if (Denotation.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Denotation); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(Dimension other) { if (other == null) { return; } if (other.Denotation.Length != 0) { Denotation = other.Denotation; } switch (other.ValueCase) { case ValueOneofCase.DimValue: DimValue = other.DimValue; break; case ValueOneofCase.DimParam: DimParam = other.DimParam; break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { DimValue = input.ReadInt64(); break; } case 18: { DimParam = input.ReadString(); break; } case 26: { Denotation = input.ReadString(); break; } } } } } } #endregion } /// /// Types /// /// The standard ONNX data types. /// internal sealed partial class TypeProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TypeProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[10]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TypeProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TypeProto(TypeProto other) : this() { denotation_ = other.denotation_; switch (other.ValueCase) { case ValueOneofCase.TensorType: TensorType = other.TensorType.Clone(); break; } _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public TypeProto Clone() { return new TypeProto(this); } /// Field number for the "tensor_type" field. public const int TensorTypeFieldNumber = 1; /// /// The type of a tensor. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TypeProto.Types.Tensor TensorType { get { return valueCase_ == ValueOneofCase.TensorType ? (global::Onnx.TypeProto.Types.Tensor) value_ : null; } set { value_ = value; valueCase_ = value == null ? ValueOneofCase.None : ValueOneofCase.TensorType; } } /// Field number for the "denotation" field. public const int DenotationFieldNumber = 6; private string denotation_ = ""; /// /// An optional denotation can be used to denote the whole /// type with a standard semantic description as to what is /// stored inside. Refer to https://github.com/onnx/onnx/blob/master/docs/TypeDenotation.md#type-denotation-definition /// for pre-defined type denotations. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Denotation { get { return denotation_; } set { denotation_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } private object value_; /// Enum of possible cases for the "value" oneof. public enum ValueOneofCase { None = 0, TensorType = 1, } private ValueOneofCase valueCase_ = ValueOneofCase.None; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public ValueOneofCase ValueCase { get { return valueCase_; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void ClearValue() { valueCase_ = ValueOneofCase.None; value_ = null; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as TypeProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(TypeProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (!object.Equals(TensorType, other.TensorType)) return false; if (Denotation != other.Denotation) return false; if (ValueCase != other.ValueCase) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (valueCase_ == ValueOneofCase.TensorType) hash ^= TensorType.GetHashCode(); if (Denotation.Length != 0) hash ^= Denotation.GetHashCode(); hash ^= (int) valueCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (valueCase_ == ValueOneofCase.TensorType) { output.WriteRawTag(10); output.WriteMessage(TensorType); } if (Denotation.Length != 0) { output.WriteRawTag(50); output.WriteString(Denotation); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (valueCase_ == ValueOneofCase.TensorType) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(TensorType); } if (Denotation.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Denotation); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(TypeProto other) { if (other == null) { return; } if (other.Denotation.Length != 0) { Denotation = other.Denotation; } switch (other.ValueCase) { case ValueOneofCase.TensorType: if (TensorType == null) { TensorType = new global::Onnx.TypeProto.Types.Tensor(); } TensorType.MergeFrom(other.TensorType); break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { global::Onnx.TypeProto.Types.Tensor subBuilder = new global::Onnx.TypeProto.Types.Tensor(); if (valueCase_ == ValueOneofCase.TensorType) { subBuilder.MergeFrom(TensorType); } input.ReadMessage(subBuilder); TensorType = subBuilder; break; } case 50: { Denotation = input.ReadString(); break; } } } } #region Nested types /// Container for nested types declared in the TypeProto message type. [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static partial class Types { internal sealed partial class Tensor : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new Tensor()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.TypeProto.Descriptor.NestedTypes[0]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Tensor() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Tensor(Tensor other) : this() { elemType_ = other.elemType_; Shape = other.shape_ != null ? other.Shape.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public Tensor Clone() { return new Tensor(this); } /// Field number for the "elem_type" field. public const int ElemTypeFieldNumber = 1; private int elemType_; /// /// This field MUST NOT have the value of UNDEFINED /// This field MUST have a valid TensorProto.DataType value /// This field MUST be present for this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int ElemType { get { return elemType_; } set { elemType_ = value; } } /// Field number for the "shape" field. public const int ShapeFieldNumber = 2; private global::Onnx.TensorShapeProto shape_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorShapeProto Shape { get { return shape_; } set { shape_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as Tensor); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(Tensor other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (ElemType != other.ElemType) return false; if (!object.Equals(Shape, other.Shape)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (ElemType != 0) hash ^= ElemType.GetHashCode(); if (shape_ != null) hash ^= Shape.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (ElemType != 0) { output.WriteRawTag(8); output.WriteInt32(ElemType); } if (shape_ != null) { output.WriteRawTag(18); output.WriteMessage(Shape); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (ElemType != 0) { size += 1 + pb::CodedOutputStream.ComputeInt32Size(ElemType); } if (shape_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Shape); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(Tensor other) { if (other == null) { return; } if (other.ElemType != 0) { ElemType = other.ElemType; } if (other.shape_ != null) { if (shape_ == null) { shape_ = new global::Onnx.TensorShapeProto(); } Shape.MergeFrom(other.Shape); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { ElemType = input.ReadInt32(); break; } case 18: { if (shape_ == null) { shape_ = new global::Onnx.TensorShapeProto(); } input.ReadMessage(shape_); break; } } } } } internal sealed partial class SparseTensor : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new SparseTensor()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.TypeProto.Descriptor.NestedTypes[1]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensor() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensor(SparseTensor other) : this() { elemType_ = other.elemType_; Shape = other.shape_ != null ? other.Shape.Clone() : null; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public SparseTensor Clone() { return new SparseTensor(this); } /// Field number for the "elem_type" field. public const int ElemTypeFieldNumber = 1; private int elemType_; /// /// This field MUST NOT have the value of UNDEFINED /// This field MUST have a valid TensorProto.DataType value /// This field MUST be present for this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int ElemType { get { return elemType_; } set { elemType_ = value; } } /// Field number for the "shape" field. public const int ShapeFieldNumber = 2; private global::Onnx.TensorShapeProto shape_; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public global::Onnx.TensorShapeProto Shape { get { return shape_; } set { shape_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as SparseTensor); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(SparseTensor other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (ElemType != other.ElemType) return false; if (!object.Equals(Shape, other.Shape)) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (ElemType != 0) hash ^= ElemType.GetHashCode(); if (shape_ != null) hash ^= Shape.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (ElemType != 0) { output.WriteRawTag(8); output.WriteInt32(ElemType); } if (shape_ != null) { output.WriteRawTag(18); output.WriteMessage(Shape); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (ElemType != 0) { size += 1 + pb::CodedOutputStream.ComputeInt32Size(ElemType); } if (shape_ != null) { size += 1 + pb::CodedOutputStream.ComputeMessageSize(Shape); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(SparseTensor other) { if (other == null) { return; } if (other.ElemType != 0) { ElemType = other.ElemType; } if (other.shape_ != null) { if (shape_ == null) { shape_ = new global::Onnx.TensorShapeProto(); } Shape.MergeFrom(other.Shape); } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 8: { ElemType = input.ReadInt32(); break; } case 18: { if (shape_ == null) { shape_ = new global::Onnx.TensorShapeProto(); } input.ReadMessage(shape_); break; } } } } } } #endregion } /// /// Operator Sets /// /// OperatorSets are uniquely identified by a (domain, opset_version) pair. /// internal sealed partial class OperatorSetIdProto : pb::IMessage { private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new OperatorSetIdProto()); private pb::UnknownFieldSet _unknownFields; [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pb::MessageParser Parser { get { return _parser; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public static pbr::MessageDescriptor Descriptor { get { return global::Onnx.OnnxReflection.Descriptor.MessageTypes[11]; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] pbr::MessageDescriptor pb::IMessage.Descriptor { get { return Descriptor; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public OperatorSetIdProto() { OnConstruction(); } partial void OnConstruction(); [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public OperatorSetIdProto(OperatorSetIdProto other) : this() { domain_ = other.domain_; version_ = other.version_; _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public OperatorSetIdProto Clone() { return new OperatorSetIdProto(this); } /// Field number for the "domain" field. public const int DomainFieldNumber = 1; private string domain_ = ""; /// /// The domain of the operator set being identified. /// The empty string ("") or absence of this field implies the operator /// set that is defined as part of the ONNX specification. /// This field MUST be present in this version of the IR when referring to any other operator set. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public string Domain { get { return domain_; } set { domain_ = pb::ProtoPreconditions.CheckNotNull(value, "value"); } } /// Field number for the "version" field. public const int VersionFieldNumber = 2; private long version_; /// /// The version of the operator set being identified. /// This field MUST be present in this version of the IR. /// [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public long Version { get { return version_; } set { version_ = value; } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override bool Equals(object other) { return Equals(other as OperatorSetIdProto); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public bool Equals(OperatorSetIdProto other) { if (ReferenceEquals(other, null)) { return false; } if (ReferenceEquals(other, this)) { return true; } if (Domain != other.Domain) return false; if (Version != other.Version) return false; return Equals(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override int GetHashCode() { int hash = 1; if (Domain.Length != 0) hash ^= Domain.GetHashCode(); if (Version != 0L) hash ^= Version.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return hash; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public override string ToString() { return pb::JsonFormatter.ToDiagnosticString(this); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void WriteTo(pb::CodedOutputStream output) { if (Domain.Length != 0) { output.WriteRawTag(10); output.WriteString(Domain); } if (Version != 0L) { output.WriteRawTag(16); output.WriteInt64(Version); } if (_unknownFields != null) { _unknownFields.WriteTo(output); } } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public int CalculateSize() { int size = 0; if (Domain.Length != 0) { size += 1 + pb::CodedOutputStream.ComputeStringSize(Domain); } if (Version != 0L) { size += 1 + pb::CodedOutputStream.ComputeInt64Size(Version); } if (_unknownFields != null) { size += _unknownFields.CalculateSize(); } return size; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(OperatorSetIdProto other) { if (other == null) { return; } if (other.Domain.Length != 0) { Domain = other.Domain; } if (other.Version != 0L) { Version = other.Version; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute] public void MergeFrom(pb::CodedInputStream input) { uint tag; while ((tag = input.ReadTag()) != 0) { switch(tag) { default: _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input); break; case 10: { Domain = input.ReadString(); break; } case 16: { Version = input.ReadInt64(); break; } } } } } #endregion } #endregion Designer generated code