You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
206 lines
7.0 KiB
206 lines
7.0 KiB
// Copyright 2019 Google LLC.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
syntax = "proto3";
|
|
|
|
package google.streetview.publish.v1;
|
|
|
|
import "google/api/annotations.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
import "google/type/latlng.proto";
|
|
|
|
option go_package = "google.golang.org/genproto/googleapis/streetview/publish/v1;publish";
|
|
option java_outer_classname = "StreetViewPublishResources";
|
|
option java_package = "com.google.geo.ugc.streetview.publish.v1";
|
|
|
|
// Upload reference for media files.
|
|
message UploadRef {
|
|
// Required. An upload reference should be unique for each user. It follows
|
|
// the form:
|
|
// "https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}"
|
|
string upload_url = 1;
|
|
}
|
|
|
|
// Identifier for a [Photo][google.streetview.publish.v1.Photo].
|
|
message PhotoId {
|
|
// Required. A unique identifier for a photo.
|
|
string id = 1;
|
|
}
|
|
|
|
// Level information containing level number and its corresponding name.
|
|
message Level {
|
|
// Floor number, used for ordering. 0 indicates the ground level, 1 indicates
|
|
// the first level above ground level, -1 indicates the first level under
|
|
// ground level. Non-integer values are OK.
|
|
double number = 1;
|
|
|
|
// Required. A name assigned to this Level, restricted to 3 characters.
|
|
// Consider how the elevator buttons would be labeled for this level if there
|
|
// was an elevator.
|
|
string name = 2;
|
|
}
|
|
|
|
// Raw pose measurement for an entity.
|
|
message Pose {
|
|
// Latitude and longitude pair of the pose, as explained here:
|
|
// https://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng
|
|
// When creating a [Photo][google.streetview.publish.v1.Photo], if the
|
|
// latitude and longitude pair are not provided, the geolocation from the
|
|
// exif header is used. A latitude and longitude pair not provided in the
|
|
// photo or exif header causes the create photo process to fail.
|
|
google.type.LatLng lat_lng_pair = 1;
|
|
|
|
// Altitude of the pose in meters above WGS84 ellipsoid.
|
|
// NaN indicates an unmeasured quantity.
|
|
double altitude = 2;
|
|
|
|
// Compass heading, measured at the center of the photo in degrees clockwise
|
|
// from North. Value must be >=0 and <360.
|
|
// NaN indicates an unmeasured quantity.
|
|
double heading = 3;
|
|
|
|
// Pitch, measured at the center of the photo in degrees. Value must be >=-90
|
|
// and <= 90. A value of -90 means looking directly down, and a value of 90
|
|
// means looking directly up.
|
|
// NaN indicates an unmeasured quantity.
|
|
double pitch = 4;
|
|
|
|
// Roll, measured in degrees. Value must be >= 0 and <360. A value of 0
|
|
// means level with the horizon.
|
|
// NaN indicates an unmeasured quantity.
|
|
double roll = 5;
|
|
|
|
// Level (the floor in a building) used to configure vertical navigation.
|
|
Level level = 7;
|
|
|
|
// The estimated horizontal accuracy of this pose in meters with 68%
|
|
// confidence (one standard deviation). For example, on Android, this value is
|
|
// available from this method:
|
|
// https://developer.android.com/reference/android/location/Location#getAccuracy().
|
|
// Other platforms have different methods of obtaining similar accuracy
|
|
// estimations.
|
|
float accuracy_meters = 9;
|
|
}
|
|
|
|
// Place metadata for an entity.
|
|
message Place {
|
|
// Place identifier, as described in
|
|
// https://developers.google.com/places/place-id.
|
|
string place_id = 1;
|
|
|
|
// Output-only. The name of the place, localized to the language_code.
|
|
string name = 2;
|
|
|
|
// Output-only. The language_code that the name is localized with. This should
|
|
// be the language_code specified in the request, but may be a fallback.
|
|
string language_code = 3;
|
|
}
|
|
|
|
// A connection is the link from a source photo to a destination photo.
|
|
message Connection {
|
|
// Required. The destination of the connection from the containing photo to
|
|
// another photo.
|
|
PhotoId target = 1;
|
|
}
|
|
|
|
// Photo is used to store 360 photos along with photo metadata.
|
|
message Photo {
|
|
// Required when updating a photo. Output only when creating a photo.
|
|
// Identifier for the photo, which is unique among all photos in
|
|
// Google.
|
|
PhotoId photo_id = 1;
|
|
|
|
// Required when creating a photo. Input only. The resource URL where the
|
|
// photo bytes are uploaded to.
|
|
UploadRef upload_reference = 2;
|
|
|
|
// Output only. The download URL for the photo bytes. This field is set only
|
|
// when
|
|
// [GetPhotoRequest.view][google.streetview.publish.v1.GetPhotoRequest.view]
|
|
// is set to
|
|
// [PhotoView.INCLUDE_DOWNLOAD_URL][google.streetview.publish.v1.PhotoView.INCLUDE_DOWNLOAD_URL].
|
|
string download_url = 3;
|
|
|
|
// Output only. The thumbnail URL for showing a preview of the given photo.
|
|
string thumbnail_url = 9;
|
|
|
|
// Output only. The share link for the photo.
|
|
string share_link = 11;
|
|
|
|
// Pose of the photo.
|
|
Pose pose = 4;
|
|
|
|
// Connections to other photos. A connection represents the link from this
|
|
// photo to another photo.
|
|
repeated Connection connections = 5;
|
|
|
|
// Absolute time when the photo was captured.
|
|
// When the photo has no exif timestamp, this is used to set a timestamp in
|
|
// the photo metadata.
|
|
google.protobuf.Timestamp capture_time = 6;
|
|
|
|
// Places where this photo belongs.
|
|
repeated Place places = 7;
|
|
|
|
// Output only. View count of the photo.
|
|
int64 view_count = 10;
|
|
|
|
// Status of rights transfer.
|
|
enum TransferStatus {
|
|
// The status of this transfer is unspecified.
|
|
TRANSFER_STATUS_UNKNOWN = 0;
|
|
|
|
// This photo has never been in a transfer.
|
|
NEVER_TRANSFERRED = 1;
|
|
|
|
// This photo transfer has been initiated, but the receiver has not yet
|
|
// responded.
|
|
PENDING = 2;
|
|
|
|
// The photo transfer has been completed, and this photo has been
|
|
// transferred to the recipient.
|
|
COMPLETED = 3;
|
|
|
|
// The recipient rejected this photo transfer.
|
|
REJECTED = 4;
|
|
|
|
// The photo transfer expired before the recipient took any action.
|
|
EXPIRED = 5;
|
|
|
|
// The sender cancelled this photo transfer.
|
|
CANCELLED = 6;
|
|
|
|
// The recipient owns this photo due to a rights transfer.
|
|
RECEIVED_VIA_TRANSFER = 7;
|
|
}
|
|
|
|
// Output only. Status of rights transfer on this photo.
|
|
TransferStatus transfer_status = 12;
|
|
|
|
// Publication status of the photo in Google Maps.
|
|
enum MapsPublishStatus {
|
|
// The status of the photo is unknown.
|
|
UNSPECIFIED_MAPS_PUBLISH_STATUS = 0;
|
|
|
|
// The photo is published to the public through Google Maps.
|
|
PUBLISHED = 1;
|
|
|
|
// The photo has been rejected for an unknown reason.
|
|
REJECTED_UNKNOWN = 2;
|
|
}
|
|
|
|
// Output only. Status in Google Maps, whether this photo was published or
|
|
// rejected.
|
|
MapsPublishStatus maps_publish_status = 13;
|
|
}
|
|
|