...

Source file src/google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1/product_search.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1

     1  // Copyright 2022 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v3.12.2
    19  // source: google/cloud/vision/v1p3beta1/product_search.proto
    20  
    21  package vision
    22  
    23  import (
    24  	reflect "reflect"
    25  	sync "sync"
    26  
    27  	_ "google.golang.org/genproto/googleapis/api/annotations"
    28  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    29  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    30  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  // Parameters for a product search request.
    41  type ProductSearchParams struct {
    42  	state         protoimpl.MessageState
    43  	sizeCache     protoimpl.SizeCache
    44  	unknownFields protoimpl.UnknownFields
    45  
    46  	// The bounding polygon around the area of interest in the image.
    47  	// If it is not specified, system discretion will be applied.
    48  	BoundingPoly *BoundingPoly `protobuf:"bytes,9,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
    49  	// The resource name of a [ProductSet][google.cloud.vision.v1p3beta1.ProductSet] to be searched for similar images.
    50  	//
    51  	// Format is:
    52  	// `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
    53  	ProductSet string `protobuf:"bytes,6,opt,name=product_set,json=productSet,proto3" json:"product_set,omitempty"`
    54  	// The list of product categories to search in. Currently, we only consider
    55  	// the first category, and either "homegoods-v2", "apparel-v2", "toys-v2",
    56  	// "packagedgoods-v1", or "general-v1" should be specified. The legacy
    57  	// categories "homegoods", "apparel", and "toys" are still supported but will
    58  	// be deprecated. For new products, please use "homegoods-v2", "apparel-v2",
    59  	// or "toys-v2" for better product search accuracy. It is recommended to
    60  	// migrate existing products to these categories as well.
    61  	ProductCategories []string `protobuf:"bytes,7,rep,name=product_categories,json=productCategories,proto3" json:"product_categories,omitempty"`
    62  	// The filtering expression. This can be used to restrict search results based
    63  	// on Product labels. We currently support an AND of OR of key-value
    64  	// expressions, where each expression within an OR must have the same key. An
    65  	// '=' should be used to connect the key and value.
    66  	//
    67  	// For example, "(color = red OR color = blue) AND brand = Google" is
    68  	// acceptable, but "(color = red OR brand = Google)" is not acceptable.
    69  	// "color: red" is not acceptable because it uses a ':' instead of an '='.
    70  	Filter string `protobuf:"bytes,8,opt,name=filter,proto3" json:"filter,omitempty"`
    71  }
    72  
    73  func (x *ProductSearchParams) Reset() {
    74  	*x = ProductSearchParams{}
    75  	if protoimpl.UnsafeEnabled {
    76  		mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[0]
    77  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    78  		ms.StoreMessageInfo(mi)
    79  	}
    80  }
    81  
    82  func (x *ProductSearchParams) String() string {
    83  	return protoimpl.X.MessageStringOf(x)
    84  }
    85  
    86  func (*ProductSearchParams) ProtoMessage() {}
    87  
    88  func (x *ProductSearchParams) ProtoReflect() protoreflect.Message {
    89  	mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[0]
    90  	if protoimpl.UnsafeEnabled && x != nil {
    91  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    92  		if ms.LoadMessageInfo() == nil {
    93  			ms.StoreMessageInfo(mi)
    94  		}
    95  		return ms
    96  	}
    97  	return mi.MessageOf(x)
    98  }
    99  
   100  // Deprecated: Use ProductSearchParams.ProtoReflect.Descriptor instead.
   101  func (*ProductSearchParams) Descriptor() ([]byte, []int) {
   102  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP(), []int{0}
   103  }
   104  
   105  func (x *ProductSearchParams) GetBoundingPoly() *BoundingPoly {
   106  	if x != nil {
   107  		return x.BoundingPoly
   108  	}
   109  	return nil
   110  }
   111  
   112  func (x *ProductSearchParams) GetProductSet() string {
   113  	if x != nil {
   114  		return x.ProductSet
   115  	}
   116  	return ""
   117  }
   118  
   119  func (x *ProductSearchParams) GetProductCategories() []string {
   120  	if x != nil {
   121  		return x.ProductCategories
   122  	}
   123  	return nil
   124  }
   125  
   126  func (x *ProductSearchParams) GetFilter() string {
   127  	if x != nil {
   128  		return x.Filter
   129  	}
   130  	return ""
   131  }
   132  
   133  // Results for a product search request.
   134  type ProductSearchResults struct {
   135  	state         protoimpl.MessageState
   136  	sizeCache     protoimpl.SizeCache
   137  	unknownFields protoimpl.UnknownFields
   138  
   139  	// Timestamp of the index which provided these results. Products added to the
   140  	// product set and products removed from the product set after this time are
   141  	// not reflected in the current results.
   142  	IndexTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=index_time,json=indexTime,proto3" json:"index_time,omitempty"`
   143  	// List of results, one for each product match.
   144  	Results []*ProductSearchResults_Result `protobuf:"bytes,5,rep,name=results,proto3" json:"results,omitempty"`
   145  	// List of results grouped by products detected in the query image. Each entry
   146  	// corresponds to one bounding polygon in the query image, and contains the
   147  	// matching products specific to that region. There may be duplicate product
   148  	// matches in the union of all the per-product results.
   149  	ProductGroupedResults []*ProductSearchResults_GroupedResult `protobuf:"bytes,6,rep,name=product_grouped_results,json=productGroupedResults,proto3" json:"product_grouped_results,omitempty"`
   150  }
   151  
   152  func (x *ProductSearchResults) Reset() {
   153  	*x = ProductSearchResults{}
   154  	if protoimpl.UnsafeEnabled {
   155  		mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[1]
   156  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   157  		ms.StoreMessageInfo(mi)
   158  	}
   159  }
   160  
   161  func (x *ProductSearchResults) String() string {
   162  	return protoimpl.X.MessageStringOf(x)
   163  }
   164  
   165  func (*ProductSearchResults) ProtoMessage() {}
   166  
   167  func (x *ProductSearchResults) ProtoReflect() protoreflect.Message {
   168  	mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[1]
   169  	if protoimpl.UnsafeEnabled && x != nil {
   170  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   171  		if ms.LoadMessageInfo() == nil {
   172  			ms.StoreMessageInfo(mi)
   173  		}
   174  		return ms
   175  	}
   176  	return mi.MessageOf(x)
   177  }
   178  
   179  // Deprecated: Use ProductSearchResults.ProtoReflect.Descriptor instead.
   180  func (*ProductSearchResults) Descriptor() ([]byte, []int) {
   181  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP(), []int{1}
   182  }
   183  
   184  func (x *ProductSearchResults) GetIndexTime() *timestamppb.Timestamp {
   185  	if x != nil {
   186  		return x.IndexTime
   187  	}
   188  	return nil
   189  }
   190  
   191  func (x *ProductSearchResults) GetResults() []*ProductSearchResults_Result {
   192  	if x != nil {
   193  		return x.Results
   194  	}
   195  	return nil
   196  }
   197  
   198  func (x *ProductSearchResults) GetProductGroupedResults() []*ProductSearchResults_GroupedResult {
   199  	if x != nil {
   200  		return x.ProductGroupedResults
   201  	}
   202  	return nil
   203  }
   204  
   205  // Information about a product.
   206  type ProductSearchResults_Result struct {
   207  	state         protoimpl.MessageState
   208  	sizeCache     protoimpl.SizeCache
   209  	unknownFields protoimpl.UnknownFields
   210  
   211  	// The Product.
   212  	Product *Product `protobuf:"bytes,1,opt,name=product,proto3" json:"product,omitempty"`
   213  	// A confidence level on the match, ranging from 0 (no confidence) to
   214  	// 1 (full confidence).
   215  	Score float32 `protobuf:"fixed32,2,opt,name=score,proto3" json:"score,omitempty"`
   216  	// The resource name of the image from the product that is the closest match
   217  	// to the query.
   218  	Image string `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"`
   219  }
   220  
   221  func (x *ProductSearchResults_Result) Reset() {
   222  	*x = ProductSearchResults_Result{}
   223  	if protoimpl.UnsafeEnabled {
   224  		mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[2]
   225  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   226  		ms.StoreMessageInfo(mi)
   227  	}
   228  }
   229  
   230  func (x *ProductSearchResults_Result) String() string {
   231  	return protoimpl.X.MessageStringOf(x)
   232  }
   233  
   234  func (*ProductSearchResults_Result) ProtoMessage() {}
   235  
   236  func (x *ProductSearchResults_Result) ProtoReflect() protoreflect.Message {
   237  	mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[2]
   238  	if protoimpl.UnsafeEnabled && x != nil {
   239  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   240  		if ms.LoadMessageInfo() == nil {
   241  			ms.StoreMessageInfo(mi)
   242  		}
   243  		return ms
   244  	}
   245  	return mi.MessageOf(x)
   246  }
   247  
   248  // Deprecated: Use ProductSearchResults_Result.ProtoReflect.Descriptor instead.
   249  func (*ProductSearchResults_Result) Descriptor() ([]byte, []int) {
   250  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP(), []int{1, 0}
   251  }
   252  
   253  func (x *ProductSearchResults_Result) GetProduct() *Product {
   254  	if x != nil {
   255  		return x.Product
   256  	}
   257  	return nil
   258  }
   259  
   260  func (x *ProductSearchResults_Result) GetScore() float32 {
   261  	if x != nil {
   262  		return x.Score
   263  	}
   264  	return 0
   265  }
   266  
   267  func (x *ProductSearchResults_Result) GetImage() string {
   268  	if x != nil {
   269  		return x.Image
   270  	}
   271  	return ""
   272  }
   273  
   274  // Prediction for what the object in the bounding box is.
   275  type ProductSearchResults_ObjectAnnotation struct {
   276  	state         protoimpl.MessageState
   277  	sizeCache     protoimpl.SizeCache
   278  	unknownFields protoimpl.UnknownFields
   279  
   280  	// Object ID that should align with EntityAnnotation mid.
   281  	Mid string `protobuf:"bytes,1,opt,name=mid,proto3" json:"mid,omitempty"`
   282  	// The BCP-47 language code, such as "en-US" or "sr-Latn". For more
   283  	// information, see
   284  	// http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
   285  	LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
   286  	// Object name, expressed in its `language_code` language.
   287  	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
   288  	// Score of the result. Range [0, 1].
   289  	Score float32 `protobuf:"fixed32,4,opt,name=score,proto3" json:"score,omitempty"`
   290  }
   291  
   292  func (x *ProductSearchResults_ObjectAnnotation) Reset() {
   293  	*x = ProductSearchResults_ObjectAnnotation{}
   294  	if protoimpl.UnsafeEnabled {
   295  		mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[3]
   296  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   297  		ms.StoreMessageInfo(mi)
   298  	}
   299  }
   300  
   301  func (x *ProductSearchResults_ObjectAnnotation) String() string {
   302  	return protoimpl.X.MessageStringOf(x)
   303  }
   304  
   305  func (*ProductSearchResults_ObjectAnnotation) ProtoMessage() {}
   306  
   307  func (x *ProductSearchResults_ObjectAnnotation) ProtoReflect() protoreflect.Message {
   308  	mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[3]
   309  	if protoimpl.UnsafeEnabled && x != nil {
   310  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   311  		if ms.LoadMessageInfo() == nil {
   312  			ms.StoreMessageInfo(mi)
   313  		}
   314  		return ms
   315  	}
   316  	return mi.MessageOf(x)
   317  }
   318  
   319  // Deprecated: Use ProductSearchResults_ObjectAnnotation.ProtoReflect.Descriptor instead.
   320  func (*ProductSearchResults_ObjectAnnotation) Descriptor() ([]byte, []int) {
   321  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP(), []int{1, 1}
   322  }
   323  
   324  func (x *ProductSearchResults_ObjectAnnotation) GetMid() string {
   325  	if x != nil {
   326  		return x.Mid
   327  	}
   328  	return ""
   329  }
   330  
   331  func (x *ProductSearchResults_ObjectAnnotation) GetLanguageCode() string {
   332  	if x != nil {
   333  		return x.LanguageCode
   334  	}
   335  	return ""
   336  }
   337  
   338  func (x *ProductSearchResults_ObjectAnnotation) GetName() string {
   339  	if x != nil {
   340  		return x.Name
   341  	}
   342  	return ""
   343  }
   344  
   345  func (x *ProductSearchResults_ObjectAnnotation) GetScore() float32 {
   346  	if x != nil {
   347  		return x.Score
   348  	}
   349  	return 0
   350  }
   351  
   352  // Information about the products similar to a single product in a query
   353  // image.
   354  type ProductSearchResults_GroupedResult struct {
   355  	state         protoimpl.MessageState
   356  	sizeCache     protoimpl.SizeCache
   357  	unknownFields protoimpl.UnknownFields
   358  
   359  	// The bounding polygon around the product detected in the query image.
   360  	BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
   361  	// List of results, one for each product match.
   362  	Results []*ProductSearchResults_Result `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"`
   363  	// List of generic predictions for the object in the bounding box.
   364  	ObjectAnnotations []*ProductSearchResults_ObjectAnnotation `protobuf:"bytes,3,rep,name=object_annotations,json=objectAnnotations,proto3" json:"object_annotations,omitempty"`
   365  }
   366  
   367  func (x *ProductSearchResults_GroupedResult) Reset() {
   368  	*x = ProductSearchResults_GroupedResult{}
   369  	if protoimpl.UnsafeEnabled {
   370  		mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[4]
   371  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   372  		ms.StoreMessageInfo(mi)
   373  	}
   374  }
   375  
   376  func (x *ProductSearchResults_GroupedResult) String() string {
   377  	return protoimpl.X.MessageStringOf(x)
   378  }
   379  
   380  func (*ProductSearchResults_GroupedResult) ProtoMessage() {}
   381  
   382  func (x *ProductSearchResults_GroupedResult) ProtoReflect() protoreflect.Message {
   383  	mi := &file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[4]
   384  	if protoimpl.UnsafeEnabled && x != nil {
   385  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   386  		if ms.LoadMessageInfo() == nil {
   387  			ms.StoreMessageInfo(mi)
   388  		}
   389  		return ms
   390  	}
   391  	return mi.MessageOf(x)
   392  }
   393  
   394  // Deprecated: Use ProductSearchResults_GroupedResult.ProtoReflect.Descriptor instead.
   395  func (*ProductSearchResults_GroupedResult) Descriptor() ([]byte, []int) {
   396  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP(), []int{1, 2}
   397  }
   398  
   399  func (x *ProductSearchResults_GroupedResult) GetBoundingPoly() *BoundingPoly {
   400  	if x != nil {
   401  		return x.BoundingPoly
   402  	}
   403  	return nil
   404  }
   405  
   406  func (x *ProductSearchResults_GroupedResult) GetResults() []*ProductSearchResults_Result {
   407  	if x != nil {
   408  		return x.Results
   409  	}
   410  	return nil
   411  }
   412  
   413  func (x *ProductSearchResults_GroupedResult) GetObjectAnnotations() []*ProductSearchResults_ObjectAnnotation {
   414  	if x != nil {
   415  		return x.ObjectAnnotations
   416  	}
   417  	return nil
   418  }
   419  
   420  var File_google_cloud_vision_v1p3beta1_product_search_proto protoreflect.FileDescriptor
   421  
   422  var file_google_cloud_vision_v1p3beta1_product_search_proto_rawDesc = []byte{
   423  	0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76,
   424  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
   425  	0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x70,
   426  	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
   427  	0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65,
   428  	0x74, 0x61, 0x31, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
   429  	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c,
   430  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73,
   431  	0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x65,
   432  	0x6f, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3a, 0x67, 0x6f,
   433  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73, 0x69, 0x6f,
   434  	0x6e, 0x2f, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x64,
   435  	0x75, 0x63, 0x74, 0x5f, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69,
   436  	0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   437  	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
   438  	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf6, 0x01, 0x0a, 0x13, 0x50, 0x72,
   439  	0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x61, 0x72, 0x61, 0x6d,
   440  	0x73, 0x12, 0x50, 0x0a, 0x0d, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f,
   441  	0x6c, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   442  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76,
   443  	0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e,
   444  	0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52, 0x0c, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50,
   445  	0x6f, 0x6c, 0x79, 0x12, 0x46, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x73,
   446  	0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x76,
   447  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
   448  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x65, 0x74, 0x52,
   449  	0x0a, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x70,
   450  	0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65,
   451  	0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74,
   452  	0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69,
   453  	0x6c, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74,
   454  	0x65, 0x72, 0x22, 0xbe, 0x06, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x65,
   455  	0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x69,
   456  	0x6e, 0x64, 0x65, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
   457  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   458  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x69, 0x6e, 0x64,
   459  	0x65, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
   460  	0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   461  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
   462  	0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53,
   463  	0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x52, 0x65, 0x73,
   464  	0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x79, 0x0a, 0x17,
   465  	0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64, 0x5f,
   466  	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e,
   467  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
   468  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72,
   469  	0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c,
   470  	0x74, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
   471  	0x52, 0x15, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64,
   472  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x76, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c,
   473  	0x74, 0x12, 0x40, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
   474  	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
   475  	0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74,
   476  	0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x64,
   477  	0x75, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01,
   478  	0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61,
   479  	0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x1a,
   480  	0x73, 0x0a, 0x10, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
   481  	0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
   482  	0x52, 0x03, 0x6d, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
   483  	0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61,
   484  	0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
   485  	0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14,
   486  	0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73,
   487  	0x63, 0x6f, 0x72, 0x65, 0x1a, 0xac, 0x02, 0x0a, 0x0d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64,
   488  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x50, 0x0a, 0x0d, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x69,
   489  	0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
   490  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73,
   491  	0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x6f,
   492  	0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x52, 0x0c, 0x62, 0x6f, 0x75, 0x6e,
   493  	0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x79, 0x12, 0x54, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75,
   494  	0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
   495  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
   496  	0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63,
   497  	0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e, 0x52,
   498  	0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x73,
   499  	0x0a, 0x12, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
   500  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f,
   501  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
   502  	0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75,
   503  	0x63, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x2e,
   504  	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   505  	0x52, 0x11, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
   506  	0x6f, 0x6e, 0x73, 0x42, 0x88, 0x01, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
   507  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
   508  	0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x12, 0x50, 0x72, 0x6f, 0x64, 0x75,
   509  	0x63, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
   510  	0x43, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f,
   511  	0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67,
   512  	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x76, 0x69, 0x73,
   513  	0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x76, 0x69,
   514  	0x73, 0x69, 0x6f, 0x6e, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x04, 0x47, 0x43, 0x56, 0x4e, 0x62, 0x06,
   515  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   516  }
   517  
   518  var (
   519  	file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescOnce sync.Once
   520  	file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescData = file_google_cloud_vision_v1p3beta1_product_search_proto_rawDesc
   521  )
   522  
   523  func file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescGZIP() []byte {
   524  	file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescOnce.Do(func() {
   525  		file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescData)
   526  	})
   527  	return file_google_cloud_vision_v1p3beta1_product_search_proto_rawDescData
   528  }
   529  
   530  var file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
   531  var file_google_cloud_vision_v1p3beta1_product_search_proto_goTypes = []interface{}{
   532  	(*ProductSearchParams)(nil),                   // 0: google.cloud.vision.v1p3beta1.ProductSearchParams
   533  	(*ProductSearchResults)(nil),                  // 1: google.cloud.vision.v1p3beta1.ProductSearchResults
   534  	(*ProductSearchResults_Result)(nil),           // 2: google.cloud.vision.v1p3beta1.ProductSearchResults.Result
   535  	(*ProductSearchResults_ObjectAnnotation)(nil), // 3: google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation
   536  	(*ProductSearchResults_GroupedResult)(nil),    // 4: google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult
   537  	(*BoundingPoly)(nil),                          // 5: google.cloud.vision.v1p3beta1.BoundingPoly
   538  	(*timestamppb.Timestamp)(nil),                 // 6: google.protobuf.Timestamp
   539  	(*Product)(nil),                               // 7: google.cloud.vision.v1p3beta1.Product
   540  }
   541  var file_google_cloud_vision_v1p3beta1_product_search_proto_depIdxs = []int32{
   542  	5, // 0: google.cloud.vision.v1p3beta1.ProductSearchParams.bounding_poly:type_name -> google.cloud.vision.v1p3beta1.BoundingPoly
   543  	6, // 1: google.cloud.vision.v1p3beta1.ProductSearchResults.index_time:type_name -> google.protobuf.Timestamp
   544  	2, // 2: google.cloud.vision.v1p3beta1.ProductSearchResults.results:type_name -> google.cloud.vision.v1p3beta1.ProductSearchResults.Result
   545  	4, // 3: google.cloud.vision.v1p3beta1.ProductSearchResults.product_grouped_results:type_name -> google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult
   546  	7, // 4: google.cloud.vision.v1p3beta1.ProductSearchResults.Result.product:type_name -> google.cloud.vision.v1p3beta1.Product
   547  	5, // 5: google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult.bounding_poly:type_name -> google.cloud.vision.v1p3beta1.BoundingPoly
   548  	2, // 6: google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult.results:type_name -> google.cloud.vision.v1p3beta1.ProductSearchResults.Result
   549  	3, // 7: google.cloud.vision.v1p3beta1.ProductSearchResults.GroupedResult.object_annotations:type_name -> google.cloud.vision.v1p3beta1.ProductSearchResults.ObjectAnnotation
   550  	8, // [8:8] is the sub-list for method output_type
   551  	8, // [8:8] is the sub-list for method input_type
   552  	8, // [8:8] is the sub-list for extension type_name
   553  	8, // [8:8] is the sub-list for extension extendee
   554  	0, // [0:8] is the sub-list for field type_name
   555  }
   556  
   557  func init() { file_google_cloud_vision_v1p3beta1_product_search_proto_init() }
   558  func file_google_cloud_vision_v1p3beta1_product_search_proto_init() {
   559  	if File_google_cloud_vision_v1p3beta1_product_search_proto != nil {
   560  		return
   561  	}
   562  	file_google_cloud_vision_v1p3beta1_geometry_proto_init()
   563  	file_google_cloud_vision_v1p3beta1_product_search_service_proto_init()
   564  	if !protoimpl.UnsafeEnabled {
   565  		file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   566  			switch v := v.(*ProductSearchParams); i {
   567  			case 0:
   568  				return &v.state
   569  			case 1:
   570  				return &v.sizeCache
   571  			case 2:
   572  				return &v.unknownFields
   573  			default:
   574  				return nil
   575  			}
   576  		}
   577  		file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   578  			switch v := v.(*ProductSearchResults); i {
   579  			case 0:
   580  				return &v.state
   581  			case 1:
   582  				return &v.sizeCache
   583  			case 2:
   584  				return &v.unknownFields
   585  			default:
   586  				return nil
   587  			}
   588  		}
   589  		file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   590  			switch v := v.(*ProductSearchResults_Result); i {
   591  			case 0:
   592  				return &v.state
   593  			case 1:
   594  				return &v.sizeCache
   595  			case 2:
   596  				return &v.unknownFields
   597  			default:
   598  				return nil
   599  			}
   600  		}
   601  		file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   602  			switch v := v.(*ProductSearchResults_ObjectAnnotation); i {
   603  			case 0:
   604  				return &v.state
   605  			case 1:
   606  				return &v.sizeCache
   607  			case 2:
   608  				return &v.unknownFields
   609  			default:
   610  				return nil
   611  			}
   612  		}
   613  		file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   614  			switch v := v.(*ProductSearchResults_GroupedResult); i {
   615  			case 0:
   616  				return &v.state
   617  			case 1:
   618  				return &v.sizeCache
   619  			case 2:
   620  				return &v.unknownFields
   621  			default:
   622  				return nil
   623  			}
   624  		}
   625  	}
   626  	type x struct{}
   627  	out := protoimpl.TypeBuilder{
   628  		File: protoimpl.DescBuilder{
   629  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   630  			RawDescriptor: file_google_cloud_vision_v1p3beta1_product_search_proto_rawDesc,
   631  			NumEnums:      0,
   632  			NumMessages:   5,
   633  			NumExtensions: 0,
   634  			NumServices:   0,
   635  		},
   636  		GoTypes:           file_google_cloud_vision_v1p3beta1_product_search_proto_goTypes,
   637  		DependencyIndexes: file_google_cloud_vision_v1p3beta1_product_search_proto_depIdxs,
   638  		MessageInfos:      file_google_cloud_vision_v1p3beta1_product_search_proto_msgTypes,
   639  	}.Build()
   640  	File_google_cloud_vision_v1p3beta1_product_search_proto = out.File
   641  	file_google_cloud_vision_v1p3beta1_product_search_proto_rawDesc = nil
   642  	file_google_cloud_vision_v1p3beta1_product_search_proto_goTypes = nil
   643  	file_google_cloud_vision_v1p3beta1_product_search_proto_depIdxs = nil
   644  }
   645  

View as plain text