uff.proto 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. syntax = "proto3";
  2. package uff;
  3. message MetaGraph {
  4. int64 version = 1;
  5. int64 descriptor_core_version = 2;
  6. repeated Descriptor descriptors = 3;
  7. repeated Graph graphs = 4;
  8. repeated ReferencedDataEntry referenced_data = 5;
  9. repeated ExtraFieldsEntry extra_fields = 100;
  10. message ReferencedDataEntry {
  11. string key = 1;
  12. Data value = 2;
  13. }
  14. message ExtraFieldsEntry {
  15. string key = 1;
  16. Data value = 2;
  17. }
  18. }
  19. message Descriptor {
  20. string id = 1;
  21. int64 version = 2;
  22. bool optional = 3;
  23. }
  24. message Graph {
  25. string id = 1;
  26. repeated Node nodes = 2;
  27. repeated ExtraFieldsEntry extra_fields = 100;
  28. message ExtraFieldsEntry {
  29. string key = 1;
  30. Data value = 2;
  31. }
  32. }
  33. message Node {
  34. string id = 1;
  35. repeated string inputs = 2;
  36. string operation = 3;
  37. repeated FieldsEntry fields = 4;
  38. repeated ExtraFieldsEntry extra_fields = 100;
  39. message FieldsEntry {
  40. string key = 1;
  41. Data value = 2;
  42. }
  43. message ExtraFieldsEntry {
  44. string key = 1;
  45. Data value = 2;
  46. }
  47. }
  48. message Data {
  49. oneof type {
  50. string s = 1;
  51. ListString s_list = 2;
  52. double d = 3;
  53. ListDouble d_list = 4;
  54. bool b = 5;
  55. ListBool b_list = 6;
  56. int64 i = 7;
  57. ListInt64 i_list = 8;
  58. bytes blob = 9;
  59. string ref = 100;
  60. DataType dtype = 101;
  61. ListDataType dtype_list = 102;
  62. DimensionOrders dim_orders = 103;
  63. ListDimensionOrders dim_orders_list = 104;
  64. }
  65. }
  66. enum DataType {
  67. DT_INVALID = 0;
  68. DT_INT8 = 0x10008;
  69. DT_INT16 = 0x10010;
  70. DT_INT32 = 0x10020;
  71. DT_INT64 = 0x10040;
  72. DT_FLOAT16 = 0x20010;
  73. DT_FLOAT32 = 0x20020;
  74. }
  75. enum OrderEnum {
  76. OE_ZERO = 0;
  77. OE_SPECIAL = -1;
  78. OE_INCREMENT = 0x7FFFFFFF;
  79. OE_DECREMENT = -0x80000000;
  80. }
  81. message DimensionOrders {
  82. repeated OrdersEntry orders = 1;
  83. message OrdersEntry {
  84. OrderEnum key = 1;
  85. ListInt64 value = 2;
  86. }
  87. }
  88. message ListString {
  89. repeated string val = 1;
  90. }
  91. message ListDouble {
  92. repeated double val = 1;
  93. }
  94. message ListBool {
  95. repeated bool val = 1;
  96. }
  97. message ListInt64 {
  98. repeated int64 val = 1;
  99. }
  100. message ListDataType {
  101. repeated DataType val = 1;
  102. }
  103. message ListDimensionOrders {
  104. repeated DimensionOrders val = 1;
  105. }