#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UploadRef {
#[prost(oneof = "upload_ref::FileSource", tags = "1")]
pub file_source: ::core::option::Option<upload_ref::FileSource>,
}
pub mod upload_ref {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum FileSource {
#[prost(string, tag = "1")]
UploadUrl(::prost::alloc::string::String),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PhotoId {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Level {
#[prost(double, tag = "1")]
pub number: f64,
#[prost(string, tag = "2")]
pub name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Pose {
#[prost(message, optional, tag = "1")]
pub lat_lng_pair: ::core::option::Option<super::super::super::r#type::LatLng>,
#[prost(double, tag = "2")]
pub altitude: f64,
#[prost(double, tag = "3")]
pub heading: f64,
#[prost(double, tag = "4")]
pub pitch: f64,
#[prost(double, tag = "5")]
pub roll: f64,
#[prost(message, optional, tag = "6")]
pub gps_record_timestamp_unix_epoch: ::core::option::Option<
::prost_types::Timestamp,
>,
#[prost(message, optional, tag = "7")]
pub level: ::core::option::Option<Level>,
#[prost(float, tag = "9")]
pub accuracy_meters: f32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Imu {
#[prost(message, repeated, tag = "1")]
pub accel_mpsps: ::prost::alloc::vec::Vec<imu::Measurement3d>,
#[prost(message, repeated, tag = "2")]
pub gyro_rps: ::prost::alloc::vec::Vec<imu::Measurement3d>,
#[prost(message, repeated, tag = "3")]
pub mag_ut: ::prost::alloc::vec::Vec<imu::Measurement3d>,
}
pub mod imu {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Measurement3d {
#[prost(message, optional, tag = "1")]
pub capture_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(float, tag = "2")]
pub x: f32,
#[prost(float, tag = "3")]
pub y: f32,
#[prost(float, tag = "4")]
pub z: f32,
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Place {
#[prost(string, tag = "1")]
pub place_id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub language_code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Connection {
#[prost(message, optional, tag = "1")]
pub target: ::core::option::Option<PhotoId>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Photo {
#[prost(message, optional, tag = "1")]
pub photo_id: ::core::option::Option<PhotoId>,
#[prost(message, optional, tag = "2")]
pub upload_reference: ::core::option::Option<UploadRef>,
#[prost(string, tag = "3")]
pub download_url: ::prost::alloc::string::String,
#[prost(string, tag = "9")]
pub thumbnail_url: ::prost::alloc::string::String,
#[prost(string, tag = "11")]
pub share_link: ::prost::alloc::string::String,
#[prost(message, optional, tag = "4")]
pub pose: ::core::option::Option<Pose>,
#[prost(message, repeated, tag = "5")]
pub connections: ::prost::alloc::vec::Vec<Connection>,
#[prost(message, optional, tag = "6")]
pub capture_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "14")]
pub upload_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, repeated, tag = "7")]
pub places: ::prost::alloc::vec::Vec<Place>,
#[prost(int64, tag = "10")]
pub view_count: i64,
#[prost(enumeration = "photo::TransferStatus", tag = "12")]
pub transfer_status: i32,
#[prost(enumeration = "photo::MapsPublishStatus", tag = "13")]
pub maps_publish_status: i32,
}
pub mod photo {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum TransferStatus {
Unknown = 0,
NeverTransferred = 1,
Pending = 2,
Completed = 3,
Rejected = 4,
Expired = 5,
Cancelled = 6,
ReceivedViaTransfer = 7,
}
impl TransferStatus {
pub fn as_str_name(&self) -> &'static str {
match self {
TransferStatus::Unknown => "TRANSFER_STATUS_UNKNOWN",
TransferStatus::NeverTransferred => "NEVER_TRANSFERRED",
TransferStatus::Pending => "PENDING",
TransferStatus::Completed => "COMPLETED",
TransferStatus::Rejected => "REJECTED",
TransferStatus::Expired => "EXPIRED",
TransferStatus::Cancelled => "CANCELLED",
TransferStatus::ReceivedViaTransfer => "RECEIVED_VIA_TRANSFER",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TRANSFER_STATUS_UNKNOWN" => Some(Self::Unknown),
"NEVER_TRANSFERRED" => Some(Self::NeverTransferred),
"PENDING" => Some(Self::Pending),
"COMPLETED" => Some(Self::Completed),
"REJECTED" => Some(Self::Rejected),
"EXPIRED" => Some(Self::Expired),
"CANCELLED" => Some(Self::Cancelled),
"RECEIVED_VIA_TRANSFER" => Some(Self::ReceivedViaTransfer),
_ => None,
}
}
}
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum MapsPublishStatus {
UnspecifiedMapsPublishStatus = 0,
Published = 1,
RejectedUnknown = 2,
}
impl MapsPublishStatus {
pub fn as_str_name(&self) -> &'static str {
match self {
MapsPublishStatus::UnspecifiedMapsPublishStatus => {
"UNSPECIFIED_MAPS_PUBLISH_STATUS"
}
MapsPublishStatus::Published => "PUBLISHED",
MapsPublishStatus::RejectedUnknown => "REJECTED_UNKNOWN",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"UNSPECIFIED_MAPS_PUBLISH_STATUS" => {
Some(Self::UnspecifiedMapsPublishStatus)
}
"PUBLISHED" => Some(Self::Published),
"REJECTED_UNKNOWN" => Some(Self::RejectedUnknown),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PhotoSequence {
#[prost(string, tag = "1")]
pub id: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub photos: ::prost::alloc::vec::Vec<Photo>,
#[prost(message, optional, tag = "3")]
pub upload_reference: ::core::option::Option<UploadRef>,
#[prost(message, optional, tag = "4")]
pub capture_time_override: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "18")]
pub upload_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, repeated, tag = "7")]
pub raw_gps_timeline: ::prost::alloc::vec::Vec<Pose>,
#[prost(enumeration = "photo_sequence::GpsSource", tag = "8")]
pub gps_source: i32,
#[prost(message, optional, tag = "11")]
pub imu: ::core::option::Option<Imu>,
#[prost(enumeration = "ProcessingState", tag = "12")]
pub processing_state: i32,
#[prost(enumeration = "ProcessingFailureReason", tag = "13")]
pub failure_reason: i32,
#[prost(message, optional, tag = "23")]
pub failure_details: ::core::option::Option<ProcessingFailureDetails>,
#[prost(double, tag = "16")]
pub distance_meters: f64,
#[prost(message, optional, tag = "20")]
pub sequence_bounds: ::core::option::Option<LatLngBounds>,
#[prost(int64, tag = "21")]
pub view_count: i64,
#[prost(string, tag = "22")]
pub filename: ::prost::alloc::string::String,
}
pub mod photo_sequence {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum GpsSource {
PhotoSequence = 0,
CameraMotionMetadataTrack = 1,
}
impl GpsSource {
pub fn as_str_name(&self) -> &'static str {
match self {
GpsSource::PhotoSequence => "PHOTO_SEQUENCE",
GpsSource::CameraMotionMetadataTrack => "CAMERA_MOTION_METADATA_TRACK",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PHOTO_SEQUENCE" => Some(Self::PhotoSequence),
"CAMERA_MOTION_METADATA_TRACK" => Some(Self::CameraMotionMetadataTrack),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LatLngBounds {
#[prost(message, optional, tag = "1")]
pub southwest: ::core::option::Option<super::super::super::r#type::LatLng>,
#[prost(message, optional, tag = "2")]
pub northeast: ::core::option::Option<super::super::super::r#type::LatLng>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ProcessingFailureDetails {
#[prost(oneof = "processing_failure_details::Details", tags = "1, 2, 3, 4")]
pub details: ::core::option::Option<processing_failure_details::Details>,
}
pub mod processing_failure_details {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Details {
#[prost(message, tag = "1")]
InsufficientGpsDetails(super::InsufficientGpsFailureDetails),
#[prost(message, tag = "2")]
GpsDataGapDetails(super::GpsDataGapFailureDetails),
#[prost(message, tag = "3")]
ImuDataGapDetails(super::ImuDataGapFailureDetails),
#[prost(message, tag = "4")]
NotOutdoorsDetails(super::NotOutdoorsFailureDetails),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct InsufficientGpsFailureDetails {
#[prost(int32, optional, tag = "1")]
pub gps_points_found: ::core::option::Option<i32>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GpsDataGapFailureDetails {
#[prost(message, optional, tag = "1")]
pub gap_duration: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag = "2")]
pub gap_start_time: ::core::option::Option<::prost_types::Duration>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ImuDataGapFailureDetails {
#[prost(message, optional, tag = "1")]
pub gap_duration: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag = "2")]
pub gap_start_time: ::core::option::Option<::prost_types::Duration>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NotOutdoorsFailureDetails {
#[prost(message, optional, tag = "1")]
pub start_time: ::core::option::Option<::prost_types::Duration>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ProcessingState {
Unspecified = 0,
Pending = 1,
Processing = 2,
Processed = 3,
Failed = 4,
}
impl ProcessingState {
pub fn as_str_name(&self) -> &'static str {
match self {
ProcessingState::Unspecified => "PROCESSING_STATE_UNSPECIFIED",
ProcessingState::Pending => "PENDING",
ProcessingState::Processing => "PROCESSING",
ProcessingState::Processed => "PROCESSED",
ProcessingState::Failed => "FAILED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PROCESSING_STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"PROCESSING" => Some(Self::Processing),
"PROCESSED" => Some(Self::Processed),
"FAILED" => Some(Self::Failed),
_ => None,
}
}
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ProcessingFailureReason {
Unspecified = 0,
LowResolution = 1,
Duplicate = 2,
InsufficientGps = 3,
NoOverlapGps = 4,
InvalidGps = 5,
FailedToRefinePositions = 6,
Takedown = 7,
CorruptVideo = 8,
Internal = 9,
InvalidVideoFormat = 10,
InvalidVideoDimensions = 11,
InvalidCaptureTime = 12,
GpsDataGap = 13,
JumpyGps = 14,
InvalidImu = 15,
InsufficientImu = 21,
InsufficientOverlapTimeSeries = 22,
ImuDataGap = 16,
UnsupportedCamera = 17,
NotOutdoors = 18,
InsufficientVideoFrames = 19,
}
impl ProcessingFailureReason {
pub fn as_str_name(&self) -> &'static str {
match self {
ProcessingFailureReason::Unspecified => {
"PROCESSING_FAILURE_REASON_UNSPECIFIED"
}
ProcessingFailureReason::LowResolution => "LOW_RESOLUTION",
ProcessingFailureReason::Duplicate => "DUPLICATE",
ProcessingFailureReason::InsufficientGps => "INSUFFICIENT_GPS",
ProcessingFailureReason::NoOverlapGps => "NO_OVERLAP_GPS",
ProcessingFailureReason::InvalidGps => "INVALID_GPS",
ProcessingFailureReason::FailedToRefinePositions => {
"FAILED_TO_REFINE_POSITIONS"
}
ProcessingFailureReason::Takedown => "TAKEDOWN",
ProcessingFailureReason::CorruptVideo => "CORRUPT_VIDEO",
ProcessingFailureReason::Internal => "INTERNAL",
ProcessingFailureReason::InvalidVideoFormat => "INVALID_VIDEO_FORMAT",
ProcessingFailureReason::InvalidVideoDimensions => "INVALID_VIDEO_DIMENSIONS",
ProcessingFailureReason::InvalidCaptureTime => "INVALID_CAPTURE_TIME",
ProcessingFailureReason::GpsDataGap => "GPS_DATA_GAP",
ProcessingFailureReason::JumpyGps => "JUMPY_GPS",
ProcessingFailureReason::InvalidImu => "INVALID_IMU",
ProcessingFailureReason::InsufficientImu => "INSUFFICIENT_IMU",
ProcessingFailureReason::InsufficientOverlapTimeSeries => {
"INSUFFICIENT_OVERLAP_TIME_SERIES"
}
ProcessingFailureReason::ImuDataGap => "IMU_DATA_GAP",
ProcessingFailureReason::UnsupportedCamera => "UNSUPPORTED_CAMERA",
ProcessingFailureReason::NotOutdoors => "NOT_OUTDOORS",
ProcessingFailureReason::InsufficientVideoFrames => {
"INSUFFICIENT_VIDEO_FRAMES"
}
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PROCESSING_FAILURE_REASON_UNSPECIFIED" => Some(Self::Unspecified),
"LOW_RESOLUTION" => Some(Self::LowResolution),
"DUPLICATE" => Some(Self::Duplicate),
"INSUFFICIENT_GPS" => Some(Self::InsufficientGps),
"NO_OVERLAP_GPS" => Some(Self::NoOverlapGps),
"INVALID_GPS" => Some(Self::InvalidGps),
"FAILED_TO_REFINE_POSITIONS" => Some(Self::FailedToRefinePositions),
"TAKEDOWN" => Some(Self::Takedown),
"CORRUPT_VIDEO" => Some(Self::CorruptVideo),
"INTERNAL" => Some(Self::Internal),
"INVALID_VIDEO_FORMAT" => Some(Self::InvalidVideoFormat),
"INVALID_VIDEO_DIMENSIONS" => Some(Self::InvalidVideoDimensions),
"INVALID_CAPTURE_TIME" => Some(Self::InvalidCaptureTime),
"GPS_DATA_GAP" => Some(Self::GpsDataGap),
"JUMPY_GPS" => Some(Self::JumpyGps),
"INVALID_IMU" => Some(Self::InvalidImu),
"INSUFFICIENT_IMU" => Some(Self::InsufficientImu),
"INSUFFICIENT_OVERLAP_TIME_SERIES" => {
Some(Self::InsufficientOverlapTimeSeries)
}
"IMU_DATA_GAP" => Some(Self::ImuDataGap),
"UNSUPPORTED_CAMERA" => Some(Self::UnsupportedCamera),
"NOT_OUTDOORS" => Some(Self::NotOutdoors),
"INSUFFICIENT_VIDEO_FRAMES" => Some(Self::InsufficientVideoFrames),
_ => None,
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreatePhotoRequest {
#[prost(message, optional, tag = "1")]
pub photo: ::core::option::Option<Photo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPhotoRequest {
#[prost(string, tag = "1")]
pub photo_id: ::prost::alloc::string::String,
#[prost(enumeration = "PhotoView", tag = "2")]
pub view: i32,
#[prost(string, tag = "3")]
pub language_code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchGetPhotosRequest {
#[prost(string, repeated, tag = "1")]
pub photo_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration = "PhotoView", tag = "2")]
pub view: i32,
#[prost(string, tag = "3")]
pub language_code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchGetPhotosResponse {
#[prost(message, repeated, tag = "1")]
pub results: ::prost::alloc::vec::Vec<PhotoResponse>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PhotoResponse {
#[prost(message, optional, tag = "1")]
pub status: ::core::option::Option<super::super::super::rpc::Status>,
#[prost(message, optional, tag = "2")]
pub photo: ::core::option::Option<Photo>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPhotosRequest {
#[prost(enumeration = "PhotoView", tag = "1")]
pub view: i32,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub language_code: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPhotosResponse {
#[prost(message, repeated, tag = "1")]
pub photos: ::prost::alloc::vec::Vec<Photo>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdatePhotoRequest {
#[prost(message, optional, tag = "1")]
pub photo: ::core::option::Option<Photo>,
#[prost(message, optional, tag = "2")]
pub update_mask: ::core::option::Option<::prost_types::FieldMask>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchUpdatePhotosRequest {
#[prost(message, repeated, tag = "1")]
pub update_photo_requests: ::prost::alloc::vec::Vec<UpdatePhotoRequest>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchUpdatePhotosResponse {
#[prost(message, repeated, tag = "1")]
pub results: ::prost::alloc::vec::Vec<PhotoResponse>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeletePhotoRequest {
#[prost(string, tag = "1")]
pub photo_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchDeletePhotosRequest {
#[prost(string, repeated, tag = "1")]
pub photo_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreatePhotoSequenceRequest {
#[prost(message, optional, tag = "1")]
pub photo_sequence: ::core::option::Option<PhotoSequence>,
#[prost(enumeration = "create_photo_sequence_request::InputType", tag = "2")]
pub input_type: i32,
}
pub mod create_photo_sequence_request {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum InputType {
Unspecified = 0,
Video = 1,
Xdm = 2,
}
impl InputType {
pub fn as_str_name(&self) -> &'static str {
match self {
InputType::Unspecified => "INPUT_TYPE_UNSPECIFIED",
InputType::Video => "VIDEO",
InputType::Xdm => "XDM",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"INPUT_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"VIDEO" => Some(Self::Video),
"XDM" => Some(Self::Xdm),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPhotoSequenceRequest {
#[prost(string, tag = "1")]
pub sequence_id: ::prost::alloc::string::String,
#[deprecated]
#[prost(enumeration = "PhotoView", tag = "2")]
pub view: i32,
#[prost(string, tag = "3")]
pub filter: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeletePhotoSequenceRequest {
#[prost(string, tag = "1")]
pub sequence_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BatchDeletePhotosResponse {
#[prost(message, repeated, tag = "1")]
pub status: ::prost::alloc::vec::Vec<super::super::super::rpc::Status>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPhotoSequencesRequest {
#[prost(int32, tag = "1")]
pub page_size: i32,
#[prost(string, tag = "2")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPhotoSequencesResponse {
#[prost(message, repeated, tag = "1")]
pub photo_sequences: ::prost::alloc::vec::Vec<
super::super::super::longrunning::Operation,
>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PhotoView {
Basic = 0,
IncludeDownloadUrl = 1,
}
impl PhotoView {
pub fn as_str_name(&self) -> &'static str {
match self {
PhotoView::Basic => "BASIC",
PhotoView::IncludeDownloadUrl => "INCLUDE_DOWNLOAD_URL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"BASIC" => Some(Self::Basic),
"INCLUDE_DOWNLOAD_URL" => Some(Self::IncludeDownloadUrl),
_ => None,
}
}
}
pub mod street_view_publish_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
#[derive(Debug, Clone)]
pub struct StreetViewPublishServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl<T> StreetViewPublishServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_origin(inner: T, origin: Uri) -> Self {
let inner = tonic::client::Grpc::with_origin(inner, origin);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> StreetViewPublishServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
StreetViewPublishServiceClient::new(
InterceptedService::new(inner, interceptor),
)
}
#[must_use]
pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.send_compressed(encoding);
self
}
#[must_use]
pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.accept_compressed(encoding);
self
}
#[must_use]
pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
self.inner = self.inner.max_decoding_message_size(limit);
self
}
#[must_use]
pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
self.inner = self.inner.max_encoding_message_size(limit);
self
}
pub async fn start_upload(
&mut self,
request: impl tonic::IntoRequest<()>,
) -> std::result::Result<tonic::Response<super::UploadRef>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/StartUpload",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"StartUpload",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn create_photo(
&mut self,
request: impl tonic::IntoRequest<super::CreatePhotoRequest>,
) -> std::result::Result<tonic::Response<super::Photo>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/CreatePhoto",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"CreatePhoto",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn get_photo(
&mut self,
request: impl tonic::IntoRequest<super::GetPhotoRequest>,
) -> std::result::Result<tonic::Response<super::Photo>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/GetPhoto",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"GetPhoto",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn batch_get_photos(
&mut self,
request: impl tonic::IntoRequest<super::BatchGetPhotosRequest>,
) -> std::result::Result<
tonic::Response<super::BatchGetPhotosResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/BatchGetPhotos",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"BatchGetPhotos",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn list_photos(
&mut self,
request: impl tonic::IntoRequest<super::ListPhotosRequest>,
) -> std::result::Result<
tonic::Response<super::ListPhotosResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/ListPhotos",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"ListPhotos",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn update_photo(
&mut self,
request: impl tonic::IntoRequest<super::UpdatePhotoRequest>,
) -> std::result::Result<tonic::Response<super::Photo>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/UpdatePhoto",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"UpdatePhoto",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn batch_update_photos(
&mut self,
request: impl tonic::IntoRequest<super::BatchUpdatePhotosRequest>,
) -> std::result::Result<
tonic::Response<super::BatchUpdatePhotosResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/BatchUpdatePhotos",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"BatchUpdatePhotos",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn delete_photo(
&mut self,
request: impl tonic::IntoRequest<super::DeletePhotoRequest>,
) -> std::result::Result<tonic::Response<()>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/DeletePhoto",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"DeletePhoto",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn batch_delete_photos(
&mut self,
request: impl tonic::IntoRequest<super::BatchDeletePhotosRequest>,
) -> std::result::Result<
tonic::Response<super::BatchDeletePhotosResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/BatchDeletePhotos",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"BatchDeletePhotos",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn start_photo_sequence_upload(
&mut self,
request: impl tonic::IntoRequest<()>,
) -> std::result::Result<tonic::Response<super::UploadRef>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/StartPhotoSequenceUpload",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"StartPhotoSequenceUpload",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn create_photo_sequence(
&mut self,
request: impl tonic::IntoRequest<super::CreatePhotoSequenceRequest>,
) -> std::result::Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/CreatePhotoSequence",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"CreatePhotoSequence",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn get_photo_sequence(
&mut self,
request: impl tonic::IntoRequest<super::GetPhotoSequenceRequest>,
) -> std::result::Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/GetPhotoSequence",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"GetPhotoSequence",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn list_photo_sequences(
&mut self,
request: impl tonic::IntoRequest<super::ListPhotoSequencesRequest>,
) -> std::result::Result<
tonic::Response<super::ListPhotoSequencesResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/ListPhotoSequences",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"ListPhotoSequences",
),
);
self.inner.unary(req, path, codec).await
}
pub async fn delete_photo_sequence(
&mut self,
request: impl tonic::IntoRequest<super::DeletePhotoSequenceRequest>,
) -> std::result::Result<tonic::Response<()>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.streetview.publish.v1.StreetViewPublishService/DeletePhotoSequence",
);
let mut req = request.into_request();
req.extensions_mut()
.insert(
GrpcMethod::new(
"google.streetview.publish.v1.StreetViewPublishService",
"DeletePhotoSequence",
),
);
self.inner.unary(req, path, codec).await
}
}
}