4#ifndef GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fgeographic_5fcoordinate_2eproto
5#define GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fgeographic_5fcoordinate_2eproto
10#include <google/protobuf/port_def.inc>
11#if PROTOBUF_VERSION < 3021000
12#error This file was generated by a newer version of protoc which is
13#error incompatible with your Protocol Buffer headers. Please update
16#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION
17#error This file was generated by an older version of protoc which is
18#error incompatible with your Protocol Buffer headers. Please
19#error regenerate this file with a newer version of protoc.
22#include <google/protobuf/port_undef.inc>
23#include <google/protobuf/io/coded_stream.h>
24#include <google/protobuf/arena.h>
25#include <google/protobuf/arenastring.h>
26#include <google/protobuf/generated_message_util.h>
27#include <google/protobuf/metadata_lite.h>
28#include <google/protobuf/generated_message_reflection.h>
29#include <google/protobuf/message.h>
30#include <google/protobuf/repeated_field.h>
31#include <google/protobuf/extension_set.h>
32#include <google/protobuf/unknown_field_set.h>
35#include <boost/units/quantity.hpp>
36#include <boost/units/absolute.hpp>
37#include <boost/units/dimensionless_type.hpp>
38#include <boost/units/make_scaled_unit.hpp>
40#include <boost/units/systems/angle/degrees.hpp>
42#include <boost/units/systems/si.hpp>
44#include <google/protobuf/port_def.inc>
45#define PROTOBUF_INTERNAL_EXPORT_jaiabot_2fmessages_2fgeographic_5fcoordinate_2eproto
46PROTOBUF_NAMESPACE_OPEN
50PROTOBUF_NAMESPACE_CLOSE
59class GeographicCoordinate;
60struct GeographicCoordinateDefaultTypeInternal;
64PROTOBUF_NAMESPACE_OPEN
66PROTOBUF_NAMESPACE_CLOSE
73 public ::PROTOBUF_NAMESPACE_ID::Message {
82 *
this = ::std::move(from);
90 if (
this == &from)
return *
this;
91 if (GetOwningArena() == from.GetOwningArena()
92 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
93 && GetOwningArena() !=
nullptr
104 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
107 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
110 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
133 if (other ==
this)
return;
134 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
135 if (GetOwningArena() !=
nullptr &&
136 GetOwningArena() == other->GetOwningArena()) {
138 if (GetOwningArena() == other->GetOwningArena()) {
142 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
146 if (other ==
this)
return;
147 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
154 return CreateMaybeMessage<GeographicCoordinate>(arena);
156 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
158 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
160 GeographicCoordinate::MergeImpl(*
this, from);
163 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
165 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
171 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
175 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena,
bool is_message_owned);
177 void SetCachedSize(
int size)
const final;
181 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
182 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
183 return "jaiabot.protobuf.GeographicCoordinate";
187 bool is_message_owned =
false);
191 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*
GetClassData() const final;
206 bool _internal_has_lat()
const;
212 double _internal_lat()
const;
213 void _internal_set_lat(
double value);
219 bool _internal_has_lon()
const;
225 double _internal_lon()
const;
226 void _internal_set_lon(
double value);
231 typedef boost::units::unit<lat_dimension,boost::units::degree::system>
lat_unit;
233 template<
typename Quantity >
235 {
set_lat(boost::units::quantity<lat_unit,double >(value_w_units).value() ); };
237 template<
typename Quantity >
242 {
return lat_with_units<boost::units::quantity< lat_unit,double > >(); };
246 typedef boost::units::unit<lon_dimension,boost::units::degree::system>
lon_unit;
248 template<
typename Quantity >
250 {
set_lon(boost::units::quantity<lon_unit,double >(value_w_units).value() ); };
252 template<
typename Quantity >
257 {
return lon_with_units<boost::units::quantity< lon_unit,double > >(); };
264 size_t RequiredFieldsByteSizeFallback()
const;
266 template <
typename T>
friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
267 typedef void InternalArenaConstructable_;
268 typedef void DestructorSkippable_;
270 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
271 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
276 friend struct ::TableStruct_jaiabot_2fmessages_2fgeographic_5fcoordinate_2eproto;
284 #pragma GCC diagnostic push
285 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
290inline bool GeographicCoordinate::_internal_has_lat()
const {
291 bool value = (
_impl_._has_bits_[0] & 0x00000001u) != 0;
295 return _internal_has_lat();
299 _impl_._has_bits_[0] &= ~0x00000001u;
301inline double GeographicCoordinate::_internal_lat()
const {
306 return _internal_lat();
308inline void GeographicCoordinate::_internal_set_lat(
double value) {
309 _impl_._has_bits_[0] |= 0x00000001u;
313 _internal_set_lat(value);
318inline bool GeographicCoordinate::_internal_has_lon()
const {
319 bool value = (
_impl_._has_bits_[0] & 0x00000002u) != 0;
323 return _internal_has_lon();
327 _impl_._has_bits_[0] &= ~0x00000002u;
329inline double GeographicCoordinate::_internal_lon()
const {
334 return _internal_lon();
336inline void GeographicCoordinate::_internal_set_lon(
double value) {
337 _impl_._has_bits_[0] |= 0x00000002u;
341 _internal_set_lon(value);
346 #pragma GCC diagnostic pop
356#include <google/protobuf/port_undef.inc>
GeographicCoordinate(GeographicCoordinate &&from) noexcept
GeographicCoordinate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
boost::units::plane_angle_dimension lat_dimension
GeographicCoordinate(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
friend void swap(GeographicCoordinate &a, GeographicCoordinate &b)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_lon(double value)
Quantity lon_with_units() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
boost::units::quantity< lon_unit, double > lon_with_units() const
static const GeographicCoordinate & default_instance()
~GeographicCoordinate() override
boost::units::unit< lat_dimension, boost::units::degree::system > lat_unit
void set_lat_with_units(Quantity value_w_units)
void MergeFrom(const GeographicCoordinate &from)
PROTOBUF_CONSTEXPR GeographicCoordinate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
static const GeographicCoordinate * internal_default_instance()
GeographicCoordinate(const GeographicCoordinate &from)
GeographicCoordinate & operator=(GeographicCoordinate &&from) noexcept
static const ClassData _class_data_
void CopyFrom(const GeographicCoordinate &from)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
bool IsInitialized() const final
size_t ByteSizeLong() const final
int GetCachedSize() const final
GeographicCoordinate & operator=(const GeographicCoordinate &from)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void UnsafeArenaSwap(GeographicCoordinate *other)
boost::units::unit< lon_dimension, boost::units::degree::system > lon_unit
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void set_lon_with_units(Quantity value_w_units)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Quantity lat_with_units() const
static constexpr int kIndexInFileMessages
void Swap(GeographicCoordinate *other)
boost::units::plane_angle_dimension lon_dimension
void set_lat(double value)
boost::units::quantity< lat_unit, double > lat_with_units() const
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fgeographic_5fcoordinate_2eproto
GeographicCoordinateDefaultTypeInternal _GeographicCoordinate_default_instance_
static const uint32_t offsets[]