denkproto 1.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. denkproto/ImageAnalysis_ProtobufMessages_pb2.py +139 -0
  2. denkproto/ImageAnalysis_ProtobufMessages_pb2.pyi +598 -0
  3. denkproto/ImageAnalysis_ProtobufMessages_pb2_grpc.py +24 -0
  4. denkproto/__about__.py +1 -0
  5. denkproto/__init__.py +0 -0
  6. denkproto/annotation_comparer_request_pb2.py +40 -0
  7. denkproto/annotation_comparer_request_pb2.pyi +38 -0
  8. denkproto/annotation_comparer_request_pb2_grpc.py +24 -0
  9. denkproto/denkcache_pb2.py +77 -0
  10. denkproto/denkcache_pb2.pyi +155 -0
  11. denkproto/denkcache_pb2_grpc.py +398 -0
  12. denkproto/geometry_pb2.py +45 -0
  13. denkproto/geometry_pb2.pyi +54 -0
  14. denkproto/geometry_pb2_grpc.py +24 -0
  15. denkproto/inference_graph_pb2.py +185 -0
  16. denkproto/inference_graph_pb2.pyi +272 -0
  17. denkproto/inference_graph_pb2_grpc.py +24 -0
  18. denkproto/json/__init__.py +3 -0
  19. denkproto/json/classification_markup_schema_.py +28 -0
  20. denkproto/json/geometry_schema.py +71 -0
  21. denkproto/json/inference_graph_recipe_schema.py +336 -0
  22. denkproto/json/instance_segmentation_markup_schema.py +35 -0
  23. denkproto/json/object_detection_markup_schema.py +43 -0
  24. denkproto/json/ocr_markup_schema.py +48 -0
  25. denkproto/json/segmentation_markup_schema.py +242 -0
  26. denkproto/markup_pb2.py +56 -0
  27. denkproto/markup_pb2.pyi +155 -0
  28. denkproto/markup_pb2_grpc.py +24 -0
  29. denkproto/materialized_markup_pb2.py +46 -0
  30. denkproto/materialized_markup_pb2.pyi +71 -0
  31. denkproto/materialized_markup_pb2_grpc.py +24 -0
  32. denkproto/modelfile_v1_pb2.py +57 -0
  33. denkproto/modelfile_v1_pb2.pyi +216 -0
  34. denkproto/modelfile_v1_pb2_grpc.py +24 -0
  35. denkproto/modelfile_v2_pb2.py +154 -0
  36. denkproto/modelfile_v2_pb2.pyi +307 -0
  37. denkproto/modelfile_v2_pb2_grpc.py +24 -0
  38. denkproto/prediction_pb2.py +48 -0
  39. denkproto/prediction_pb2.pyi +89 -0
  40. denkproto/prediction_pb2_grpc.py +24 -0
  41. denkproto/prediction_request_pb2.py +43 -0
  42. denkproto/prediction_request_pb2.pyi +56 -0
  43. denkproto/prediction_request_pb2_grpc.py +24 -0
  44. denkproto/py.typed +0 -0
  45. denkproto/request_pb2.py +51 -0
  46. denkproto/request_pb2.pyi +92 -0
  47. denkproto/request_pb2_grpc.py +24 -0
  48. denkproto/results_pb2.py +91 -0
  49. denkproto/results_pb2.pyi +528 -0
  50. denkproto/results_pb2_grpc.py +24 -0
  51. denkproto/validate_pb2.py +86 -0
  52. denkproto/validate_pb2.pyi +494 -0
  53. denkproto/validate_pb2_grpc.py +24 -0
  54. denkproto-1.3.0.dist-info/METADATA +5 -0
  55. denkproto-1.3.0.dist-info/RECORD +56 -0
  56. denkproto-1.3.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,528 @@
1
+ from google.protobuf.internal import containers as _containers
2
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
3
+ from google.protobuf import descriptor as _descriptor
4
+ from google.protobuf import message as _message
5
+ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class MapDataType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
10
+ __slots__ = ()
11
+ MAP_INT8: _ClassVar[MapDataType]
12
+ MAP_INT16: _ClassVar[MapDataType]
13
+ MAP_INT32: _ClassVar[MapDataType]
14
+ MAP_INT64: _ClassVar[MapDataType]
15
+ MAP_UINT8: _ClassVar[MapDataType]
16
+ MAP_UINT16: _ClassVar[MapDataType]
17
+ MAP_UINT32: _ClassVar[MapDataType]
18
+ MAP_UINT64: _ClassVar[MapDataType]
19
+ MAP_FLOAT8: _ClassVar[MapDataType]
20
+ MAP_FLOAT16: _ClassVar[MapDataType]
21
+ MAP_FLOAT32: _ClassVar[MapDataType]
22
+ MAP_FLOAT64: _ClassVar[MapDataType]
23
+
24
+ class ModelType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
25
+ __slots__ = ()
26
+ REGULAR: _ClassVar[ModelType]
27
+ AREA_DEFINITION: _ClassVar[ModelType]
28
+
29
+ class ModelOutputType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
30
+ __slots__ = ()
31
+ TYPE_UNKNOWN: _ClassVar[ModelOutputType]
32
+ TYPE_CLASSIFICATION: _ClassVar[ModelOutputType]
33
+ TYPE_SEGMENTATION: _ClassVar[ModelOutputType]
34
+ TYPE_INSTANCE_SEGMENTATION: _ClassVar[ModelOutputType]
35
+ TYPE_OBJECT_DETECTION: _ClassVar[ModelOutputType]
36
+ TYPE_ANOMALY_DETECTION: _ClassVar[ModelOutputType]
37
+ TYPE_OPTICAL_CHARACTER_RECOGNITION: _ClassVar[ModelOutputType]
38
+ TYPE_BARCODES: _ClassVar[ModelOutputType]
39
+ TYPE_OBJECT_DETECTION_HALF_ORIENTATION: _ClassVar[ModelOutputType]
40
+ TYPE_OBJECT_DETECTION_FULL_ORIENTATION: _ClassVar[ModelOutputType]
41
+
42
+ class BarcodeType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
43
+ __slots__ = ()
44
+ BT_UNDEFINED: _ClassVar[BarcodeType]
45
+ BT_AZTEC: _ClassVar[BarcodeType]
46
+ BT_CODABAR: _ClassVar[BarcodeType]
47
+ BT_CODE_32: _ClassVar[BarcodeType]
48
+ BT_CODE_39: _ClassVar[BarcodeType]
49
+ BT_CODE_93: _ClassVar[BarcodeType]
50
+ BT_CODE_128: _ClassVar[BarcodeType]
51
+ BT_DATABAR: _ClassVar[BarcodeType]
52
+ BT_DATABAR_EXPANDED: _ClassVar[BarcodeType]
53
+ BT_DATABAR_LIMITED: _ClassVar[BarcodeType]
54
+ BT_DATAMATRIX: _ClassVar[BarcodeType]
55
+ BT_EAN_8: _ClassVar[BarcodeType]
56
+ BT_EAN_13: _ClassVar[BarcodeType]
57
+ BT_EAN_13_WITH_ADDON_2: _ClassVar[BarcodeType]
58
+ BT_EAN_13_WITH_ADDON_5: _ClassVar[BarcodeType]
59
+ BT_GS1_DATAMATRIX: _ClassVar[BarcodeType]
60
+ BT_GS1_128: _ClassVar[BarcodeType]
61
+ BT_ISBT_128: _ClassVar[BarcodeType]
62
+ BT_ITF: _ClassVar[BarcodeType]
63
+ BT_ITF_14: _ClassVar[BarcodeType]
64
+ BT_MAXICODE: _ClassVar[BarcodeType]
65
+ BT_MICRO_QR_CODE: _ClassVar[BarcodeType]
66
+ BT_MSI: _ClassVar[BarcodeType]
67
+ BT_PDF417: _ClassVar[BarcodeType]
68
+ BT_QR_CODE: _ClassVar[BarcodeType]
69
+ BT_UPC_A: _ClassVar[BarcodeType]
70
+ BT_UPC_A_WITH_ADDON_2: _ClassVar[BarcodeType]
71
+ BT_UPC_A_WITH_ADDON_5: _ClassVar[BarcodeType]
72
+ BT_UPC_E: _ClassVar[BarcodeType]
73
+ BT_UPC_E_WITH_ADDON_2: _ClassVar[BarcodeType]
74
+ BT_UPC_E_WITH_ADDON_5: _ClassVar[BarcodeType]
75
+
76
+ class ResultFieldType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
77
+ __slots__ = ()
78
+ RFT_REGULAR: _ClassVar[ResultFieldType]
79
+ RFT_MODEL_SUMMARY: _ClassVar[ResultFieldType]
80
+ RFT_DEBUG: _ClassVar[ResultFieldType]
81
+
82
+ class DeviceType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
83
+ __slots__ = ()
84
+ UNDEFINED: _ClassVar[DeviceType]
85
+ CPU: _ClassVar[DeviceType]
86
+ GPU: _ClassVar[DeviceType]
87
+ MAP_INT8: MapDataType
88
+ MAP_INT16: MapDataType
89
+ MAP_INT32: MapDataType
90
+ MAP_INT64: MapDataType
91
+ MAP_UINT8: MapDataType
92
+ MAP_UINT16: MapDataType
93
+ MAP_UINT32: MapDataType
94
+ MAP_UINT64: MapDataType
95
+ MAP_FLOAT8: MapDataType
96
+ MAP_FLOAT16: MapDataType
97
+ MAP_FLOAT32: MapDataType
98
+ MAP_FLOAT64: MapDataType
99
+ REGULAR: ModelType
100
+ AREA_DEFINITION: ModelType
101
+ TYPE_UNKNOWN: ModelOutputType
102
+ TYPE_CLASSIFICATION: ModelOutputType
103
+ TYPE_SEGMENTATION: ModelOutputType
104
+ TYPE_INSTANCE_SEGMENTATION: ModelOutputType
105
+ TYPE_OBJECT_DETECTION: ModelOutputType
106
+ TYPE_ANOMALY_DETECTION: ModelOutputType
107
+ TYPE_OPTICAL_CHARACTER_RECOGNITION: ModelOutputType
108
+ TYPE_BARCODES: ModelOutputType
109
+ TYPE_OBJECT_DETECTION_HALF_ORIENTATION: ModelOutputType
110
+ TYPE_OBJECT_DETECTION_FULL_ORIENTATION: ModelOutputType
111
+ BT_UNDEFINED: BarcodeType
112
+ BT_AZTEC: BarcodeType
113
+ BT_CODABAR: BarcodeType
114
+ BT_CODE_32: BarcodeType
115
+ BT_CODE_39: BarcodeType
116
+ BT_CODE_93: BarcodeType
117
+ BT_CODE_128: BarcodeType
118
+ BT_DATABAR: BarcodeType
119
+ BT_DATABAR_EXPANDED: BarcodeType
120
+ BT_DATABAR_LIMITED: BarcodeType
121
+ BT_DATAMATRIX: BarcodeType
122
+ BT_EAN_8: BarcodeType
123
+ BT_EAN_13: BarcodeType
124
+ BT_EAN_13_WITH_ADDON_2: BarcodeType
125
+ BT_EAN_13_WITH_ADDON_5: BarcodeType
126
+ BT_GS1_DATAMATRIX: BarcodeType
127
+ BT_GS1_128: BarcodeType
128
+ BT_ISBT_128: BarcodeType
129
+ BT_ITF: BarcodeType
130
+ BT_ITF_14: BarcodeType
131
+ BT_MAXICODE: BarcodeType
132
+ BT_MICRO_QR_CODE: BarcodeType
133
+ BT_MSI: BarcodeType
134
+ BT_PDF417: BarcodeType
135
+ BT_QR_CODE: BarcodeType
136
+ BT_UPC_A: BarcodeType
137
+ BT_UPC_A_WITH_ADDON_2: BarcodeType
138
+ BT_UPC_A_WITH_ADDON_5: BarcodeType
139
+ BT_UPC_E: BarcodeType
140
+ BT_UPC_E_WITH_ADDON_2: BarcodeType
141
+ BT_UPC_E_WITH_ADDON_5: BarcodeType
142
+ RFT_REGULAR: ResultFieldType
143
+ RFT_MODEL_SUMMARY: ResultFieldType
144
+ RFT_DEBUG: ResultFieldType
145
+ UNDEFINED: DeviceType
146
+ CPU: DeviceType
147
+ GPU: DeviceType
148
+
149
+ class DefectAddress(_message.Message):
150
+ __slots__ = ("dataset_index", "model_id", "feature_index", "overlap_area", "overlap_ratio", "overlap_ratio_of_other", "feature_uid")
151
+ DATASET_INDEX_FIELD_NUMBER: _ClassVar[int]
152
+ MODEL_ID_FIELD_NUMBER: _ClassVar[int]
153
+ FEATURE_INDEX_FIELD_NUMBER: _ClassVar[int]
154
+ OVERLAP_AREA_FIELD_NUMBER: _ClassVar[int]
155
+ OVERLAP_RATIO_FIELD_NUMBER: _ClassVar[int]
156
+ OVERLAP_RATIO_OF_OTHER_FIELD_NUMBER: _ClassVar[int]
157
+ FEATURE_UID_FIELD_NUMBER: _ClassVar[int]
158
+ dataset_index: int
159
+ model_id: int
160
+ feature_index: int
161
+ overlap_area: float
162
+ overlap_ratio: float
163
+ overlap_ratio_of_other: float
164
+ feature_uid: str
165
+ def __init__(self, dataset_index: _Optional[int] = ..., model_id: _Optional[int] = ..., feature_index: _Optional[int] = ..., overlap_area: _Optional[float] = ..., overlap_ratio: _Optional[float] = ..., overlap_ratio_of_other: _Optional[float] = ..., feature_uid: _Optional[str] = ...) -> None: ...
166
+
167
+ class RowRLC(_message.Message):
168
+ __slots__ = ("offset_x", "offset_y", "length")
169
+ OFFSET_X_FIELD_NUMBER: _ClassVar[int]
170
+ OFFSET_Y_FIELD_NUMBER: _ClassVar[int]
171
+ LENGTH_FIELD_NUMBER: _ClassVar[int]
172
+ offset_x: int
173
+ offset_y: int
174
+ length: int
175
+ def __init__(self, offset_x: _Optional[int] = ..., offset_y: _Optional[int] = ..., length: _Optional[int] = ...) -> None: ...
176
+
177
+ class OcrCharacter(_message.Message):
178
+ __slots__ = ("character", "probability", "ignored")
179
+ CHARACTER_FIELD_NUMBER: _ClassVar[int]
180
+ PROBABILITY_FIELD_NUMBER: _ClassVar[int]
181
+ IGNORED_FIELD_NUMBER: _ClassVar[int]
182
+ character: str
183
+ probability: float
184
+ ignored: bool
185
+ def __init__(self, character: _Optional[str] = ..., probability: _Optional[float] = ..., ignored: bool = ...) -> None: ...
186
+
187
+ class OcrCharacterPosition(_message.Message):
188
+ __slots__ = ("ocr_character",)
189
+ OCR_CHARACTER_FIELD_NUMBER: _ClassVar[int]
190
+ ocr_character: _containers.RepeatedCompositeFieldContainer[OcrCharacter]
191
+ def __init__(self, ocr_character: _Optional[_Iterable[_Union[OcrCharacter, _Mapping]]] = ...) -> None: ...
192
+
193
+ class Point(_message.Message):
194
+ __slots__ = ("x", "y")
195
+ X_FIELD_NUMBER: _ClassVar[int]
196
+ Y_FIELD_NUMBER: _ClassVar[int]
197
+ x: float
198
+ y: float
199
+ def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ...) -> None: ...
200
+
201
+ class PointInt(_message.Message):
202
+ __slots__ = ("x", "y")
203
+ X_FIELD_NUMBER: _ClassVar[int]
204
+ Y_FIELD_NUMBER: _ClassVar[int]
205
+ x: int
206
+ y: int
207
+ def __init__(self, x: _Optional[int] = ..., y: _Optional[int] = ...) -> None: ...
208
+
209
+ class Contour(_message.Message):
210
+ __slots__ = ("points",)
211
+ POINTS_FIELD_NUMBER: _ClassVar[int]
212
+ points: _containers.RepeatedCompositeFieldContainer[PointInt]
213
+ def __init__(self, points: _Optional[_Iterable[_Union[PointInt, _Mapping]]] = ...) -> None: ...
214
+
215
+ class MinimalBoundingBox(_message.Message):
216
+ __slots__ = ("center_x", "center_y", "width", "height", "angle")
217
+ CENTER_X_FIELD_NUMBER: _ClassVar[int]
218
+ CENTER_Y_FIELD_NUMBER: _ClassVar[int]
219
+ WIDTH_FIELD_NUMBER: _ClassVar[int]
220
+ HEIGHT_FIELD_NUMBER: _ClassVar[int]
221
+ ANGLE_FIELD_NUMBER: _ClassVar[int]
222
+ center_x: float
223
+ center_y: float
224
+ width: float
225
+ height: float
226
+ angle: float
227
+ def __init__(self, center_x: _Optional[float] = ..., center_y: _Optional[float] = ..., width: _Optional[float] = ..., height: _Optional[float] = ..., angle: _Optional[float] = ...) -> None: ...
228
+
229
+ class OrientedBoundingBox(_message.Message):
230
+ __slots__ = ("center", "width", "height", "angle", "full_orientation")
231
+ CENTER_FIELD_NUMBER: _ClassVar[int]
232
+ WIDTH_FIELD_NUMBER: _ClassVar[int]
233
+ HEIGHT_FIELD_NUMBER: _ClassVar[int]
234
+ ANGLE_FIELD_NUMBER: _ClassVar[int]
235
+ FULL_ORIENTATION_FIELD_NUMBER: _ClassVar[int]
236
+ center: Point
237
+ width: float
238
+ height: float
239
+ angle: float
240
+ full_orientation: bool
241
+ def __init__(self, center: _Optional[_Union[Point, _Mapping]] = ..., width: _Optional[float] = ..., height: _Optional[float] = ..., angle: _Optional[float] = ..., full_orientation: bool = ...) -> None: ...
242
+
243
+ class FeatureField(_message.Message):
244
+ __slots__ = ("label", "show", "color", "rect_x", "rect_y", "rect_w", "rect_h", "probability", "area", "length", "width", "mean_gray", "max_gray", "min_gray", "in_area", "overlaps_with", "rect_x_mm", "rect_y_mm", "rect_w_mm", "rect_h_mm", "row_rlc", "ocr_character_position", "minimal_bounding_box", "minimal_bounding_box_point", "write_protected_label", "barcode_type", "barcode_raw_bytes", "oriented_bounding_box", "oriented_bounding_box_point", "segmentation_mask", "segmentation_contours")
245
+ LABEL_FIELD_NUMBER: _ClassVar[int]
246
+ SHOW_FIELD_NUMBER: _ClassVar[int]
247
+ COLOR_FIELD_NUMBER: _ClassVar[int]
248
+ RECT_X_FIELD_NUMBER: _ClassVar[int]
249
+ RECT_Y_FIELD_NUMBER: _ClassVar[int]
250
+ RECT_W_FIELD_NUMBER: _ClassVar[int]
251
+ RECT_H_FIELD_NUMBER: _ClassVar[int]
252
+ PROBABILITY_FIELD_NUMBER: _ClassVar[int]
253
+ AREA_FIELD_NUMBER: _ClassVar[int]
254
+ LENGTH_FIELD_NUMBER: _ClassVar[int]
255
+ WIDTH_FIELD_NUMBER: _ClassVar[int]
256
+ MEAN_GRAY_FIELD_NUMBER: _ClassVar[int]
257
+ MAX_GRAY_FIELD_NUMBER: _ClassVar[int]
258
+ MIN_GRAY_FIELD_NUMBER: _ClassVar[int]
259
+ IN_AREA_FIELD_NUMBER: _ClassVar[int]
260
+ OVERLAPS_WITH_FIELD_NUMBER: _ClassVar[int]
261
+ RECT_X_MM_FIELD_NUMBER: _ClassVar[int]
262
+ RECT_Y_MM_FIELD_NUMBER: _ClassVar[int]
263
+ RECT_W_MM_FIELD_NUMBER: _ClassVar[int]
264
+ RECT_H_MM_FIELD_NUMBER: _ClassVar[int]
265
+ ROW_RLC_FIELD_NUMBER: _ClassVar[int]
266
+ OCR_CHARACTER_POSITION_FIELD_NUMBER: _ClassVar[int]
267
+ MINIMAL_BOUNDING_BOX_FIELD_NUMBER: _ClassVar[int]
268
+ MINIMAL_BOUNDING_BOX_POINT_FIELD_NUMBER: _ClassVar[int]
269
+ WRITE_PROTECTED_LABEL_FIELD_NUMBER: _ClassVar[int]
270
+ BARCODE_TYPE_FIELD_NUMBER: _ClassVar[int]
271
+ BARCODE_RAW_BYTES_FIELD_NUMBER: _ClassVar[int]
272
+ ORIENTED_BOUNDING_BOX_FIELD_NUMBER: _ClassVar[int]
273
+ ORIENTED_BOUNDING_BOX_POINT_FIELD_NUMBER: _ClassVar[int]
274
+ SEGMENTATION_MASK_FIELD_NUMBER: _ClassVar[int]
275
+ SEGMENTATION_CONTOURS_FIELD_NUMBER: _ClassVar[int]
276
+ label: str
277
+ show: bool
278
+ color: _containers.RepeatedScalarFieldContainer[int]
279
+ rect_x: int
280
+ rect_y: int
281
+ rect_w: int
282
+ rect_h: int
283
+ probability: float
284
+ area: float
285
+ length: float
286
+ width: float
287
+ mean_gray: float
288
+ max_gray: float
289
+ min_gray: float
290
+ in_area: _containers.RepeatedScalarFieldContainer[int]
291
+ overlaps_with: _containers.RepeatedCompositeFieldContainer[DefectAddress]
292
+ rect_x_mm: float
293
+ rect_y_mm: float
294
+ rect_w_mm: float
295
+ rect_h_mm: float
296
+ row_rlc: _containers.RepeatedCompositeFieldContainer[RowRLC]
297
+ ocr_character_position: _containers.RepeatedCompositeFieldContainer[OcrCharacterPosition]
298
+ minimal_bounding_box: MinimalBoundingBox
299
+ minimal_bounding_box_point: _containers.RepeatedCompositeFieldContainer[Point]
300
+ write_protected_label: bool
301
+ barcode_type: BarcodeType
302
+ barcode_raw_bytes: bytes
303
+ oriented_bounding_box: OrientedBoundingBox
304
+ oriented_bounding_box_point: _containers.RepeatedCompositeFieldContainer[Point]
305
+ segmentation_mask: bytes
306
+ segmentation_contours: _containers.RepeatedCompositeFieldContainer[Contour]
307
+ def __init__(self, label: _Optional[str] = ..., show: bool = ..., color: _Optional[_Iterable[int]] = ..., rect_x: _Optional[int] = ..., rect_y: _Optional[int] = ..., rect_w: _Optional[int] = ..., rect_h: _Optional[int] = ..., probability: _Optional[float] = ..., area: _Optional[float] = ..., length: _Optional[float] = ..., width: _Optional[float] = ..., mean_gray: _Optional[float] = ..., max_gray: _Optional[float] = ..., min_gray: _Optional[float] = ..., in_area: _Optional[_Iterable[int]] = ..., overlaps_with: _Optional[_Iterable[_Union[DefectAddress, _Mapping]]] = ..., rect_x_mm: _Optional[float] = ..., rect_y_mm: _Optional[float] = ..., rect_w_mm: _Optional[float] = ..., rect_h_mm: _Optional[float] = ..., row_rlc: _Optional[_Iterable[_Union[RowRLC, _Mapping]]] = ..., ocr_character_position: _Optional[_Iterable[_Union[OcrCharacterPosition, _Mapping]]] = ..., minimal_bounding_box: _Optional[_Union[MinimalBoundingBox, _Mapping]] = ..., minimal_bounding_box_point: _Optional[_Iterable[_Union[Point, _Mapping]]] = ..., write_protected_label: bool = ..., barcode_type: _Optional[_Union[BarcodeType, str]] = ..., barcode_raw_bytes: _Optional[bytes] = ..., oriented_bounding_box: _Optional[_Union[OrientedBoundingBox, _Mapping]] = ..., oriented_bounding_box_point: _Optional[_Iterable[_Union[Point, _Mapping]]] = ..., segmentation_mask: _Optional[bytes] = ..., segmentation_contours: _Optional[_Iterable[_Union[Contour, _Mapping]]] = ...) -> None: ...
308
+
309
+ class MapField(_message.Message):
310
+ __slots__ = ("label", "show", "color", "datatype", "image_w", "image_h", "image_c", "start_position", "end_position")
311
+ LABEL_FIELD_NUMBER: _ClassVar[int]
312
+ SHOW_FIELD_NUMBER: _ClassVar[int]
313
+ COLOR_FIELD_NUMBER: _ClassVar[int]
314
+ DATATYPE_FIELD_NUMBER: _ClassVar[int]
315
+ IMAGE_W_FIELD_NUMBER: _ClassVar[int]
316
+ IMAGE_H_FIELD_NUMBER: _ClassVar[int]
317
+ IMAGE_C_FIELD_NUMBER: _ClassVar[int]
318
+ START_POSITION_FIELD_NUMBER: _ClassVar[int]
319
+ END_POSITION_FIELD_NUMBER: _ClassVar[int]
320
+ label: str
321
+ show: bool
322
+ color: _containers.RepeatedScalarFieldContainer[int]
323
+ datatype: MapDataType
324
+ image_w: int
325
+ image_h: int
326
+ image_c: int
327
+ start_position: int
328
+ end_position: int
329
+ def __init__(self, label: _Optional[str] = ..., show: bool = ..., color: _Optional[_Iterable[int]] = ..., datatype: _Optional[_Union[MapDataType, str]] = ..., image_w: _Optional[int] = ..., image_h: _Optional[int] = ..., image_c: _Optional[int] = ..., start_position: _Optional[int] = ..., end_position: _Optional[int] = ...) -> None: ...
330
+
331
+ class ResultField(_message.Message):
332
+ __slots__ = ("model_label", "model_tag", "model_id", "classifier", "evaluation_time_ms", "post_processing_time_ms", "result_map", "feature", "tenant", "tenant_id", "onnx_version_major", "onnx_version_minor", "feature_uid", "result_field_type")
333
+ MODEL_LABEL_FIELD_NUMBER: _ClassVar[int]
334
+ MODEL_TAG_FIELD_NUMBER: _ClassVar[int]
335
+ MODEL_ID_FIELD_NUMBER: _ClassVar[int]
336
+ CLASSIFIER_FIELD_NUMBER: _ClassVar[int]
337
+ EVALUATION_TIME_MS_FIELD_NUMBER: _ClassVar[int]
338
+ POST_PROCESSING_TIME_MS_FIELD_NUMBER: _ClassVar[int]
339
+ RESULT_MAP_FIELD_NUMBER: _ClassVar[int]
340
+ FEATURE_FIELD_NUMBER: _ClassVar[int]
341
+ TENANT_FIELD_NUMBER: _ClassVar[int]
342
+ TENANT_ID_FIELD_NUMBER: _ClassVar[int]
343
+ ONNX_VERSION_MAJOR_FIELD_NUMBER: _ClassVar[int]
344
+ ONNX_VERSION_MINOR_FIELD_NUMBER: _ClassVar[int]
345
+ FEATURE_UID_FIELD_NUMBER: _ClassVar[int]
346
+ RESULT_FIELD_TYPE_FIELD_NUMBER: _ClassVar[int]
347
+ model_label: str
348
+ model_tag: str
349
+ model_id: int
350
+ classifier: float
351
+ evaluation_time_ms: float
352
+ post_processing_time_ms: float
353
+ result_map: _containers.RepeatedCompositeFieldContainer[MapField]
354
+ feature: _containers.RepeatedCompositeFieldContainer[FeatureField]
355
+ tenant: str
356
+ tenant_id: str
357
+ onnx_version_major: int
358
+ onnx_version_minor: int
359
+ feature_uid: str
360
+ result_field_type: ResultFieldType
361
+ def __init__(self, model_label: _Optional[str] = ..., model_tag: _Optional[str] = ..., model_id: _Optional[int] = ..., classifier: _Optional[float] = ..., evaluation_time_ms: _Optional[float] = ..., post_processing_time_ms: _Optional[float] = ..., result_map: _Optional[_Iterable[_Union[MapField, _Mapping]]] = ..., feature: _Optional[_Iterable[_Union[FeatureField, _Mapping]]] = ..., tenant: _Optional[str] = ..., tenant_id: _Optional[str] = ..., onnx_version_major: _Optional[int] = ..., onnx_version_minor: _Optional[int] = ..., feature_uid: _Optional[str] = ..., result_field_type: _Optional[_Union[ResultFieldType, str]] = ...) -> None: ...
362
+
363
+ class Summary(_message.Message):
364
+ __slots__ = ("image_class", "class_code", "most_relevant_defect", "relevant_defects_json", "feature_table_json")
365
+ IMAGE_CLASS_FIELD_NUMBER: _ClassVar[int]
366
+ CLASS_CODE_FIELD_NUMBER: _ClassVar[int]
367
+ MOST_RELEVANT_DEFECT_FIELD_NUMBER: _ClassVar[int]
368
+ RELEVANT_DEFECTS_JSON_FIELD_NUMBER: _ClassVar[int]
369
+ FEATURE_TABLE_JSON_FIELD_NUMBER: _ClassVar[int]
370
+ image_class: int
371
+ class_code: str
372
+ most_relevant_defect: str
373
+ relevant_defects_json: str
374
+ feature_table_json: str
375
+ def __init__(self, image_class: _Optional[int] = ..., class_code: _Optional[str] = ..., most_relevant_defect: _Optional[str] = ..., relevant_defects_json: _Optional[str] = ..., feature_table_json: _Optional[str] = ...) -> None: ...
376
+
377
+ class FeatureInfo(_message.Message):
378
+ __slots__ = ("feature_uid", "feature_name")
379
+ FEATURE_UID_FIELD_NUMBER: _ClassVar[int]
380
+ FEATURE_NAME_FIELD_NUMBER: _ClassVar[int]
381
+ feature_uid: str
382
+ feature_name: str
383
+ def __init__(self, feature_uid: _Optional[str] = ..., feature_name: _Optional[str] = ...) -> None: ...
384
+
385
+ class ModelInfo(_message.Message):
386
+ __slots__ = ("model_uid", "model_name", "features", "tenant", "tenant_uid", "onnx_version_major", "onnx_version_minor", "model_type", "model_output_type")
387
+ MODEL_UID_FIELD_NUMBER: _ClassVar[int]
388
+ MODEL_NAME_FIELD_NUMBER: _ClassVar[int]
389
+ FEATURES_FIELD_NUMBER: _ClassVar[int]
390
+ TENANT_FIELD_NUMBER: _ClassVar[int]
391
+ TENANT_UID_FIELD_NUMBER: _ClassVar[int]
392
+ ONNX_VERSION_MAJOR_FIELD_NUMBER: _ClassVar[int]
393
+ ONNX_VERSION_MINOR_FIELD_NUMBER: _ClassVar[int]
394
+ MODEL_TYPE_FIELD_NUMBER: _ClassVar[int]
395
+ MODEL_OUTPUT_TYPE_FIELD_NUMBER: _ClassVar[int]
396
+ model_uid: str
397
+ model_name: str
398
+ features: _containers.RepeatedCompositeFieldContainer[FeatureInfo]
399
+ tenant: str
400
+ tenant_uid: str
401
+ onnx_version_major: int
402
+ onnx_version_minor: int
403
+ model_type: ModelType
404
+ model_output_type: ModelOutputType
405
+ def __init__(self, model_uid: _Optional[str] = ..., model_name: _Optional[str] = ..., features: _Optional[_Iterable[_Union[FeatureInfo, _Mapping]]] = ..., tenant: _Optional[str] = ..., tenant_uid: _Optional[str] = ..., onnx_version_major: _Optional[int] = ..., onnx_version_minor: _Optional[int] = ..., model_type: _Optional[_Union[ModelType, str]] = ..., model_output_type: _Optional[_Union[ModelOutputType, str]] = ...) -> None: ...
406
+
407
+ class Results(_message.Message):
408
+ __slots__ = ("output", "original_image_w", "original_image_h", "original_image_c", "original_image_w_mm", "original_image_h_mm", "original_image_c_mm", "mean_gray_active_area", "result_summary", "min_gray_active_area", "max_gray_active_area", "available_models")
409
+ OUTPUT_FIELD_NUMBER: _ClassVar[int]
410
+ ORIGINAL_IMAGE_W_FIELD_NUMBER: _ClassVar[int]
411
+ ORIGINAL_IMAGE_H_FIELD_NUMBER: _ClassVar[int]
412
+ ORIGINAL_IMAGE_C_FIELD_NUMBER: _ClassVar[int]
413
+ ORIGINAL_IMAGE_W_MM_FIELD_NUMBER: _ClassVar[int]
414
+ ORIGINAL_IMAGE_H_MM_FIELD_NUMBER: _ClassVar[int]
415
+ ORIGINAL_IMAGE_C_MM_FIELD_NUMBER: _ClassVar[int]
416
+ MEAN_GRAY_ACTIVE_AREA_FIELD_NUMBER: _ClassVar[int]
417
+ RESULT_SUMMARY_FIELD_NUMBER: _ClassVar[int]
418
+ MIN_GRAY_ACTIVE_AREA_FIELD_NUMBER: _ClassVar[int]
419
+ MAX_GRAY_ACTIVE_AREA_FIELD_NUMBER: _ClassVar[int]
420
+ AVAILABLE_MODELS_FIELD_NUMBER: _ClassVar[int]
421
+ output: _containers.RepeatedCompositeFieldContainer[ResultField]
422
+ original_image_w: int
423
+ original_image_h: int
424
+ original_image_c: int
425
+ original_image_w_mm: float
426
+ original_image_h_mm: float
427
+ original_image_c_mm: float
428
+ mean_gray_active_area: float
429
+ result_summary: Summary
430
+ min_gray_active_area: float
431
+ max_gray_active_area: float
432
+ available_models: _containers.RepeatedCompositeFieldContainer[ModelInfo]
433
+ def __init__(self, output: _Optional[_Iterable[_Union[ResultField, _Mapping]]] = ..., original_image_w: _Optional[int] = ..., original_image_h: _Optional[int] = ..., original_image_c: _Optional[int] = ..., original_image_w_mm: _Optional[float] = ..., original_image_h_mm: _Optional[float] = ..., original_image_c_mm: _Optional[float] = ..., mean_gray_active_area: _Optional[float] = ..., result_summary: _Optional[_Union[Summary, _Mapping]] = ..., min_gray_active_area: _Optional[float] = ..., max_gray_active_area: _Optional[float] = ..., available_models: _Optional[_Iterable[_Union[ModelInfo, _Mapping]]] = ...) -> None: ...
434
+
435
+ class ModelOptions(_message.Message):
436
+ __slots__ = ("deactivated", "minSegmentationThreshold", "minGrayValue", "maxGrayValue", "maxMeanGrayValue", "minProbability", "minLength", "minWidth", "minHeight", "minArea", "minImageClassifier", "deepGrayLevel", "priority", "onlyBoundingBoxes")
437
+ DEACTIVATED_FIELD_NUMBER: _ClassVar[int]
438
+ MINSEGMENTATIONTHRESHOLD_FIELD_NUMBER: _ClassVar[int]
439
+ MINGRAYVALUE_FIELD_NUMBER: _ClassVar[int]
440
+ MAXGRAYVALUE_FIELD_NUMBER: _ClassVar[int]
441
+ MAXMEANGRAYVALUE_FIELD_NUMBER: _ClassVar[int]
442
+ MINPROBABILITY_FIELD_NUMBER: _ClassVar[int]
443
+ MINLENGTH_FIELD_NUMBER: _ClassVar[int]
444
+ MINWIDTH_FIELD_NUMBER: _ClassVar[int]
445
+ MINHEIGHT_FIELD_NUMBER: _ClassVar[int]
446
+ MINAREA_FIELD_NUMBER: _ClassVar[int]
447
+ MINIMAGECLASSIFIER_FIELD_NUMBER: _ClassVar[int]
448
+ DEEPGRAYLEVEL_FIELD_NUMBER: _ClassVar[int]
449
+ PRIORITY_FIELD_NUMBER: _ClassVar[int]
450
+ ONLYBOUNDINGBOXES_FIELD_NUMBER: _ClassVar[int]
451
+ deactivated: bool
452
+ minSegmentationThreshold: float
453
+ minGrayValue: float
454
+ maxGrayValue: float
455
+ maxMeanGrayValue: float
456
+ minProbability: float
457
+ minLength: float
458
+ minWidth: float
459
+ minHeight: float
460
+ minArea: float
461
+ minImageClassifier: float
462
+ deepGrayLevel: float
463
+ priority: int
464
+ onlyBoundingBoxes: bool
465
+ def __init__(self, deactivated: bool = ..., minSegmentationThreshold: _Optional[float] = ..., minGrayValue: _Optional[float] = ..., maxGrayValue: _Optional[float] = ..., maxMeanGrayValue: _Optional[float] = ..., minProbability: _Optional[float] = ..., minLength: _Optional[float] = ..., minWidth: _Optional[float] = ..., minHeight: _Optional[float] = ..., minArea: _Optional[float] = ..., minImageClassifier: _Optional[float] = ..., deepGrayLevel: _Optional[float] = ..., priority: _Optional[int] = ..., onlyBoundingBoxes: bool = ...) -> None: ...
466
+
467
+ class OptionContainer(_message.Message):
468
+ __slots__ = ("options", "divisor_w", "divisor_h", "batch_size", "network_img_prescaling_w", "network_img_prescaling_h", "network_img_prescaling_c", "border_w", "border_h", "border_w_r", "border_h_b", "cells_w", "cells_h")
469
+ class OptionsEntry(_message.Message):
470
+ __slots__ = ("key", "value")
471
+ KEY_FIELD_NUMBER: _ClassVar[int]
472
+ VALUE_FIELD_NUMBER: _ClassVar[int]
473
+ key: int
474
+ value: ModelOptions
475
+ def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[ModelOptions, _Mapping]] = ...) -> None: ...
476
+ OPTIONS_FIELD_NUMBER: _ClassVar[int]
477
+ DIVISOR_W_FIELD_NUMBER: _ClassVar[int]
478
+ DIVISOR_H_FIELD_NUMBER: _ClassVar[int]
479
+ BATCH_SIZE_FIELD_NUMBER: _ClassVar[int]
480
+ NETWORK_IMG_PRESCALING_W_FIELD_NUMBER: _ClassVar[int]
481
+ NETWORK_IMG_PRESCALING_H_FIELD_NUMBER: _ClassVar[int]
482
+ NETWORK_IMG_PRESCALING_C_FIELD_NUMBER: _ClassVar[int]
483
+ BORDER_W_FIELD_NUMBER: _ClassVar[int]
484
+ BORDER_H_FIELD_NUMBER: _ClassVar[int]
485
+ BORDER_W_R_FIELD_NUMBER: _ClassVar[int]
486
+ BORDER_H_B_FIELD_NUMBER: _ClassVar[int]
487
+ CELLS_W_FIELD_NUMBER: _ClassVar[int]
488
+ CELLS_H_FIELD_NUMBER: _ClassVar[int]
489
+ options: _containers.MessageMap[int, ModelOptions]
490
+ divisor_w: int
491
+ divisor_h: int
492
+ batch_size: int
493
+ network_img_prescaling_w: int
494
+ network_img_prescaling_h: int
495
+ network_img_prescaling_c: int
496
+ border_w: int
497
+ border_h: int
498
+ border_w_r: int
499
+ border_h_b: int
500
+ cells_w: int
501
+ cells_h: int
502
+ def __init__(self, options: _Optional[_Mapping[int, ModelOptions]] = ..., divisor_w: _Optional[int] = ..., divisor_h: _Optional[int] = ..., batch_size: _Optional[int] = ..., network_img_prescaling_w: _Optional[int] = ..., network_img_prescaling_h: _Optional[int] = ..., network_img_prescaling_c: _Optional[int] = ..., border_w: _Optional[int] = ..., border_h: _Optional[int] = ..., border_w_r: _Optional[int] = ..., border_h_b: _Optional[int] = ..., cells_w: _Optional[int] = ..., cells_h: _Optional[int] = ...) -> None: ...
503
+
504
+ class Device(_message.Message):
505
+ __slots__ = ("device_id", "type", "name", "memory_size", "integrated", "cuda_uuid", "cuda_compute_capability_major", "cuda_compute_capability_minor")
506
+ DEVICE_ID_FIELD_NUMBER: _ClassVar[int]
507
+ TYPE_FIELD_NUMBER: _ClassVar[int]
508
+ NAME_FIELD_NUMBER: _ClassVar[int]
509
+ MEMORY_SIZE_FIELD_NUMBER: _ClassVar[int]
510
+ INTEGRATED_FIELD_NUMBER: _ClassVar[int]
511
+ CUDA_UUID_FIELD_NUMBER: _ClassVar[int]
512
+ CUDA_COMPUTE_CAPABILITY_MAJOR_FIELD_NUMBER: _ClassVar[int]
513
+ CUDA_COMPUTE_CAPABILITY_MINOR_FIELD_NUMBER: _ClassVar[int]
514
+ device_id: int
515
+ type: DeviceType
516
+ name: str
517
+ memory_size: int
518
+ integrated: bool
519
+ cuda_uuid: str
520
+ cuda_compute_capability_major: int
521
+ cuda_compute_capability_minor: int
522
+ def __init__(self, device_id: _Optional[int] = ..., type: _Optional[_Union[DeviceType, str]] = ..., name: _Optional[str] = ..., memory_size: _Optional[int] = ..., integrated: bool = ..., cuda_uuid: _Optional[str] = ..., cuda_compute_capability_major: _Optional[int] = ..., cuda_compute_capability_minor: _Optional[int] = ...) -> None: ...
523
+
524
+ class DeviceInformation(_message.Message):
525
+ __slots__ = ("device",)
526
+ DEVICE_FIELD_NUMBER: _ClassVar[int]
527
+ device: _containers.RepeatedCompositeFieldContainer[Device]
528
+ def __init__(self, device: _Optional[_Iterable[_Union[Device, _Mapping]]] = ...) -> None: ...
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.68.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + f' but the generated code in results_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -0,0 +1,86 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: validate.proto
5
+ # Protobuf Python Version: 5.28.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 5,
15
+ 28,
16
+ 1,
17
+ '',
18
+ 'validate.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2
26
+ from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
27
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
28
+
29
+
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0evalidate.proto\x12\x08validate\x1a google/protobuf/descriptor.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x98\x07\n\nFieldRules\x12\'\n\x07message\x18\x11 \x01(\x0b\x32\x16.validate.MessageRules\x12%\n\x05\x66loat\x18\x01 \x01(\x0b\x32\x14.validate.FloatRulesH\x00\x12\'\n\x06\x64ouble\x18\x02 \x01(\x0b\x32\x15.validate.DoubleRulesH\x00\x12%\n\x05int32\x18\x03 \x01(\x0b\x32\x14.validate.Int32RulesH\x00\x12%\n\x05int64\x18\x04 \x01(\x0b\x32\x14.validate.Int64RulesH\x00\x12\'\n\x06uint32\x18\x05 \x01(\x0b\x32\x15.validate.UInt32RulesH\x00\x12\'\n\x06uint64\x18\x06 \x01(\x0b\x32\x15.validate.UInt64RulesH\x00\x12\'\n\x06sint32\x18\x07 \x01(\x0b\x32\x15.validate.SInt32RulesH\x00\x12\'\n\x06sint64\x18\x08 \x01(\x0b\x32\x15.validate.SInt64RulesH\x00\x12)\n\x07\x66ixed32\x18\t \x01(\x0b\x32\x16.validate.Fixed32RulesH\x00\x12)\n\x07\x66ixed64\x18\n \x01(\x0b\x32\x16.validate.Fixed64RulesH\x00\x12+\n\x08sfixed32\x18\x0b \x01(\x0b\x32\x17.validate.SFixed32RulesH\x00\x12+\n\x08sfixed64\x18\x0c \x01(\x0b\x32\x17.validate.SFixed64RulesH\x00\x12#\n\x04\x62ool\x18\r \x01(\x0b\x32\x13.validate.BoolRulesH\x00\x12\'\n\x06string\x18\x0e \x01(\x0b\x32\x15.validate.StringRulesH\x00\x12%\n\x05\x62ytes\x18\x0f \x01(\x0b\x32\x14.validate.BytesRulesH\x00\x12#\n\x04\x65num\x18\x10 \x01(\x0b\x32\x13.validate.EnumRulesH\x00\x12+\n\x08repeated\x18\x12 \x01(\x0b\x32\x17.validate.RepeatedRulesH\x00\x12!\n\x03map\x18\x13 \x01(\x0b\x32\x12.validate.MapRulesH\x00\x12!\n\x03\x61ny\x18\x14 \x01(\x0b\x32\x12.validate.AnyRulesH\x00\x12+\n\x08\x64uration\x18\x15 \x01(\x0b\x32\x17.validate.DurationRulesH\x00\x12-\n\ttimestamp\x18\x16 \x01(\x0b\x32\x18.validate.TimestampRulesH\x00\x42\x06\n\x04type\"\x7f\n\nFloatRules\x12\r\n\x05\x63onst\x18\x01 \x01(\x02\x12\n\n\x02lt\x18\x02 \x01(\x02\x12\x0b\n\x03lte\x18\x03 \x01(\x02\x12\n\n\x02gt\x18\x04 \x01(\x02\x12\x0b\n\x03gte\x18\x05 \x01(\x02\x12\n\n\x02in\x18\x06 \x03(\x02\x12\x0e\n\x06not_in\x18\x07 \x03(\x02\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x80\x01\n\x0b\x44oubleRules\x12\r\n\x05\x63onst\x18\x01 \x01(\x01\x12\n\n\x02lt\x18\x02 \x01(\x01\x12\x0b\n\x03lte\x18\x03 \x01(\x01\x12\n\n\x02gt\x18\x04 \x01(\x01\x12\x0b\n\x03gte\x18\x05 \x01(\x01\x12\n\n\x02in\x18\x06 \x03(\x01\x12\x0e\n\x06not_in\x18\x07 \x03(\x01\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x7f\n\nInt32Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x05\x12\n\n\x02lt\x18\x02 \x01(\x05\x12\x0b\n\x03lte\x18\x03 \x01(\x05\x12\n\n\x02gt\x18\x04 \x01(\x05\x12\x0b\n\x03gte\x18\x05 \x01(\x05\x12\n\n\x02in\x18\x06 \x03(\x05\x12\x0e\n\x06not_in\x18\x07 \x03(\x05\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x7f\n\nInt64Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x03\x12\n\n\x02lt\x18\x02 \x01(\x03\x12\x0b\n\x03lte\x18\x03 \x01(\x03\x12\n\n\x02gt\x18\x04 \x01(\x03\x12\x0b\n\x03gte\x18\x05 \x01(\x03\x12\n\n\x02in\x18\x06 \x03(\x03\x12\x0e\n\x06not_in\x18\x07 \x03(\x03\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x80\x01\n\x0bUInt32Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\r\x12\n\n\x02lt\x18\x02 \x01(\r\x12\x0b\n\x03lte\x18\x03 \x01(\r\x12\n\n\x02gt\x18\x04 \x01(\r\x12\x0b\n\x03gte\x18\x05 \x01(\r\x12\n\n\x02in\x18\x06 \x03(\r\x12\x0e\n\x06not_in\x18\x07 \x03(\r\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x80\x01\n\x0bUInt64Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x04\x12\n\n\x02lt\x18\x02 \x01(\x04\x12\x0b\n\x03lte\x18\x03 \x01(\x04\x12\n\n\x02gt\x18\x04 \x01(\x04\x12\x0b\n\x03gte\x18\x05 \x01(\x04\x12\n\n\x02in\x18\x06 \x03(\x04\x12\x0e\n\x06not_in\x18\x07 \x03(\x04\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x80\x01\n\x0bSInt32Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x11\x12\n\n\x02lt\x18\x02 \x01(\x11\x12\x0b\n\x03lte\x18\x03 \x01(\x11\x12\n\n\x02gt\x18\x04 \x01(\x11\x12\x0b\n\x03gte\x18\x05 \x01(\x11\x12\n\n\x02in\x18\x06 \x03(\x11\x12\x0e\n\x06not_in\x18\x07 \x03(\x11\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x80\x01\n\x0bSInt64Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x12\x12\n\n\x02lt\x18\x02 \x01(\x12\x12\x0b\n\x03lte\x18\x03 \x01(\x12\x12\n\n\x02gt\x18\x04 \x01(\x12\x12\x0b\n\x03gte\x18\x05 \x01(\x12\x12\n\n\x02in\x18\x06 \x03(\x12\x12\x0e\n\x06not_in\x18\x07 \x03(\x12\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x81\x01\n\x0c\x46ixed32Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x07\x12\n\n\x02lt\x18\x02 \x01(\x07\x12\x0b\n\x03lte\x18\x03 \x01(\x07\x12\n\n\x02gt\x18\x04 \x01(\x07\x12\x0b\n\x03gte\x18\x05 \x01(\x07\x12\n\n\x02in\x18\x06 \x03(\x07\x12\x0e\n\x06not_in\x18\x07 \x03(\x07\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x81\x01\n\x0c\x46ixed64Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x06\x12\n\n\x02lt\x18\x02 \x01(\x06\x12\x0b\n\x03lte\x18\x03 \x01(\x06\x12\n\n\x02gt\x18\x04 \x01(\x06\x12\x0b\n\x03gte\x18\x05 \x01(\x06\x12\n\n\x02in\x18\x06 \x03(\x06\x12\x0e\n\x06not_in\x18\x07 \x03(\x06\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x82\x01\n\rSFixed32Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x0f\x12\n\n\x02lt\x18\x02 \x01(\x0f\x12\x0b\n\x03lte\x18\x03 \x01(\x0f\x12\n\n\x02gt\x18\x04 \x01(\x0f\x12\x0b\n\x03gte\x18\x05 \x01(\x0f\x12\n\n\x02in\x18\x06 \x03(\x0f\x12\x0e\n\x06not_in\x18\x07 \x03(\x0f\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x82\x01\n\rSFixed64Rules\x12\r\n\x05\x63onst\x18\x01 \x01(\x10\x12\n\n\x02lt\x18\x02 \x01(\x10\x12\x0b\n\x03lte\x18\x03 \x01(\x10\x12\n\n\x02gt\x18\x04 \x01(\x10\x12\x0b\n\x03gte\x18\x05 \x01(\x10\x12\n\n\x02in\x18\x06 \x03(\x10\x12\x0e\n\x06not_in\x18\x07 \x03(\x10\x12\x14\n\x0cignore_empty\x18\x08 \x01(\x08\"\x1a\n\tBoolRules\x12\r\n\x05\x63onst\x18\x01 \x01(\x08\"\xfd\x03\n\x0bStringRules\x12\r\n\x05\x63onst\x18\x01 \x01(\t\x12\x0b\n\x03len\x18\x13 \x01(\x04\x12\x0f\n\x07min_len\x18\x02 \x01(\x04\x12\x0f\n\x07max_len\x18\x03 \x01(\x04\x12\x11\n\tlen_bytes\x18\x14 \x01(\x04\x12\x11\n\tmin_bytes\x18\x04 \x01(\x04\x12\x11\n\tmax_bytes\x18\x05 \x01(\x04\x12\x0f\n\x07pattern\x18\x06 \x01(\t\x12\x0e\n\x06prefix\x18\x07 \x01(\t\x12\x0e\n\x06suffix\x18\x08 \x01(\t\x12\x10\n\x08\x63ontains\x18\t \x01(\t\x12\x14\n\x0cnot_contains\x18\x17 \x01(\t\x12\n\n\x02in\x18\n \x03(\t\x12\x0e\n\x06not_in\x18\x0b \x03(\t\x12\x0f\n\x05\x65mail\x18\x0c \x01(\x08H\x00\x12\x12\n\x08hostname\x18\r \x01(\x08H\x00\x12\x0c\n\x02ip\x18\x0e \x01(\x08H\x00\x12\x0e\n\x04ipv4\x18\x0f \x01(\x08H\x00\x12\x0e\n\x04ipv6\x18\x10 \x01(\x08H\x00\x12\r\n\x03uri\x18\x11 \x01(\x08H\x00\x12\x11\n\x07uri_ref\x18\x12 \x01(\x08H\x00\x12\x11\n\x07\x61\x64\x64ress\x18\x15 \x01(\x08H\x00\x12\x0e\n\x04uuid\x18\x16 \x01(\x08H\x00\x12\x30\n\x10well_known_regex\x18\x18 \x01(\x0e\x32\x14.validate.KnownRegexH\x00\x12\x14\n\x06strict\x18\x19 \x01(\x08:\x04true\x12\x14\n\x0cignore_empty\x18\x1a \x01(\x08\x42\x0c\n\nwell_known\"\xfb\x01\n\nBytesRules\x12\r\n\x05\x63onst\x18\x01 \x01(\x0c\x12\x0b\n\x03len\x18\r \x01(\x04\x12\x0f\n\x07min_len\x18\x02 \x01(\x04\x12\x0f\n\x07max_len\x18\x03 \x01(\x04\x12\x0f\n\x07pattern\x18\x04 \x01(\t\x12\x0e\n\x06prefix\x18\x05 \x01(\x0c\x12\x0e\n\x06suffix\x18\x06 \x01(\x0c\x12\x10\n\x08\x63ontains\x18\x07 \x01(\x0c\x12\n\n\x02in\x18\x08 \x03(\x0c\x12\x0e\n\x06not_in\x18\t \x03(\x0c\x12\x0c\n\x02ip\x18\n \x01(\x08H\x00\x12\x0e\n\x04ipv4\x18\x0b \x01(\x08H\x00\x12\x0e\n\x04ipv6\x18\x0c \x01(\x08H\x00\x12\x14\n\x0cignore_empty\x18\x0e \x01(\x08\x42\x0c\n\nwell_known\"L\n\tEnumRules\x12\r\n\x05\x63onst\x18\x01 \x01(\x05\x12\x14\n\x0c\x64\x65\x66ined_only\x18\x02 \x01(\x08\x12\n\n\x02in\x18\x03 \x03(\x05\x12\x0e\n\x06not_in\x18\x04 \x03(\x05\".\n\x0cMessageRules\x12\x0c\n\x04skip\x18\x01 \x01(\x08\x12\x10\n\x08required\x18\x02 \x01(\x08\"\x80\x01\n\rRepeatedRules\x12\x11\n\tmin_items\x18\x01 \x01(\x04\x12\x11\n\tmax_items\x18\x02 \x01(\x04\x12\x0e\n\x06unique\x18\x03 \x01(\x08\x12#\n\x05items\x18\x04 \x01(\x0b\x32\x14.validate.FieldRules\x12\x14\n\x0cignore_empty\x18\x05 \x01(\x08\"\xa3\x01\n\x08MapRules\x12\x11\n\tmin_pairs\x18\x01 \x01(\x04\x12\x11\n\tmax_pairs\x18\x02 \x01(\x04\x12\x11\n\tno_sparse\x18\x03 \x01(\x08\x12\"\n\x04keys\x18\x04 \x01(\x0b\x32\x14.validate.FieldRules\x12$\n\x06values\x18\x05 \x01(\x0b\x32\x14.validate.FieldRules\x12\x14\n\x0cignore_empty\x18\x06 \x01(\x08\"8\n\x08\x41nyRules\x12\x10\n\x08required\x18\x01 \x01(\x08\x12\n\n\x02in\x18\x02 \x03(\t\x12\x0e\n\x06not_in\x18\x03 \x03(\t\"\xbb\x02\n\rDurationRules\x12\x10\n\x08required\x18\x01 \x01(\x08\x12(\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12%\n\x02lt\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12&\n\x03lte\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12%\n\x02gt\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12&\n\x03gte\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x12%\n\x02in\x18\x07 \x03(\x0b\x32\x19.google.protobuf.Duration\x12)\n\x06not_in\x18\x08 \x03(\x0b\x32\x19.google.protobuf.Duration\"\xba\x02\n\x0eTimestampRules\x12\x10\n\x08required\x18\x01 \x01(\x08\x12)\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12&\n\x02lt\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x03lte\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12&\n\x02gt\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x03gte\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06lt_now\x18\x07 \x01(\x08\x12\x0e\n\x06gt_now\x18\x08 \x01(\x08\x12)\n\x06within\x18\t \x01(\x0b\x32\x19.google.protobuf.Duration*F\n\nKnownRegex\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x14\n\x10HTTP_HEADER_NAME\x10\x01\x12\x15\n\x11HTTP_HEADER_VALUE\x10\x02:2\n\x08\x64isabled\x12\x1f.google.protobuf.MessageOptions\x18\xaf\x08 \x01(\x08:1\n\x07ignored\x12\x1f.google.protobuf.MessageOptions\x18\xb0\x08 \x01(\x08:0\n\x08required\x12\x1d.google.protobuf.OneofOptions\x18\xaf\x08 \x01(\x08:C\n\x05rules\x12\x1d.google.protobuf.FieldOptions\x18\xaf\x08 \x01(\x0b\x32\x14.validate.FieldRulesBP\n\x1aio.envoyproxy.pgv.validateZ2github.com/envoyproxy/protoc-gen-validate/validate')
31
+
32
+ _globals = globals()
33
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
34
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'validate_pb2', _globals)
35
+ if not _descriptor._USE_C_DESCRIPTORS:
36
+ _globals['DESCRIPTOR']._loaded_options = None
37
+ _globals['DESCRIPTOR']._serialized_options = b'\n\032io.envoyproxy.pgv.validateZ2github.com/envoyproxy/protoc-gen-validate/validate'
38
+ _globals['_KNOWNREGEX']._serialized_start=4532
39
+ _globals['_KNOWNREGEX']._serialized_end=4602
40
+ _globals['_FIELDRULES']._serialized_start=128
41
+ _globals['_FIELDRULES']._serialized_end=1048
42
+ _globals['_FLOATRULES']._serialized_start=1050
43
+ _globals['_FLOATRULES']._serialized_end=1177
44
+ _globals['_DOUBLERULES']._serialized_start=1180
45
+ _globals['_DOUBLERULES']._serialized_end=1308
46
+ _globals['_INT32RULES']._serialized_start=1310
47
+ _globals['_INT32RULES']._serialized_end=1437
48
+ _globals['_INT64RULES']._serialized_start=1439
49
+ _globals['_INT64RULES']._serialized_end=1566
50
+ _globals['_UINT32RULES']._serialized_start=1569
51
+ _globals['_UINT32RULES']._serialized_end=1697
52
+ _globals['_UINT64RULES']._serialized_start=1700
53
+ _globals['_UINT64RULES']._serialized_end=1828
54
+ _globals['_SINT32RULES']._serialized_start=1831
55
+ _globals['_SINT32RULES']._serialized_end=1959
56
+ _globals['_SINT64RULES']._serialized_start=1962
57
+ _globals['_SINT64RULES']._serialized_end=2090
58
+ _globals['_FIXED32RULES']._serialized_start=2093
59
+ _globals['_FIXED32RULES']._serialized_end=2222
60
+ _globals['_FIXED64RULES']._serialized_start=2225
61
+ _globals['_FIXED64RULES']._serialized_end=2354
62
+ _globals['_SFIXED32RULES']._serialized_start=2357
63
+ _globals['_SFIXED32RULES']._serialized_end=2487
64
+ _globals['_SFIXED64RULES']._serialized_start=2490
65
+ _globals['_SFIXED64RULES']._serialized_end=2620
66
+ _globals['_BOOLRULES']._serialized_start=2622
67
+ _globals['_BOOLRULES']._serialized_end=2648
68
+ _globals['_STRINGRULES']._serialized_start=2651
69
+ _globals['_STRINGRULES']._serialized_end=3160
70
+ _globals['_BYTESRULES']._serialized_start=3163
71
+ _globals['_BYTESRULES']._serialized_end=3414
72
+ _globals['_ENUMRULES']._serialized_start=3416
73
+ _globals['_ENUMRULES']._serialized_end=3492
74
+ _globals['_MESSAGERULES']._serialized_start=3494
75
+ _globals['_MESSAGERULES']._serialized_end=3540
76
+ _globals['_REPEATEDRULES']._serialized_start=3543
77
+ _globals['_REPEATEDRULES']._serialized_end=3671
78
+ _globals['_MAPRULES']._serialized_start=3674
79
+ _globals['_MAPRULES']._serialized_end=3837
80
+ _globals['_ANYRULES']._serialized_start=3839
81
+ _globals['_ANYRULES']._serialized_end=3895
82
+ _globals['_DURATIONRULES']._serialized_start=3898
83
+ _globals['_DURATIONRULES']._serialized_end=4213
84
+ _globals['_TIMESTAMPRULES']._serialized_start=4216
85
+ _globals['_TIMESTAMPRULES']._serialized_end=4530
86
+ # @@protoc_insertion_point(module_scope)