1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/cloud/vision/v1p2beta1/image_annotator.proto 3 4package vision 5 6import ( 7 context "context" 8 fmt "fmt" 9 math "math" 10 11 proto "github.com/golang/protobuf/proto" 12 timestamp "github.com/golang/protobuf/ptypes/timestamp" 13 _ "google.golang.org/genproto/googleapis/api/annotations" 14 longrunning "google.golang.org/genproto/googleapis/longrunning" 15 status "google.golang.org/genproto/googleapis/rpc/status" 16 color "google.golang.org/genproto/googleapis/type/color" 17 latlng "google.golang.org/genproto/googleapis/type/latlng" 18 grpc "google.golang.org/grpc" 19 codes "google.golang.org/grpc/codes" 20 status1 "google.golang.org/grpc/status" 21) 22 23// Reference imports to suppress errors if they are not otherwise used. 24var _ = proto.Marshal 25var _ = fmt.Errorf 26var _ = math.Inf 27 28// This is a compile-time assertion to ensure that this generated file 29// is compatible with the proto package it is being compiled against. 30// A compilation error at this line likely means your copy of the 31// proto package needs to be updated. 32const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 33 34// A bucketized representation of likelihood, which is intended to give clients 35// highly stable results across model upgrades. 36type Likelihood int32 37 38const ( 39 // Unknown likelihood. 40 Likelihood_UNKNOWN Likelihood = 0 41 // It is very unlikely that the image belongs to the specified vertical. 42 Likelihood_VERY_UNLIKELY Likelihood = 1 43 // It is unlikely that the image belongs to the specified vertical. 44 Likelihood_UNLIKELY Likelihood = 2 45 // It is possible that the image belongs to the specified vertical. 46 Likelihood_POSSIBLE Likelihood = 3 47 // It is likely that the image belongs to the specified vertical. 48 Likelihood_LIKELY Likelihood = 4 49 // It is very likely that the image belongs to the specified vertical. 50 Likelihood_VERY_LIKELY Likelihood = 5 51) 52 53var Likelihood_name = map[int32]string{ 54 0: "UNKNOWN", 55 1: "VERY_UNLIKELY", 56 2: "UNLIKELY", 57 3: "POSSIBLE", 58 4: "LIKELY", 59 5: "VERY_LIKELY", 60} 61 62var Likelihood_value = map[string]int32{ 63 "UNKNOWN": 0, 64 "VERY_UNLIKELY": 1, 65 "UNLIKELY": 2, 66 "POSSIBLE": 3, 67 "LIKELY": 4, 68 "VERY_LIKELY": 5, 69} 70 71func (x Likelihood) String() string { 72 return proto.EnumName(Likelihood_name, int32(x)) 73} 74 75func (Likelihood) EnumDescriptor() ([]byte, []int) { 76 return fileDescriptor_357ce83580ed3103, []int{0} 77} 78 79// Type of Google Cloud Vision API feature to be extracted. 80type Feature_Type int32 81 82const ( 83 // Unspecified feature type. 84 Feature_TYPE_UNSPECIFIED Feature_Type = 0 85 // Run face detection. 86 Feature_FACE_DETECTION Feature_Type = 1 87 // Run landmark detection. 88 Feature_LANDMARK_DETECTION Feature_Type = 2 89 // Run logo detection. 90 Feature_LOGO_DETECTION Feature_Type = 3 91 // Run label detection. 92 Feature_LABEL_DETECTION Feature_Type = 4 93 // Run text detection / optical character recognition (OCR). Text detection 94 // is optimized for areas of text within a larger image; if the image is 95 // a document, use `DOCUMENT_TEXT_DETECTION` instead. 96 Feature_TEXT_DETECTION Feature_Type = 5 97 // Run dense text document OCR. Takes precedence when both 98 // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present. 99 Feature_DOCUMENT_TEXT_DETECTION Feature_Type = 11 100 // Run Safe Search to detect potentially unsafe 101 // or undesirable content. 102 Feature_SAFE_SEARCH_DETECTION Feature_Type = 6 103 // Compute a set of image properties, such as the 104 // image's dominant colors. 105 Feature_IMAGE_PROPERTIES Feature_Type = 7 106 // Run crop hints. 107 Feature_CROP_HINTS Feature_Type = 9 108 // Run web detection. 109 Feature_WEB_DETECTION Feature_Type = 10 110) 111 112var Feature_Type_name = map[int32]string{ 113 0: "TYPE_UNSPECIFIED", 114 1: "FACE_DETECTION", 115 2: "LANDMARK_DETECTION", 116 3: "LOGO_DETECTION", 117 4: "LABEL_DETECTION", 118 5: "TEXT_DETECTION", 119 11: "DOCUMENT_TEXT_DETECTION", 120 6: "SAFE_SEARCH_DETECTION", 121 7: "IMAGE_PROPERTIES", 122 9: "CROP_HINTS", 123 10: "WEB_DETECTION", 124} 125 126var Feature_Type_value = map[string]int32{ 127 "TYPE_UNSPECIFIED": 0, 128 "FACE_DETECTION": 1, 129 "LANDMARK_DETECTION": 2, 130 "LOGO_DETECTION": 3, 131 "LABEL_DETECTION": 4, 132 "TEXT_DETECTION": 5, 133 "DOCUMENT_TEXT_DETECTION": 11, 134 "SAFE_SEARCH_DETECTION": 6, 135 "IMAGE_PROPERTIES": 7, 136 "CROP_HINTS": 9, 137 "WEB_DETECTION": 10, 138} 139 140func (x Feature_Type) String() string { 141 return proto.EnumName(Feature_Type_name, int32(x)) 142} 143 144func (Feature_Type) EnumDescriptor() ([]byte, []int) { 145 return fileDescriptor_357ce83580ed3103, []int{0, 0} 146} 147 148// Face landmark (feature) type. 149// Left and right are defined from the vantage of the viewer of the image 150// without considering mirror projections typical of photos. So, `LEFT_EYE`, 151// typically, is the person's right eye. 152type FaceAnnotation_Landmark_Type int32 153 154const ( 155 // Unknown face landmark detected. Should not be filled. 156 FaceAnnotation_Landmark_UNKNOWN_LANDMARK FaceAnnotation_Landmark_Type = 0 157 // Left eye. 158 FaceAnnotation_Landmark_LEFT_EYE FaceAnnotation_Landmark_Type = 1 159 // Right eye. 160 FaceAnnotation_Landmark_RIGHT_EYE FaceAnnotation_Landmark_Type = 2 161 // Left of left eyebrow. 162 FaceAnnotation_Landmark_LEFT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 3 163 // Right of left eyebrow. 164 FaceAnnotation_Landmark_RIGHT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 4 165 // Left of right eyebrow. 166 FaceAnnotation_Landmark_LEFT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 5 167 // Right of right eyebrow. 168 FaceAnnotation_Landmark_RIGHT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 6 169 // Midpoint between eyes. 170 FaceAnnotation_Landmark_MIDPOINT_BETWEEN_EYES FaceAnnotation_Landmark_Type = 7 171 // Nose tip. 172 FaceAnnotation_Landmark_NOSE_TIP FaceAnnotation_Landmark_Type = 8 173 // Upper lip. 174 FaceAnnotation_Landmark_UPPER_LIP FaceAnnotation_Landmark_Type = 9 175 // Lower lip. 176 FaceAnnotation_Landmark_LOWER_LIP FaceAnnotation_Landmark_Type = 10 177 // Mouth left. 178 FaceAnnotation_Landmark_MOUTH_LEFT FaceAnnotation_Landmark_Type = 11 179 // Mouth right. 180 FaceAnnotation_Landmark_MOUTH_RIGHT FaceAnnotation_Landmark_Type = 12 181 // Mouth center. 182 FaceAnnotation_Landmark_MOUTH_CENTER FaceAnnotation_Landmark_Type = 13 183 // Nose, bottom right. 184 FaceAnnotation_Landmark_NOSE_BOTTOM_RIGHT FaceAnnotation_Landmark_Type = 14 185 // Nose, bottom left. 186 FaceAnnotation_Landmark_NOSE_BOTTOM_LEFT FaceAnnotation_Landmark_Type = 15 187 // Nose, bottom center. 188 FaceAnnotation_Landmark_NOSE_BOTTOM_CENTER FaceAnnotation_Landmark_Type = 16 189 // Left eye, top boundary. 190 FaceAnnotation_Landmark_LEFT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 17 191 // Left eye, right corner. 192 FaceAnnotation_Landmark_LEFT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 18 193 // Left eye, bottom boundary. 194 FaceAnnotation_Landmark_LEFT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 19 195 // Left eye, left corner. 196 FaceAnnotation_Landmark_LEFT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 20 197 // Right eye, top boundary. 198 FaceAnnotation_Landmark_RIGHT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 21 199 // Right eye, right corner. 200 FaceAnnotation_Landmark_RIGHT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 22 201 // Right eye, bottom boundary. 202 FaceAnnotation_Landmark_RIGHT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 23 203 // Right eye, left corner. 204 FaceAnnotation_Landmark_RIGHT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 24 205 // Left eyebrow, upper midpoint. 206 FaceAnnotation_Landmark_LEFT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 25 207 // Right eyebrow, upper midpoint. 208 FaceAnnotation_Landmark_RIGHT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 26 209 // Left ear tragion. 210 FaceAnnotation_Landmark_LEFT_EAR_TRAGION FaceAnnotation_Landmark_Type = 27 211 // Right ear tragion. 212 FaceAnnotation_Landmark_RIGHT_EAR_TRAGION FaceAnnotation_Landmark_Type = 28 213 // Left eye pupil. 214 FaceAnnotation_Landmark_LEFT_EYE_PUPIL FaceAnnotation_Landmark_Type = 29 215 // Right eye pupil. 216 FaceAnnotation_Landmark_RIGHT_EYE_PUPIL FaceAnnotation_Landmark_Type = 30 217 // Forehead glabella. 218 FaceAnnotation_Landmark_FOREHEAD_GLABELLA FaceAnnotation_Landmark_Type = 31 219 // Chin gnathion. 220 FaceAnnotation_Landmark_CHIN_GNATHION FaceAnnotation_Landmark_Type = 32 221 // Chin left gonion. 222 FaceAnnotation_Landmark_CHIN_LEFT_GONION FaceAnnotation_Landmark_Type = 33 223 // Chin right gonion. 224 FaceAnnotation_Landmark_CHIN_RIGHT_GONION FaceAnnotation_Landmark_Type = 34 225) 226 227var FaceAnnotation_Landmark_Type_name = map[int32]string{ 228 0: "UNKNOWN_LANDMARK", 229 1: "LEFT_EYE", 230 2: "RIGHT_EYE", 231 3: "LEFT_OF_LEFT_EYEBROW", 232 4: "RIGHT_OF_LEFT_EYEBROW", 233 5: "LEFT_OF_RIGHT_EYEBROW", 234 6: "RIGHT_OF_RIGHT_EYEBROW", 235 7: "MIDPOINT_BETWEEN_EYES", 236 8: "NOSE_TIP", 237 9: "UPPER_LIP", 238 10: "LOWER_LIP", 239 11: "MOUTH_LEFT", 240 12: "MOUTH_RIGHT", 241 13: "MOUTH_CENTER", 242 14: "NOSE_BOTTOM_RIGHT", 243 15: "NOSE_BOTTOM_LEFT", 244 16: "NOSE_BOTTOM_CENTER", 245 17: "LEFT_EYE_TOP_BOUNDARY", 246 18: "LEFT_EYE_RIGHT_CORNER", 247 19: "LEFT_EYE_BOTTOM_BOUNDARY", 248 20: "LEFT_EYE_LEFT_CORNER", 249 21: "RIGHT_EYE_TOP_BOUNDARY", 250 22: "RIGHT_EYE_RIGHT_CORNER", 251 23: "RIGHT_EYE_BOTTOM_BOUNDARY", 252 24: "RIGHT_EYE_LEFT_CORNER", 253 25: "LEFT_EYEBROW_UPPER_MIDPOINT", 254 26: "RIGHT_EYEBROW_UPPER_MIDPOINT", 255 27: "LEFT_EAR_TRAGION", 256 28: "RIGHT_EAR_TRAGION", 257 29: "LEFT_EYE_PUPIL", 258 30: "RIGHT_EYE_PUPIL", 259 31: "FOREHEAD_GLABELLA", 260 32: "CHIN_GNATHION", 261 33: "CHIN_LEFT_GONION", 262 34: "CHIN_RIGHT_GONION", 263} 264 265var FaceAnnotation_Landmark_Type_value = map[string]int32{ 266 "UNKNOWN_LANDMARK": 0, 267 "LEFT_EYE": 1, 268 "RIGHT_EYE": 2, 269 "LEFT_OF_LEFT_EYEBROW": 3, 270 "RIGHT_OF_LEFT_EYEBROW": 4, 271 "LEFT_OF_RIGHT_EYEBROW": 5, 272 "RIGHT_OF_RIGHT_EYEBROW": 6, 273 "MIDPOINT_BETWEEN_EYES": 7, 274 "NOSE_TIP": 8, 275 "UPPER_LIP": 9, 276 "LOWER_LIP": 10, 277 "MOUTH_LEFT": 11, 278 "MOUTH_RIGHT": 12, 279 "MOUTH_CENTER": 13, 280 "NOSE_BOTTOM_RIGHT": 14, 281 "NOSE_BOTTOM_LEFT": 15, 282 "NOSE_BOTTOM_CENTER": 16, 283 "LEFT_EYE_TOP_BOUNDARY": 17, 284 "LEFT_EYE_RIGHT_CORNER": 18, 285 "LEFT_EYE_BOTTOM_BOUNDARY": 19, 286 "LEFT_EYE_LEFT_CORNER": 20, 287 "RIGHT_EYE_TOP_BOUNDARY": 21, 288 "RIGHT_EYE_RIGHT_CORNER": 22, 289 "RIGHT_EYE_BOTTOM_BOUNDARY": 23, 290 "RIGHT_EYE_LEFT_CORNER": 24, 291 "LEFT_EYEBROW_UPPER_MIDPOINT": 25, 292 "RIGHT_EYEBROW_UPPER_MIDPOINT": 26, 293 "LEFT_EAR_TRAGION": 27, 294 "RIGHT_EAR_TRAGION": 28, 295 "LEFT_EYE_PUPIL": 29, 296 "RIGHT_EYE_PUPIL": 30, 297 "FOREHEAD_GLABELLA": 31, 298 "CHIN_GNATHION": 32, 299 "CHIN_LEFT_GONION": 33, 300 "CHIN_RIGHT_GONION": 34, 301} 302 303func (x FaceAnnotation_Landmark_Type) String() string { 304 return proto.EnumName(FaceAnnotation_Landmark_Type_name, int32(x)) 305} 306 307func (FaceAnnotation_Landmark_Type) EnumDescriptor() ([]byte, []int) { 308 return fileDescriptor_357ce83580ed3103, []int{3, 0, 0} 309} 310 311// Batch operation states. 312type OperationMetadata_State int32 313 314const ( 315 // Invalid. 316 OperationMetadata_STATE_UNSPECIFIED OperationMetadata_State = 0 317 // Request is received. 318 OperationMetadata_CREATED OperationMetadata_State = 1 319 // Request is actively being processed. 320 OperationMetadata_RUNNING OperationMetadata_State = 2 321 // The batch processing is done. 322 OperationMetadata_DONE OperationMetadata_State = 3 323 // The batch processing was cancelled. 324 OperationMetadata_CANCELLED OperationMetadata_State = 4 325) 326 327var OperationMetadata_State_name = map[int32]string{ 328 0: "STATE_UNSPECIFIED", 329 1: "CREATED", 330 2: "RUNNING", 331 3: "DONE", 332 4: "CANCELLED", 333} 334 335var OperationMetadata_State_value = map[string]int32{ 336 "STATE_UNSPECIFIED": 0, 337 "CREATED": 1, 338 "RUNNING": 2, 339 "DONE": 3, 340 "CANCELLED": 4, 341} 342 343func (x OperationMetadata_State) String() string { 344 return proto.EnumName(OperationMetadata_State_name, int32(x)) 345} 346 347func (OperationMetadata_State) EnumDescriptor() ([]byte, []int) { 348 return fileDescriptor_357ce83580ed3103, []int{31, 0} 349} 350 351// The type of Google Cloud Vision API detection to perform, and the maximum 352// number of results to return for that type. Multiple `Feature` objects can 353// be specified in the `features` list. 354type Feature struct { 355 // The feature type. 356 Type Feature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.vision.v1p2beta1.Feature_Type" json:"type,omitempty"` 357 // Maximum number of results of this type. Does not apply to 358 // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`. 359 MaxResults int32 `protobuf:"varint,2,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` 360 // Model to use for the feature. 361 // Supported values: "builtin/stable" (the default if unset) and 362 // "builtin/latest". 363 Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"` 364 XXX_NoUnkeyedLiteral struct{} `json:"-"` 365 XXX_unrecognized []byte `json:"-"` 366 XXX_sizecache int32 `json:"-"` 367} 368 369func (m *Feature) Reset() { *m = Feature{} } 370func (m *Feature) String() string { return proto.CompactTextString(m) } 371func (*Feature) ProtoMessage() {} 372func (*Feature) Descriptor() ([]byte, []int) { 373 return fileDescriptor_357ce83580ed3103, []int{0} 374} 375 376func (m *Feature) XXX_Unmarshal(b []byte) error { 377 return xxx_messageInfo_Feature.Unmarshal(m, b) 378} 379func (m *Feature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 380 return xxx_messageInfo_Feature.Marshal(b, m, deterministic) 381} 382func (m *Feature) XXX_Merge(src proto.Message) { 383 xxx_messageInfo_Feature.Merge(m, src) 384} 385func (m *Feature) XXX_Size() int { 386 return xxx_messageInfo_Feature.Size(m) 387} 388func (m *Feature) XXX_DiscardUnknown() { 389 xxx_messageInfo_Feature.DiscardUnknown(m) 390} 391 392var xxx_messageInfo_Feature proto.InternalMessageInfo 393 394func (m *Feature) GetType() Feature_Type { 395 if m != nil { 396 return m.Type 397 } 398 return Feature_TYPE_UNSPECIFIED 399} 400 401func (m *Feature) GetMaxResults() int32 { 402 if m != nil { 403 return m.MaxResults 404 } 405 return 0 406} 407 408func (m *Feature) GetModel() string { 409 if m != nil { 410 return m.Model 411 } 412 return "" 413} 414 415// External image source (Google Cloud Storage or web URL image location). 416type ImageSource struct { 417 // **Use `image_uri` instead.** 418 // 419 // The Google Cloud Storage URI of the form 420 // `gs://bucket_name/object_name`. Object versioning is not supported. See 421 // [Google Cloud Storage Request 422 // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info. 423 GcsImageUri string `protobuf:"bytes,1,opt,name=gcs_image_uri,json=gcsImageUri,proto3" json:"gcs_image_uri,omitempty"` 424 // The URI of the source image. Can be either: 425 // 426 // 1. A Google Cloud Storage URI of the form 427 // `gs://bucket_name/object_name`. Object versioning is not supported. See 428 // [Google Cloud Storage Request 429 // URIs](https://cloud.google.com/storage/docs/reference-uris) for more 430 // info. 431 // 432 // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from 433 // HTTP/HTTPS URLs, Google cannot guarantee that the request will be 434 // completed. Your request may fail if the specified host denies the 435 // request (e.g. due to request throttling or DOS prevention), or if Google 436 // throttles requests to the site for abuse prevention. You should not 437 // depend on externally-hosted images for production applications. 438 // 439 // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes 440 // precedence. 441 ImageUri string `protobuf:"bytes,2,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"` 442 XXX_NoUnkeyedLiteral struct{} `json:"-"` 443 XXX_unrecognized []byte `json:"-"` 444 XXX_sizecache int32 `json:"-"` 445} 446 447func (m *ImageSource) Reset() { *m = ImageSource{} } 448func (m *ImageSource) String() string { return proto.CompactTextString(m) } 449func (*ImageSource) ProtoMessage() {} 450func (*ImageSource) Descriptor() ([]byte, []int) { 451 return fileDescriptor_357ce83580ed3103, []int{1} 452} 453 454func (m *ImageSource) XXX_Unmarshal(b []byte) error { 455 return xxx_messageInfo_ImageSource.Unmarshal(m, b) 456} 457func (m *ImageSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 458 return xxx_messageInfo_ImageSource.Marshal(b, m, deterministic) 459} 460func (m *ImageSource) XXX_Merge(src proto.Message) { 461 xxx_messageInfo_ImageSource.Merge(m, src) 462} 463func (m *ImageSource) XXX_Size() int { 464 return xxx_messageInfo_ImageSource.Size(m) 465} 466func (m *ImageSource) XXX_DiscardUnknown() { 467 xxx_messageInfo_ImageSource.DiscardUnknown(m) 468} 469 470var xxx_messageInfo_ImageSource proto.InternalMessageInfo 471 472func (m *ImageSource) GetGcsImageUri() string { 473 if m != nil { 474 return m.GcsImageUri 475 } 476 return "" 477} 478 479func (m *ImageSource) GetImageUri() string { 480 if m != nil { 481 return m.ImageUri 482 } 483 return "" 484} 485 486// Client image to perform Google Cloud Vision API tasks over. 487type Image struct { 488 // Image content, represented as a stream of bytes. 489 // Note: As with all `bytes` fields, protobuffers use a pure binary 490 // representation, whereas JSON representations use base64. 491 Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` 492 // Google Cloud Storage image location, or publicly-accessible image 493 // URL. If both `content` and `source` are provided for an image, `content` 494 // takes precedence and is used to perform the image annotation request. 495 Source *ImageSource `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"` 496 XXX_NoUnkeyedLiteral struct{} `json:"-"` 497 XXX_unrecognized []byte `json:"-"` 498 XXX_sizecache int32 `json:"-"` 499} 500 501func (m *Image) Reset() { *m = Image{} } 502func (m *Image) String() string { return proto.CompactTextString(m) } 503func (*Image) ProtoMessage() {} 504func (*Image) Descriptor() ([]byte, []int) { 505 return fileDescriptor_357ce83580ed3103, []int{2} 506} 507 508func (m *Image) XXX_Unmarshal(b []byte) error { 509 return xxx_messageInfo_Image.Unmarshal(m, b) 510} 511func (m *Image) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 512 return xxx_messageInfo_Image.Marshal(b, m, deterministic) 513} 514func (m *Image) XXX_Merge(src proto.Message) { 515 xxx_messageInfo_Image.Merge(m, src) 516} 517func (m *Image) XXX_Size() int { 518 return xxx_messageInfo_Image.Size(m) 519} 520func (m *Image) XXX_DiscardUnknown() { 521 xxx_messageInfo_Image.DiscardUnknown(m) 522} 523 524var xxx_messageInfo_Image proto.InternalMessageInfo 525 526func (m *Image) GetContent() []byte { 527 if m != nil { 528 return m.Content 529 } 530 return nil 531} 532 533func (m *Image) GetSource() *ImageSource { 534 if m != nil { 535 return m.Source 536 } 537 return nil 538} 539 540// A face annotation object contains the results of face detection. 541type FaceAnnotation struct { 542 // The bounding polygon around the face. The coordinates of the bounding box 543 // are in the original image's scale, as returned in `ImageParams`. 544 // The bounding box is computed to "frame" the face in accordance with human 545 // expectations. It is based on the landmarker results. 546 // Note that one or more x and/or y coordinates may not be generated in the 547 // `BoundingPoly` (the polygon will be unbounded) if only a partial face 548 // appears in the image to be annotated. 549 BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 550 // The `fd_bounding_poly` bounding polygon is tighter than the 551 // `boundingPoly`, and encloses only the skin part of the face. Typically, it 552 // is used to eliminate the face from any image analysis that detects the 553 // "amount of skin" visible in an image. It is not based on the 554 // landmarker results, only on the initial face detection, hence 555 // the <code>fd</code> (face detection) prefix. 556 FdBoundingPoly *BoundingPoly `protobuf:"bytes,2,opt,name=fd_bounding_poly,json=fdBoundingPoly,proto3" json:"fd_bounding_poly,omitempty"` 557 // Detected face landmarks. 558 Landmarks []*FaceAnnotation_Landmark `protobuf:"bytes,3,rep,name=landmarks,proto3" json:"landmarks,omitempty"` 559 // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation 560 // of the face relative to the image vertical about the axis perpendicular to 561 // the face. Range [-180,180]. 562 RollAngle float32 `protobuf:"fixed32,4,opt,name=roll_angle,json=rollAngle,proto3" json:"roll_angle,omitempty"` 563 // Yaw angle, which indicates the leftward/rightward angle that the face is 564 // pointing relative to the vertical plane perpendicular to the image. Range 565 // [-180,180]. 566 PanAngle float32 `protobuf:"fixed32,5,opt,name=pan_angle,json=panAngle,proto3" json:"pan_angle,omitempty"` 567 // Pitch angle, which indicates the upwards/downwards angle that the face is 568 // pointing relative to the image's horizontal plane. Range [-180,180]. 569 TiltAngle float32 `protobuf:"fixed32,6,opt,name=tilt_angle,json=tiltAngle,proto3" json:"tilt_angle,omitempty"` 570 // Detection confidence. Range [0, 1]. 571 DetectionConfidence float32 `protobuf:"fixed32,7,opt,name=detection_confidence,json=detectionConfidence,proto3" json:"detection_confidence,omitempty"` 572 // Face landmarking confidence. Range [0, 1]. 573 LandmarkingConfidence float32 `protobuf:"fixed32,8,opt,name=landmarking_confidence,json=landmarkingConfidence,proto3" json:"landmarking_confidence,omitempty"` 574 // Joy likelihood. 575 JoyLikelihood Likelihood `protobuf:"varint,9,opt,name=joy_likelihood,json=joyLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"joy_likelihood,omitempty"` 576 // Sorrow likelihood. 577 SorrowLikelihood Likelihood `protobuf:"varint,10,opt,name=sorrow_likelihood,json=sorrowLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"sorrow_likelihood,omitempty"` 578 // Anger likelihood. 579 AngerLikelihood Likelihood `protobuf:"varint,11,opt,name=anger_likelihood,json=angerLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"anger_likelihood,omitempty"` 580 // Surprise likelihood. 581 SurpriseLikelihood Likelihood `protobuf:"varint,12,opt,name=surprise_likelihood,json=surpriseLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"surprise_likelihood,omitempty"` 582 // Under-exposed likelihood. 583 UnderExposedLikelihood Likelihood `protobuf:"varint,13,opt,name=under_exposed_likelihood,json=underExposedLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"under_exposed_likelihood,omitempty"` 584 // Blurred likelihood. 585 BlurredLikelihood Likelihood `protobuf:"varint,14,opt,name=blurred_likelihood,json=blurredLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"blurred_likelihood,omitempty"` 586 // Headwear likelihood. 587 HeadwearLikelihood Likelihood `protobuf:"varint,15,opt,name=headwear_likelihood,json=headwearLikelihood,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"headwear_likelihood,omitempty"` 588 XXX_NoUnkeyedLiteral struct{} `json:"-"` 589 XXX_unrecognized []byte `json:"-"` 590 XXX_sizecache int32 `json:"-"` 591} 592 593func (m *FaceAnnotation) Reset() { *m = FaceAnnotation{} } 594func (m *FaceAnnotation) String() string { return proto.CompactTextString(m) } 595func (*FaceAnnotation) ProtoMessage() {} 596func (*FaceAnnotation) Descriptor() ([]byte, []int) { 597 return fileDescriptor_357ce83580ed3103, []int{3} 598} 599 600func (m *FaceAnnotation) XXX_Unmarshal(b []byte) error { 601 return xxx_messageInfo_FaceAnnotation.Unmarshal(m, b) 602} 603func (m *FaceAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 604 return xxx_messageInfo_FaceAnnotation.Marshal(b, m, deterministic) 605} 606func (m *FaceAnnotation) XXX_Merge(src proto.Message) { 607 xxx_messageInfo_FaceAnnotation.Merge(m, src) 608} 609func (m *FaceAnnotation) XXX_Size() int { 610 return xxx_messageInfo_FaceAnnotation.Size(m) 611} 612func (m *FaceAnnotation) XXX_DiscardUnknown() { 613 xxx_messageInfo_FaceAnnotation.DiscardUnknown(m) 614} 615 616var xxx_messageInfo_FaceAnnotation proto.InternalMessageInfo 617 618func (m *FaceAnnotation) GetBoundingPoly() *BoundingPoly { 619 if m != nil { 620 return m.BoundingPoly 621 } 622 return nil 623} 624 625func (m *FaceAnnotation) GetFdBoundingPoly() *BoundingPoly { 626 if m != nil { 627 return m.FdBoundingPoly 628 } 629 return nil 630} 631 632func (m *FaceAnnotation) GetLandmarks() []*FaceAnnotation_Landmark { 633 if m != nil { 634 return m.Landmarks 635 } 636 return nil 637} 638 639func (m *FaceAnnotation) GetRollAngle() float32 { 640 if m != nil { 641 return m.RollAngle 642 } 643 return 0 644} 645 646func (m *FaceAnnotation) GetPanAngle() float32 { 647 if m != nil { 648 return m.PanAngle 649 } 650 return 0 651} 652 653func (m *FaceAnnotation) GetTiltAngle() float32 { 654 if m != nil { 655 return m.TiltAngle 656 } 657 return 0 658} 659 660func (m *FaceAnnotation) GetDetectionConfidence() float32 { 661 if m != nil { 662 return m.DetectionConfidence 663 } 664 return 0 665} 666 667func (m *FaceAnnotation) GetLandmarkingConfidence() float32 { 668 if m != nil { 669 return m.LandmarkingConfidence 670 } 671 return 0 672} 673 674func (m *FaceAnnotation) GetJoyLikelihood() Likelihood { 675 if m != nil { 676 return m.JoyLikelihood 677 } 678 return Likelihood_UNKNOWN 679} 680 681func (m *FaceAnnotation) GetSorrowLikelihood() Likelihood { 682 if m != nil { 683 return m.SorrowLikelihood 684 } 685 return Likelihood_UNKNOWN 686} 687 688func (m *FaceAnnotation) GetAngerLikelihood() Likelihood { 689 if m != nil { 690 return m.AngerLikelihood 691 } 692 return Likelihood_UNKNOWN 693} 694 695func (m *FaceAnnotation) GetSurpriseLikelihood() Likelihood { 696 if m != nil { 697 return m.SurpriseLikelihood 698 } 699 return Likelihood_UNKNOWN 700} 701 702func (m *FaceAnnotation) GetUnderExposedLikelihood() Likelihood { 703 if m != nil { 704 return m.UnderExposedLikelihood 705 } 706 return Likelihood_UNKNOWN 707} 708 709func (m *FaceAnnotation) GetBlurredLikelihood() Likelihood { 710 if m != nil { 711 return m.BlurredLikelihood 712 } 713 return Likelihood_UNKNOWN 714} 715 716func (m *FaceAnnotation) GetHeadwearLikelihood() Likelihood { 717 if m != nil { 718 return m.HeadwearLikelihood 719 } 720 return Likelihood_UNKNOWN 721} 722 723// A face-specific landmark (for example, a face feature). 724type FaceAnnotation_Landmark struct { 725 // Face landmark type. 726 Type FaceAnnotation_Landmark_Type `protobuf:"varint,3,opt,name=type,proto3,enum=google.cloud.vision.v1p2beta1.FaceAnnotation_Landmark_Type" json:"type,omitempty"` 727 // Face landmark position. 728 Position *Position `protobuf:"bytes,4,opt,name=position,proto3" json:"position,omitempty"` 729 XXX_NoUnkeyedLiteral struct{} `json:"-"` 730 XXX_unrecognized []byte `json:"-"` 731 XXX_sizecache int32 `json:"-"` 732} 733 734func (m *FaceAnnotation_Landmark) Reset() { *m = FaceAnnotation_Landmark{} } 735func (m *FaceAnnotation_Landmark) String() string { return proto.CompactTextString(m) } 736func (*FaceAnnotation_Landmark) ProtoMessage() {} 737func (*FaceAnnotation_Landmark) Descriptor() ([]byte, []int) { 738 return fileDescriptor_357ce83580ed3103, []int{3, 0} 739} 740 741func (m *FaceAnnotation_Landmark) XXX_Unmarshal(b []byte) error { 742 return xxx_messageInfo_FaceAnnotation_Landmark.Unmarshal(m, b) 743} 744func (m *FaceAnnotation_Landmark) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 745 return xxx_messageInfo_FaceAnnotation_Landmark.Marshal(b, m, deterministic) 746} 747func (m *FaceAnnotation_Landmark) XXX_Merge(src proto.Message) { 748 xxx_messageInfo_FaceAnnotation_Landmark.Merge(m, src) 749} 750func (m *FaceAnnotation_Landmark) XXX_Size() int { 751 return xxx_messageInfo_FaceAnnotation_Landmark.Size(m) 752} 753func (m *FaceAnnotation_Landmark) XXX_DiscardUnknown() { 754 xxx_messageInfo_FaceAnnotation_Landmark.DiscardUnknown(m) 755} 756 757var xxx_messageInfo_FaceAnnotation_Landmark proto.InternalMessageInfo 758 759func (m *FaceAnnotation_Landmark) GetType() FaceAnnotation_Landmark_Type { 760 if m != nil { 761 return m.Type 762 } 763 return FaceAnnotation_Landmark_UNKNOWN_LANDMARK 764} 765 766func (m *FaceAnnotation_Landmark) GetPosition() *Position { 767 if m != nil { 768 return m.Position 769 } 770 return nil 771} 772 773// Detected entity location information. 774type LocationInfo struct { 775 // lat/long location coordinates. 776 LatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=lat_lng,json=latLng,proto3" json:"lat_lng,omitempty"` 777 XXX_NoUnkeyedLiteral struct{} `json:"-"` 778 XXX_unrecognized []byte `json:"-"` 779 XXX_sizecache int32 `json:"-"` 780} 781 782func (m *LocationInfo) Reset() { *m = LocationInfo{} } 783func (m *LocationInfo) String() string { return proto.CompactTextString(m) } 784func (*LocationInfo) ProtoMessage() {} 785func (*LocationInfo) Descriptor() ([]byte, []int) { 786 return fileDescriptor_357ce83580ed3103, []int{4} 787} 788 789func (m *LocationInfo) XXX_Unmarshal(b []byte) error { 790 return xxx_messageInfo_LocationInfo.Unmarshal(m, b) 791} 792func (m *LocationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 793 return xxx_messageInfo_LocationInfo.Marshal(b, m, deterministic) 794} 795func (m *LocationInfo) XXX_Merge(src proto.Message) { 796 xxx_messageInfo_LocationInfo.Merge(m, src) 797} 798func (m *LocationInfo) XXX_Size() int { 799 return xxx_messageInfo_LocationInfo.Size(m) 800} 801func (m *LocationInfo) XXX_DiscardUnknown() { 802 xxx_messageInfo_LocationInfo.DiscardUnknown(m) 803} 804 805var xxx_messageInfo_LocationInfo proto.InternalMessageInfo 806 807func (m *LocationInfo) GetLatLng() *latlng.LatLng { 808 if m != nil { 809 return m.LatLng 810 } 811 return nil 812} 813 814// A `Property` consists of a user-supplied name/value pair. 815type Property struct { 816 // Name of the property. 817 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 818 // Value of the property. 819 Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 820 // Value of numeric properties. 821 Uint64Value uint64 `protobuf:"varint,3,opt,name=uint64_value,json=uint64Value,proto3" json:"uint64_value,omitempty"` 822 XXX_NoUnkeyedLiteral struct{} `json:"-"` 823 XXX_unrecognized []byte `json:"-"` 824 XXX_sizecache int32 `json:"-"` 825} 826 827func (m *Property) Reset() { *m = Property{} } 828func (m *Property) String() string { return proto.CompactTextString(m) } 829func (*Property) ProtoMessage() {} 830func (*Property) Descriptor() ([]byte, []int) { 831 return fileDescriptor_357ce83580ed3103, []int{5} 832} 833 834func (m *Property) XXX_Unmarshal(b []byte) error { 835 return xxx_messageInfo_Property.Unmarshal(m, b) 836} 837func (m *Property) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 838 return xxx_messageInfo_Property.Marshal(b, m, deterministic) 839} 840func (m *Property) XXX_Merge(src proto.Message) { 841 xxx_messageInfo_Property.Merge(m, src) 842} 843func (m *Property) XXX_Size() int { 844 return xxx_messageInfo_Property.Size(m) 845} 846func (m *Property) XXX_DiscardUnknown() { 847 xxx_messageInfo_Property.DiscardUnknown(m) 848} 849 850var xxx_messageInfo_Property proto.InternalMessageInfo 851 852func (m *Property) GetName() string { 853 if m != nil { 854 return m.Name 855 } 856 return "" 857} 858 859func (m *Property) GetValue() string { 860 if m != nil { 861 return m.Value 862 } 863 return "" 864} 865 866func (m *Property) GetUint64Value() uint64 { 867 if m != nil { 868 return m.Uint64Value 869 } 870 return 0 871} 872 873// Set of detected entity features. 874type EntityAnnotation struct { 875 // Opaque entity ID. Some IDs may be available in 876 // [Google Knowledge Graph Search 877 // API](https://developers.google.com/knowledge-graph/). 878 Mid string `protobuf:"bytes,1,opt,name=mid,proto3" json:"mid,omitempty"` 879 // The language code for the locale in which the entity textual 880 // `description` is expressed. 881 Locale string `protobuf:"bytes,2,opt,name=locale,proto3" json:"locale,omitempty"` 882 // Entity textual description, expressed in its `locale` language. 883 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 884 // Overall score of the result. Range [0, 1]. 885 Score float32 `protobuf:"fixed32,4,opt,name=score,proto3" json:"score,omitempty"` 886 // **Deprecated. Use `score` instead.** 887 // The accuracy of the entity detection in an image. 888 // For example, for an image in which the "Eiffel Tower" entity is detected, 889 // this field represents the confidence that there is a tower in the query 890 // image. Range [0, 1]. 891 Confidence float32 `protobuf:"fixed32,5,opt,name=confidence,proto3" json:"confidence,omitempty"` 892 // The relevancy of the ICA (Image Content Annotation) label to the 893 // image. For example, the relevancy of "tower" is likely higher to an image 894 // containing the detected "Eiffel Tower" than to an image containing a 895 // detected distant towering building, even though the confidence that 896 // there is a tower in each image may be the same. Range [0, 1]. 897 Topicality float32 `protobuf:"fixed32,6,opt,name=topicality,proto3" json:"topicality,omitempty"` 898 // Image region to which this entity belongs. Not produced 899 // for `LABEL_DETECTION` features. 900 BoundingPoly *BoundingPoly `protobuf:"bytes,7,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 901 // The location information for the detected entity. Multiple 902 // `LocationInfo` elements can be present because one location may 903 // indicate the location of the scene in the image, and another location 904 // may indicate the location of the place where the image was taken. 905 // Location information is usually present for landmarks. 906 Locations []*LocationInfo `protobuf:"bytes,8,rep,name=locations,proto3" json:"locations,omitempty"` 907 // Some entities may have optional user-supplied `Property` (name/value) 908 // fields, such a score or string that qualifies the entity. 909 Properties []*Property `protobuf:"bytes,9,rep,name=properties,proto3" json:"properties,omitempty"` 910 XXX_NoUnkeyedLiteral struct{} `json:"-"` 911 XXX_unrecognized []byte `json:"-"` 912 XXX_sizecache int32 `json:"-"` 913} 914 915func (m *EntityAnnotation) Reset() { *m = EntityAnnotation{} } 916func (m *EntityAnnotation) String() string { return proto.CompactTextString(m) } 917func (*EntityAnnotation) ProtoMessage() {} 918func (*EntityAnnotation) Descriptor() ([]byte, []int) { 919 return fileDescriptor_357ce83580ed3103, []int{6} 920} 921 922func (m *EntityAnnotation) XXX_Unmarshal(b []byte) error { 923 return xxx_messageInfo_EntityAnnotation.Unmarshal(m, b) 924} 925func (m *EntityAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 926 return xxx_messageInfo_EntityAnnotation.Marshal(b, m, deterministic) 927} 928func (m *EntityAnnotation) XXX_Merge(src proto.Message) { 929 xxx_messageInfo_EntityAnnotation.Merge(m, src) 930} 931func (m *EntityAnnotation) XXX_Size() int { 932 return xxx_messageInfo_EntityAnnotation.Size(m) 933} 934func (m *EntityAnnotation) XXX_DiscardUnknown() { 935 xxx_messageInfo_EntityAnnotation.DiscardUnknown(m) 936} 937 938var xxx_messageInfo_EntityAnnotation proto.InternalMessageInfo 939 940func (m *EntityAnnotation) GetMid() string { 941 if m != nil { 942 return m.Mid 943 } 944 return "" 945} 946 947func (m *EntityAnnotation) GetLocale() string { 948 if m != nil { 949 return m.Locale 950 } 951 return "" 952} 953 954func (m *EntityAnnotation) GetDescription() string { 955 if m != nil { 956 return m.Description 957 } 958 return "" 959} 960 961func (m *EntityAnnotation) GetScore() float32 { 962 if m != nil { 963 return m.Score 964 } 965 return 0 966} 967 968func (m *EntityAnnotation) GetConfidence() float32 { 969 if m != nil { 970 return m.Confidence 971 } 972 return 0 973} 974 975func (m *EntityAnnotation) GetTopicality() float32 { 976 if m != nil { 977 return m.Topicality 978 } 979 return 0 980} 981 982func (m *EntityAnnotation) GetBoundingPoly() *BoundingPoly { 983 if m != nil { 984 return m.BoundingPoly 985 } 986 return nil 987} 988 989func (m *EntityAnnotation) GetLocations() []*LocationInfo { 990 if m != nil { 991 return m.Locations 992 } 993 return nil 994} 995 996func (m *EntityAnnotation) GetProperties() []*Property { 997 if m != nil { 998 return m.Properties 999 } 1000 return nil 1001} 1002 1003// Set of features pertaining to the image, computed by computer vision 1004// methods over safe-search verticals (for example, adult, spoof, medical, 1005// violence). 1006type SafeSearchAnnotation struct { 1007 // Represents the adult content likelihood for the image. Adult content may 1008 // contain elements such as nudity, pornographic images or cartoons, or 1009 // sexual activities. 1010 Adult Likelihood `protobuf:"varint,1,opt,name=adult,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"adult,omitempty"` 1011 // Spoof likelihood. The likelihood that an modification 1012 // was made to the image's canonical version to make it appear 1013 // funny or offensive. 1014 Spoof Likelihood `protobuf:"varint,2,opt,name=spoof,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"spoof,omitempty"` 1015 // Likelihood that this is a medical image. 1016 Medical Likelihood `protobuf:"varint,3,opt,name=medical,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"medical,omitempty"` 1017 // Likelihood that this image contains violent content. 1018 Violence Likelihood `protobuf:"varint,4,opt,name=violence,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"violence,omitempty"` 1019 // Likelihood that the request image contains racy content. Racy content may 1020 // include (but is not limited to) skimpy or sheer clothing, strategically 1021 // covered nudity, lewd or provocative poses, or close-ups of sensitive 1022 // body areas. 1023 Racy Likelihood `protobuf:"varint,9,opt,name=racy,proto3,enum=google.cloud.vision.v1p2beta1.Likelihood" json:"racy,omitempty"` 1024 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1025 XXX_unrecognized []byte `json:"-"` 1026 XXX_sizecache int32 `json:"-"` 1027} 1028 1029func (m *SafeSearchAnnotation) Reset() { *m = SafeSearchAnnotation{} } 1030func (m *SafeSearchAnnotation) String() string { return proto.CompactTextString(m) } 1031func (*SafeSearchAnnotation) ProtoMessage() {} 1032func (*SafeSearchAnnotation) Descriptor() ([]byte, []int) { 1033 return fileDescriptor_357ce83580ed3103, []int{7} 1034} 1035 1036func (m *SafeSearchAnnotation) XXX_Unmarshal(b []byte) error { 1037 return xxx_messageInfo_SafeSearchAnnotation.Unmarshal(m, b) 1038} 1039func (m *SafeSearchAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1040 return xxx_messageInfo_SafeSearchAnnotation.Marshal(b, m, deterministic) 1041} 1042func (m *SafeSearchAnnotation) XXX_Merge(src proto.Message) { 1043 xxx_messageInfo_SafeSearchAnnotation.Merge(m, src) 1044} 1045func (m *SafeSearchAnnotation) XXX_Size() int { 1046 return xxx_messageInfo_SafeSearchAnnotation.Size(m) 1047} 1048func (m *SafeSearchAnnotation) XXX_DiscardUnknown() { 1049 xxx_messageInfo_SafeSearchAnnotation.DiscardUnknown(m) 1050} 1051 1052var xxx_messageInfo_SafeSearchAnnotation proto.InternalMessageInfo 1053 1054func (m *SafeSearchAnnotation) GetAdult() Likelihood { 1055 if m != nil { 1056 return m.Adult 1057 } 1058 return Likelihood_UNKNOWN 1059} 1060 1061func (m *SafeSearchAnnotation) GetSpoof() Likelihood { 1062 if m != nil { 1063 return m.Spoof 1064 } 1065 return Likelihood_UNKNOWN 1066} 1067 1068func (m *SafeSearchAnnotation) GetMedical() Likelihood { 1069 if m != nil { 1070 return m.Medical 1071 } 1072 return Likelihood_UNKNOWN 1073} 1074 1075func (m *SafeSearchAnnotation) GetViolence() Likelihood { 1076 if m != nil { 1077 return m.Violence 1078 } 1079 return Likelihood_UNKNOWN 1080} 1081 1082func (m *SafeSearchAnnotation) GetRacy() Likelihood { 1083 if m != nil { 1084 return m.Racy 1085 } 1086 return Likelihood_UNKNOWN 1087} 1088 1089// Rectangle determined by min and max `LatLng` pairs. 1090type LatLongRect struct { 1091 // Min lat/long pair. 1092 MinLatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=min_lat_lng,json=minLatLng,proto3" json:"min_lat_lng,omitempty"` 1093 // Max lat/long pair. 1094 MaxLatLng *latlng.LatLng `protobuf:"bytes,2,opt,name=max_lat_lng,json=maxLatLng,proto3" json:"max_lat_lng,omitempty"` 1095 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1096 XXX_unrecognized []byte `json:"-"` 1097 XXX_sizecache int32 `json:"-"` 1098} 1099 1100func (m *LatLongRect) Reset() { *m = LatLongRect{} } 1101func (m *LatLongRect) String() string { return proto.CompactTextString(m) } 1102func (*LatLongRect) ProtoMessage() {} 1103func (*LatLongRect) Descriptor() ([]byte, []int) { 1104 return fileDescriptor_357ce83580ed3103, []int{8} 1105} 1106 1107func (m *LatLongRect) XXX_Unmarshal(b []byte) error { 1108 return xxx_messageInfo_LatLongRect.Unmarshal(m, b) 1109} 1110func (m *LatLongRect) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1111 return xxx_messageInfo_LatLongRect.Marshal(b, m, deterministic) 1112} 1113func (m *LatLongRect) XXX_Merge(src proto.Message) { 1114 xxx_messageInfo_LatLongRect.Merge(m, src) 1115} 1116func (m *LatLongRect) XXX_Size() int { 1117 return xxx_messageInfo_LatLongRect.Size(m) 1118} 1119func (m *LatLongRect) XXX_DiscardUnknown() { 1120 xxx_messageInfo_LatLongRect.DiscardUnknown(m) 1121} 1122 1123var xxx_messageInfo_LatLongRect proto.InternalMessageInfo 1124 1125func (m *LatLongRect) GetMinLatLng() *latlng.LatLng { 1126 if m != nil { 1127 return m.MinLatLng 1128 } 1129 return nil 1130} 1131 1132func (m *LatLongRect) GetMaxLatLng() *latlng.LatLng { 1133 if m != nil { 1134 return m.MaxLatLng 1135 } 1136 return nil 1137} 1138 1139// Color information consists of RGB channels, score, and the fraction of 1140// the image that the color occupies in the image. 1141type ColorInfo struct { 1142 // RGB components of the color. 1143 Color *color.Color `protobuf:"bytes,1,opt,name=color,proto3" json:"color,omitempty"` 1144 // Image-specific score for this color. Value in range [0, 1]. 1145 Score float32 `protobuf:"fixed32,2,opt,name=score,proto3" json:"score,omitempty"` 1146 // The fraction of pixels the color occupies in the image. 1147 // Value in range [0, 1]. 1148 PixelFraction float32 `protobuf:"fixed32,3,opt,name=pixel_fraction,json=pixelFraction,proto3" json:"pixel_fraction,omitempty"` 1149 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1150 XXX_unrecognized []byte `json:"-"` 1151 XXX_sizecache int32 `json:"-"` 1152} 1153 1154func (m *ColorInfo) Reset() { *m = ColorInfo{} } 1155func (m *ColorInfo) String() string { return proto.CompactTextString(m) } 1156func (*ColorInfo) ProtoMessage() {} 1157func (*ColorInfo) Descriptor() ([]byte, []int) { 1158 return fileDescriptor_357ce83580ed3103, []int{9} 1159} 1160 1161func (m *ColorInfo) XXX_Unmarshal(b []byte) error { 1162 return xxx_messageInfo_ColorInfo.Unmarshal(m, b) 1163} 1164func (m *ColorInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1165 return xxx_messageInfo_ColorInfo.Marshal(b, m, deterministic) 1166} 1167func (m *ColorInfo) XXX_Merge(src proto.Message) { 1168 xxx_messageInfo_ColorInfo.Merge(m, src) 1169} 1170func (m *ColorInfo) XXX_Size() int { 1171 return xxx_messageInfo_ColorInfo.Size(m) 1172} 1173func (m *ColorInfo) XXX_DiscardUnknown() { 1174 xxx_messageInfo_ColorInfo.DiscardUnknown(m) 1175} 1176 1177var xxx_messageInfo_ColorInfo proto.InternalMessageInfo 1178 1179func (m *ColorInfo) GetColor() *color.Color { 1180 if m != nil { 1181 return m.Color 1182 } 1183 return nil 1184} 1185 1186func (m *ColorInfo) GetScore() float32 { 1187 if m != nil { 1188 return m.Score 1189 } 1190 return 0 1191} 1192 1193func (m *ColorInfo) GetPixelFraction() float32 { 1194 if m != nil { 1195 return m.PixelFraction 1196 } 1197 return 0 1198} 1199 1200// Set of dominant colors and their corresponding scores. 1201type DominantColorsAnnotation struct { 1202 // RGB color values with their score and pixel fraction. 1203 Colors []*ColorInfo `protobuf:"bytes,1,rep,name=colors,proto3" json:"colors,omitempty"` 1204 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1205 XXX_unrecognized []byte `json:"-"` 1206 XXX_sizecache int32 `json:"-"` 1207} 1208 1209func (m *DominantColorsAnnotation) Reset() { *m = DominantColorsAnnotation{} } 1210func (m *DominantColorsAnnotation) String() string { return proto.CompactTextString(m) } 1211func (*DominantColorsAnnotation) ProtoMessage() {} 1212func (*DominantColorsAnnotation) Descriptor() ([]byte, []int) { 1213 return fileDescriptor_357ce83580ed3103, []int{10} 1214} 1215 1216func (m *DominantColorsAnnotation) XXX_Unmarshal(b []byte) error { 1217 return xxx_messageInfo_DominantColorsAnnotation.Unmarshal(m, b) 1218} 1219func (m *DominantColorsAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1220 return xxx_messageInfo_DominantColorsAnnotation.Marshal(b, m, deterministic) 1221} 1222func (m *DominantColorsAnnotation) XXX_Merge(src proto.Message) { 1223 xxx_messageInfo_DominantColorsAnnotation.Merge(m, src) 1224} 1225func (m *DominantColorsAnnotation) XXX_Size() int { 1226 return xxx_messageInfo_DominantColorsAnnotation.Size(m) 1227} 1228func (m *DominantColorsAnnotation) XXX_DiscardUnknown() { 1229 xxx_messageInfo_DominantColorsAnnotation.DiscardUnknown(m) 1230} 1231 1232var xxx_messageInfo_DominantColorsAnnotation proto.InternalMessageInfo 1233 1234func (m *DominantColorsAnnotation) GetColors() []*ColorInfo { 1235 if m != nil { 1236 return m.Colors 1237 } 1238 return nil 1239} 1240 1241// Stores image properties, such as dominant colors. 1242type ImageProperties struct { 1243 // If present, dominant colors completed successfully. 1244 DominantColors *DominantColorsAnnotation `protobuf:"bytes,1,opt,name=dominant_colors,json=dominantColors,proto3" json:"dominant_colors,omitempty"` 1245 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1246 XXX_unrecognized []byte `json:"-"` 1247 XXX_sizecache int32 `json:"-"` 1248} 1249 1250func (m *ImageProperties) Reset() { *m = ImageProperties{} } 1251func (m *ImageProperties) String() string { return proto.CompactTextString(m) } 1252func (*ImageProperties) ProtoMessage() {} 1253func (*ImageProperties) Descriptor() ([]byte, []int) { 1254 return fileDescriptor_357ce83580ed3103, []int{11} 1255} 1256 1257func (m *ImageProperties) XXX_Unmarshal(b []byte) error { 1258 return xxx_messageInfo_ImageProperties.Unmarshal(m, b) 1259} 1260func (m *ImageProperties) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1261 return xxx_messageInfo_ImageProperties.Marshal(b, m, deterministic) 1262} 1263func (m *ImageProperties) XXX_Merge(src proto.Message) { 1264 xxx_messageInfo_ImageProperties.Merge(m, src) 1265} 1266func (m *ImageProperties) XXX_Size() int { 1267 return xxx_messageInfo_ImageProperties.Size(m) 1268} 1269func (m *ImageProperties) XXX_DiscardUnknown() { 1270 xxx_messageInfo_ImageProperties.DiscardUnknown(m) 1271} 1272 1273var xxx_messageInfo_ImageProperties proto.InternalMessageInfo 1274 1275func (m *ImageProperties) GetDominantColors() *DominantColorsAnnotation { 1276 if m != nil { 1277 return m.DominantColors 1278 } 1279 return nil 1280} 1281 1282// Single crop hint that is used to generate a new crop when serving an image. 1283type CropHint struct { 1284 // The bounding polygon for the crop region. The coordinates of the bounding 1285 // box are in the original image's scale, as returned in `ImageParams`. 1286 BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 1287 // Confidence of this being a salient region. Range [0, 1]. 1288 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"` 1289 // Fraction of importance of this salient region with respect to the original 1290 // image. 1291 ImportanceFraction float32 `protobuf:"fixed32,3,opt,name=importance_fraction,json=importanceFraction,proto3" json:"importance_fraction,omitempty"` 1292 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1293 XXX_unrecognized []byte `json:"-"` 1294 XXX_sizecache int32 `json:"-"` 1295} 1296 1297func (m *CropHint) Reset() { *m = CropHint{} } 1298func (m *CropHint) String() string { return proto.CompactTextString(m) } 1299func (*CropHint) ProtoMessage() {} 1300func (*CropHint) Descriptor() ([]byte, []int) { 1301 return fileDescriptor_357ce83580ed3103, []int{12} 1302} 1303 1304func (m *CropHint) XXX_Unmarshal(b []byte) error { 1305 return xxx_messageInfo_CropHint.Unmarshal(m, b) 1306} 1307func (m *CropHint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1308 return xxx_messageInfo_CropHint.Marshal(b, m, deterministic) 1309} 1310func (m *CropHint) XXX_Merge(src proto.Message) { 1311 xxx_messageInfo_CropHint.Merge(m, src) 1312} 1313func (m *CropHint) XXX_Size() int { 1314 return xxx_messageInfo_CropHint.Size(m) 1315} 1316func (m *CropHint) XXX_DiscardUnknown() { 1317 xxx_messageInfo_CropHint.DiscardUnknown(m) 1318} 1319 1320var xxx_messageInfo_CropHint proto.InternalMessageInfo 1321 1322func (m *CropHint) GetBoundingPoly() *BoundingPoly { 1323 if m != nil { 1324 return m.BoundingPoly 1325 } 1326 return nil 1327} 1328 1329func (m *CropHint) GetConfidence() float32 { 1330 if m != nil { 1331 return m.Confidence 1332 } 1333 return 0 1334} 1335 1336func (m *CropHint) GetImportanceFraction() float32 { 1337 if m != nil { 1338 return m.ImportanceFraction 1339 } 1340 return 0 1341} 1342 1343// Set of crop hints that are used to generate new crops when serving images. 1344type CropHintsAnnotation struct { 1345 // Crop hint results. 1346 CropHints []*CropHint `protobuf:"bytes,1,rep,name=crop_hints,json=cropHints,proto3" json:"crop_hints,omitempty"` 1347 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1348 XXX_unrecognized []byte `json:"-"` 1349 XXX_sizecache int32 `json:"-"` 1350} 1351 1352func (m *CropHintsAnnotation) Reset() { *m = CropHintsAnnotation{} } 1353func (m *CropHintsAnnotation) String() string { return proto.CompactTextString(m) } 1354func (*CropHintsAnnotation) ProtoMessage() {} 1355func (*CropHintsAnnotation) Descriptor() ([]byte, []int) { 1356 return fileDescriptor_357ce83580ed3103, []int{13} 1357} 1358 1359func (m *CropHintsAnnotation) XXX_Unmarshal(b []byte) error { 1360 return xxx_messageInfo_CropHintsAnnotation.Unmarshal(m, b) 1361} 1362func (m *CropHintsAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1363 return xxx_messageInfo_CropHintsAnnotation.Marshal(b, m, deterministic) 1364} 1365func (m *CropHintsAnnotation) XXX_Merge(src proto.Message) { 1366 xxx_messageInfo_CropHintsAnnotation.Merge(m, src) 1367} 1368func (m *CropHintsAnnotation) XXX_Size() int { 1369 return xxx_messageInfo_CropHintsAnnotation.Size(m) 1370} 1371func (m *CropHintsAnnotation) XXX_DiscardUnknown() { 1372 xxx_messageInfo_CropHintsAnnotation.DiscardUnknown(m) 1373} 1374 1375var xxx_messageInfo_CropHintsAnnotation proto.InternalMessageInfo 1376 1377func (m *CropHintsAnnotation) GetCropHints() []*CropHint { 1378 if m != nil { 1379 return m.CropHints 1380 } 1381 return nil 1382} 1383 1384// Parameters for crop hints annotation request. 1385type CropHintsParams struct { 1386 // Aspect ratios in floats, representing the ratio of the width to the height 1387 // of the image. For example, if the desired aspect ratio is 4/3, the 1388 // corresponding float value should be 1.33333. If not specified, the 1389 // best possible crop is returned. The number of provided aspect ratios is 1390 // limited to a maximum of 16; any aspect ratios provided after the 16th are 1391 // ignored. 1392 AspectRatios []float32 `protobuf:"fixed32,1,rep,packed,name=aspect_ratios,json=aspectRatios,proto3" json:"aspect_ratios,omitempty"` 1393 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1394 XXX_unrecognized []byte `json:"-"` 1395 XXX_sizecache int32 `json:"-"` 1396} 1397 1398func (m *CropHintsParams) Reset() { *m = CropHintsParams{} } 1399func (m *CropHintsParams) String() string { return proto.CompactTextString(m) } 1400func (*CropHintsParams) ProtoMessage() {} 1401func (*CropHintsParams) Descriptor() ([]byte, []int) { 1402 return fileDescriptor_357ce83580ed3103, []int{14} 1403} 1404 1405func (m *CropHintsParams) XXX_Unmarshal(b []byte) error { 1406 return xxx_messageInfo_CropHintsParams.Unmarshal(m, b) 1407} 1408func (m *CropHintsParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1409 return xxx_messageInfo_CropHintsParams.Marshal(b, m, deterministic) 1410} 1411func (m *CropHintsParams) XXX_Merge(src proto.Message) { 1412 xxx_messageInfo_CropHintsParams.Merge(m, src) 1413} 1414func (m *CropHintsParams) XXX_Size() int { 1415 return xxx_messageInfo_CropHintsParams.Size(m) 1416} 1417func (m *CropHintsParams) XXX_DiscardUnknown() { 1418 xxx_messageInfo_CropHintsParams.DiscardUnknown(m) 1419} 1420 1421var xxx_messageInfo_CropHintsParams proto.InternalMessageInfo 1422 1423func (m *CropHintsParams) GetAspectRatios() []float32 { 1424 if m != nil { 1425 return m.AspectRatios 1426 } 1427 return nil 1428} 1429 1430// Parameters for web detection request. 1431type WebDetectionParams struct { 1432 // Whether to include results derived from the geo information in the image. 1433 IncludeGeoResults bool `protobuf:"varint,2,opt,name=include_geo_results,json=includeGeoResults,proto3" json:"include_geo_results,omitempty"` 1434 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1435 XXX_unrecognized []byte `json:"-"` 1436 XXX_sizecache int32 `json:"-"` 1437} 1438 1439func (m *WebDetectionParams) Reset() { *m = WebDetectionParams{} } 1440func (m *WebDetectionParams) String() string { return proto.CompactTextString(m) } 1441func (*WebDetectionParams) ProtoMessage() {} 1442func (*WebDetectionParams) Descriptor() ([]byte, []int) { 1443 return fileDescriptor_357ce83580ed3103, []int{15} 1444} 1445 1446func (m *WebDetectionParams) XXX_Unmarshal(b []byte) error { 1447 return xxx_messageInfo_WebDetectionParams.Unmarshal(m, b) 1448} 1449func (m *WebDetectionParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1450 return xxx_messageInfo_WebDetectionParams.Marshal(b, m, deterministic) 1451} 1452func (m *WebDetectionParams) XXX_Merge(src proto.Message) { 1453 xxx_messageInfo_WebDetectionParams.Merge(m, src) 1454} 1455func (m *WebDetectionParams) XXX_Size() int { 1456 return xxx_messageInfo_WebDetectionParams.Size(m) 1457} 1458func (m *WebDetectionParams) XXX_DiscardUnknown() { 1459 xxx_messageInfo_WebDetectionParams.DiscardUnknown(m) 1460} 1461 1462var xxx_messageInfo_WebDetectionParams proto.InternalMessageInfo 1463 1464func (m *WebDetectionParams) GetIncludeGeoResults() bool { 1465 if m != nil { 1466 return m.IncludeGeoResults 1467 } 1468 return false 1469} 1470 1471// Image context and/or feature-specific parameters. 1472type ImageContext struct { 1473 // Not used. 1474 LatLongRect *LatLongRect `protobuf:"bytes,1,opt,name=lat_long_rect,json=latLongRect,proto3" json:"lat_long_rect,omitempty"` 1475 // List of languages to use for TEXT_DETECTION. In most cases, an empty value 1476 // yields the best results since it enables automatic language detection. For 1477 // languages based on the Latin alphabet, setting `language_hints` is not 1478 // needed. In rare cases, when the language of the text in the image is known, 1479 // setting a hint will help get better results (although it will be a 1480 // significant hindrance if the hint is wrong). Text detection returns an 1481 // error if one or more of the specified languages is not one of the 1482 // [supported languages](/vision/docs/languages). 1483 LanguageHints []string `protobuf:"bytes,2,rep,name=language_hints,json=languageHints,proto3" json:"language_hints,omitempty"` 1484 // Parameters for crop hints annotation request. 1485 CropHintsParams *CropHintsParams `protobuf:"bytes,4,opt,name=crop_hints_params,json=cropHintsParams,proto3" json:"crop_hints_params,omitempty"` 1486 // Parameters for web detection. 1487 WebDetectionParams *WebDetectionParams `protobuf:"bytes,6,opt,name=web_detection_params,json=webDetectionParams,proto3" json:"web_detection_params,omitempty"` 1488 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1489 XXX_unrecognized []byte `json:"-"` 1490 XXX_sizecache int32 `json:"-"` 1491} 1492 1493func (m *ImageContext) Reset() { *m = ImageContext{} } 1494func (m *ImageContext) String() string { return proto.CompactTextString(m) } 1495func (*ImageContext) ProtoMessage() {} 1496func (*ImageContext) Descriptor() ([]byte, []int) { 1497 return fileDescriptor_357ce83580ed3103, []int{16} 1498} 1499 1500func (m *ImageContext) XXX_Unmarshal(b []byte) error { 1501 return xxx_messageInfo_ImageContext.Unmarshal(m, b) 1502} 1503func (m *ImageContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1504 return xxx_messageInfo_ImageContext.Marshal(b, m, deterministic) 1505} 1506func (m *ImageContext) XXX_Merge(src proto.Message) { 1507 xxx_messageInfo_ImageContext.Merge(m, src) 1508} 1509func (m *ImageContext) XXX_Size() int { 1510 return xxx_messageInfo_ImageContext.Size(m) 1511} 1512func (m *ImageContext) XXX_DiscardUnknown() { 1513 xxx_messageInfo_ImageContext.DiscardUnknown(m) 1514} 1515 1516var xxx_messageInfo_ImageContext proto.InternalMessageInfo 1517 1518func (m *ImageContext) GetLatLongRect() *LatLongRect { 1519 if m != nil { 1520 return m.LatLongRect 1521 } 1522 return nil 1523} 1524 1525func (m *ImageContext) GetLanguageHints() []string { 1526 if m != nil { 1527 return m.LanguageHints 1528 } 1529 return nil 1530} 1531 1532func (m *ImageContext) GetCropHintsParams() *CropHintsParams { 1533 if m != nil { 1534 return m.CropHintsParams 1535 } 1536 return nil 1537} 1538 1539func (m *ImageContext) GetWebDetectionParams() *WebDetectionParams { 1540 if m != nil { 1541 return m.WebDetectionParams 1542 } 1543 return nil 1544} 1545 1546// Request for performing Google Cloud Vision API tasks over a user-provided 1547// image, with user-requested features. 1548type AnnotateImageRequest struct { 1549 // The image to be processed. 1550 Image *Image `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"` 1551 // Requested features. 1552 Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"` 1553 // Additional context that may accompany the image. 1554 ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"` 1555 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1556 XXX_unrecognized []byte `json:"-"` 1557 XXX_sizecache int32 `json:"-"` 1558} 1559 1560func (m *AnnotateImageRequest) Reset() { *m = AnnotateImageRequest{} } 1561func (m *AnnotateImageRequest) String() string { return proto.CompactTextString(m) } 1562func (*AnnotateImageRequest) ProtoMessage() {} 1563func (*AnnotateImageRequest) Descriptor() ([]byte, []int) { 1564 return fileDescriptor_357ce83580ed3103, []int{17} 1565} 1566 1567func (m *AnnotateImageRequest) XXX_Unmarshal(b []byte) error { 1568 return xxx_messageInfo_AnnotateImageRequest.Unmarshal(m, b) 1569} 1570func (m *AnnotateImageRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1571 return xxx_messageInfo_AnnotateImageRequest.Marshal(b, m, deterministic) 1572} 1573func (m *AnnotateImageRequest) XXX_Merge(src proto.Message) { 1574 xxx_messageInfo_AnnotateImageRequest.Merge(m, src) 1575} 1576func (m *AnnotateImageRequest) XXX_Size() int { 1577 return xxx_messageInfo_AnnotateImageRequest.Size(m) 1578} 1579func (m *AnnotateImageRequest) XXX_DiscardUnknown() { 1580 xxx_messageInfo_AnnotateImageRequest.DiscardUnknown(m) 1581} 1582 1583var xxx_messageInfo_AnnotateImageRequest proto.InternalMessageInfo 1584 1585func (m *AnnotateImageRequest) GetImage() *Image { 1586 if m != nil { 1587 return m.Image 1588 } 1589 return nil 1590} 1591 1592func (m *AnnotateImageRequest) GetFeatures() []*Feature { 1593 if m != nil { 1594 return m.Features 1595 } 1596 return nil 1597} 1598 1599func (m *AnnotateImageRequest) GetImageContext() *ImageContext { 1600 if m != nil { 1601 return m.ImageContext 1602 } 1603 return nil 1604} 1605 1606// If an image was produced from a file (e.g. a PDF), this message gives 1607// information about the source of that image. 1608type ImageAnnotationContext struct { 1609 // The URI of the file used to produce the image. 1610 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 1611 // If the file was a PDF or TIFF, this field gives the page number within 1612 // the file used to produce the image. 1613 PageNumber int32 `protobuf:"varint,2,opt,name=page_number,json=pageNumber,proto3" json:"page_number,omitempty"` 1614 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1615 XXX_unrecognized []byte `json:"-"` 1616 XXX_sizecache int32 `json:"-"` 1617} 1618 1619func (m *ImageAnnotationContext) Reset() { *m = ImageAnnotationContext{} } 1620func (m *ImageAnnotationContext) String() string { return proto.CompactTextString(m) } 1621func (*ImageAnnotationContext) ProtoMessage() {} 1622func (*ImageAnnotationContext) Descriptor() ([]byte, []int) { 1623 return fileDescriptor_357ce83580ed3103, []int{18} 1624} 1625 1626func (m *ImageAnnotationContext) XXX_Unmarshal(b []byte) error { 1627 return xxx_messageInfo_ImageAnnotationContext.Unmarshal(m, b) 1628} 1629func (m *ImageAnnotationContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1630 return xxx_messageInfo_ImageAnnotationContext.Marshal(b, m, deterministic) 1631} 1632func (m *ImageAnnotationContext) XXX_Merge(src proto.Message) { 1633 xxx_messageInfo_ImageAnnotationContext.Merge(m, src) 1634} 1635func (m *ImageAnnotationContext) XXX_Size() int { 1636 return xxx_messageInfo_ImageAnnotationContext.Size(m) 1637} 1638func (m *ImageAnnotationContext) XXX_DiscardUnknown() { 1639 xxx_messageInfo_ImageAnnotationContext.DiscardUnknown(m) 1640} 1641 1642var xxx_messageInfo_ImageAnnotationContext proto.InternalMessageInfo 1643 1644func (m *ImageAnnotationContext) GetUri() string { 1645 if m != nil { 1646 return m.Uri 1647 } 1648 return "" 1649} 1650 1651func (m *ImageAnnotationContext) GetPageNumber() int32 { 1652 if m != nil { 1653 return m.PageNumber 1654 } 1655 return 0 1656} 1657 1658// Response to an image annotation request. 1659type AnnotateImageResponse struct { 1660 // If present, face detection has completed successfully. 1661 FaceAnnotations []*FaceAnnotation `protobuf:"bytes,1,rep,name=face_annotations,json=faceAnnotations,proto3" json:"face_annotations,omitempty"` 1662 // If present, landmark detection has completed successfully. 1663 LandmarkAnnotations []*EntityAnnotation `protobuf:"bytes,2,rep,name=landmark_annotations,json=landmarkAnnotations,proto3" json:"landmark_annotations,omitempty"` 1664 // If present, logo detection has completed successfully. 1665 LogoAnnotations []*EntityAnnotation `protobuf:"bytes,3,rep,name=logo_annotations,json=logoAnnotations,proto3" json:"logo_annotations,omitempty"` 1666 // If present, label detection has completed successfully. 1667 LabelAnnotations []*EntityAnnotation `protobuf:"bytes,4,rep,name=label_annotations,json=labelAnnotations,proto3" json:"label_annotations,omitempty"` 1668 // If present, text (OCR) detection has completed successfully. 1669 TextAnnotations []*EntityAnnotation `protobuf:"bytes,5,rep,name=text_annotations,json=textAnnotations,proto3" json:"text_annotations,omitempty"` 1670 // If present, text (OCR) detection or document (OCR) text detection has 1671 // completed successfully. 1672 // This annotation provides the structural hierarchy for the OCR detected 1673 // text. 1674 FullTextAnnotation *TextAnnotation `protobuf:"bytes,12,opt,name=full_text_annotation,json=fullTextAnnotation,proto3" json:"full_text_annotation,omitempty"` 1675 // If present, safe-search annotation has completed successfully. 1676 SafeSearchAnnotation *SafeSearchAnnotation `protobuf:"bytes,6,opt,name=safe_search_annotation,json=safeSearchAnnotation,proto3" json:"safe_search_annotation,omitempty"` 1677 // If present, image properties were extracted successfully. 1678 ImagePropertiesAnnotation *ImageProperties `protobuf:"bytes,8,opt,name=image_properties_annotation,json=imagePropertiesAnnotation,proto3" json:"image_properties_annotation,omitempty"` 1679 // If present, crop hints have completed successfully. 1680 CropHintsAnnotation *CropHintsAnnotation `protobuf:"bytes,11,opt,name=crop_hints_annotation,json=cropHintsAnnotation,proto3" json:"crop_hints_annotation,omitempty"` 1681 // If present, web detection has completed successfully. 1682 WebDetection *WebDetection `protobuf:"bytes,13,opt,name=web_detection,json=webDetection,proto3" json:"web_detection,omitempty"` 1683 // If set, represents the error message for the operation. 1684 // Note that filled-in image annotations are guaranteed to be 1685 // correct, even when `error` is set. 1686 Error *status.Status `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"` 1687 // If present, contextual information is needed to understand where this image 1688 // comes from. 1689 Context *ImageAnnotationContext `protobuf:"bytes,21,opt,name=context,proto3" json:"context,omitempty"` 1690 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1691 XXX_unrecognized []byte `json:"-"` 1692 XXX_sizecache int32 `json:"-"` 1693} 1694 1695func (m *AnnotateImageResponse) Reset() { *m = AnnotateImageResponse{} } 1696func (m *AnnotateImageResponse) String() string { return proto.CompactTextString(m) } 1697func (*AnnotateImageResponse) ProtoMessage() {} 1698func (*AnnotateImageResponse) Descriptor() ([]byte, []int) { 1699 return fileDescriptor_357ce83580ed3103, []int{19} 1700} 1701 1702func (m *AnnotateImageResponse) XXX_Unmarshal(b []byte) error { 1703 return xxx_messageInfo_AnnotateImageResponse.Unmarshal(m, b) 1704} 1705func (m *AnnotateImageResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1706 return xxx_messageInfo_AnnotateImageResponse.Marshal(b, m, deterministic) 1707} 1708func (m *AnnotateImageResponse) XXX_Merge(src proto.Message) { 1709 xxx_messageInfo_AnnotateImageResponse.Merge(m, src) 1710} 1711func (m *AnnotateImageResponse) XXX_Size() int { 1712 return xxx_messageInfo_AnnotateImageResponse.Size(m) 1713} 1714func (m *AnnotateImageResponse) XXX_DiscardUnknown() { 1715 xxx_messageInfo_AnnotateImageResponse.DiscardUnknown(m) 1716} 1717 1718var xxx_messageInfo_AnnotateImageResponse proto.InternalMessageInfo 1719 1720func (m *AnnotateImageResponse) GetFaceAnnotations() []*FaceAnnotation { 1721 if m != nil { 1722 return m.FaceAnnotations 1723 } 1724 return nil 1725} 1726 1727func (m *AnnotateImageResponse) GetLandmarkAnnotations() []*EntityAnnotation { 1728 if m != nil { 1729 return m.LandmarkAnnotations 1730 } 1731 return nil 1732} 1733 1734func (m *AnnotateImageResponse) GetLogoAnnotations() []*EntityAnnotation { 1735 if m != nil { 1736 return m.LogoAnnotations 1737 } 1738 return nil 1739} 1740 1741func (m *AnnotateImageResponse) GetLabelAnnotations() []*EntityAnnotation { 1742 if m != nil { 1743 return m.LabelAnnotations 1744 } 1745 return nil 1746} 1747 1748func (m *AnnotateImageResponse) GetTextAnnotations() []*EntityAnnotation { 1749 if m != nil { 1750 return m.TextAnnotations 1751 } 1752 return nil 1753} 1754 1755func (m *AnnotateImageResponse) GetFullTextAnnotation() *TextAnnotation { 1756 if m != nil { 1757 return m.FullTextAnnotation 1758 } 1759 return nil 1760} 1761 1762func (m *AnnotateImageResponse) GetSafeSearchAnnotation() *SafeSearchAnnotation { 1763 if m != nil { 1764 return m.SafeSearchAnnotation 1765 } 1766 return nil 1767} 1768 1769func (m *AnnotateImageResponse) GetImagePropertiesAnnotation() *ImageProperties { 1770 if m != nil { 1771 return m.ImagePropertiesAnnotation 1772 } 1773 return nil 1774} 1775 1776func (m *AnnotateImageResponse) GetCropHintsAnnotation() *CropHintsAnnotation { 1777 if m != nil { 1778 return m.CropHintsAnnotation 1779 } 1780 return nil 1781} 1782 1783func (m *AnnotateImageResponse) GetWebDetection() *WebDetection { 1784 if m != nil { 1785 return m.WebDetection 1786 } 1787 return nil 1788} 1789 1790func (m *AnnotateImageResponse) GetError() *status.Status { 1791 if m != nil { 1792 return m.Error 1793 } 1794 return nil 1795} 1796 1797func (m *AnnotateImageResponse) GetContext() *ImageAnnotationContext { 1798 if m != nil { 1799 return m.Context 1800 } 1801 return nil 1802} 1803 1804// Response to a single file annotation request. A file may contain one or more 1805// images, which individually have their own responses. 1806type AnnotateFileResponse struct { 1807 // Information about the file for which this response is generated. 1808 InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 1809 // Individual responses to images found within the file. 1810 Responses []*AnnotateImageResponse `protobuf:"bytes,2,rep,name=responses,proto3" json:"responses,omitempty"` 1811 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1812 XXX_unrecognized []byte `json:"-"` 1813 XXX_sizecache int32 `json:"-"` 1814} 1815 1816func (m *AnnotateFileResponse) Reset() { *m = AnnotateFileResponse{} } 1817func (m *AnnotateFileResponse) String() string { return proto.CompactTextString(m) } 1818func (*AnnotateFileResponse) ProtoMessage() {} 1819func (*AnnotateFileResponse) Descriptor() ([]byte, []int) { 1820 return fileDescriptor_357ce83580ed3103, []int{20} 1821} 1822 1823func (m *AnnotateFileResponse) XXX_Unmarshal(b []byte) error { 1824 return xxx_messageInfo_AnnotateFileResponse.Unmarshal(m, b) 1825} 1826func (m *AnnotateFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1827 return xxx_messageInfo_AnnotateFileResponse.Marshal(b, m, deterministic) 1828} 1829func (m *AnnotateFileResponse) XXX_Merge(src proto.Message) { 1830 xxx_messageInfo_AnnotateFileResponse.Merge(m, src) 1831} 1832func (m *AnnotateFileResponse) XXX_Size() int { 1833 return xxx_messageInfo_AnnotateFileResponse.Size(m) 1834} 1835func (m *AnnotateFileResponse) XXX_DiscardUnknown() { 1836 xxx_messageInfo_AnnotateFileResponse.DiscardUnknown(m) 1837} 1838 1839var xxx_messageInfo_AnnotateFileResponse proto.InternalMessageInfo 1840 1841func (m *AnnotateFileResponse) GetInputConfig() *InputConfig { 1842 if m != nil { 1843 return m.InputConfig 1844 } 1845 return nil 1846} 1847 1848func (m *AnnotateFileResponse) GetResponses() []*AnnotateImageResponse { 1849 if m != nil { 1850 return m.Responses 1851 } 1852 return nil 1853} 1854 1855// Multiple image annotation requests are batched into a single service call. 1856type BatchAnnotateImagesRequest struct { 1857 // Individual image annotation requests for this batch. 1858 Requests []*AnnotateImageRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` 1859 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1860 XXX_unrecognized []byte `json:"-"` 1861 XXX_sizecache int32 `json:"-"` 1862} 1863 1864func (m *BatchAnnotateImagesRequest) Reset() { *m = BatchAnnotateImagesRequest{} } 1865func (m *BatchAnnotateImagesRequest) String() string { return proto.CompactTextString(m) } 1866func (*BatchAnnotateImagesRequest) ProtoMessage() {} 1867func (*BatchAnnotateImagesRequest) Descriptor() ([]byte, []int) { 1868 return fileDescriptor_357ce83580ed3103, []int{21} 1869} 1870 1871func (m *BatchAnnotateImagesRequest) XXX_Unmarshal(b []byte) error { 1872 return xxx_messageInfo_BatchAnnotateImagesRequest.Unmarshal(m, b) 1873} 1874func (m *BatchAnnotateImagesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1875 return xxx_messageInfo_BatchAnnotateImagesRequest.Marshal(b, m, deterministic) 1876} 1877func (m *BatchAnnotateImagesRequest) XXX_Merge(src proto.Message) { 1878 xxx_messageInfo_BatchAnnotateImagesRequest.Merge(m, src) 1879} 1880func (m *BatchAnnotateImagesRequest) XXX_Size() int { 1881 return xxx_messageInfo_BatchAnnotateImagesRequest.Size(m) 1882} 1883func (m *BatchAnnotateImagesRequest) XXX_DiscardUnknown() { 1884 xxx_messageInfo_BatchAnnotateImagesRequest.DiscardUnknown(m) 1885} 1886 1887var xxx_messageInfo_BatchAnnotateImagesRequest proto.InternalMessageInfo 1888 1889func (m *BatchAnnotateImagesRequest) GetRequests() []*AnnotateImageRequest { 1890 if m != nil { 1891 return m.Requests 1892 } 1893 return nil 1894} 1895 1896// Response to a batch image annotation request. 1897type BatchAnnotateImagesResponse struct { 1898 // Individual responses to image annotation requests within the batch. 1899 Responses []*AnnotateImageResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` 1900 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1901 XXX_unrecognized []byte `json:"-"` 1902 XXX_sizecache int32 `json:"-"` 1903} 1904 1905func (m *BatchAnnotateImagesResponse) Reset() { *m = BatchAnnotateImagesResponse{} } 1906func (m *BatchAnnotateImagesResponse) String() string { return proto.CompactTextString(m) } 1907func (*BatchAnnotateImagesResponse) ProtoMessage() {} 1908func (*BatchAnnotateImagesResponse) Descriptor() ([]byte, []int) { 1909 return fileDescriptor_357ce83580ed3103, []int{22} 1910} 1911 1912func (m *BatchAnnotateImagesResponse) XXX_Unmarshal(b []byte) error { 1913 return xxx_messageInfo_BatchAnnotateImagesResponse.Unmarshal(m, b) 1914} 1915func (m *BatchAnnotateImagesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1916 return xxx_messageInfo_BatchAnnotateImagesResponse.Marshal(b, m, deterministic) 1917} 1918func (m *BatchAnnotateImagesResponse) XXX_Merge(src proto.Message) { 1919 xxx_messageInfo_BatchAnnotateImagesResponse.Merge(m, src) 1920} 1921func (m *BatchAnnotateImagesResponse) XXX_Size() int { 1922 return xxx_messageInfo_BatchAnnotateImagesResponse.Size(m) 1923} 1924func (m *BatchAnnotateImagesResponse) XXX_DiscardUnknown() { 1925 xxx_messageInfo_BatchAnnotateImagesResponse.DiscardUnknown(m) 1926} 1927 1928var xxx_messageInfo_BatchAnnotateImagesResponse proto.InternalMessageInfo 1929 1930func (m *BatchAnnotateImagesResponse) GetResponses() []*AnnotateImageResponse { 1931 if m != nil { 1932 return m.Responses 1933 } 1934 return nil 1935} 1936 1937// An offline file annotation request. 1938type AsyncAnnotateFileRequest struct { 1939 // Required. Information about the input file. 1940 InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 1941 // Required. Requested features. 1942 Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"` 1943 // Additional context that may accompany the image(s) in the file. 1944 ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"` 1945 // Required. The desired output location and metadata (e.g. format). 1946 OutputConfig *OutputConfig `protobuf:"bytes,4,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"` 1947 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1948 XXX_unrecognized []byte `json:"-"` 1949 XXX_sizecache int32 `json:"-"` 1950} 1951 1952func (m *AsyncAnnotateFileRequest) Reset() { *m = AsyncAnnotateFileRequest{} } 1953func (m *AsyncAnnotateFileRequest) String() string { return proto.CompactTextString(m) } 1954func (*AsyncAnnotateFileRequest) ProtoMessage() {} 1955func (*AsyncAnnotateFileRequest) Descriptor() ([]byte, []int) { 1956 return fileDescriptor_357ce83580ed3103, []int{23} 1957} 1958 1959func (m *AsyncAnnotateFileRequest) XXX_Unmarshal(b []byte) error { 1960 return xxx_messageInfo_AsyncAnnotateFileRequest.Unmarshal(m, b) 1961} 1962func (m *AsyncAnnotateFileRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1963 return xxx_messageInfo_AsyncAnnotateFileRequest.Marshal(b, m, deterministic) 1964} 1965func (m *AsyncAnnotateFileRequest) XXX_Merge(src proto.Message) { 1966 xxx_messageInfo_AsyncAnnotateFileRequest.Merge(m, src) 1967} 1968func (m *AsyncAnnotateFileRequest) XXX_Size() int { 1969 return xxx_messageInfo_AsyncAnnotateFileRequest.Size(m) 1970} 1971func (m *AsyncAnnotateFileRequest) XXX_DiscardUnknown() { 1972 xxx_messageInfo_AsyncAnnotateFileRequest.DiscardUnknown(m) 1973} 1974 1975var xxx_messageInfo_AsyncAnnotateFileRequest proto.InternalMessageInfo 1976 1977func (m *AsyncAnnotateFileRequest) GetInputConfig() *InputConfig { 1978 if m != nil { 1979 return m.InputConfig 1980 } 1981 return nil 1982} 1983 1984func (m *AsyncAnnotateFileRequest) GetFeatures() []*Feature { 1985 if m != nil { 1986 return m.Features 1987 } 1988 return nil 1989} 1990 1991func (m *AsyncAnnotateFileRequest) GetImageContext() *ImageContext { 1992 if m != nil { 1993 return m.ImageContext 1994 } 1995 return nil 1996} 1997 1998func (m *AsyncAnnotateFileRequest) GetOutputConfig() *OutputConfig { 1999 if m != nil { 2000 return m.OutputConfig 2001 } 2002 return nil 2003} 2004 2005// The response for a single offline file annotation request. 2006type AsyncAnnotateFileResponse struct { 2007 // The output location and metadata from AsyncAnnotateFileRequest. 2008 OutputConfig *OutputConfig `protobuf:"bytes,1,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"` 2009 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2010 XXX_unrecognized []byte `json:"-"` 2011 XXX_sizecache int32 `json:"-"` 2012} 2013 2014func (m *AsyncAnnotateFileResponse) Reset() { *m = AsyncAnnotateFileResponse{} } 2015func (m *AsyncAnnotateFileResponse) String() string { return proto.CompactTextString(m) } 2016func (*AsyncAnnotateFileResponse) ProtoMessage() {} 2017func (*AsyncAnnotateFileResponse) Descriptor() ([]byte, []int) { 2018 return fileDescriptor_357ce83580ed3103, []int{24} 2019} 2020 2021func (m *AsyncAnnotateFileResponse) XXX_Unmarshal(b []byte) error { 2022 return xxx_messageInfo_AsyncAnnotateFileResponse.Unmarshal(m, b) 2023} 2024func (m *AsyncAnnotateFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2025 return xxx_messageInfo_AsyncAnnotateFileResponse.Marshal(b, m, deterministic) 2026} 2027func (m *AsyncAnnotateFileResponse) XXX_Merge(src proto.Message) { 2028 xxx_messageInfo_AsyncAnnotateFileResponse.Merge(m, src) 2029} 2030func (m *AsyncAnnotateFileResponse) XXX_Size() int { 2031 return xxx_messageInfo_AsyncAnnotateFileResponse.Size(m) 2032} 2033func (m *AsyncAnnotateFileResponse) XXX_DiscardUnknown() { 2034 xxx_messageInfo_AsyncAnnotateFileResponse.DiscardUnknown(m) 2035} 2036 2037var xxx_messageInfo_AsyncAnnotateFileResponse proto.InternalMessageInfo 2038 2039func (m *AsyncAnnotateFileResponse) GetOutputConfig() *OutputConfig { 2040 if m != nil { 2041 return m.OutputConfig 2042 } 2043 return nil 2044} 2045 2046// Multiple async file annotation requests are batched into a single service 2047// call. 2048type AsyncBatchAnnotateFilesRequest struct { 2049 // Individual async file annotation requests for this batch. 2050 Requests []*AsyncAnnotateFileRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` 2051 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2052 XXX_unrecognized []byte `json:"-"` 2053 XXX_sizecache int32 `json:"-"` 2054} 2055 2056func (m *AsyncBatchAnnotateFilesRequest) Reset() { *m = AsyncBatchAnnotateFilesRequest{} } 2057func (m *AsyncBatchAnnotateFilesRequest) String() string { return proto.CompactTextString(m) } 2058func (*AsyncBatchAnnotateFilesRequest) ProtoMessage() {} 2059func (*AsyncBatchAnnotateFilesRequest) Descriptor() ([]byte, []int) { 2060 return fileDescriptor_357ce83580ed3103, []int{25} 2061} 2062 2063func (m *AsyncBatchAnnotateFilesRequest) XXX_Unmarshal(b []byte) error { 2064 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Unmarshal(m, b) 2065} 2066func (m *AsyncBatchAnnotateFilesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2067 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Marshal(b, m, deterministic) 2068} 2069func (m *AsyncBatchAnnotateFilesRequest) XXX_Merge(src proto.Message) { 2070 xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Merge(m, src) 2071} 2072func (m *AsyncBatchAnnotateFilesRequest) XXX_Size() int { 2073 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Size(m) 2074} 2075func (m *AsyncBatchAnnotateFilesRequest) XXX_DiscardUnknown() { 2076 xxx_messageInfo_AsyncBatchAnnotateFilesRequest.DiscardUnknown(m) 2077} 2078 2079var xxx_messageInfo_AsyncBatchAnnotateFilesRequest proto.InternalMessageInfo 2080 2081func (m *AsyncBatchAnnotateFilesRequest) GetRequests() []*AsyncAnnotateFileRequest { 2082 if m != nil { 2083 return m.Requests 2084 } 2085 return nil 2086} 2087 2088// Response to an async batch file annotation request. 2089type AsyncBatchAnnotateFilesResponse struct { 2090 // The list of file annotation responses, one for each request in 2091 // AsyncBatchAnnotateFilesRequest. 2092 Responses []*AsyncAnnotateFileResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` 2093 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2094 XXX_unrecognized []byte `json:"-"` 2095 XXX_sizecache int32 `json:"-"` 2096} 2097 2098func (m *AsyncBatchAnnotateFilesResponse) Reset() { *m = AsyncBatchAnnotateFilesResponse{} } 2099func (m *AsyncBatchAnnotateFilesResponse) String() string { return proto.CompactTextString(m) } 2100func (*AsyncBatchAnnotateFilesResponse) ProtoMessage() {} 2101func (*AsyncBatchAnnotateFilesResponse) Descriptor() ([]byte, []int) { 2102 return fileDescriptor_357ce83580ed3103, []int{26} 2103} 2104 2105func (m *AsyncBatchAnnotateFilesResponse) XXX_Unmarshal(b []byte) error { 2106 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Unmarshal(m, b) 2107} 2108func (m *AsyncBatchAnnotateFilesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2109 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Marshal(b, m, deterministic) 2110} 2111func (m *AsyncBatchAnnotateFilesResponse) XXX_Merge(src proto.Message) { 2112 xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Merge(m, src) 2113} 2114func (m *AsyncBatchAnnotateFilesResponse) XXX_Size() int { 2115 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Size(m) 2116} 2117func (m *AsyncBatchAnnotateFilesResponse) XXX_DiscardUnknown() { 2118 xxx_messageInfo_AsyncBatchAnnotateFilesResponse.DiscardUnknown(m) 2119} 2120 2121var xxx_messageInfo_AsyncBatchAnnotateFilesResponse proto.InternalMessageInfo 2122 2123func (m *AsyncBatchAnnotateFilesResponse) GetResponses() []*AsyncAnnotateFileResponse { 2124 if m != nil { 2125 return m.Responses 2126 } 2127 return nil 2128} 2129 2130// The desired input location and metadata. 2131type InputConfig struct { 2132 // The Google Cloud Storage location to read the input from. 2133 GcsSource *GcsSource `protobuf:"bytes,1,opt,name=gcs_source,json=gcsSource,proto3" json:"gcs_source,omitempty"` 2134 // The type of the file. Currently only "application/pdf" and "image/tiff" 2135 // are supported. Wildcards are not supported. 2136 MimeType string `protobuf:"bytes,2,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"` 2137 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2138 XXX_unrecognized []byte `json:"-"` 2139 XXX_sizecache int32 `json:"-"` 2140} 2141 2142func (m *InputConfig) Reset() { *m = InputConfig{} } 2143func (m *InputConfig) String() string { return proto.CompactTextString(m) } 2144func (*InputConfig) ProtoMessage() {} 2145func (*InputConfig) Descriptor() ([]byte, []int) { 2146 return fileDescriptor_357ce83580ed3103, []int{27} 2147} 2148 2149func (m *InputConfig) XXX_Unmarshal(b []byte) error { 2150 return xxx_messageInfo_InputConfig.Unmarshal(m, b) 2151} 2152func (m *InputConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2153 return xxx_messageInfo_InputConfig.Marshal(b, m, deterministic) 2154} 2155func (m *InputConfig) XXX_Merge(src proto.Message) { 2156 xxx_messageInfo_InputConfig.Merge(m, src) 2157} 2158func (m *InputConfig) XXX_Size() int { 2159 return xxx_messageInfo_InputConfig.Size(m) 2160} 2161func (m *InputConfig) XXX_DiscardUnknown() { 2162 xxx_messageInfo_InputConfig.DiscardUnknown(m) 2163} 2164 2165var xxx_messageInfo_InputConfig proto.InternalMessageInfo 2166 2167func (m *InputConfig) GetGcsSource() *GcsSource { 2168 if m != nil { 2169 return m.GcsSource 2170 } 2171 return nil 2172} 2173 2174func (m *InputConfig) GetMimeType() string { 2175 if m != nil { 2176 return m.MimeType 2177 } 2178 return "" 2179} 2180 2181// The desired output location and metadata. 2182type OutputConfig struct { 2183 // The Google Cloud Storage location to write the output(s) to. 2184 GcsDestination *GcsDestination `protobuf:"bytes,1,opt,name=gcs_destination,json=gcsDestination,proto3" json:"gcs_destination,omitempty"` 2185 // The max number of response protos to put into each output JSON file on GCS. 2186 // The valid range is [1, 100]. If not specified, the default value is 20. 2187 // 2188 // For example, for one pdf file with 100 pages, 100 response protos will 2189 // be generated. If `batch_size` = 20, then 5 json files each 2190 // containing 20 response protos will be written under the prefix 2191 // `gcs_destination`.`uri`. 2192 // 2193 // Currently, batch_size only applies to GcsDestination, with potential future 2194 // support for other output configurations. 2195 BatchSize int32 `protobuf:"varint,2,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` 2196 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2197 XXX_unrecognized []byte `json:"-"` 2198 XXX_sizecache int32 `json:"-"` 2199} 2200 2201func (m *OutputConfig) Reset() { *m = OutputConfig{} } 2202func (m *OutputConfig) String() string { return proto.CompactTextString(m) } 2203func (*OutputConfig) ProtoMessage() {} 2204func (*OutputConfig) Descriptor() ([]byte, []int) { 2205 return fileDescriptor_357ce83580ed3103, []int{28} 2206} 2207 2208func (m *OutputConfig) XXX_Unmarshal(b []byte) error { 2209 return xxx_messageInfo_OutputConfig.Unmarshal(m, b) 2210} 2211func (m *OutputConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2212 return xxx_messageInfo_OutputConfig.Marshal(b, m, deterministic) 2213} 2214func (m *OutputConfig) XXX_Merge(src proto.Message) { 2215 xxx_messageInfo_OutputConfig.Merge(m, src) 2216} 2217func (m *OutputConfig) XXX_Size() int { 2218 return xxx_messageInfo_OutputConfig.Size(m) 2219} 2220func (m *OutputConfig) XXX_DiscardUnknown() { 2221 xxx_messageInfo_OutputConfig.DiscardUnknown(m) 2222} 2223 2224var xxx_messageInfo_OutputConfig proto.InternalMessageInfo 2225 2226func (m *OutputConfig) GetGcsDestination() *GcsDestination { 2227 if m != nil { 2228 return m.GcsDestination 2229 } 2230 return nil 2231} 2232 2233func (m *OutputConfig) GetBatchSize() int32 { 2234 if m != nil { 2235 return m.BatchSize 2236 } 2237 return 0 2238} 2239 2240// The Google Cloud Storage location where the input will be read from. 2241type GcsSource struct { 2242 // Google Cloud Storage URI for the input file. This must only be a GCS 2243 // object. Wildcards are not currently supported. 2244 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 2245 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2246 XXX_unrecognized []byte `json:"-"` 2247 XXX_sizecache int32 `json:"-"` 2248} 2249 2250func (m *GcsSource) Reset() { *m = GcsSource{} } 2251func (m *GcsSource) String() string { return proto.CompactTextString(m) } 2252func (*GcsSource) ProtoMessage() {} 2253func (*GcsSource) Descriptor() ([]byte, []int) { 2254 return fileDescriptor_357ce83580ed3103, []int{29} 2255} 2256 2257func (m *GcsSource) XXX_Unmarshal(b []byte) error { 2258 return xxx_messageInfo_GcsSource.Unmarshal(m, b) 2259} 2260func (m *GcsSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2261 return xxx_messageInfo_GcsSource.Marshal(b, m, deterministic) 2262} 2263func (m *GcsSource) XXX_Merge(src proto.Message) { 2264 xxx_messageInfo_GcsSource.Merge(m, src) 2265} 2266func (m *GcsSource) XXX_Size() int { 2267 return xxx_messageInfo_GcsSource.Size(m) 2268} 2269func (m *GcsSource) XXX_DiscardUnknown() { 2270 xxx_messageInfo_GcsSource.DiscardUnknown(m) 2271} 2272 2273var xxx_messageInfo_GcsSource proto.InternalMessageInfo 2274 2275func (m *GcsSource) GetUri() string { 2276 if m != nil { 2277 return m.Uri 2278 } 2279 return "" 2280} 2281 2282// The Google Cloud Storage location where the output will be written to. 2283type GcsDestination struct { 2284 // Google Cloud Storage URI where the results will be stored. Results will 2285 // be in JSON format and preceded by its corresponding input URI. This field 2286 // can either represent a single file, or a prefix for multiple outputs. 2287 // Prefixes must end in a `/`. 2288 // 2289 // Examples: 2290 // 2291 // * File: gs://bucket-name/filename.json 2292 // * Prefix: gs://bucket-name/prefix/here/ 2293 // * File: gs://bucket-name/prefix/here 2294 // 2295 // If multiple outputs, each response is still AnnotateFileResponse, each of 2296 // which contains some subset of the full list of AnnotateImageResponse. 2297 // Multiple outputs can happen if, for example, the output JSON is too large 2298 // and overflows into multiple sharded files. 2299 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 2300 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2301 XXX_unrecognized []byte `json:"-"` 2302 XXX_sizecache int32 `json:"-"` 2303} 2304 2305func (m *GcsDestination) Reset() { *m = GcsDestination{} } 2306func (m *GcsDestination) String() string { return proto.CompactTextString(m) } 2307func (*GcsDestination) ProtoMessage() {} 2308func (*GcsDestination) Descriptor() ([]byte, []int) { 2309 return fileDescriptor_357ce83580ed3103, []int{30} 2310} 2311 2312func (m *GcsDestination) XXX_Unmarshal(b []byte) error { 2313 return xxx_messageInfo_GcsDestination.Unmarshal(m, b) 2314} 2315func (m *GcsDestination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2316 return xxx_messageInfo_GcsDestination.Marshal(b, m, deterministic) 2317} 2318func (m *GcsDestination) XXX_Merge(src proto.Message) { 2319 xxx_messageInfo_GcsDestination.Merge(m, src) 2320} 2321func (m *GcsDestination) XXX_Size() int { 2322 return xxx_messageInfo_GcsDestination.Size(m) 2323} 2324func (m *GcsDestination) XXX_DiscardUnknown() { 2325 xxx_messageInfo_GcsDestination.DiscardUnknown(m) 2326} 2327 2328var xxx_messageInfo_GcsDestination proto.InternalMessageInfo 2329 2330func (m *GcsDestination) GetUri() string { 2331 if m != nil { 2332 return m.Uri 2333 } 2334 return "" 2335} 2336 2337// Contains metadata for the BatchAnnotateImages operation. 2338type OperationMetadata struct { 2339 // Current state of the batch operation. 2340 State OperationMetadata_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.vision.v1p2beta1.OperationMetadata_State" json:"state,omitempty"` 2341 // The time when the batch request was received. 2342 CreateTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 2343 // The time when the operation result was last updated. 2344 UpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 2345 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2346 XXX_unrecognized []byte `json:"-"` 2347 XXX_sizecache int32 `json:"-"` 2348} 2349 2350func (m *OperationMetadata) Reset() { *m = OperationMetadata{} } 2351func (m *OperationMetadata) String() string { return proto.CompactTextString(m) } 2352func (*OperationMetadata) ProtoMessage() {} 2353func (*OperationMetadata) Descriptor() ([]byte, []int) { 2354 return fileDescriptor_357ce83580ed3103, []int{31} 2355} 2356 2357func (m *OperationMetadata) XXX_Unmarshal(b []byte) error { 2358 return xxx_messageInfo_OperationMetadata.Unmarshal(m, b) 2359} 2360func (m *OperationMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2361 return xxx_messageInfo_OperationMetadata.Marshal(b, m, deterministic) 2362} 2363func (m *OperationMetadata) XXX_Merge(src proto.Message) { 2364 xxx_messageInfo_OperationMetadata.Merge(m, src) 2365} 2366func (m *OperationMetadata) XXX_Size() int { 2367 return xxx_messageInfo_OperationMetadata.Size(m) 2368} 2369func (m *OperationMetadata) XXX_DiscardUnknown() { 2370 xxx_messageInfo_OperationMetadata.DiscardUnknown(m) 2371} 2372 2373var xxx_messageInfo_OperationMetadata proto.InternalMessageInfo 2374 2375func (m *OperationMetadata) GetState() OperationMetadata_State { 2376 if m != nil { 2377 return m.State 2378 } 2379 return OperationMetadata_STATE_UNSPECIFIED 2380} 2381 2382func (m *OperationMetadata) GetCreateTime() *timestamp.Timestamp { 2383 if m != nil { 2384 return m.CreateTime 2385 } 2386 return nil 2387} 2388 2389func (m *OperationMetadata) GetUpdateTime() *timestamp.Timestamp { 2390 if m != nil { 2391 return m.UpdateTime 2392 } 2393 return nil 2394} 2395 2396func init() { 2397 proto.RegisterEnum("google.cloud.vision.v1p2beta1.Likelihood", Likelihood_name, Likelihood_value) 2398 proto.RegisterEnum("google.cloud.vision.v1p2beta1.Feature_Type", Feature_Type_name, Feature_Type_value) 2399 proto.RegisterEnum("google.cloud.vision.v1p2beta1.FaceAnnotation_Landmark_Type", FaceAnnotation_Landmark_Type_name, FaceAnnotation_Landmark_Type_value) 2400 proto.RegisterEnum("google.cloud.vision.v1p2beta1.OperationMetadata_State", OperationMetadata_State_name, OperationMetadata_State_value) 2401 proto.RegisterType((*Feature)(nil), "google.cloud.vision.v1p2beta1.Feature") 2402 proto.RegisterType((*ImageSource)(nil), "google.cloud.vision.v1p2beta1.ImageSource") 2403 proto.RegisterType((*Image)(nil), "google.cloud.vision.v1p2beta1.Image") 2404 proto.RegisterType((*FaceAnnotation)(nil), "google.cloud.vision.v1p2beta1.FaceAnnotation") 2405 proto.RegisterType((*FaceAnnotation_Landmark)(nil), "google.cloud.vision.v1p2beta1.FaceAnnotation.Landmark") 2406 proto.RegisterType((*LocationInfo)(nil), "google.cloud.vision.v1p2beta1.LocationInfo") 2407 proto.RegisterType((*Property)(nil), "google.cloud.vision.v1p2beta1.Property") 2408 proto.RegisterType((*EntityAnnotation)(nil), "google.cloud.vision.v1p2beta1.EntityAnnotation") 2409 proto.RegisterType((*SafeSearchAnnotation)(nil), "google.cloud.vision.v1p2beta1.SafeSearchAnnotation") 2410 proto.RegisterType((*LatLongRect)(nil), "google.cloud.vision.v1p2beta1.LatLongRect") 2411 proto.RegisterType((*ColorInfo)(nil), "google.cloud.vision.v1p2beta1.ColorInfo") 2412 proto.RegisterType((*DominantColorsAnnotation)(nil), "google.cloud.vision.v1p2beta1.DominantColorsAnnotation") 2413 proto.RegisterType((*ImageProperties)(nil), "google.cloud.vision.v1p2beta1.ImageProperties") 2414 proto.RegisterType((*CropHint)(nil), "google.cloud.vision.v1p2beta1.CropHint") 2415 proto.RegisterType((*CropHintsAnnotation)(nil), "google.cloud.vision.v1p2beta1.CropHintsAnnotation") 2416 proto.RegisterType((*CropHintsParams)(nil), "google.cloud.vision.v1p2beta1.CropHintsParams") 2417 proto.RegisterType((*WebDetectionParams)(nil), "google.cloud.vision.v1p2beta1.WebDetectionParams") 2418 proto.RegisterType((*ImageContext)(nil), "google.cloud.vision.v1p2beta1.ImageContext") 2419 proto.RegisterType((*AnnotateImageRequest)(nil), "google.cloud.vision.v1p2beta1.AnnotateImageRequest") 2420 proto.RegisterType((*ImageAnnotationContext)(nil), "google.cloud.vision.v1p2beta1.ImageAnnotationContext") 2421 proto.RegisterType((*AnnotateImageResponse)(nil), "google.cloud.vision.v1p2beta1.AnnotateImageResponse") 2422 proto.RegisterType((*AnnotateFileResponse)(nil), "google.cloud.vision.v1p2beta1.AnnotateFileResponse") 2423 proto.RegisterType((*BatchAnnotateImagesRequest)(nil), "google.cloud.vision.v1p2beta1.BatchAnnotateImagesRequest") 2424 proto.RegisterType((*BatchAnnotateImagesResponse)(nil), "google.cloud.vision.v1p2beta1.BatchAnnotateImagesResponse") 2425 proto.RegisterType((*AsyncAnnotateFileRequest)(nil), "google.cloud.vision.v1p2beta1.AsyncAnnotateFileRequest") 2426 proto.RegisterType((*AsyncAnnotateFileResponse)(nil), "google.cloud.vision.v1p2beta1.AsyncAnnotateFileResponse") 2427 proto.RegisterType((*AsyncBatchAnnotateFilesRequest)(nil), "google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesRequest") 2428 proto.RegisterType((*AsyncBatchAnnotateFilesResponse)(nil), "google.cloud.vision.v1p2beta1.AsyncBatchAnnotateFilesResponse") 2429 proto.RegisterType((*InputConfig)(nil), "google.cloud.vision.v1p2beta1.InputConfig") 2430 proto.RegisterType((*OutputConfig)(nil), "google.cloud.vision.v1p2beta1.OutputConfig") 2431 proto.RegisterType((*GcsSource)(nil), "google.cloud.vision.v1p2beta1.GcsSource") 2432 proto.RegisterType((*GcsDestination)(nil), "google.cloud.vision.v1p2beta1.GcsDestination") 2433 proto.RegisterType((*OperationMetadata)(nil), "google.cloud.vision.v1p2beta1.OperationMetadata") 2434} 2435 2436func init() { 2437 proto.RegisterFile("google/cloud/vision/v1p2beta1/image_annotator.proto", fileDescriptor_357ce83580ed3103) 2438} 2439 2440var fileDescriptor_357ce83580ed3103 = []byte{ 2441 // 2899 bytes of a gzipped FileDescriptorProto 2442 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcf, 0x73, 0xdb, 0xc6, 2443 0xf5, 0x0f, 0xa9, 0x5f, 0xe4, 0x23, 0x25, 0x41, 0xab, 0x1f, 0xa6, 0x65, 0x2b, 0x56, 0x90, 0x6f, 2444 0xbe, 0x55, 0xdd, 0x94, 0x1a, 0xcb, 0x49, 0xda, 0x3a, 0xcd, 0xa4, 0x14, 0x09, 0x49, 0x1c, 0x53, 2445 0x24, 0xbb, 0x84, 0xec, 0xd8, 0x93, 0x0e, 0x0a, 0x81, 0x4b, 0x1a, 0x09, 0x08, 0x20, 0x00, 0x68, 2446 0x8b, 0x39, 0x66, 0xa6, 0x7f, 0x41, 0x6f, 0xbd, 0x77, 0x7a, 0x6a, 0x2f, 0xed, 0xa5, 0xff, 0x40, 2447 0xef, 0x9d, 0x1e, 0x7a, 0xe9, 0xad, 0x3d, 0xf4, 0xd8, 0x53, 0xa7, 0xd3, 0x53, 0x67, 0x7f, 0x00, 2448 0x5c, 0x50, 0xb2, 0x29, 0x3a, 0xe9, 0x4c, 0x4f, 0xe2, 0xbe, 0xb7, 0x9f, 0xcf, 0xdb, 0x7d, 0xfb, 2449 0xf6, 0xed, 0xdb, 0x85, 0xe0, 0x7e, 0xdf, 0xf3, 0xfa, 0x0e, 0xd9, 0xb7, 0x1c, 0x6f, 0xd8, 0xdd, 2450 0x7f, 0x6e, 0x87, 0xb6, 0xe7, 0xee, 0x3f, 0xbf, 0xe7, 0x1f, 0x9c, 0x93, 0xc8, 0xbc, 0xb7, 0x6f, 2451 0x0f, 0xcc, 0x3e, 0x31, 0x4c, 0xd7, 0xf5, 0x22, 0x33, 0xf2, 0x82, 0xb2, 0x1f, 0x78, 0x91, 0x87, 2452 0x76, 0x38, 0xa8, 0xcc, 0x40, 0x65, 0x0e, 0x2a, 0x27, 0xa0, 0xed, 0xdb, 0x82, 0xd3, 0xf4, 0xed, 2453 0x7d, 0x01, 0xb5, 0x3d, 0x37, 0xe4, 0xe0, 0xed, 0x77, 0x5f, 0x6d, 0xb1, 0x4f, 0xbc, 0x01, 0x89, 2454 0x82, 0x91, 0xe8, 0x3d, 0x65, 0x7c, 0x11, 0xb9, 0x88, 0x8c, 0xb1, 0x0d, 0x01, 0xba, 0xf7, 0x6a, 2455 0xd0, 0x0b, 0x72, 0x6e, 0x74, 0x49, 0x44, 0x2c, 0x09, 0xf2, 0xb6, 0x80, 0x38, 0x9e, 0xdb, 0x0f, 2456 0x86, 0xae, 0x6b, 0xbb, 0xfd, 0x7d, 0xcf, 0x27, 0x41, 0x6a, 0xe8, 0x77, 0x44, 0x27, 0xd6, 0x3a, 2457 0x1f, 0xf6, 0xf6, 0x23, 0x7b, 0x40, 0xc2, 0xc8, 0x1c, 0xf8, 0xa2, 0xc3, 0x0d, 0xd1, 0x21, 0xf0, 2458 0xad, 0xfd, 0x30, 0x32, 0xa3, 0x61, 0x38, 0xa1, 0x88, 0x46, 0x3e, 0xd9, 0xb7, 0x3c, 0x27, 0x76, 2459 0xe5, 0x76, 0x49, 0x56, 0x38, 0x66, 0xe4, 0xb8, 0x7d, 0xae, 0x51, 0xff, 0x9d, 0x85, 0xa5, 0x23, 2460 0x62, 0x46, 0xc3, 0x80, 0xa0, 0x8f, 0x61, 0x9e, 0x76, 0x28, 0x65, 0x76, 0x33, 0x7b, 0x2b, 0x07, 2461 0xdf, 0x29, 0xbf, 0xd2, 0xff, 0x65, 0x81, 0x2a, 0xeb, 0x23, 0x9f, 0x60, 0x06, 0x44, 0x77, 0xa0, 2462 0x30, 0x30, 0x2f, 0x8c, 0x80, 0x84, 0x43, 0x27, 0x0a, 0x4b, 0xd9, 0xdd, 0xcc, 0xde, 0x02, 0x86, 2463 0x81, 0x79, 0x81, 0xb9, 0x04, 0x6d, 0xc0, 0xc2, 0xc0, 0xeb, 0x12, 0xa7, 0x34, 0xb7, 0x9b, 0xd9, 2464 0xcb, 0x63, 0xde, 0x50, 0xff, 0x99, 0x81, 0x79, 0xca, 0x82, 0x36, 0x40, 0xd1, 0x9f, 0xb4, 0x35, 2465 0xe3, 0xac, 0xd9, 0x69, 0x6b, 0xd5, 0xfa, 0x51, 0x5d, 0xab, 0x29, 0x6f, 0x20, 0x04, 0x2b, 0x47, 2466 0x95, 0xaa, 0x66, 0xd4, 0x34, 0x5d, 0xab, 0xea, 0xf5, 0x56, 0x53, 0xc9, 0xa0, 0x2d, 0x40, 0x8d, 2467 0x4a, 0xb3, 0x76, 0x5a, 0xc1, 0x0f, 0x25, 0x79, 0x96, 0xf6, 0x6d, 0xb4, 0x8e, 0x5b, 0x92, 0x6c, 2468 0x0e, 0xad, 0xc3, 0x6a, 0xa3, 0x72, 0xa8, 0x35, 0x24, 0xe1, 0x3c, 0xed, 0xa8, 0x6b, 0x9f, 0xe8, 2469 0x92, 0x6c, 0x01, 0xdd, 0x82, 0x1b, 0xb5, 0x56, 0xf5, 0xec, 0x54, 0x6b, 0xea, 0xc6, 0x84, 0xb2, 2470 0x80, 0x6e, 0xc2, 0x66, 0xa7, 0x72, 0xa4, 0x19, 0x1d, 0xad, 0x82, 0xab, 0x27, 0x92, 0x6a, 0x91, 2471 0x0e, 0xbb, 0x7e, 0x5a, 0x39, 0xd6, 0x8c, 0x36, 0x6e, 0xb5, 0x35, 0xac, 0xd7, 0xb5, 0x8e, 0xb2, 2472 0x84, 0x56, 0x00, 0xaa, 0xb8, 0xd5, 0x36, 0x4e, 0xea, 0x4d, 0xbd, 0xa3, 0xe4, 0xd1, 0x1a, 0x2c, 2473 0x3f, 0xd6, 0x0e, 0x25, 0x20, 0xa8, 0x4d, 0x28, 0xd4, 0x69, 0xe8, 0x77, 0xbc, 0x61, 0x60, 0x11, 2474 0xa4, 0xc2, 0x72, 0xdf, 0x0a, 0x0d, 0xbe, 0x1b, 0x86, 0x81, 0xcd, 0x16, 0x22, 0x8f, 0x0b, 0x7d, 2475 0x2b, 0x64, 0xdd, 0xce, 0x02, 0x1b, 0xdd, 0x82, 0xfc, 0x58, 0x9f, 0x65, 0xfa, 0x9c, 0x2d, 0x94, 2476 0x2a, 0x81, 0x05, 0xd6, 0x11, 0x95, 0x60, 0xc9, 0xf2, 0xdc, 0x88, 0xb8, 0x11, 0xe3, 0x28, 0xe2, 2477 0xb8, 0x89, 0x0e, 0x61, 0x31, 0x64, 0xd6, 0x18, 0xb8, 0x70, 0x70, 0x77, 0xca, 0x2a, 0x4b, 0xe3, 2478 0xc3, 0x02, 0xa9, 0xfe, 0x52, 0x81, 0x95, 0x23, 0xd3, 0x22, 0x95, 0x64, 0x47, 0xa0, 0x36, 0x2c, 2479 0x9f, 0x7b, 0x43, 0xb7, 0x6b, 0xbb, 0x7d, 0xc3, 0xf7, 0x9c, 0x11, 0x33, 0x5b, 0x98, 0x1a, 0x43, 2480 0x87, 0x02, 0xd3, 0xf6, 0x9c, 0x11, 0x2e, 0x9e, 0x4b, 0x2d, 0x74, 0x06, 0x4a, 0xaf, 0x6b, 0xa4, 2481 0x49, 0xb3, 0xb3, 0x93, 0xae, 0xf4, 0xba, 0x72, 0x1b, 0xe9, 0x90, 0x77, 0x4c, 0xb7, 0x3b, 0x30, 2482 0x83, 0xcf, 0xc3, 0xd2, 0xdc, 0xee, 0xdc, 0x5e, 0xe1, 0xe0, 0x83, 0x69, 0x81, 0x9e, 0x9a, 0x6a, 2483 0xb9, 0x21, 0xe0, 0x78, 0x4c, 0x84, 0x76, 0x00, 0x02, 0xcf, 0x71, 0x0c, 0xd3, 0xed, 0x3b, 0xa4, 2484 0x34, 0xbf, 0x9b, 0xd9, 0xcb, 0xe2, 0x3c, 0x95, 0x54, 0xa8, 0x80, 0x2e, 0x9a, 0x6f, 0xba, 0x42, 2485 0xbb, 0xc0, 0xb4, 0x39, 0xdf, 0x74, 0xb9, 0x72, 0x07, 0x20, 0xb2, 0x9d, 0x48, 0x68, 0x17, 0x39, 2486 0x96, 0x4a, 0xb8, 0xfa, 0x1e, 0x6c, 0x24, 0x59, 0xc4, 0xb0, 0x3c, 0xb7, 0x67, 0x77, 0x89, 0x6b, 2487 0x91, 0xd2, 0x12, 0xeb, 0xb8, 0x9e, 0xe8, 0xaa, 0x89, 0x0a, 0xbd, 0x0f, 0x5b, 0xf1, 0xd0, 0xa8, 2488 0xeb, 0x24, 0x50, 0x8e, 0x81, 0x36, 0x25, 0xad, 0x04, 0x6b, 0xc3, 0xca, 0x67, 0xde, 0xc8, 0x70, 2489 0xec, 0xcf, 0x89, 0x63, 0x3f, 0xf3, 0xbc, 0x6e, 0x29, 0xcf, 0x12, 0xc1, 0xb7, 0xa7, 0xf8, 0xa7, 2490 0x91, 0x00, 0xf0, 0xf2, 0x67, 0xde, 0x68, 0xdc, 0x44, 0x8f, 0x60, 0x2d, 0xf4, 0x82, 0xc0, 0x7b, 2491 0x21, 0x93, 0xc2, 0xac, 0xa4, 0x0a, 0xe7, 0x90, 0x78, 0x75, 0x50, 0x4c, 0xb7, 0x4f, 0x02, 0x99, 2492 0xb6, 0x30, 0x2b, 0xed, 0x2a, 0xa3, 0x90, 0x58, 0x9f, 0xc2, 0x7a, 0x38, 0x0c, 0xfc, 0xc0, 0x0e, 2493 0x89, 0x4c, 0x5c, 0x9c, 0x95, 0x18, 0xc5, 0x2c, 0x12, 0xb7, 0x05, 0xa5, 0xa1, 0xdb, 0x25, 0x81, 2494 0x41, 0x2e, 0x7c, 0x2f, 0x24, 0x5d, 0xd9, 0xc0, 0xf2, 0xac, 0x06, 0xb6, 0x18, 0x95, 0xc6, 0x99, 2495 0x24, 0x23, 0x9f, 0x00, 0x3a, 0x77, 0x86, 0x41, 0x90, 0xa6, 0x5f, 0x99, 0x95, 0x7e, 0x4d, 0x90, 2496 0xa4, 0x5d, 0xf3, 0x8c, 0x98, 0xdd, 0x17, 0xc4, 0x4c, 0xf9, 0x7c, 0x75, 0x66, 0xd7, 0xc4, 0x2c, 2497 0x63, 0xd9, 0xf6, 0x9f, 0x97, 0x20, 0x17, 0xef, 0x29, 0xd4, 0x12, 0x47, 0xd0, 0x1c, 0x63, 0xfe, 2498 0xf0, 0xf5, 0x76, 0xa6, 0x7c, 0x24, 0x55, 0x21, 0xe7, 0x7b, 0xa1, 0x4d, 0xf5, 0x6c, 0x5f, 0x16, 2499 0x0e, 0xbe, 0x35, 0x85, 0xb4, 0x2d, 0xba, 0xe3, 0x04, 0xa8, 0xfe, 0x6e, 0x71, 0x7c, 0x40, 0x9d, 2500 0x35, 0x1f, 0x36, 0x5b, 0x8f, 0x9b, 0x46, 0x7c, 0xfc, 0x28, 0x6f, 0xa0, 0x22, 0xe4, 0x1a, 0xda, 2501 0x91, 0x6e, 0x68, 0x4f, 0x34, 0x25, 0x83, 0x96, 0x21, 0x8f, 0xeb, 0xc7, 0x27, 0xbc, 0x99, 0x45, 2502 0x25, 0xd8, 0x60, 0xca, 0xd6, 0x91, 0x11, 0x77, 0x3a, 0xc4, 0xad, 0xc7, 0xca, 0x1c, 0x3d, 0x51, 2503 0x78, 0xc7, 0x49, 0xd5, 0x3c, 0x55, 0xc5, 0xa0, 0x84, 0x8b, 0xa9, 0x16, 0xd0, 0x36, 0x6c, 0x25, 2504 0xa8, 0xb4, 0x6e, 0x91, 0xc2, 0x4e, 0xeb, 0xb5, 0x76, 0xab, 0xde, 0xd4, 0x8d, 0x43, 0x4d, 0x7f, 2505 0xac, 0x69, 0x4d, 0xaa, 0xa5, 0xa7, 0x51, 0x11, 0x72, 0xcd, 0x56, 0x47, 0x33, 0xf4, 0x7a, 0x5b, 2506 0xc9, 0xd1, 0x31, 0x9e, 0xb5, 0xdb, 0x1a, 0x36, 0x1a, 0xf5, 0xb6, 0x92, 0xa7, 0xcd, 0x46, 0xeb, 2507 0xb1, 0x68, 0x02, 0x3d, 0xb9, 0x4e, 0x5b, 0x67, 0xfa, 0x09, 0x1b, 0x95, 0x52, 0x40, 0xab, 0x50, 2508 0xe0, 0x6d, 0x66, 0x4f, 0x29, 0x22, 0x05, 0x8a, 0x5c, 0x50, 0xd5, 0x9a, 0xba, 0x86, 0x95, 0x65, 2509 0xb4, 0x09, 0x6b, 0x8c, 0xfe, 0xb0, 0xa5, 0xeb, 0xad, 0x53, 0xd1, 0x71, 0x85, 0xfa, 0x4b, 0x16, 2510 0x33, 0xbe, 0x55, 0x7a, 0x78, 0xcb, 0x52, 0x41, 0xa2, 0x24, 0xb3, 0xd6, 0x9e, 0x68, 0x86, 0xde, 2511 0x6a, 0x1b, 0x87, 0xad, 0xb3, 0x66, 0xad, 0x82, 0x9f, 0x28, 0x6b, 0x29, 0x15, 0x9f, 0x75, 0xb5, 2512 0x85, 0x9b, 0x1a, 0x56, 0x10, 0xba, 0x0d, 0xa5, 0x44, 0x25, 0x18, 0x13, 0xe0, 0x7a, 0xe2, 0x7e, 2513 0xaa, 0x65, 0x3f, 0x04, 0x6e, 0x63, 0xec, 0xc8, 0x4b, 0xe6, 0x36, 0xd3, 0xba, 0x94, 0xbd, 0x2d, 2514 0xb4, 0x03, 0x37, 0xc7, 0xba, 0x49, 0x83, 0x37, 0xc6, 0xab, 0x3a, 0x69, 0xb1, 0x84, 0xee, 0xc0, 2515 0x2d, 0x79, 0x9d, 0x0d, 0xbe, 0x04, 0xf1, 0x8a, 0x29, 0x37, 0xd1, 0x2e, 0xdc, 0x4e, 0x2d, 0xe9, 2516 0x64, 0x8f, 0x6d, 0xea, 0x50, 0x4e, 0x51, 0xc1, 0x86, 0x8e, 0x2b, 0xc7, 0xb4, 0x8e, 0xb8, 0x45, 2517 0xbd, 0x2f, 0x70, 0x92, 0xf8, 0x36, 0x2b, 0x86, 0xe2, 0xb9, 0xb7, 0xcf, 0xda, 0xf5, 0x86, 0xb2, 2518 0x43, 0x8b, 0xa1, 0xf1, 0xf0, 0xb8, 0xf0, 0x4d, 0x8a, 0x3f, 0x6a, 0x61, 0xed, 0x44, 0xab, 0xd4, 2519 0x8c, 0x63, 0x56, 0x2b, 0x35, 0x2a, 0xca, 0x1d, 0x5a, 0xb1, 0x54, 0x4f, 0xea, 0x4d, 0xe3, 0xb8, 2520 0x59, 0xd1, 0x4f, 0x28, 0xe5, 0x2e, 0xb5, 0xcf, 0x44, 0x8c, 0xf7, 0xb8, 0xd5, 0xa4, 0xd2, 0xb7, 2521 0x28, 0x9e, 0x49, 0x39, 0xb3, 0x10, 0xab, 0xea, 0x0f, 0xa1, 0xd8, 0xf0, 0x2c, 0xb6, 0x37, 0xeb, 2522 0x6e, 0xcf, 0x43, 0xef, 0xc2, 0x92, 0x63, 0x46, 0x86, 0xe3, 0xf6, 0x45, 0x79, 0xb0, 0x1e, 0x6f, 2523 0x45, 0xba, 0x55, 0xcb, 0x0d, 0x33, 0x6a, 0xb8, 0x7d, 0xbc, 0xe8, 0xb0, 0xbf, 0xea, 0x63, 0xc8, 2524 0xb5, 0x03, 0x5a, 0x1c, 0x47, 0x23, 0x84, 0x60, 0xde, 0x35, 0x07, 0x44, 0x14, 0x44, 0xec, 0x37, 2525 0xad, 0x25, 0x9f, 0x9b, 0xce, 0x90, 0x88, 0x2a, 0x88, 0x37, 0xd0, 0x5b, 0x50, 0x1c, 0xda, 0x6e, 2526 0xf4, 0xc1, 0x7b, 0x06, 0x57, 0xd2, 0x44, 0x32, 0x8f, 0x0b, 0x5c, 0xf6, 0x88, 0x8a, 0xd4, 0x5f, 2527 0xcc, 0x81, 0xa2, 0xb9, 0x91, 0x1d, 0x8d, 0xa4, 0x02, 0x46, 0x81, 0xb9, 0x81, 0xdd, 0x15, 0x06, 2528 0xe8, 0x4f, 0xb4, 0x05, 0x8b, 0x8e, 0x67, 0x99, 0x4e, 0x6c, 0x40, 0xb4, 0xd0, 0x2e, 0x14, 0xba, 2529 0x24, 0xb4, 0x02, 0xdb, 0x67, 0x49, 0x85, 0x57, 0xb2, 0xb2, 0x88, 0x8e, 0x2c, 0xb4, 0xbc, 0x20, 2530 0x2e, 0x04, 0x78, 0x03, 0xbd, 0x09, 0x20, 0x9d, 0xc4, 0xbc, 0x0a, 0x90, 0x24, 0x54, 0x1f, 0x79, 2531 0xbe, 0x6d, 0x99, 0x8e, 0x1d, 0x8d, 0x44, 0x1d, 0x20, 0x49, 0x2e, 0x97, 0x58, 0x4b, 0x5f, 0xb7, 2532 0xc4, 0xaa, 0x43, 0xde, 0x11, 0xeb, 0x13, 0x96, 0x72, 0xac, 0x16, 0x9a, 0xc6, 0x26, 0xaf, 0x27, 2533 0x1e, 0xa3, 0xd1, 0x31, 0x80, 0xcf, 0x17, 0xcb, 0x26, 0x61, 0x29, 0xcf, 0xb8, 0xa6, 0x26, 0x5a, 2534 0xb1, 0xba, 0x58, 0x82, 0xaa, 0x7f, 0xcd, 0xc2, 0x46, 0xc7, 0xec, 0x91, 0x0e, 0x31, 0x03, 0xeb, 2535 0x99, 0xb4, 0x40, 0x1f, 0xc3, 0x82, 0xd9, 0x1d, 0x3a, 0x91, 0xb8, 0x9d, 0xcc, 0x70, 0xe8, 0x70, 2536 0x1c, 0x25, 0x08, 0x7d, 0xcf, 0xeb, 0xb1, 0xe5, 0x9c, 0x8d, 0x80, 0xe1, 0x50, 0x15, 0x96, 0x06, 2537 0xa4, 0x4b, 0x97, 0x43, 0x1c, 0x4f, 0x33, 0x50, 0xc4, 0x48, 0xa4, 0x41, 0xee, 0xb9, 0xed, 0x39, 2538 0x2c, 0x06, 0xe6, 0x67, 0x65, 0x49, 0xa0, 0xe8, 0x23, 0x98, 0x0f, 0x4c, 0x6b, 0x34, 0x7b, 0x85, 2539 0xc6, 0x60, 0xea, 0x0b, 0x28, 0xd0, 0xdd, 0xe6, 0xb9, 0x7d, 0x4c, 0xac, 0x08, 0xdd, 0x87, 0xc2, 2540 0xc0, 0x76, 0x8d, 0x6b, 0x6c, 0xce, 0xfc, 0xc0, 0x76, 0xf9, 0x4f, 0x06, 0x32, 0x2f, 0x12, 0x50, 2541 0xf6, 0x55, 0x20, 0xf3, 0x82, 0xff, 0x54, 0x03, 0xc8, 0x57, 0xe9, 0xbd, 0x94, 0xe5, 0x83, 0x3d, 2542 0x58, 0x60, 0x97, 0x54, 0x61, 0x10, 0xa5, 0xb0, 0xac, 0x1b, 0xe6, 0x1d, 0xc6, 0x3b, 0x2a, 0x2b, 2543 0xef, 0xa8, 0x77, 0x60, 0xc5, 0xb7, 0x2f, 0x88, 0x63, 0xf4, 0x02, 0xd3, 0x4a, 0x36, 0x63, 0x16, 2544 0x2f, 0x33, 0xe9, 0x91, 0x10, 0xaa, 0x9f, 0x42, 0xa9, 0xe6, 0x0d, 0x6c, 0xd7, 0x74, 0x23, 0x46, 2545 0x1a, 0x4a, 0x51, 0xf5, 0x23, 0x58, 0x64, 0x16, 0xc2, 0x52, 0x86, 0xc5, 0xec, 0xde, 0x14, 0x4f, 2546 0x26, 0x83, 0xc7, 0x02, 0xa7, 0x86, 0xb0, 0xca, 0xee, 0x48, 0xed, 0x24, 0x86, 0xd1, 0x4f, 0x61, 2547 0xb5, 0x2b, 0x0c, 0x1a, 0x09, 0x3b, 0x9d, 0xe1, 0xf7, 0xa6, 0xb0, 0xbf, 0x6c, 0x98, 0x78, 0xa5, 2548 0x9b, 0xd2, 0xa8, 0xbf, 0xce, 0x40, 0xae, 0x1a, 0x78, 0xfe, 0x89, 0xed, 0x46, 0xff, 0x85, 0xbb, 2549 0x57, 0x3a, 0x55, 0x65, 0x2f, 0xa5, 0xaa, 0x7d, 0x58, 0xb7, 0x07, 0xbe, 0x17, 0x44, 0xa6, 0x6b, 2550 0x91, 0x49, 0xef, 0xa3, 0xb1, 0x2a, 0x59, 0x82, 0x9f, 0xc0, 0x7a, 0x3c, 0x5c, 0xd9, 0xfb, 0x47, 2551 0x00, 0x56, 0xe0, 0xf9, 0xc6, 0x33, 0x2a, 0x17, 0x2b, 0x30, 0x2d, 0x6b, 0xc4, 0x3c, 0x38, 0x6f, 2552 0xc5, 0x8c, 0xea, 0x07, 0xb0, 0x9a, 0xd0, 0xb7, 0xcd, 0xc0, 0x1c, 0x84, 0xe8, 0x6d, 0x58, 0x36, 2553 0x43, 0x9f, 0x58, 0x91, 0xc1, 0x1e, 0x57, 0x38, 0x7b, 0x16, 0x17, 0xb9, 0x10, 0x33, 0x99, 0x5a, 2554 0x03, 0xf4, 0x98, 0x9c, 0xd7, 0xe2, 0x2b, 0x94, 0x80, 0x96, 0x61, 0xdd, 0x76, 0x2d, 0x67, 0xd8, 2555 0x25, 0x46, 0x9f, 0x78, 0xa9, 0xd7, 0x8c, 0x1c, 0x5e, 0x13, 0xaa, 0x63, 0xe2, 0x89, 0x47, 0x0d, 2556 0xf5, 0x0f, 0x59, 0x28, 0xb2, 0x10, 0xa8, 0xd2, 0x3b, 0xf6, 0x45, 0x84, 0x9a, 0xb0, 0xcc, 0x76, 2557 0x85, 0xe7, 0xf6, 0x8d, 0x80, 0x58, 0x91, 0x58, 0x90, 0x69, 0x57, 0x6d, 0x69, 0x47, 0xe2, 0x82, 2558 0x23, 0x6d, 0xcf, 0x77, 0x60, 0xc5, 0x31, 0xdd, 0xfe, 0x90, 0x5e, 0xfb, 0xb9, 0xab, 0xb2, 0xbb, 2559 0x73, 0x7b, 0x79, 0xbc, 0x1c, 0x4b, 0xd9, 0xc4, 0xd1, 0x53, 0x58, 0x1b, 0x7b, 0xd3, 0xf0, 0xd9, 2560 0x64, 0x44, 0xcd, 0x5b, 0xbe, 0xa6, 0x53, 0x85, 0xf7, 0xf0, 0xaa, 0x35, 0xe1, 0x4e, 0x0b, 0x36, 2561 0x52, 0xef, 0x59, 0x31, 0xfd, 0x22, 0xa3, 0xbf, 0x37, 0x85, 0xfe, 0xb2, 0x93, 0x31, 0x7a, 0x71, 2562 0x49, 0xa6, 0xfe, 0x3d, 0x03, 0x1b, 0x22, 0x3a, 0x08, 0x73, 0x28, 0x26, 0x5f, 0x0c, 0x49, 0x18, 2563 0xa1, 0x07, 0xb0, 0xc0, 0xde, 0x38, 0x84, 0x23, 0xff, 0xef, 0x3a, 0x6f, 0x16, 0x98, 0x43, 0xd0, 2564 0x21, 0xe4, 0x7a, 0xfc, 0xa5, 0x8a, 0xbb, 0xad, 0x70, 0xf0, 0xff, 0xd7, 0x7b, 0xd8, 0xc2, 0x09, 2565 0x8e, 0xee, 0x30, 0xfe, 0xe8, 0x62, 0xf1, 0x15, 0x66, 0x91, 0x3e, 0x7d, 0x87, 0xc9, 0x41, 0x81, 2566 0x8b, 0xb6, 0xd4, 0x52, 0x1f, 0xc2, 0x16, 0xd3, 0x8e, 0x37, 0x43, 0x1c, 0x3c, 0x0a, 0xcc, 0x8d, 2567 0x9f, 0x7e, 0xe8, 0x4f, 0x74, 0x07, 0x0a, 0x3e, 0x35, 0xee, 0x0e, 0x07, 0xe7, 0x24, 0x88, 0x5f, 2568 0xd5, 0xa8, 0xa8, 0xc9, 0x24, 0xea, 0x5f, 0x72, 0xb0, 0x39, 0xe1, 0xb7, 0xd0, 0xf7, 0xdc, 0x90, 2569 0xa0, 0x4f, 0x40, 0xe9, 0x99, 0x16, 0x91, 0xde, 0x2e, 0xe3, 0x6d, 0xf6, 0xdd, 0x99, 0xae, 0x56, 2570 0x78, 0xb5, 0x97, 0x6a, 0x87, 0xe8, 0x1c, 0x36, 0xe2, 0x57, 0x84, 0x14, 0x3b, 0x77, 0xf1, 0xfe, 2571 0x14, 0xf6, 0xc9, 0xf2, 0x0b, 0xaf, 0xc7, 0x64, 0xb2, 0x8d, 0xa7, 0xa0, 0x38, 0x5e, 0xdf, 0x4b, 2572 0xf1, 0xcf, 0xbd, 0x1e, 0xff, 0x2a, 0x25, 0x92, 0xb9, 0x3f, 0x85, 0x35, 0xc7, 0x3c, 0x27, 0x4e, 2573 0x8a, 0x7c, 0xfe, 0xf5, 0xc8, 0x15, 0xc6, 0x34, 0x31, 0xf2, 0x89, 0x37, 0xe3, 0xb0, 0xb4, 0xf0, 2574 0x9a, 0x23, 0xa7, 0x44, 0x32, 0xb7, 0x01, 0x1b, 0xbd, 0xa1, 0xe3, 0x18, 0x13, 0x06, 0xd8, 0x3b, 2575 0xc5, 0xf4, 0x75, 0xd5, 0x53, 0x6c, 0x18, 0x51, 0xaa, 0xb4, 0x0c, 0xd9, 0xb0, 0x15, 0x9a, 0x3d, 2576 0x62, 0x84, 0xac, 0x04, 0x93, 0x4d, 0xf0, 0xdd, 0x7e, 0x7f, 0x8a, 0x89, 0xab, 0xca, 0x37, 0xbc, 2577 0x11, 0x5e, 0x55, 0xd4, 0xb9, 0x70, 0x8b, 0x6f, 0xac, 0x71, 0x05, 0x28, 0xdb, 0xcb, 0x5d, 0x2b, 2578 0x79, 0x4d, 0x1c, 0xbf, 0xf8, 0xa6, 0x9d, 0x16, 0x48, 0xf6, 0x7a, 0xb0, 0x29, 0xa5, 0x48, 0xc9, 2579 0x52, 0x81, 0x59, 0x3a, 0xb8, 0x6e, 0x9a, 0x94, 0x23, 0xd7, 0xba, 0xe2, 0x60, 0x6b, 0xc3, 0x72, 2580 0x2a, 0x5d, 0xb2, 0x37, 0x9e, 0xe9, 0x09, 0x43, 0xce, 0x93, 0xb8, 0x28, 0x67, 0x48, 0x5a, 0x2b, 2581 0x91, 0x20, 0xf0, 0x02, 0x56, 0xf1, 0x49, 0xb5, 0x52, 0xe0, 0x5b, 0xe5, 0x0e, 0xfb, 0x06, 0x80, 2582 0x79, 0x07, 0xd4, 0x12, 0x6f, 0xbf, 0x17, 0x51, 0x69, 0x93, 0xf5, 0x7d, 0xff, 0x3a, 0xfe, 0xbb, 2583 0x94, 0x88, 0x70, 0xcc, 0xa2, 0xfe, 0x5e, 0x4a, 0xcb, 0x47, 0xb6, 0x33, 0xce, 0x2e, 0xa7, 0x50, 2584 0xb4, 0x5d, 0x7f, 0x18, 0xf1, 0x17, 0xc6, 0xfe, 0x35, 0x8f, 0xb9, 0x3a, 0x85, 0xb0, 0x67, 0xc7, 2585 0x3e, 0x2e, 0xd8, 0xe3, 0x06, 0xc2, 0x90, 0x0f, 0x04, 0x75, 0x9c, 0x47, 0xde, 0x9b, 0xc2, 0x75, 2586 0x65, 0xd6, 0xc3, 0x63, 0x1a, 0x75, 0x00, 0xdb, 0x87, 0x66, 0x94, 0xc4, 0x1c, 0xef, 0x18, 0xc6, 2587 0xe7, 0x4a, 0x0b, 0x72, 0x01, 0xff, 0x19, 0xa7, 0xc5, 0xfb, 0xb3, 0x19, 0x64, 0x58, 0x9c, 0x90, 2588 0xa8, 0x5f, 0xc0, 0xad, 0x2b, 0xcd, 0x09, 0x87, 0xa5, 0x66, 0x98, 0xf9, 0x66, 0x66, 0xf8, 0xc7, 2589 0x2c, 0x94, 0x2a, 0xe1, 0xc8, 0xb5, 0xd2, 0x4b, 0xc4, 0x27, 0xf8, 0x0d, 0xaf, 0xd0, 0xff, 0xe4, 2590 0x59, 0x4a, 0x19, 0xbd, 0x61, 0x24, 0xcd, 0x72, 0xfe, 0x5a, 0x8c, 0x2d, 0x86, 0x11, 0xd3, 0x2c, 2591 0x7a, 0x52, 0x4b, 0x1d, 0xc0, 0xcd, 0x2b, 0x5c, 0x2a, 0x16, 0xf1, 0x92, 0xb9, 0xcc, 0xd7, 0x35, 2592 0x37, 0x84, 0x37, 0x99, 0xb9, 0x54, 0xe8, 0x50, 0x9b, 0x49, 0xa0, 0x76, 0x2e, 0x05, 0xea, 0xb4, 2593 0xab, 0xc4, 0xcb, 0x42, 0x42, 0x0a, 0xd6, 0x11, 0xdc, 0x79, 0xa9, 0x59, 0x31, 0xd7, 0x47, 0x97, 2594 0x03, 0xf6, 0xfb, 0xb3, 0x1b, 0xbe, 0x1c, 0xb4, 0x21, 0x14, 0xa4, 0x20, 0x43, 0xc7, 0x00, 0x7d, 2595 0x2b, 0x34, 0xc4, 0x87, 0x29, 0xee, 0xcf, 0x69, 0x37, 0xb1, 0x63, 0x2b, 0x14, 0x9f, 0xa5, 0xf2, 2596 0xfd, 0xf8, 0x27, 0xba, 0x05, 0xf9, 0x81, 0x3d, 0x20, 0x06, 0x7b, 0x43, 0x16, 0x5f, 0xc7, 0xa8, 2597 0x40, 0x1f, 0xf9, 0x44, 0xfd, 0x59, 0x06, 0x8a, 0xf2, 0x2a, 0xa0, 0x47, 0xb0, 0x4a, 0xcd, 0x76, 2598 0x49, 0x18, 0xd9, 0x2e, 0x3f, 0x07, 0x32, 0xd7, 0x3a, 0x44, 0x8f, 0xad, 0xb0, 0x36, 0x06, 0xe1, 2599 0x95, 0x7e, 0xaa, 0x8d, 0x76, 0x00, 0xce, 0xa9, 0x4f, 0x8d, 0xd0, 0xfe, 0x92, 0x88, 0x7a, 0x2d, 2600 0xcf, 0x24, 0x1d, 0xfb, 0x4b, 0xa2, 0xee, 0x40, 0x3e, 0x19, 0xfc, 0xe5, 0x72, 0x4f, 0x55, 0x61, 2601 0x25, 0xcd, 0x7f, 0x45, 0x9f, 0xdf, 0x64, 0x61, 0xad, 0x15, 0x7f, 0x37, 0x3e, 0x25, 0x91, 0xd9, 2602 0x35, 0x23, 0x13, 0x35, 0x60, 0x21, 0xa4, 0x5e, 0x17, 0x4f, 0x24, 0xd3, 0xbe, 0x6b, 0x5d, 0x22, 2603 0x60, 0x07, 0x09, 0xc1, 0x9c, 0x04, 0x7d, 0x08, 0x05, 0x2b, 0x20, 0x66, 0x44, 0x8c, 0xc8, 0x1e, 2604 0xf0, 0x07, 0xab, 0xc2, 0xc1, 0x76, 0xcc, 0x19, 0x7f, 0x9c, 0x2e, 0xeb, 0xf1, 0xc7, 0x69, 0x0c, 2605 0xbc, 0x3b, 0x15, 0x50, 0xf0, 0xd0, 0xef, 0x26, 0xe0, 0xc5, 0xe9, 0x60, 0xde, 0x9d, 0x0a, 0xd4, 2606 0x1f, 0xc3, 0x02, 0x1b, 0x09, 0xda, 0x84, 0xb5, 0x8e, 0x5e, 0xd1, 0x27, 0x3f, 0x08, 0x17, 0x60, 2607 0xa9, 0x8a, 0xb5, 0x8a, 0xae, 0xd5, 0x94, 0x0c, 0x6d, 0xe0, 0xb3, 0x66, 0xb3, 0xde, 0x3c, 0x56, 2608 0xb2, 0x28, 0x07, 0xf3, 0xb5, 0x56, 0x53, 0x53, 0xe6, 0xd0, 0x32, 0xe4, 0xab, 0x95, 0x66, 0x55, 2609 0x6b, 0x34, 0xb4, 0x9a, 0x32, 0x7f, 0x97, 0x00, 0x48, 0x9f, 0x33, 0x0a, 0xb0, 0x24, 0x9e, 0xf1, 2610 0x95, 0x37, 0xd0, 0x1a, 0x2c, 0x3f, 0xd2, 0xf0, 0x13, 0xe3, 0xac, 0xd9, 0xa8, 0x3f, 0xd4, 0x1a, 2611 0x4f, 0x94, 0x0c, 0x2a, 0x42, 0x2e, 0x69, 0x65, 0x69, 0xab, 0xdd, 0xea, 0x74, 0xea, 0x87, 0x0d, 2612 0x4a, 0x0c, 0xb0, 0x28, 0x34, 0xf3, 0x68, 0x15, 0x0a, 0x0c, 0x2a, 0x04, 0x0b, 0x07, 0xff, 0xc8, 2613 0xc2, 0x8a, 0x7c, 0x9c, 0x7a, 0x01, 0xfa, 0x6d, 0x06, 0xd6, 0xaf, 0x38, 0x13, 0xd0, 0x0f, 0xa6, 2614 0x5d, 0xcf, 0x5f, 0x7a, 0x6c, 0x6d, 0x3f, 0x78, 0x1d, 0x28, 0xdf, 0x7a, 0xea, 0x3b, 0x5f, 0xfd, 2615 0xe9, 0x6f, 0x3f, 0xcf, 0xde, 0x51, 0xb7, 0x27, 0xff, 0xfd, 0x22, 0x7c, 0x20, 0xca, 0x21, 0xf2, 2616 0x20, 0x73, 0x17, 0xfd, 0x2a, 0x03, 0x37, 0x5e, 0x92, 0x1c, 0xd0, 0x47, 0xd7, 0xc9, 0x00, 0x2f, 2617 0xcd, 0x65, 0xdb, 0x3b, 0x31, 0x5c, 0xfa, 0x27, 0x88, 0x71, 0x2c, 0xaa, 0x65, 0x36, 0xc0, 0x3d, 2618 0xf5, 0x6d, 0x69, 0x80, 0x3d, 0x8a, 0x7f, 0x60, 0x5e, 0xe2, 0x7d, 0x90, 0xb9, 0x7b, 0xf8, 0x55, 2619 0x06, 0xde, 0xb2, 0xbc, 0xc1, 0xab, 0xc7, 0x74, 0xb8, 0x9e, 0x5e, 0x95, 0x36, 0x0d, 0xc0, 0x76, 2620 0xe6, 0x69, 0x55, 0xa0, 0xfa, 0x1e, 0xbd, 0x4a, 0x97, 0xbd, 0xa0, 0xbf, 0xdf, 0x27, 0x2e, 0x0b, 2621 0xcf, 0x7d, 0xae, 0x32, 0x7d, 0x3b, 0x7c, 0xc9, 0x7f, 0x78, 0x7c, 0xc8, 0x05, 0xff, 0xca, 0x64, 2622 0xce, 0x17, 0x19, 0xe4, 0xfe, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xa5, 0xcd, 0x74, 0xeb, 0xe8, 2623 0x22, 0x00, 0x00, 2624} 2625 2626// Reference imports to suppress errors if they are not otherwise used. 2627var _ context.Context 2628var _ grpc.ClientConn 2629 2630// This is a compile-time assertion to ensure that this generated file 2631// is compatible with the grpc package it is being compiled against. 2632const _ = grpc.SupportPackageIsVersion4 2633 2634// ImageAnnotatorClient is the client API for ImageAnnotator service. 2635// 2636// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2637type ImageAnnotatorClient interface { 2638 // Run image detection and annotation for a batch of images. 2639 BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error) 2640 // Run async image detection and annotation for a list of generic files (e.g. 2641 // PDF) which may contain multiple pages and multiple images per page. 2642 // Progress and results can be retrieved through the 2643 // `google.longrunning.Operations` interface. 2644 // `Operation.metadata` contains `OperationMetadata` (metadata). 2645 // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). 2646 AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) 2647} 2648 2649type imageAnnotatorClient struct { 2650 cc *grpc.ClientConn 2651} 2652 2653func NewImageAnnotatorClient(cc *grpc.ClientConn) ImageAnnotatorClient { 2654 return &imageAnnotatorClient{cc} 2655} 2656 2657func (c *imageAnnotatorClient) BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error) { 2658 out := new(BatchAnnotateImagesResponse) 2659 err := c.cc.Invoke(ctx, "/google.cloud.vision.v1p2beta1.ImageAnnotator/BatchAnnotateImages", in, out, opts...) 2660 if err != nil { 2661 return nil, err 2662 } 2663 return out, nil 2664} 2665 2666func (c *imageAnnotatorClient) AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) { 2667 out := new(longrunning.Operation) 2668 err := c.cc.Invoke(ctx, "/google.cloud.vision.v1p2beta1.ImageAnnotator/AsyncBatchAnnotateFiles", in, out, opts...) 2669 if err != nil { 2670 return nil, err 2671 } 2672 return out, nil 2673} 2674 2675// ImageAnnotatorServer is the server API for ImageAnnotator service. 2676type ImageAnnotatorServer interface { 2677 // Run image detection and annotation for a batch of images. 2678 BatchAnnotateImages(context.Context, *BatchAnnotateImagesRequest) (*BatchAnnotateImagesResponse, error) 2679 // Run async image detection and annotation for a list of generic files (e.g. 2680 // PDF) which may contain multiple pages and multiple images per page. 2681 // Progress and results can be retrieved through the 2682 // `google.longrunning.Operations` interface. 2683 // `Operation.metadata` contains `OperationMetadata` (metadata). 2684 // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). 2685 AsyncBatchAnnotateFiles(context.Context, *AsyncBatchAnnotateFilesRequest) (*longrunning.Operation, error) 2686} 2687 2688// UnimplementedImageAnnotatorServer can be embedded to have forward compatible implementations. 2689type UnimplementedImageAnnotatorServer struct { 2690} 2691 2692func (*UnimplementedImageAnnotatorServer) BatchAnnotateImages(ctx context.Context, req *BatchAnnotateImagesRequest) (*BatchAnnotateImagesResponse, error) { 2693 return nil, status1.Errorf(codes.Unimplemented, "method BatchAnnotateImages not implemented") 2694} 2695func (*UnimplementedImageAnnotatorServer) AsyncBatchAnnotateFiles(ctx context.Context, req *AsyncBatchAnnotateFilesRequest) (*longrunning.Operation, error) { 2696 return nil, status1.Errorf(codes.Unimplemented, "method AsyncBatchAnnotateFiles not implemented") 2697} 2698 2699func RegisterImageAnnotatorServer(s *grpc.Server, srv ImageAnnotatorServer) { 2700 s.RegisterService(&_ImageAnnotator_serviceDesc, srv) 2701} 2702 2703func _ImageAnnotator_BatchAnnotateImages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2704 in := new(BatchAnnotateImagesRequest) 2705 if err := dec(in); err != nil { 2706 return nil, err 2707 } 2708 if interceptor == nil { 2709 return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, in) 2710 } 2711 info := &grpc.UnaryServerInfo{ 2712 Server: srv, 2713 FullMethod: "/google.cloud.vision.v1p2beta1.ImageAnnotator/BatchAnnotateImages", 2714 } 2715 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2716 return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, req.(*BatchAnnotateImagesRequest)) 2717 } 2718 return interceptor(ctx, in, info, handler) 2719} 2720 2721func _ImageAnnotator_AsyncBatchAnnotateFiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2722 in := new(AsyncBatchAnnotateFilesRequest) 2723 if err := dec(in); err != nil { 2724 return nil, err 2725 } 2726 if interceptor == nil { 2727 return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, in) 2728 } 2729 info := &grpc.UnaryServerInfo{ 2730 Server: srv, 2731 FullMethod: "/google.cloud.vision.v1p2beta1.ImageAnnotator/AsyncBatchAnnotateFiles", 2732 } 2733 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2734 return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, req.(*AsyncBatchAnnotateFilesRequest)) 2735 } 2736 return interceptor(ctx, in, info, handler) 2737} 2738 2739var _ImageAnnotator_serviceDesc = grpc.ServiceDesc{ 2740 ServiceName: "google.cloud.vision.v1p2beta1.ImageAnnotator", 2741 HandlerType: (*ImageAnnotatorServer)(nil), 2742 Methods: []grpc.MethodDesc{ 2743 { 2744 MethodName: "BatchAnnotateImages", 2745 Handler: _ImageAnnotator_BatchAnnotateImages_Handler, 2746 }, 2747 { 2748 MethodName: "AsyncBatchAnnotateFiles", 2749 Handler: _ImageAnnotator_AsyncBatchAnnotateFiles_Handler, 2750 }, 2751 }, 2752 Streams: []grpc.StreamDesc{}, 2753 Metadata: "google/cloud/vision/v1p2beta1/image_annotator.proto", 2754} 2755