JaiaBot 2.3.0
JaiaBot micro-AUV software
 
Loading...
Searching...
No Matches
jaia_dccl.pb.h
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: jaiabot/messages/jaia_dccl.proto
3
4#ifndef GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fjaia_5fdccl_2eproto
5#define GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fjaia_5fdccl_2eproto
6
7#include <limits>
8#include <string>
9
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
14#error your headers.
15#endif
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.
20#endif
21
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> // IWYU pragma: export
31#include <google/protobuf/extension_set.h> // IWYU pragma: export
32#include <google/protobuf/generated_enum_reflection.h>
33#include <google/protobuf/unknown_field_set.h>
38#include "goby/middleware/protobuf/coroner.pb.h"
43#include <boost/units/quantity.hpp>
44#include <boost/units/absolute.hpp>
45#include <boost/units/dimensionless_type.hpp>
46#include <boost/units/make_scaled_unit.hpp>
47
48#include <boost/units/systems/angle/degrees.hpp>
49
50#include <boost/units/systems/temperature/celsius.hpp>
51
52#include <boost/units/systems/si.hpp>
53// @@protoc_insertion_point(includes)
54#include <google/protobuf/port_def.inc>
55#define PROTOBUF_INTERNAL_EXPORT_jaiabot_2fmessages_2fjaia_5fdccl_2eproto
56PROTOBUF_NAMESPACE_OPEN
57namespace internal {
58class AnyMetadata;
59} // namespace internal
60PROTOBUF_NAMESPACE_CLOSE
61
62// Internal implementation detail -- do not use these members.
66extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
67namespace jaiabot {
68namespace protobuf {
69class BotStatus;
70struct BotStatusDefaultTypeInternal;
71extern BotStatusDefaultTypeInternal _BotStatus_default_instance_;
72class BotStatus_Attitude;
73struct BotStatus_AttitudeDefaultTypeInternal;
74extern BotStatus_AttitudeDefaultTypeInternal _BotStatus_Attitude_default_instance_;
75class BotStatus_Speed;
76struct BotStatus_SpeedDefaultTypeInternal;
77extern BotStatus_SpeedDefaultTypeInternal _BotStatus_Speed_default_instance_;
78class Command;
79struct CommandDefaultTypeInternal;
80extern CommandDefaultTypeInternal _Command_default_instance_;
81class CommandForHub;
82struct CommandForHubDefaultTypeInternal;
83extern CommandForHubDefaultTypeInternal _CommandForHub_default_instance_;
84class ContactUpdate;
85struct ContactUpdateDefaultTypeInternal;
86extern ContactUpdateDefaultTypeInternal _ContactUpdate_default_instance_;
87class DivePacket;
88struct DivePacketDefaultTypeInternal;
89extern DivePacketDefaultTypeInternal _DivePacket_default_instance_;
90class DivePacket_Measurements;
91struct DivePacket_MeasurementsDefaultTypeInternal;
92extern DivePacket_MeasurementsDefaultTypeInternal _DivePacket_Measurements_default_instance_;
93class DivePacket_SubsurfaceCurrentVector;
94struct DivePacket_SubsurfaceCurrentVectorDefaultTypeInternal;
95extern DivePacket_SubsurfaceCurrentVectorDefaultTypeInternal _DivePacket_SubsurfaceCurrentVector_default_instance_;
96class DriftPacket;
97struct DriftPacketDefaultTypeInternal;
98extern DriftPacketDefaultTypeInternal _DriftPacket_default_instance_;
99class DriftPacket_EstimatedDrift;
100struct DriftPacket_EstimatedDriftDefaultTypeInternal;
101extern DriftPacket_EstimatedDriftDefaultTypeInternal _DriftPacket_EstimatedDrift_default_instance_;
102class Hub2HubData;
103struct Hub2HubDataDefaultTypeInternal;
104extern Hub2HubDataDefaultTypeInternal _Hub2HubData_default_instance_;
105class TaskPacket;
106struct TaskPacketDefaultTypeInternal;
107extern TaskPacketDefaultTypeInternal _TaskPacket_default_instance_;
108} // namespace protobuf
109} // namespace jaiabot
110PROTOBUF_NAMESPACE_OPEN
111template<> ::jaiabot::protobuf::BotStatus* Arena::CreateMaybeMessage<::jaiabot::protobuf::BotStatus>(Arena*);
112template<> ::jaiabot::protobuf::BotStatus_Attitude* Arena::CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Attitude>(Arena*);
113template<> ::jaiabot::protobuf::BotStatus_Speed* Arena::CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Speed>(Arena*);
114template<> ::jaiabot::protobuf::Command* Arena::CreateMaybeMessage<::jaiabot::protobuf::Command>(Arena*);
115template<> ::jaiabot::protobuf::CommandForHub* Arena::CreateMaybeMessage<::jaiabot::protobuf::CommandForHub>(Arena*);
116template<> ::jaiabot::protobuf::ContactUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::ContactUpdate>(Arena*);
117template<> ::jaiabot::protobuf::DivePacket* Arena::CreateMaybeMessage<::jaiabot::protobuf::DivePacket>(Arena*);
118template<> ::jaiabot::protobuf::DivePacket_Measurements* Arena::CreateMaybeMessage<::jaiabot::protobuf::DivePacket_Measurements>(Arena*);
119template<> ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* Arena::CreateMaybeMessage<::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector>(Arena*);
120template<> ::jaiabot::protobuf::DriftPacket* Arena::CreateMaybeMessage<::jaiabot::protobuf::DriftPacket>(Arena*);
121template<> ::jaiabot::protobuf::DriftPacket_EstimatedDrift* Arena::CreateMaybeMessage<::jaiabot::protobuf::DriftPacket_EstimatedDrift>(Arena*);
122template<> ::jaiabot::protobuf::Hub2HubData* Arena::CreateMaybeMessage<::jaiabot::protobuf::Hub2HubData>(Arena*);
123template<> ::jaiabot::protobuf::TaskPacket* Arena::CreateMaybeMessage<::jaiabot::protobuf::TaskPacket>(Arena*);
124PROTOBUF_NAMESPACE_CLOSE
125namespace jaiabot {
126namespace protobuf {
127
154
155const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Command_CommandType_descriptor();
156template<typename T>
157inline const std::string& Command_CommandType_Name(T enum_t_value) {
158 static_assert(::std::is_same<T, Command_CommandType>::value ||
159 ::std::is_integral<T>::value,
160 "Incorrect type passed to function Command_CommandType_Name.");
161 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
162 Command_CommandType_descriptor(), enum_t_value);
163}
165 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Command_CommandType* value) {
166 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<Command_CommandType>(
167 Command_CommandType_descriptor(), name, value);
168}
180
181const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CommandForHub_HubCommandType_descriptor();
182template<typename T>
183inline const std::string& CommandForHub_HubCommandType_Name(T enum_t_value) {
184 static_assert(::std::is_same<T, CommandForHub_HubCommandType>::value ||
185 ::std::is_integral<T>::value,
186 "Incorrect type passed to function CommandForHub_HubCommandType_Name.");
187 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
189}
191 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CommandForHub_HubCommandType* value) {
192 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CommandForHub_HubCommandType>(
194}
204
205const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BotStatus_BotType_descriptor();
206template<typename T>
207inline const std::string& BotStatus_BotType_Name(T enum_t_value) {
208 static_assert(::std::is_same<T, BotStatus_BotType>::value ||
209 ::std::is_integral<T>::value,
210 "Incorrect type passed to function BotStatus_BotType_Name.");
211 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
212 BotStatus_BotType_descriptor(), enum_t_value);
213}
215 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BotStatus_BotType* value) {
216 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<BotStatus_BotType>(
217 BotStatus_BotType_descriptor(), name, value);
218}
227
228const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DivePacket_BottomType_descriptor();
229template<typename T>
230inline const std::string& DivePacket_BottomType_Name(T enum_t_value) {
231 static_assert(::std::is_same<T, DivePacket_BottomType>::value ||
232 ::std::is_integral<T>::value,
233 "Incorrect type passed to function DivePacket_BottomType_Name.");
234 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
235 DivePacket_BottomType_descriptor(), enum_t_value);
236}
238 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, DivePacket_BottomType* value) {
239 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DivePacket_BottomType>(
240 DivePacket_BottomType_descriptor(), name, value);
241}
242// ===================================================================
243
244class Command final :
245 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.Command) */ {
246 public:
247 inline Command() : Command(nullptr) {}
248 ~Command() override;
249 explicit PROTOBUF_CONSTEXPR Command(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
250
251 Command(const Command& from);
252 Command(Command&& from) noexcept
253 : Command() {
254 *this = ::std::move(from);
255 }
256
257 inline Command& operator=(const Command& from) {
258 CopyFrom(from);
259 return *this;
260 }
261 inline Command& operator=(Command&& from) noexcept {
262 if (this == &from) return *this;
263 if (GetOwningArena() == from.GetOwningArena()
264 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
265 && GetOwningArena() != nullptr
266 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
267 ) {
268 InternalSwap(&from);
269 } else {
270 CopyFrom(from);
271 }
272 return *this;
273 }
274
275 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
276 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
277 }
278 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
279 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
280 }
281
282 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
283 return GetDescriptor();
284 }
285 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
286 return default_instance().GetMetadata().descriptor;
287 }
288 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
289 return default_instance().GetMetadata().reflection;
290 }
291 static const Command& default_instance() {
293 }
300
301 static inline const Command* internal_default_instance() {
302 return reinterpret_cast<const Command*>(
304 }
305 static constexpr int kIndexInFileMessages =
306 0;
307
308 friend void swap(Command& a, Command& b) {
309 a.Swap(&b);
310 }
311 inline void Swap(Command* other) {
312 if (other == this) return;
313 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
314 if (GetOwningArena() != nullptr &&
315 GetOwningArena() == other->GetOwningArena()) {
316 #else // PROTOBUF_FORCE_COPY_IN_SWAP
317 if (GetOwningArena() == other->GetOwningArena()) {
318 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
319 InternalSwap(other);
320 } else {
321 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
322 }
323 }
325 if (other == this) return;
326 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
327 InternalSwap(other);
328 }
329
330 // implements Message ----------------------------------------------
331
332 Command* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
333 return CreateMaybeMessage<Command>(arena);
334 }
335 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
336 void CopyFrom(const Command& from);
337 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
338 void MergeFrom( const Command& from) {
339 Command::MergeImpl(*this, from);
340 }
341 private:
342 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
343 public:
344 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
345 bool IsInitialized() const final;
346
347 size_t ByteSizeLong() const final;
348 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
350 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
351 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
352
353 private:
354 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
355 void SharedDtor();
356 void SetCachedSize(int size) const final;
357 void InternalSwap(Command* other);
358
359 private:
360 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
361 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
362 return "jaiabot.protobuf.Command";
363 }
364 protected:
365 explicit Command(::PROTOBUF_NAMESPACE_ID::Arena* arena,
366 bool is_message_owned = false);
367 public:
368
369 static const ClassData _class_data_;
370 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
371
372 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
373
374 // nested types ----------------------------------------------------
375
377 static constexpr CommandType MISSION_PLAN =
379 static constexpr CommandType ACTIVATE =
381 static constexpr CommandType START_MISSION =
385 static constexpr CommandType NEXT_TASK =
387 static constexpr CommandType RETURN_TO_HOME =
389 static constexpr CommandType STOP =
391 static constexpr CommandType PAUSE =
393 static constexpr CommandType RESUME =
401 static constexpr CommandType RECOVERED =
403 static constexpr CommandType SHUTDOWN =
413 static constexpr CommandType REBOOT_COMPUTER =
417 static inline bool CommandType_IsValid(int value) {
418 return Command_CommandType_IsValid(value);
419 }
420 static constexpr CommandType CommandType_MIN =
422 static constexpr CommandType CommandType_MAX =
424 static constexpr int CommandType_ARRAYSIZE =
426 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
430 template<typename T>
431 static inline const std::string& CommandType_Name(T enum_t_value) {
432 static_assert(::std::is_same<T, CommandType>::value ||
433 ::std::is_integral<T>::value,
434 "Incorrect type passed to function CommandType_Name.");
435 return Command_CommandType_Name(enum_t_value);
436 }
437 static inline bool CommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
438 CommandType* value) {
439 return Command_CommandType_Parse(name, value);
440 }
441
442 // accessors -------------------------------------------------------
443
444 enum : int {
453 };
454 // required uint64 time = 2 [(.dccl.field) = {
455 bool has_time() const;
456 private:
457 bool _internal_has_time() const;
458 public:
459 void clear_time();
460 uint64_t time() const;
461 void set_time(uint64_t value);
462 private:
463 uint64_t _internal_time() const;
464 void _internal_set_time(uint64_t value);
465 public:
466
467 // required uint32 bot_id = 1 [(.dccl.field) = {
468 bool has_bot_id() const;
469 private:
470 bool _internal_has_bot_id() const;
471 public:
472 void clear_bot_id();
473 uint32_t bot_id() const;
474 void set_bot_id(uint32_t value);
475 private:
476 uint32_t _internal_bot_id() const;
477 void _internal_set_bot_id(uint32_t value);
478 public:
479
480 // optional uint32 from_hub_id = 4 [(.dccl.field) = {
481 bool has_from_hub_id() const;
482 private:
483 bool _internal_has_from_hub_id() const;
484 public:
485 void clear_from_hub_id();
486 uint32_t from_hub_id() const;
487 void set_from_hub_id(uint32_t value);
488 private:
489 uint32_t _internal_from_hub_id() const;
490 void _internal_set_from_hub_id(uint32_t value);
491 public:
492
493 // optional .jaiabot.protobuf.Link link = 3 [(.dccl.field) = {
494 bool has_link() const;
495 private:
496 bool _internal_has_link() const;
497 public:
498 void clear_link();
501 private:
502 ::jaiabot::protobuf::Link _internal_link() const;
503 void _internal_set_link(::jaiabot::protobuf::Link value);
504 public:
505
506 // required .jaiabot.protobuf.Command.CommandType type = 10 [(.jaia.field) = {
507 bool has_type() const;
508 private:
509 bool _internal_has_type() const;
510 public:
511 void clear_type();
514 private:
515 ::jaiabot::protobuf::Command_CommandType _internal_type() const;
516 void _internal_set_type(::jaiabot::protobuf::Command_CommandType value);
517 public:
518
519 // .jaiabot.protobuf.MissionPlan plan = 20 [(.jaia.field) = {
520 bool has_plan() const;
521 private:
522 bool _internal_has_plan() const;
523 public:
525 const ::jaiabot::protobuf::MissionPlan& plan() const;
526 PROTOBUF_NODISCARD ::jaiabot::protobuf::MissionPlan* release_plan();
529 private:
530 const ::jaiabot::protobuf::MissionPlan& _internal_plan() const;
531 ::jaiabot::protobuf::MissionPlan* _internal_mutable_plan();
532 public:
536
537 // .jaiabot.protobuf.RemoteControl rc = 30 [(.jaia.field) = {
538 bool has_rc() const;
539 private:
540 bool _internal_has_rc() const;
541 public:
542 void clear_rc();
543 const ::jaiabot::protobuf::RemoteControl& rc() const;
544 PROTOBUF_NODISCARD ::jaiabot::protobuf::RemoteControl* release_rc();
547 private:
548 const ::jaiabot::protobuf::RemoteControl& _internal_rc() const;
549 ::jaiabot::protobuf::RemoteControl* _internal_mutable_rc();
550 public:
554
555 // .jaiabot.protobuf.MissionTask rc_task = 31;
556 bool has_rc_task() const;
557 private:
558 bool _internal_has_rc_task() const;
559 public:
561 const ::jaiabot::protobuf::MissionTask& rc_task() const;
562 PROTOBUF_NODISCARD ::jaiabot::protobuf::MissionTask* release_rc_task();
565 private:
566 const ::jaiabot::protobuf::MissionTask& _internal_rc_task() const;
567 ::jaiabot::protobuf::MissionTask* _internal_mutable_rc_task();
568 public:
572
576 typedef boost::units::time_dimension time_dimension;
577
578 typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
579
580 template<typename Quantity >
581 void set_time_with_units(Quantity value_w_units)
582 { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
583
584 template<typename Quantity >
585 Quantity time_with_units() const
586 { return Quantity(time() * time_unit()); };
587
588 boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
589 { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
590
591 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.Command)
592 private:
593 class _Internal;
594 void set_has_plan();
595 void set_has_rc();
596 void set_has_rc_task();
597
598 inline bool has_command_data() const;
599 inline void clear_has_command_data();
600
601 // helper for ByteSizeLong()
602 size_t RequiredFieldsByteSizeFallback() const;
603
604 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
605 typedef void InternalArenaConstructable_;
606 typedef void DestructorSkippable_;
607 struct Impl_ {
608 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
609 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
610 uint64_t time_;
611 uint32_t bot_id_;
612 uint32_t from_hub_id_;
613 int link_;
614 int type_;
622 uint32_t _oneof_case_[1];
623
624 };
625 union { Impl_ _impl_; };
626 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
627};
628// -------------------------------------------------------------------
629
630class CommandForHub final :
631 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.CommandForHub) */ {
632 public:
633 inline CommandForHub() : CommandForHub(nullptr) {}
634 ~CommandForHub() override;
635 explicit PROTOBUF_CONSTEXPR CommandForHub(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
636
639 : CommandForHub() {
640 *this = ::std::move(from);
641 }
642
643 inline CommandForHub& operator=(const CommandForHub& from) {
644 CopyFrom(from);
645 return *this;
646 }
647 inline CommandForHub& operator=(CommandForHub&& from) noexcept {
648 if (this == &from) return *this;
649 if (GetOwningArena() == from.GetOwningArena()
650 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
651 && GetOwningArena() != nullptr
652 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
653 ) {
654 InternalSwap(&from);
655 } else {
656 CopyFrom(from);
657 }
658 return *this;
659 }
660
661 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
662 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
663 }
664 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
665 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
666 }
667
668 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
669 return GetDescriptor();
670 }
671 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
672 return default_instance().GetMetadata().descriptor;
673 }
674 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
675 return default_instance().GetMetadata().reflection;
676 }
678 return *internal_default_instance();
679 }
681 return reinterpret_cast<const CommandForHub*>(
683 }
684 static constexpr int kIndexInFileMessages =
685 1;
686
687 friend void swap(CommandForHub& a, CommandForHub& b) {
688 a.Swap(&b);
689 }
690 inline void Swap(CommandForHub* other) {
691 if (other == this) return;
692 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
693 if (GetOwningArena() != nullptr &&
694 GetOwningArena() == other->GetOwningArena()) {
695 #else // PROTOBUF_FORCE_COPY_IN_SWAP
696 if (GetOwningArena() == other->GetOwningArena()) {
697 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
698 InternalSwap(other);
699 } else {
700 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
701 }
702 }
704 if (other == this) return;
705 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
706 InternalSwap(other);
707 }
708
709 // implements Message ----------------------------------------------
710
711 CommandForHub* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
712 return CreateMaybeMessage<CommandForHub>(arena);
713 }
714 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
715 void CopyFrom(const CommandForHub& from);
716 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
717 void MergeFrom( const CommandForHub& from) {
718 CommandForHub::MergeImpl(*this, from);
719 }
720 private:
721 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
722 public:
723 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
724 bool IsInitialized() const final;
725
726 size_t ByteSizeLong() const final;
727 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
728 uint8_t* _InternalSerialize(
729 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
730 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
731
732 private:
733 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
734 void SharedDtor();
735 void SetCachedSize(int size) const final;
736 void InternalSwap(CommandForHub* other);
737
738 private:
739 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
740 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
741 return "jaiabot.protobuf.CommandForHub";
742 }
743 protected:
744 explicit CommandForHub(::PROTOBUF_NAMESPACE_ID::Arena* arena,
745 bool is_message_owned = false);
746 public:
747
748 static const ClassData _class_data_;
749 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
750
751 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
752
753 // nested types ----------------------------------------------------
754
756 static constexpr HubCommandType SCAN_FOR_BOTS =
757 CommandForHub_HubCommandType_SCAN_FOR_BOTS;
758 static constexpr HubCommandType RESTART_ALL_SERVICES =
759 CommandForHub_HubCommandType_RESTART_ALL_SERVICES;
760 static constexpr HubCommandType REBOOT_COMPUTER =
761 CommandForHub_HubCommandType_REBOOT_COMPUTER;
762 static constexpr HubCommandType SHUTDOWN_COMPUTER =
763 CommandForHub_HubCommandType_SHUTDOWN_COMPUTER;
764 static constexpr HubCommandType SET_HUB_LOCATION =
765 CommandForHub_HubCommandType_SET_HUB_LOCATION;
766 static inline bool HubCommandType_IsValid(int value) {
768 }
769 static constexpr HubCommandType HubCommandType_MIN =
771 static constexpr HubCommandType HubCommandType_MAX =
773 static constexpr int HubCommandType_ARRAYSIZE =
775 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
779 template<typename T>
780 static inline const std::string& HubCommandType_Name(T enum_t_value) {
781 static_assert(::std::is_same<T, HubCommandType>::value ||
782 ::std::is_integral<T>::value,
783 "Incorrect type passed to function HubCommandType_Name.");
784 return CommandForHub_HubCommandType_Name(enum_t_value);
785 }
786 static inline bool HubCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
787 HubCommandType* value) {
788 return CommandForHub_HubCommandType_Parse(name, value);
789 }
790
791 // accessors -------------------------------------------------------
792
793 enum : int {
794 kHubLocationFieldNumber = 80,
795 kTimeFieldNumber = 2,
796 kHubIdFieldNumber = 1,
797 kScanForBotIdFieldNumber = 11,
798 kTypeFieldNumber = 10,
799 };
800 // optional .jaiabot.protobuf.GeographicCoordinate hub_location = 80 [(.jaia.field) = {
801 bool has_hub_location() const;
802 private:
803 bool _internal_has_hub_location() const;
804 public:
806 const ::jaiabot::protobuf::GeographicCoordinate& hub_location() const;
807 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_hub_location();
808 ::jaiabot::protobuf::GeographicCoordinate* mutable_hub_location();
809 void set_allocated_hub_location(::jaiabot::protobuf::GeographicCoordinate* hub_location);
810 private:
811 const ::jaiabot::protobuf::GeographicCoordinate& _internal_hub_location() const;
812 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_hub_location();
813 public:
814 void unsafe_arena_set_allocated_hub_location(
816 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_hub_location();
817
818 // required uint64 time = 2 [(.dccl.field) = {
819 bool has_time() const;
820 private:
821 bool _internal_has_time() const;
822 public:
823 void clear_time();
824 uint64_t time() const;
825 void set_time(uint64_t value);
826 private:
827 uint64_t _internal_time() const;
828 void _internal_set_time(uint64_t value);
829 public:
830
831 // required uint32 hub_id = 1 [(.jaia.field) = {
832 bool has_hub_id() const;
833 private:
834 bool _internal_has_hub_id() const;
835 public:
836 void clear_hub_id();
837 uint32_t hub_id() const;
838 void set_hub_id(uint32_t value);
839 private:
840 uint32_t _internal_hub_id() const;
841 void _internal_set_hub_id(uint32_t value);
842 public:
843
844 // optional uint32 scan_for_bot_id = 11;
845 bool has_scan_for_bot_id() const;
846 private:
847 bool _internal_has_scan_for_bot_id() const;
848 public:
849 void clear_scan_for_bot_id();
850 uint32_t scan_for_bot_id() const;
851 void set_scan_for_bot_id(uint32_t value);
852 private:
853 uint32_t _internal_scan_for_bot_id() const;
854 void _internal_set_scan_for_bot_id(uint32_t value);
855 public:
856
857 // required .jaiabot.protobuf.CommandForHub.HubCommandType type = 10 [(.jaia.field) = {
858 bool has_type() const;
859 private:
860 bool _internal_has_type() const;
861 public:
862 void clear_type();
865 private:
867 void _internal_set_type(::jaiabot::protobuf::CommandForHub_HubCommandType value);
868 public:
869
870 typedef boost::units::time_dimension time_dimension;
871
872 typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
873
874 template<typename Quantity >
875 void set_time_with_units(Quantity value_w_units)
876 { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
877
878 template<typename Quantity >
879 Quantity time_with_units() const
880 { return Quantity(time() * time_unit()); };
881
882 boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
883 { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
884
885 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.CommandForHub)
886 private:
887 class _Internal;
888
889 // helper for ByteSizeLong()
890 size_t RequiredFieldsByteSizeFallback() const;
891
892 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
893 typedef void InternalArenaConstructable_;
894 typedef void DestructorSkippable_;
895 struct Impl_ {
896 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
897 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
899 uint64_t time_;
900 uint32_t hub_id_;
901 uint32_t scan_for_bot_id_;
902 int type_;
903 };
904 union { Impl_ _impl_; };
905 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
906};
907// -------------------------------------------------------------------
908
910 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.BotStatus.Attitude) */ {
911 public:
914 explicit PROTOBUF_CONSTEXPR BotStatus_Attitude(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
915
919 *this = ::std::move(from);
920 }
921
923 CopyFrom(from);
924 return *this;
925 }
927 if (this == &from) return *this;
928 if (GetOwningArena() == from.GetOwningArena()
929 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
930 && GetOwningArena() != nullptr
931 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
932 ) {
933 InternalSwap(&from);
934 } else {
935 CopyFrom(from);
936 }
937 return *this;
938 }
939
940 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
941 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
942 }
943 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
944 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
945 }
946
947 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
948 return GetDescriptor();
949 }
950 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
951 return default_instance().GetMetadata().descriptor;
952 }
953 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
954 return default_instance().GetMetadata().reflection;
955 }
957 return *internal_default_instance();
958 }
960 return reinterpret_cast<const BotStatus_Attitude*>(
962 }
963 static constexpr int kIndexInFileMessages =
964 2;
965
967 a.Swap(&b);
968 }
969 inline void Swap(BotStatus_Attitude* other) {
970 if (other == this) return;
971 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
972 if (GetOwningArena() != nullptr &&
973 GetOwningArena() == other->GetOwningArena()) {
974 #else // PROTOBUF_FORCE_COPY_IN_SWAP
975 if (GetOwningArena() == other->GetOwningArena()) {
976 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
977 InternalSwap(other);
978 } else {
979 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
980 }
981 }
983 if (other == this) return;
984 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
985 InternalSwap(other);
986 }
987
988 // implements Message ----------------------------------------------
989
990 BotStatus_Attitude* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
991 return CreateMaybeMessage<BotStatus_Attitude>(arena);
992 }
993 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
994 void CopyFrom(const BotStatus_Attitude& from);
995 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
996 void MergeFrom( const BotStatus_Attitude& from) {
997 BotStatus_Attitude::MergeImpl(*this, from);
998 }
999 private:
1000 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1001 public:
1002 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1003 bool IsInitialized() const final;
1004
1005 size_t ByteSizeLong() const final;
1006 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1007 uint8_t* _InternalSerialize(
1008 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1009 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1010
1011 private:
1012 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1013 void SharedDtor();
1014 void SetCachedSize(int size) const final;
1015 void InternalSwap(BotStatus_Attitude* other);
1016
1017 private:
1018 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1019 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1020 return "jaiabot.protobuf.BotStatus.Attitude";
1021 }
1022 protected:
1023 explicit BotStatus_Attitude(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1024 bool is_message_owned = false);
1025 public:
1026
1027 static const ClassData _class_data_;
1028 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1029
1030 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1031
1032 // nested types ----------------------------------------------------
1033
1034 // accessors -------------------------------------------------------
1035
1036 enum : int {
1037 kRollFieldNumber = 1,
1038 kPitchFieldNumber = 2,
1039 kHeadingFieldNumber = 3,
1040 kCourseOverGroundFieldNumber = 4,
1041 };
1042 // optional double roll = 1 [(.dccl.field) = {
1043 bool has_roll() const;
1044 private:
1045 bool _internal_has_roll() const;
1046 public:
1047 void clear_roll();
1048 double roll() const;
1049 void set_roll(double value);
1050 private:
1051 double _internal_roll() const;
1052 void _internal_set_roll(double value);
1053 public:
1054
1055 // optional double pitch = 2 [(.dccl.field) = {
1056 bool has_pitch() const;
1057 private:
1058 bool _internal_has_pitch() const;
1059 public:
1060 void clear_pitch();
1061 double pitch() const;
1062 void set_pitch(double value);
1063 private:
1064 double _internal_pitch() const;
1065 void _internal_set_pitch(double value);
1066 public:
1067
1068 // optional double heading = 3 [(.dccl.field) = {
1069 bool has_heading() const;
1070 private:
1071 bool _internal_has_heading() const;
1072 public:
1073 void clear_heading();
1074 double heading() const;
1075 void set_heading(double value);
1076 private:
1077 double _internal_heading() const;
1078 void _internal_set_heading(double value);
1079 public:
1080
1081 // optional double course_over_ground = 4 [(.dccl.field) = {
1082 bool has_course_over_ground() const;
1083 private:
1084 bool _internal_has_course_over_ground() const;
1085 public:
1086 void clear_course_over_ground();
1087 double course_over_ground() const;
1088 void set_course_over_ground(double value);
1089 private:
1090 double _internal_course_over_ground() const;
1091 void _internal_set_course_over_ground(double value);
1092 public:
1093
1094 typedef boost::units::plane_angle_dimension roll_dimension;
1095
1096 typedef boost::units::unit<roll_dimension,boost::units::degree::system> roll_unit;
1097
1098 template<typename Quantity >
1099 void set_roll_with_units(Quantity value_w_units)
1100 { set_roll(boost::units::quantity<roll_unit,double >(value_w_units).value() ); };
1101
1102 template<typename Quantity >
1103 Quantity roll_with_units() const
1104 { return Quantity(roll() * roll_unit()); };
1105
1106 boost::units::quantity< roll_unit,double > roll_with_units() const
1107 { return roll_with_units<boost::units::quantity< roll_unit,double > >(); };
1108
1109 typedef boost::units::plane_angle_dimension pitch_dimension;
1110
1111 typedef boost::units::unit<pitch_dimension,boost::units::degree::system> pitch_unit;
1112
1113 template<typename Quantity >
1114 void set_pitch_with_units(Quantity value_w_units)
1115 { set_pitch(boost::units::quantity<pitch_unit,double >(value_w_units).value() ); };
1116
1117 template<typename Quantity >
1118 Quantity pitch_with_units() const
1119 { return Quantity(pitch() * pitch_unit()); };
1120
1121 boost::units::quantity< pitch_unit,double > pitch_with_units() const
1122 { return pitch_with_units<boost::units::quantity< pitch_unit,double > >(); };
1123
1124 typedef boost::units::plane_angle_dimension heading_dimension;
1125
1126 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
1127
1128 template<typename Quantity >
1129 void set_heading_with_units(Quantity value_w_units)
1130 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
1131
1132 template<typename Quantity >
1133 Quantity heading_with_units() const
1134 { return Quantity(heading() * heading_unit()); };
1135
1136 boost::units::quantity< heading_unit,double > heading_with_units() const
1137 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
1138
1139 typedef boost::units::plane_angle_dimension course_over_ground_dimension;
1140
1141 typedef boost::units::unit<course_over_ground_dimension,boost::units::degree::system> course_over_ground_unit;
1142
1143 template<typename Quantity >
1144 void set_course_over_ground_with_units(Quantity value_w_units)
1145 { set_course_over_ground(boost::units::quantity<course_over_ground_unit,double >(value_w_units).value() ); };
1146
1147 template<typename Quantity >
1149 { return Quantity(course_over_ground() * course_over_ground_unit()); };
1150
1151 boost::units::quantity< course_over_ground_unit,double > course_over_ground_with_units() const
1152 { return course_over_ground_with_units<boost::units::quantity< course_over_ground_unit,double > >(); };
1153
1154 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.BotStatus.Attitude)
1155 private:
1156 class _Internal;
1157
1158 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1159 typedef void InternalArenaConstructable_;
1160 typedef void DestructorSkippable_;
1161 struct Impl_ {
1162 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1163 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1164 double roll_;
1165 double pitch_;
1166 double heading_;
1167 double course_over_ground_;
1168 };
1169 union { Impl_ _impl_; };
1170 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
1171};
1172// -------------------------------------------------------------------
1173
1174class BotStatus_Speed final :
1175 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.BotStatus.Speed) */ {
1176 public:
1177 inline BotStatus_Speed() : BotStatus_Speed(nullptr) {}
1179 explicit PROTOBUF_CONSTEXPR BotStatus_Speed(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1180
1183 : BotStatus_Speed() {
1184 *this = ::std::move(from);
1185 }
1186
1188 CopyFrom(from);
1189 return *this;
1190 }
1191 inline BotStatus_Speed& operator=(BotStatus_Speed&& from) noexcept {
1192 if (this == &from) return *this;
1193 if (GetOwningArena() == from.GetOwningArena()
1194 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1195 && GetOwningArena() != nullptr
1196 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1197 ) {
1198 InternalSwap(&from);
1199 } else {
1200 CopyFrom(from);
1201 }
1202 return *this;
1203 }
1204
1205 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1206 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1207 }
1208 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1209 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1210 }
1211
1212 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1213 return GetDescriptor();
1214 }
1215 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1216 return default_instance().GetMetadata().descriptor;
1217 }
1218 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1219 return default_instance().GetMetadata().reflection;
1220 }
1222 return *internal_default_instance();
1223 }
1225 return reinterpret_cast<const BotStatus_Speed*>(
1227 }
1228 static constexpr int kIndexInFileMessages =
1229 3;
1230
1232 a.Swap(&b);
1233 }
1234 inline void Swap(BotStatus_Speed* other) {
1235 if (other == this) return;
1236 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1237 if (GetOwningArena() != nullptr &&
1238 GetOwningArena() == other->GetOwningArena()) {
1239 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1240 if (GetOwningArena() == other->GetOwningArena()) {
1241 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1242 InternalSwap(other);
1243 } else {
1244 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1245 }
1246 }
1248 if (other == this) return;
1249 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1250 InternalSwap(other);
1251 }
1252
1253 // implements Message ----------------------------------------------
1254
1255 BotStatus_Speed* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1256 return CreateMaybeMessage<BotStatus_Speed>(arena);
1257 }
1258 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1259 void CopyFrom(const BotStatus_Speed& from);
1260 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1261 void MergeFrom( const BotStatus_Speed& from) {
1262 BotStatus_Speed::MergeImpl(*this, from);
1263 }
1264 private:
1265 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1266 public:
1267 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1268 bool IsInitialized() const final;
1269
1270 size_t ByteSizeLong() const final;
1271 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1272 uint8_t* _InternalSerialize(
1273 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1274 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1275
1276 private:
1277 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1278 void SharedDtor();
1279 void SetCachedSize(int size) const final;
1280 void InternalSwap(BotStatus_Speed* other);
1281
1282 private:
1283 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1284 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1285 return "jaiabot.protobuf.BotStatus.Speed";
1286 }
1287 protected:
1288 explicit BotStatus_Speed(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1289 bool is_message_owned = false);
1290 public:
1291
1292 static const ClassData _class_data_;
1293 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1294
1295 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1296
1297 // nested types ----------------------------------------------------
1298
1299 // accessors -------------------------------------------------------
1300
1301 enum : int {
1302 kOverGroundFieldNumber = 1,
1303 kOverWaterFieldNumber = 2,
1304 };
1305 // optional double over_ground = 1 [(.dccl.field) = {
1306 bool has_over_ground() const;
1307 private:
1308 bool _internal_has_over_ground() const;
1309 public:
1310 void clear_over_ground();
1311 double over_ground() const;
1312 void set_over_ground(double value);
1313 private:
1314 double _internal_over_ground() const;
1315 void _internal_set_over_ground(double value);
1316 public:
1317
1318 // optional double over_water = 2 [(.dccl.field) = {
1319 bool has_over_water() const;
1320 private:
1321 bool _internal_has_over_water() const;
1322 public:
1323 void clear_over_water();
1324 double over_water() const;
1325 void set_over_water(double value);
1326 private:
1327 double _internal_over_water() const;
1328 void _internal_set_over_water(double value);
1329 public:
1330
1331 typedef boost::units::velocity_dimension over_ground_dimension;
1332
1333 typedef boost::units::unit<over_ground_dimension,boost::units::si::system> over_ground_unit;
1334
1335 template<typename Quantity >
1336 void set_over_ground_with_units(Quantity value_w_units)
1337 { set_over_ground(boost::units::quantity<over_ground_unit,double >(value_w_units).value() ); };
1338
1339 template<typename Quantity >
1340 Quantity over_ground_with_units() const
1341 { return Quantity(over_ground() * over_ground_unit()); };
1342
1343 boost::units::quantity< over_ground_unit,double > over_ground_with_units() const
1344 { return over_ground_with_units<boost::units::quantity< over_ground_unit,double > >(); };
1345
1346 typedef boost::units::velocity_dimension over_water_dimension;
1347
1348 typedef boost::units::unit<over_water_dimension,boost::units::si::system> over_water_unit;
1349
1350 template<typename Quantity >
1351 void set_over_water_with_units(Quantity value_w_units)
1352 { set_over_water(boost::units::quantity<over_water_unit,double >(value_w_units).value() ); };
1353
1354 template<typename Quantity >
1355 Quantity over_water_with_units() const
1356 { return Quantity(over_water() * over_water_unit()); };
1357
1358 boost::units::quantity< over_water_unit,double > over_water_with_units() const
1359 { return over_water_with_units<boost::units::quantity< over_water_unit,double > >(); };
1360
1361 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.BotStatus.Speed)
1362 private:
1363 class _Internal;
1364
1365 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1366 typedef void InternalArenaConstructable_;
1367 typedef void DestructorSkippable_;
1368 struct Impl_ {
1369 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1370 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1371 double over_ground_;
1372 double over_water_;
1373 };
1374 union { Impl_ _impl_; };
1375 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
1376};
1377// -------------------------------------------------------------------
1378
1379class BotStatus final :
1380 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.BotStatus) */ {
1381 public:
1382 inline BotStatus() : BotStatus(nullptr) {}
1383 ~BotStatus() override;
1384 explicit PROTOBUF_CONSTEXPR BotStatus(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1385
1386 BotStatus(const BotStatus& from);
1387 BotStatus(BotStatus&& from) noexcept
1388 : BotStatus() {
1389 *this = ::std::move(from);
1390 }
1391
1392 inline BotStatus& operator=(const BotStatus& from) {
1393 CopyFrom(from);
1394 return *this;
1395 }
1396 inline BotStatus& operator=(BotStatus&& from) noexcept {
1397 if (this == &from) return *this;
1398 if (GetOwningArena() == from.GetOwningArena()
1399 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1400 && GetOwningArena() != nullptr
1401 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1402 ) {
1403 InternalSwap(&from);
1404 } else {
1405 CopyFrom(from);
1406 }
1407 return *this;
1408 }
1409
1410 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1411 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1412 }
1413 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1414 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1415 }
1416
1417 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1418 return GetDescriptor();
1419 }
1420 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1421 return default_instance().GetMetadata().descriptor;
1422 }
1423 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1424 return default_instance().GetMetadata().reflection;
1425 }
1426 static const BotStatus& default_instance() {
1427 return *internal_default_instance();
1428 }
1429 static inline const BotStatus* internal_default_instance() {
1430 return reinterpret_cast<const BotStatus*>(
1432 }
1433 static constexpr int kIndexInFileMessages =
1434 4;
1435
1436 friend void swap(BotStatus& a, BotStatus& b) {
1437 a.Swap(&b);
1438 }
1439 inline void Swap(BotStatus* other) {
1440 if (other == this) return;
1441 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1442 if (GetOwningArena() != nullptr &&
1443 GetOwningArena() == other->GetOwningArena()) {
1444 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1445 if (GetOwningArena() == other->GetOwningArena()) {
1446 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1447 InternalSwap(other);
1448 } else {
1449 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1450 }
1451 }
1453 if (other == this) return;
1454 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1455 InternalSwap(other);
1456 }
1457
1458 // implements Message ----------------------------------------------
1459
1460 BotStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1461 return CreateMaybeMessage<BotStatus>(arena);
1462 }
1463 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1464 void CopyFrom(const BotStatus& from);
1465 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1466 void MergeFrom( const BotStatus& from) {
1467 BotStatus::MergeImpl(*this, from);
1468 }
1469 private:
1470 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1471 public:
1472 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1473 bool IsInitialized() const final;
1474
1475 size_t ByteSizeLong() const final;
1476 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1477 uint8_t* _InternalSerialize(
1478 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1479 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1480
1481 private:
1482 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1483 void SharedDtor();
1484 void SetCachedSize(int size) const final;
1485 void InternalSwap(BotStatus* other);
1486
1487 private:
1488 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1489 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1490 return "jaiabot.protobuf.BotStatus";
1491 }
1492 protected:
1493 explicit BotStatus(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1494 bool is_message_owned = false);
1495 public:
1496
1497 static const ClassData _class_data_;
1498 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1499
1500 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1501
1502 // nested types ----------------------------------------------------
1503
1506
1508 static constexpr BotType HYDRO =
1509 BotStatus_BotType_HYDRO;
1510 static constexpr BotType ECHO =
1511 BotStatus_BotType_ECHO;
1512 static constexpr BotType BIO =
1513 BotStatus_BotType_BIO;
1514 static inline bool BotType_IsValid(int value) {
1515 return BotStatus_BotType_IsValid(value);
1516 }
1517 static constexpr BotType BotType_MIN =
1519 static constexpr BotType BotType_MAX =
1521 static constexpr int BotType_ARRAYSIZE =
1523 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1527 template<typename T>
1528 static inline const std::string& BotType_Name(T enum_t_value) {
1529 static_assert(::std::is_same<T, BotType>::value ||
1530 ::std::is_integral<T>::value,
1531 "Incorrect type passed to function BotType_Name.");
1532 return BotStatus_BotType_Name(enum_t_value);
1533 }
1534 static inline bool BotType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
1535 BotType* value) {
1536 return BotStatus_BotType_Parse(name, value);
1537 }
1538
1539 // accessors -------------------------------------------------------
1540
1541 enum : int {
1542 kErrorFieldNumber = 5,
1543 kWarningFieldNumber = 6,
1544 kLocationFieldNumber = 10,
1545 kAttitudeFieldNumber = 20,
1546 kSpeedFieldNumber = 30,
1547 kTimeFieldNumber = 2,
1548 kLastCommandTimeFieldNumber = 3,
1549 kSensorDepthFieldNumber = 11,
1550 kDepthFieldNumber = 12,
1551 kBotIdFieldNumber = 1,
1552 kMissionStateFieldNumber = 40,
1553 kDistanceToActiveGoalFieldNumber = 42,
1554 kActiveGoalFieldNumber = 41,
1555 kActiveGoalTimeoutFieldNumber = 43,
1556 kRepeatIndexFieldNumber = 44,
1557 kCalibrationStatusFieldNumber = 54,
1558 kSalinityFieldNumber = 51,
1559 kTemperatureFieldNumber = 52,
1560 kBatteryPercentFieldNumber = 53,
1561 kHdopFieldNumber = 56,
1562 kPdopFieldNumber = 57,
1563 kReceivedTimeFieldNumber = 59,
1564 kWifiLinkQualityPercentageFieldNumber = 58,
1565 kHealthStateFieldNumber = 4,
1566 kBotTypeFieldNumber = 7,
1567 kLinkFieldNumber = 8,
1568 kCalibrationStateFieldNumber = 55,
1569 };
1570 // repeated .jaiabot.protobuf.Error error = 5 [(.dccl.field) = {
1571 int error_size() const;
1572 private:
1573 int _internal_error_size() const;
1574 public:
1575 void clear_error();
1576 private:
1577 ::jaiabot::protobuf::Error _internal_error(int index) const;
1578 void _internal_add_error(::jaiabot::protobuf::Error value);
1579 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_error();
1580 public:
1581 ::jaiabot::protobuf::Error error(int index) const;
1582 void set_error(int index, ::jaiabot::protobuf::Error value);
1583 void add_error(::jaiabot::protobuf::Error value);
1584 const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& error() const;
1585 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_error();
1586
1587 // repeated .jaiabot.protobuf.Warning warning = 6 [(.dccl.field) = {
1588 int warning_size() const;
1589 private:
1590 int _internal_warning_size() const;
1591 public:
1592 void clear_warning();
1593 private:
1594 ::jaiabot::protobuf::Warning _internal_warning(int index) const;
1595 void _internal_add_warning(::jaiabot::protobuf::Warning value);
1596 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_warning();
1597 public:
1598 ::jaiabot::protobuf::Warning warning(int index) const;
1599 void set_warning(int index, ::jaiabot::protobuf::Warning value);
1600 void add_warning(::jaiabot::protobuf::Warning value);
1601 const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& warning() const;
1602 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_warning();
1603
1604 // optional .jaiabot.protobuf.GeographicCoordinate location = 10 [(.jaia.field) = {
1605 bool has_location() const;
1606 private:
1607 bool _internal_has_location() const;
1608 public:
1610 const ::jaiabot::protobuf::GeographicCoordinate& location() const;
1611 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_location();
1613 void set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location);
1614 private:
1615 const ::jaiabot::protobuf::GeographicCoordinate& _internal_location() const;
1616 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_location();
1617 public:
1618 void unsafe_arena_set_allocated_location(
1620 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_location();
1621
1622 // optional .jaiabot.protobuf.BotStatus.Attitude attitude = 20 [(.jaia.field) = {
1623 bool has_attitude() const;
1624 private:
1625 bool _internal_has_attitude() const;
1626 public:
1627 void clear_attitude();
1628 const ::jaiabot::protobuf::BotStatus_Attitude& attitude() const;
1629 PROTOBUF_NODISCARD ::jaiabot::protobuf::BotStatus_Attitude* release_attitude();
1630 ::jaiabot::protobuf::BotStatus_Attitude* mutable_attitude();
1631 void set_allocated_attitude(::jaiabot::protobuf::BotStatus_Attitude* attitude);
1632 private:
1633 const ::jaiabot::protobuf::BotStatus_Attitude& _internal_attitude() const;
1634 ::jaiabot::protobuf::BotStatus_Attitude* _internal_mutable_attitude();
1635 public:
1636 void unsafe_arena_set_allocated_attitude(
1638 ::jaiabot::protobuf::BotStatus_Attitude* unsafe_arena_release_attitude();
1639
1640 // optional .jaiabot.protobuf.BotStatus.Speed speed = 30 [(.jaia.field) = {
1641 bool has_speed() const;
1642 private:
1643 bool _internal_has_speed() const;
1644 public:
1645 void clear_speed();
1646 const ::jaiabot::protobuf::BotStatus_Speed& speed() const;
1647 PROTOBUF_NODISCARD ::jaiabot::protobuf::BotStatus_Speed* release_speed();
1648 ::jaiabot::protobuf::BotStatus_Speed* mutable_speed();
1649 void set_allocated_speed(::jaiabot::protobuf::BotStatus_Speed* speed);
1650 private:
1651 const ::jaiabot::protobuf::BotStatus_Speed& _internal_speed() const;
1652 ::jaiabot::protobuf::BotStatus_Speed* _internal_mutable_speed();
1653 public:
1654 void unsafe_arena_set_allocated_speed(
1656 ::jaiabot::protobuf::BotStatus_Speed* unsafe_arena_release_speed();
1657
1658 // required uint64 time = 2 [(.dccl.field) = {
1659 bool has_time() const;
1660 private:
1661 bool _internal_has_time() const;
1662 public:
1663 void clear_time();
1664 uint64_t time() const;
1665 void set_time(uint64_t value);
1666 private:
1667 uint64_t _internal_time() const;
1668 void _internal_set_time(uint64_t value);
1669 public:
1670
1671 // optional uint64 last_command_time = 3 [(.dccl.field) = {
1672 bool has_last_command_time() const;
1673 private:
1674 bool _internal_has_last_command_time() const;
1675 public:
1676 void clear_last_command_time();
1677 uint64_t last_command_time() const;
1678 void set_last_command_time(uint64_t value);
1679 private:
1680 uint64_t _internal_last_command_time() const;
1681 void _internal_set_last_command_time(uint64_t value);
1682 public:
1683
1684 // optional double sensor_depth = 11 [(.dccl.field) = {
1685 bool has_sensor_depth() const;
1686 private:
1687 bool _internal_has_sensor_depth() const;
1688 public:
1689 void clear_sensor_depth();
1690 double sensor_depth() const;
1691 void set_sensor_depth(double value);
1692 private:
1693 double _internal_sensor_depth() const;
1694 void _internal_set_sensor_depth(double value);
1695 public:
1696
1697 // optional double depth = 12 [(.dccl.field) = {
1698 bool has_depth() const;
1699 private:
1700 bool _internal_has_depth() const;
1701 public:
1702 void clear_depth();
1703 double depth() const;
1704 void set_depth(double value);
1705 private:
1706 double _internal_depth() const;
1707 void _internal_set_depth(double value);
1708 public:
1709
1710 // required uint32 bot_id = 1 [(.dccl.field) = {
1711 bool has_bot_id() const;
1712 private:
1713 bool _internal_has_bot_id() const;
1714 public:
1715 void clear_bot_id();
1716 uint32_t bot_id() const;
1717 void set_bot_id(uint32_t value);
1718 private:
1719 uint32_t _internal_bot_id() const;
1720 void _internal_set_bot_id(uint32_t value);
1721 public:
1722
1723 // optional .jaiabot.protobuf.MissionState mission_state = 40 [(.jaia.field) = {
1724 bool has_mission_state() const;
1725 private:
1726 bool _internal_has_mission_state() const;
1727 public:
1728 void clear_mission_state();
1729 ::jaiabot::protobuf::MissionState mission_state() const;
1730 void set_mission_state(::jaiabot::protobuf::MissionState value);
1731 private:
1732 ::jaiabot::protobuf::MissionState _internal_mission_state() const;
1733 void _internal_set_mission_state(::jaiabot::protobuf::MissionState value);
1734 public:
1735
1736 // optional double distance_to_active_goal = 42 [(.dccl.field) = {
1737 bool has_distance_to_active_goal() const;
1738 private:
1739 bool _internal_has_distance_to_active_goal() const;
1740 public:
1741 void clear_distance_to_active_goal();
1742 double distance_to_active_goal() const;
1743 void set_distance_to_active_goal(double value);
1744 private:
1745 double _internal_distance_to_active_goal() const;
1746 void _internal_set_distance_to_active_goal(double value);
1747 public:
1748
1749 // optional int32 active_goal = 41 [(.dccl.field) = {
1750 bool has_active_goal() const;
1751 private:
1752 bool _internal_has_active_goal() const;
1753 public:
1754 void clear_active_goal();
1755 int32_t active_goal() const;
1756 void set_active_goal(int32_t value);
1757 private:
1758 int32_t _internal_active_goal() const;
1759 void _internal_set_active_goal(int32_t value);
1760 public:
1761
1762 // optional uint32 active_goal_timeout = 43 [(.dccl.field) = {
1763 bool has_active_goal_timeout() const;
1764 private:
1765 bool _internal_has_active_goal_timeout() const;
1766 public:
1767 void clear_active_goal_timeout();
1768 uint32_t active_goal_timeout() const;
1769 void set_active_goal_timeout(uint32_t value);
1770 private:
1771 uint32_t _internal_active_goal_timeout() const;
1772 void _internal_set_active_goal_timeout(uint32_t value);
1773 public:
1774
1775 // optional int32 repeat_index = 44 [(.dccl.field) = {
1776 bool has_repeat_index() const;
1777 private:
1778 bool _internal_has_repeat_index() const;
1779 public:
1780 void clear_repeat_index();
1781 int32_t repeat_index() const;
1782 void set_repeat_index(int32_t value);
1783 private:
1784 int32_t _internal_repeat_index() const;
1785 void _internal_set_repeat_index(int32_t value);
1786 public:
1787
1788 // optional int32 calibration_status = 54 [(.dccl.field) = {
1789 bool has_calibration_status() const;
1790 private:
1791 bool _internal_has_calibration_status() const;
1792 public:
1793 void clear_calibration_status();
1794 int32_t calibration_status() const;
1795 void set_calibration_status(int32_t value);
1796 private:
1797 int32_t _internal_calibration_status() const;
1798 void _internal_set_calibration_status(int32_t value);
1799 public:
1800
1801 // optional double salinity = 51 [(.dccl.field) = {
1802 bool has_salinity() const;
1803 private:
1804 bool _internal_has_salinity() const;
1805 public:
1806 void clear_salinity();
1807 double salinity() const;
1808 void set_salinity(double value);
1809 private:
1810 double _internal_salinity() const;
1811 void _internal_set_salinity(double value);
1812 public:
1813
1814 // optional double temperature = 52 [(.dccl.field) = {
1815 bool has_temperature() const;
1816 private:
1817 bool _internal_has_temperature() const;
1818 public:
1819 void clear_temperature();
1820 double temperature() const;
1821 void set_temperature(double value);
1822 private:
1823 double _internal_temperature() const;
1824 void _internal_set_temperature(double value);
1825 public:
1826
1827 // optional double battery_percent = 53 [(.dccl.field) = {
1828 bool has_battery_percent() const;
1829 private:
1830 bool _internal_has_battery_percent() const;
1831 public:
1832 void clear_battery_percent();
1833 double battery_percent() const;
1834 void set_battery_percent(double value);
1835 private:
1836 double _internal_battery_percent() const;
1837 void _internal_set_battery_percent(double value);
1838 public:
1839
1840 // optional double hdop = 56 [(.dccl.field) = {
1841 bool has_hdop() const;
1842 private:
1843 bool _internal_has_hdop() const;
1844 public:
1845 void clear_hdop();
1846 double hdop() const;
1847 void set_hdop(double value);
1848 private:
1849 double _internal_hdop() const;
1850 void _internal_set_hdop(double value);
1851 public:
1852
1853 // optional double pdop = 57 [(.dccl.field) = {
1854 bool has_pdop() const;
1855 private:
1856 bool _internal_has_pdop() const;
1857 public:
1858 void clear_pdop();
1859 double pdop() const;
1860 void set_pdop(double value);
1861 private:
1862 double _internal_pdop() const;
1863 void _internal_set_pdop(double value);
1864 public:
1865
1866 // optional uint64 received_time = 59 [(.dccl.field) = {
1867 bool has_received_time() const;
1868 private:
1869 bool _internal_has_received_time() const;
1870 public:
1871 void clear_received_time();
1872 uint64_t received_time() const;
1873 void set_received_time(uint64_t value);
1874 private:
1875 uint64_t _internal_received_time() const;
1876 void _internal_set_received_time(uint64_t value);
1877 public:
1878
1879 // optional int32 wifi_link_quality_percentage = 58 [(.dccl.field) = {
1880 bool has_wifi_link_quality_percentage() const;
1881 private:
1882 bool _internal_has_wifi_link_quality_percentage() const;
1883 public:
1884 void clear_wifi_link_quality_percentage();
1885 int32_t wifi_link_quality_percentage() const;
1886 void set_wifi_link_quality_percentage(int32_t value);
1887 private:
1888 int32_t _internal_wifi_link_quality_percentage() const;
1889 void _internal_set_wifi_link_quality_percentage(int32_t value);
1890 public:
1891
1892 // optional .goby.middleware.protobuf.HealthState health_state = 4 [(.jaia.field) = {
1893 bool has_health_state() const;
1894 private:
1895 bool _internal_has_health_state() const;
1896 public:
1897 void clear_health_state();
1898 ::goby::middleware::protobuf::HealthState health_state() const;
1899 void set_health_state(::goby::middleware::protobuf::HealthState value);
1900 private:
1901 ::goby::middleware::protobuf::HealthState _internal_health_state() const;
1902 void _internal_set_health_state(::goby::middleware::protobuf::HealthState value);
1903 public:
1904
1905 // optional .jaiabot.protobuf.BotStatus.BotType bot_type = 7 [(.jaia.field) = {
1906 bool has_bot_type() const;
1907 private:
1908 bool _internal_has_bot_type() const;
1909 public:
1910 void clear_bot_type();
1912 void set_bot_type(::jaiabot::protobuf::BotStatus_BotType value);
1913 private:
1914 ::jaiabot::protobuf::BotStatus_BotType _internal_bot_type() const;
1915 void _internal_set_bot_type(::jaiabot::protobuf::BotStatus_BotType value);
1916 public:
1917
1918 // optional .jaiabot.protobuf.Link link = 8 [(.dccl.field) = {
1919 bool has_link() const;
1920 private:
1921 bool _internal_has_link() const;
1922 public:
1923 void clear_link();
1924 ::jaiabot::protobuf::Link link() const;
1925 void set_link(::jaiabot::protobuf::Link value);
1926 private:
1927 ::jaiabot::protobuf::Link _internal_link() const;
1928 void _internal_set_link(::jaiabot::protobuf::Link value);
1929 public:
1930
1931 // optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 55;
1932 bool has_calibration_state() const;
1933 private:
1934 bool _internal_has_calibration_state() const;
1935 public:
1936 void clear_calibration_state();
1937 ::jaiabot::protobuf::IMUCalibrationState calibration_state() const;
1938 void set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
1939 private:
1940 ::jaiabot::protobuf::IMUCalibrationState _internal_calibration_state() const;
1941 void _internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
1942 public:
1943
1944 enum DCCLParameters { DCCL_ID = 81, DCCL_MAX_BYTES = 250 };
1945 typedef boost::units::time_dimension time_dimension;
1946
1947 typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
1948
1949 template<typename Quantity >
1950 void set_time_with_units(Quantity value_w_units)
1951 { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
1952
1953 template<typename Quantity >
1954 Quantity time_with_units() const
1955 { return Quantity(time() * time_unit()); };
1956
1957 boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
1958 { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
1959
1960 typedef boost::units::time_dimension last_command_time_dimension;
1961
1962 typedef boost::units::make_scaled_unit<boost::units::unit<last_command_time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type last_command_time_unit;
1963
1964 template<typename Quantity >
1965 void set_last_command_time_with_units(Quantity value_w_units)
1966 { set_last_command_time(boost::units::quantity<last_command_time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
1967
1968 template<typename Quantity >
1970 { return Quantity(last_command_time() * last_command_time_unit()); };
1971
1972 boost::units::quantity< last_command_time_unit,google::protobuf::uint64 > last_command_time_with_units() const
1973 { return last_command_time_with_units<boost::units::quantity< last_command_time_unit,google::protobuf::uint64 > >(); };
1974
1975 typedef boost::units::length_dimension sensor_depth_dimension;
1976
1977 typedef boost::units::unit<sensor_depth_dimension,boost::units::si::system> sensor_depth_unit;
1978
1979 template<typename Quantity >
1980 void set_sensor_depth_with_units(Quantity value_w_units)
1981 { set_sensor_depth(boost::units::quantity<sensor_depth_unit,double >(value_w_units).value() ); };
1982
1983 template<typename Quantity >
1985 { return Quantity(sensor_depth() * sensor_depth_unit()); };
1986
1987 boost::units::quantity< sensor_depth_unit,double > sensor_depth_with_units() const
1988 { return sensor_depth_with_units<boost::units::quantity< sensor_depth_unit,double > >(); };
1989
1990 typedef boost::units::length_dimension depth_dimension;
1991
1992 typedef boost::units::unit<depth_dimension,boost::units::si::system> depth_unit;
1993
1994 template<typename Quantity >
1995 void set_depth_with_units(Quantity value_w_units)
1996 { set_depth(boost::units::quantity<depth_unit,double >(value_w_units).value() ); };
1997
1998 template<typename Quantity >
1999 Quantity depth_with_units() const
2000 { return Quantity(depth() * depth_unit()); };
2001
2002 boost::units::quantity< depth_unit,double > depth_with_units() const
2003 { return depth_with_units<boost::units::quantity< depth_unit,double > >(); };
2004
2005 typedef boost::units::length_dimension distance_to_active_goal_dimension;
2006
2007 typedef boost::units::unit<distance_to_active_goal_dimension,boost::units::si::system> distance_to_active_goal_unit;
2008
2009 template<typename Quantity >
2010 void set_distance_to_active_goal_with_units(Quantity value_w_units)
2011 { set_distance_to_active_goal(boost::units::quantity<distance_to_active_goal_unit,double >(value_w_units).value() ); };
2012
2013 template<typename Quantity >
2015 { return Quantity(distance_to_active_goal() * distance_to_active_goal_unit()); };
2016
2017 boost::units::quantity< distance_to_active_goal_unit,double > distance_to_active_goal_with_units() const
2018 { return distance_to_active_goal_with_units<boost::units::quantity< distance_to_active_goal_unit,double > >(); };
2019
2020 typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type active_goal_timeout_dimension;
2021
2022 typedef boost::units::unit<active_goal_timeout_dimension,boost::units::si::system> active_goal_timeout_unit;
2023
2024 template<typename Quantity >
2025 void set_active_goal_timeout_with_units(Quantity value_w_units)
2026 { set_active_goal_timeout(boost::units::quantity<active_goal_timeout_unit,google::protobuf::uint32 >(value_w_units).value() ); };
2027
2028 template<typename Quantity >
2030 { return Quantity(active_goal_timeout() * active_goal_timeout_unit()); };
2031
2032 boost::units::quantity< active_goal_timeout_unit,google::protobuf::uint32 > active_goal_timeout_with_units() const
2033 { return active_goal_timeout_with_units<boost::units::quantity< active_goal_timeout_unit,google::protobuf::uint32 > >(); };
2034
2035 typedef boost::units::temperature_dimension temperature_dimension;
2036
2037 typedef boost::units::absolute<boost::units::unit<temperature_dimension,boost::units::celsius::system> > temperature_unit;
2038
2039 template<typename Quantity >
2040 void set_temperature_with_units(Quantity value_w_units)
2041 { set_temperature(boost::units::quantity<temperature_unit,double >(value_w_units).value() ); };
2042
2043 template<typename Quantity >
2044 Quantity temperature_with_units() const
2045 { return Quantity(temperature() * temperature_unit()); };
2046
2047 boost::units::quantity< temperature_unit,double > temperature_with_units() const
2048 { return temperature_with_units<boost::units::quantity< temperature_unit,double > >(); };
2049
2050 typedef boost::units::time_dimension received_time_dimension;
2051
2052 typedef boost::units::make_scaled_unit<boost::units::unit<received_time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type received_time_unit;
2053
2054 template<typename Quantity >
2055 void set_received_time_with_units(Quantity value_w_units)
2056 { set_received_time(boost::units::quantity<received_time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
2057
2058 template<typename Quantity >
2060 { return Quantity(received_time() * received_time_unit()); };
2061
2062 boost::units::quantity< received_time_unit,google::protobuf::uint64 > received_time_with_units() const
2063 { return received_time_with_units<boost::units::quantity< received_time_unit,google::protobuf::uint64 > >(); };
2064
2065 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.BotStatus)
2066 private:
2067 class _Internal;
2068
2069 // helper for ByteSizeLong()
2070 size_t RequiredFieldsByteSizeFallback() const;
2071
2072 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2073 typedef void InternalArenaConstructable_;
2074 typedef void DestructorSkippable_;
2075 struct Impl_ {
2076 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2077 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2078 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> error_;
2079 ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> warning_;
2083 uint64_t time_;
2084 uint64_t last_command_time_;
2085 double sensor_depth_;
2086 double depth_;
2087 uint32_t bot_id_;
2088 int mission_state_;
2089 double distance_to_active_goal_;
2090 int32_t active_goal_;
2091 uint32_t active_goal_timeout_;
2092 int32_t repeat_index_;
2093 int32_t calibration_status_;
2094 double salinity_;
2095 double temperature_;
2096 double battery_percent_;
2097 double hdop_;
2098 double pdop_;
2099 uint64_t received_time_;
2100 int32_t wifi_link_quality_percentage_;
2101 int health_state_;
2102 int bot_type_;
2103 int link_;
2104 int calibration_state_;
2105 };
2106 union { Impl_ _impl_; };
2107 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
2108};
2109// -------------------------------------------------------------------
2110
2112 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.DriftPacket.EstimatedDrift) */ {
2113 public:
2116 explicit PROTOBUF_CONSTEXPR DriftPacket_EstimatedDrift(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
2117
2121 *this = ::std::move(from);
2122 }
2123
2125 CopyFrom(from);
2126 return *this;
2127 }
2129 if (this == &from) return *this;
2130 if (GetOwningArena() == from.GetOwningArena()
2131 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
2132 && GetOwningArena() != nullptr
2133 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
2134 ) {
2135 InternalSwap(&from);
2136 } else {
2137 CopyFrom(from);
2138 }
2139 return *this;
2140 }
2141
2142 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2143 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2144 }
2145 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2146 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2147 }
2148
2149 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2150 return GetDescriptor();
2151 }
2152 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2153 return default_instance().GetMetadata().descriptor;
2154 }
2155 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2156 return default_instance().GetMetadata().reflection;
2157 }
2159 return *internal_default_instance();
2160 }
2165 static constexpr int kIndexInFileMessages =
2166 5;
2167
2169 a.Swap(&b);
2170 }
2171 inline void Swap(DriftPacket_EstimatedDrift* other) {
2172 if (other == this) return;
2173 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
2174 if (GetOwningArena() != nullptr &&
2175 GetOwningArena() == other->GetOwningArena()) {
2176 #else // PROTOBUF_FORCE_COPY_IN_SWAP
2177 if (GetOwningArena() == other->GetOwningArena()) {
2178 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
2179 InternalSwap(other);
2180 } else {
2181 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2182 }
2183 }
2185 if (other == this) return;
2186 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
2187 InternalSwap(other);
2188 }
2189
2190 // implements Message ----------------------------------------------
2191
2192 DriftPacket_EstimatedDrift* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2193 return CreateMaybeMessage<DriftPacket_EstimatedDrift>(arena);
2194 }
2195 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2197 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2199 DriftPacket_EstimatedDrift::MergeImpl(*this, from);
2200 }
2201 private:
2202 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2203 public:
2204 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2205 bool IsInitialized() const final;
2206
2207 size_t ByteSizeLong() const final;
2208 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2209 uint8_t* _InternalSerialize(
2210 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2211 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2212
2213 private:
2214 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2215 void SharedDtor();
2216 void SetCachedSize(int size) const final;
2217 void InternalSwap(DriftPacket_EstimatedDrift* other);
2218
2219 private:
2220 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2221 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2222 return "jaiabot.protobuf.DriftPacket.EstimatedDrift";
2223 }
2224 protected:
2225 explicit DriftPacket_EstimatedDrift(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2226 bool is_message_owned = false);
2227 public:
2228
2229 static const ClassData _class_data_;
2230 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2231
2232 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2233
2234 // nested types ----------------------------------------------------
2235
2236 // accessors -------------------------------------------------------
2237
2238 enum : int {
2239 kSpeedFieldNumber = 1,
2240 kHeadingFieldNumber = 3,
2241 };
2242 // required double speed = 1 [(.dccl.field) = {
2243 bool has_speed() const;
2244 private:
2245 bool _internal_has_speed() const;
2246 public:
2247 void clear_speed();
2248 double speed() const;
2249 void set_speed(double value);
2250 private:
2251 double _internal_speed() const;
2252 void _internal_set_speed(double value);
2253 public:
2254
2255 // optional double heading = 3 [(.dccl.field) = {
2256 bool has_heading() const;
2257 private:
2258 bool _internal_has_heading() const;
2259 public:
2260 void clear_heading();
2261 double heading() const;
2262 void set_heading(double value);
2263 private:
2264 double _internal_heading() const;
2265 void _internal_set_heading(double value);
2266 public:
2267
2268 typedef boost::units::velocity_dimension speed_dimension;
2269
2270 typedef boost::units::unit<speed_dimension,boost::units::si::system> speed_unit;
2271
2272 template<typename Quantity >
2273 void set_speed_with_units(Quantity value_w_units)
2274 { set_speed(boost::units::quantity<speed_unit,double >(value_w_units).value() ); };
2275
2276 template<typename Quantity >
2277 Quantity speed_with_units() const
2278 { return Quantity(speed() * speed_unit()); };
2279
2280 boost::units::quantity< speed_unit,double > speed_with_units() const
2281 { return speed_with_units<boost::units::quantity< speed_unit,double > >(); };
2282
2283 typedef boost::units::plane_angle_dimension heading_dimension;
2284
2285 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
2286
2287 template<typename Quantity >
2288 void set_heading_with_units(Quantity value_w_units)
2289 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
2290
2291 template<typename Quantity >
2292 Quantity heading_with_units() const
2293 { return Quantity(heading() * heading_unit()); };
2294
2295 boost::units::quantity< heading_unit,double > heading_with_units() const
2296 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
2297
2298 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.DriftPacket.EstimatedDrift)
2299 private:
2300 class _Internal;
2301
2302 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2303 typedef void InternalArenaConstructable_;
2304 typedef void DestructorSkippable_;
2305 struct Impl_ {
2306 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2307 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2308 double speed_;
2309 double heading_;
2310 };
2311 union { Impl_ _impl_; };
2312 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
2313};
2314// -------------------------------------------------------------------
2315
2316class DriftPacket final :
2317 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.DriftPacket) */ {
2318 public:
2319 inline DriftPacket() : DriftPacket(nullptr) {}
2320 ~DriftPacket() override;
2321 explicit PROTOBUF_CONSTEXPR DriftPacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
2322
2324 DriftPacket(DriftPacket&& from) noexcept
2325 : DriftPacket() {
2326 *this = ::std::move(from);
2327 }
2328
2329 inline DriftPacket& operator=(const DriftPacket& from) {
2330 CopyFrom(from);
2331 return *this;
2332 }
2333 inline DriftPacket& operator=(DriftPacket&& from) noexcept {
2334 if (this == &from) return *this;
2335 if (GetOwningArena() == from.GetOwningArena()
2336 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
2337 && GetOwningArena() != nullptr
2338 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
2339 ) {
2340 InternalSwap(&from);
2341 } else {
2342 CopyFrom(from);
2343 }
2344 return *this;
2345 }
2346
2347 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2348 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2349 }
2350 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2351 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2352 }
2353
2354 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2355 return GetDescriptor();
2356 }
2357 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2358 return default_instance().GetMetadata().descriptor;
2359 }
2360 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2361 return default_instance().GetMetadata().reflection;
2362 }
2364 return *internal_default_instance();
2365 }
2367 return reinterpret_cast<const DriftPacket*>(
2369 }
2370 static constexpr int kIndexInFileMessages =
2371 6;
2372
2373 friend void swap(DriftPacket& a, DriftPacket& b) {
2374 a.Swap(&b);
2375 }
2376 inline void Swap(DriftPacket* other) {
2377 if (other == this) return;
2378 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
2379 if (GetOwningArena() != nullptr &&
2380 GetOwningArena() == other->GetOwningArena()) {
2381 #else // PROTOBUF_FORCE_COPY_IN_SWAP
2382 if (GetOwningArena() == other->GetOwningArena()) {
2383 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
2384 InternalSwap(other);
2385 } else {
2386 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2387 }
2388 }
2390 if (other == this) return;
2391 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
2392 InternalSwap(other);
2393 }
2394
2395 // implements Message ----------------------------------------------
2396
2397 DriftPacket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2398 return CreateMaybeMessage<DriftPacket>(arena);
2399 }
2400 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2401 void CopyFrom(const DriftPacket& from);
2402 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2403 void MergeFrom( const DriftPacket& from) {
2404 DriftPacket::MergeImpl(*this, from);
2405 }
2406 private:
2407 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2408 public:
2409 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2410 bool IsInitialized() const final;
2411
2412 size_t ByteSizeLong() const final;
2413 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2414 uint8_t* _InternalSerialize(
2415 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2416 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2417
2418 private:
2419 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2420 void SharedDtor();
2421 void SetCachedSize(int size) const final;
2422 void InternalSwap(DriftPacket* other);
2423
2424 private:
2425 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2426 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2427 return "jaiabot.protobuf.DriftPacket";
2428 }
2429 protected:
2430 explicit DriftPacket(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2431 bool is_message_owned = false);
2432 public:
2433
2434 static const ClassData _class_data_;
2435 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2436
2437 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2438
2439 // nested types ----------------------------------------------------
2440
2442
2443 // accessors -------------------------------------------------------
2444
2445 enum : int {
2446 kEstimatedDriftFieldNumber = 10,
2447 kStartLocationFieldNumber = 11,
2448 kEndLocationFieldNumber = 12,
2449 kSignificantWaveHeightFieldNumber = 13,
2450 kDriftDurationFieldNumber = 1,
2451 };
2452 // optional .jaiabot.protobuf.DriftPacket.EstimatedDrift estimated_drift = 10 [(.jaia.field) = {
2453 bool has_estimated_drift() const;
2454 private:
2455 bool _internal_has_estimated_drift() const;
2456 public:
2457 void clear_estimated_drift();
2458 const ::jaiabot::protobuf::DriftPacket_EstimatedDrift& estimated_drift() const;
2459 PROTOBUF_NODISCARD ::jaiabot::protobuf::DriftPacket_EstimatedDrift* release_estimated_drift();
2460 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* mutable_estimated_drift();
2461 void set_allocated_estimated_drift(::jaiabot::protobuf::DriftPacket_EstimatedDrift* estimated_drift);
2462 private:
2463 const ::jaiabot::protobuf::DriftPacket_EstimatedDrift& _internal_estimated_drift() const;
2464 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* _internal_mutable_estimated_drift();
2465 public:
2466 void unsafe_arena_set_allocated_estimated_drift(
2468 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* unsafe_arena_release_estimated_drift();
2469
2470 // optional .jaiabot.protobuf.GeographicCoordinate start_location = 11 [(.jaia.field) = {
2471 bool has_start_location() const;
2472 private:
2473 bool _internal_has_start_location() const;
2474 public:
2476 const ::jaiabot::protobuf::GeographicCoordinate& start_location() const;
2477 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_start_location();
2478 ::jaiabot::protobuf::GeographicCoordinate* mutable_start_location();
2479 void set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location);
2480 private:
2481 const ::jaiabot::protobuf::GeographicCoordinate& _internal_start_location() const;
2482 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_start_location();
2483 public:
2484 void unsafe_arena_set_allocated_start_location(
2486 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_start_location();
2487
2488 // optional .jaiabot.protobuf.GeographicCoordinate end_location = 12 [(.jaia.field) = {
2489 bool has_end_location() const;
2490 private:
2491 bool _internal_has_end_location() const;
2492 public:
2494 const ::jaiabot::protobuf::GeographicCoordinate& end_location() const;
2495 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_end_location();
2496 ::jaiabot::protobuf::GeographicCoordinate* mutable_end_location();
2497 void set_allocated_end_location(::jaiabot::protobuf::GeographicCoordinate* end_location);
2498 private:
2499 const ::jaiabot::protobuf::GeographicCoordinate& _internal_end_location() const;
2500 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_end_location();
2501 public:
2502 void unsafe_arena_set_allocated_end_location(
2504 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_end_location();
2505
2506 // optional double significant_wave_height = 13 [(.dccl.field) = {
2507 bool has_significant_wave_height() const;
2508 private:
2509 bool _internal_has_significant_wave_height() const;
2510 public:
2511 void clear_significant_wave_height();
2512 double significant_wave_height() const;
2513 void set_significant_wave_height(double value);
2514 private:
2515 double _internal_significant_wave_height() const;
2516 void _internal_set_significant_wave_height(double value);
2517 public:
2518
2519 // optional int32 drift_duration = 1 [default = 0, (.dccl.field) = {
2520 bool has_drift_duration() const;
2521 private:
2522 bool _internal_has_drift_duration() const;
2523 public:
2524 void clear_drift_duration();
2525 int32_t drift_duration() const;
2526 void set_drift_duration(int32_t value);
2527 private:
2528 int32_t _internal_drift_duration() const;
2529 void _internal_set_drift_duration(int32_t value);
2530 public:
2531
2532 typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type drift_duration_dimension;
2533
2534 typedef boost::units::unit<drift_duration_dimension,boost::units::si::system> drift_duration_unit;
2535
2536 template<typename Quantity >
2537 void set_drift_duration_with_units(Quantity value_w_units)
2538 { set_drift_duration(boost::units::quantity<drift_duration_unit,google::protobuf::int32 >(value_w_units).value() ); };
2539
2540 template<typename Quantity >
2542 { return Quantity(drift_duration() * drift_duration_unit()); };
2543
2544 boost::units::quantity< drift_duration_unit,google::protobuf::int32 > drift_duration_with_units() const
2545 { return drift_duration_with_units<boost::units::quantity< drift_duration_unit,google::protobuf::int32 > >(); };
2546
2547 typedef boost::units::length_dimension significant_wave_height_dimension;
2548
2549 typedef boost::units::unit<significant_wave_height_dimension,boost::units::si::system> significant_wave_height_unit;
2550
2551 template<typename Quantity >
2552 void set_significant_wave_height_with_units(Quantity value_w_units)
2553 { set_significant_wave_height(boost::units::quantity<significant_wave_height_unit,double >(value_w_units).value() ); };
2554
2555 template<typename Quantity >
2557 { return Quantity(significant_wave_height() * significant_wave_height_unit()); };
2558
2559 boost::units::quantity< significant_wave_height_unit,double > significant_wave_height_with_units() const
2560 { return significant_wave_height_with_units<boost::units::quantity< significant_wave_height_unit,double > >(); };
2561
2562 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.DriftPacket)
2563 private:
2564 class _Internal;
2565
2566 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2567 typedef void InternalArenaConstructable_;
2568 typedef void DestructorSkippable_;
2569 struct Impl_ {
2570 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2571 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2575 double significant_wave_height_;
2576 int32_t drift_duration_;
2577 };
2578 union { Impl_ _impl_; };
2579 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
2580};
2581// -------------------------------------------------------------------
2582
2584 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.DivePacket.Measurements) */ {
2585 public:
2588 explicit PROTOBUF_CONSTEXPR DivePacket_Measurements(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
2589
2593 *this = ::std::move(from);
2594 }
2595
2597 CopyFrom(from);
2598 return *this;
2599 }
2601 if (this == &from) return *this;
2602 if (GetOwningArena() == from.GetOwningArena()
2603 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
2604 && GetOwningArena() != nullptr
2605 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
2606 ) {
2607 InternalSwap(&from);
2608 } else {
2609 CopyFrom(from);
2610 }
2611 return *this;
2612 }
2613
2614 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2615 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2616 }
2617 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2618 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2619 }
2620
2621 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2622 return GetDescriptor();
2623 }
2624 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2625 return default_instance().GetMetadata().descriptor;
2626 }
2627 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2628 return default_instance().GetMetadata().reflection;
2629 }
2631 return *internal_default_instance();
2632 }
2634 return reinterpret_cast<const DivePacket_Measurements*>(
2636 }
2637 static constexpr int kIndexInFileMessages =
2638 7;
2639
2641 a.Swap(&b);
2642 }
2643 inline void Swap(DivePacket_Measurements* other) {
2644 if (other == this) return;
2645 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
2646 if (GetOwningArena() != nullptr &&
2647 GetOwningArena() == other->GetOwningArena()) {
2648 #else // PROTOBUF_FORCE_COPY_IN_SWAP
2649 if (GetOwningArena() == other->GetOwningArena()) {
2650 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
2651 InternalSwap(other);
2652 } else {
2653 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2654 }
2655 }
2657 if (other == this) return;
2658 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
2659 InternalSwap(other);
2660 }
2661
2662 // implements Message ----------------------------------------------
2663
2664 DivePacket_Measurements* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2665 return CreateMaybeMessage<DivePacket_Measurements>(arena);
2666 }
2667 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2669 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2671 DivePacket_Measurements::MergeImpl(*this, from);
2672 }
2673 private:
2674 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2675 public:
2676 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2677 bool IsInitialized() const final;
2678
2679 size_t ByteSizeLong() const final;
2680 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2681 uint8_t* _InternalSerialize(
2682 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2683 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2684
2685 private:
2686 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2687 void SharedDtor();
2688 void SetCachedSize(int size) const final;
2689 void InternalSwap(DivePacket_Measurements* other);
2690
2691 private:
2692 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2693 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2694 return "jaiabot.protobuf.DivePacket.Measurements";
2695 }
2696 protected:
2697 explicit DivePacket_Measurements(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2698 bool is_message_owned = false);
2699 public:
2700
2701 static const ClassData _class_data_;
2702 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2703
2704 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2705
2706 // nested types ----------------------------------------------------
2707
2708 // accessors -------------------------------------------------------
2709
2710 enum : int {
2711 kMeanDepthFieldNumber = 1,
2712 kMeanTemperatureFieldNumber = 2,
2713 kMeanSalinityFieldNumber = 3,
2714 };
2715 // optional double mean_depth = 1 [(.dccl.field) = {
2716 bool has_mean_depth() const;
2717 private:
2718 bool _internal_has_mean_depth() const;
2719 public:
2720 void clear_mean_depth();
2721 double mean_depth() const;
2722 void set_mean_depth(double value);
2723 private:
2724 double _internal_mean_depth() const;
2725 void _internal_set_mean_depth(double value);
2726 public:
2727
2728 // optional double mean_temperature = 2 [(.dccl.field) = {
2729 bool has_mean_temperature() const;
2730 private:
2731 bool _internal_has_mean_temperature() const;
2732 public:
2733 void clear_mean_temperature();
2734 double mean_temperature() const;
2735 void set_mean_temperature(double value);
2736 private:
2737 double _internal_mean_temperature() const;
2738 void _internal_set_mean_temperature(double value);
2739 public:
2740
2741 // optional double mean_salinity = 3 [(.dccl.field) = {
2742 bool has_mean_salinity() const;
2743 private:
2744 bool _internal_has_mean_salinity() const;
2745 public:
2746 void clear_mean_salinity();
2747 double mean_salinity() const;
2748 void set_mean_salinity(double value);
2749 private:
2750 double _internal_mean_salinity() const;
2751 void _internal_set_mean_salinity(double value);
2752 public:
2753
2754 typedef boost::units::length_dimension mean_depth_dimension;
2755
2756 typedef boost::units::unit<mean_depth_dimension,boost::units::si::system> mean_depth_unit;
2757
2758 template<typename Quantity >
2759 void set_mean_depth_with_units(Quantity value_w_units)
2760 { set_mean_depth(boost::units::quantity<mean_depth_unit,double >(value_w_units).value() ); };
2761
2762 template<typename Quantity >
2763 Quantity mean_depth_with_units() const
2764 { return Quantity(mean_depth() * mean_depth_unit()); };
2765
2766 boost::units::quantity< mean_depth_unit,double > mean_depth_with_units() const
2767 { return mean_depth_with_units<boost::units::quantity< mean_depth_unit,double > >(); };
2768
2769 typedef boost::units::temperature_dimension mean_temperature_dimension;
2770
2771 typedef boost::units::absolute<boost::units::unit<mean_temperature_dimension,boost::units::celsius::system> > mean_temperature_unit;
2772
2773 template<typename Quantity >
2774 void set_mean_temperature_with_units(Quantity value_w_units)
2775 { set_mean_temperature(boost::units::quantity<mean_temperature_unit,double >(value_w_units).value() ); };
2776
2777 template<typename Quantity >
2779 { return Quantity(mean_temperature() * mean_temperature_unit()); };
2780
2781 boost::units::quantity< mean_temperature_unit,double > mean_temperature_with_units() const
2782 { return mean_temperature_with_units<boost::units::quantity< mean_temperature_unit,double > >(); };
2783
2784 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.DivePacket.Measurements)
2785 private:
2786 class _Internal;
2787
2788 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2789 typedef void InternalArenaConstructable_;
2790 typedef void DestructorSkippable_;
2791 struct Impl_ {
2792 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2793 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2794 double mean_depth_;
2795 double mean_temperature_;
2796 double mean_salinity_;
2797 };
2798 union { Impl_ _impl_; };
2799 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
2800};
2801// -------------------------------------------------------------------
2802
2804 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector) */ {
2805 public:
2808 explicit PROTOBUF_CONSTEXPR DivePacket_SubsurfaceCurrentVector(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
2809
2815
2817 CopyFrom(from);
2818 return *this;
2819 }
2821 if (this == &from) return *this;
2822 if (GetOwningArena() == from.GetOwningArena()
2823 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
2824 && GetOwningArena() != nullptr
2825 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
2826 ) {
2827 InternalSwap(&from);
2828 } else {
2829 CopyFrom(from);
2830 }
2831 return *this;
2832 }
2833
2834 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2835 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2836 }
2837 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2838 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2839 }
2840
2841 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2842 return GetDescriptor();
2843 }
2844 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2845 return default_instance().GetMetadata().descriptor;
2846 }
2847 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2848 return default_instance().GetMetadata().reflection;
2849 }
2851 return *internal_default_instance();
2852 }
2857 static constexpr int kIndexInFileMessages =
2858 8;
2859
2864 if (other == this) return;
2865 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
2866 if (GetOwningArena() != nullptr &&
2867 GetOwningArena() == other->GetOwningArena()) {
2868 #else // PROTOBUF_FORCE_COPY_IN_SWAP
2869 if (GetOwningArena() == other->GetOwningArena()) {
2870 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
2871 InternalSwap(other);
2872 } else {
2873 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2874 }
2875 }
2877 if (other == this) return;
2878 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
2879 InternalSwap(other);
2880 }
2881
2882 // implements Message ----------------------------------------------
2883
2884 DivePacket_SubsurfaceCurrentVector* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2885 return CreateMaybeMessage<DivePacket_SubsurfaceCurrentVector>(arena);
2886 }
2887 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2889 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2891 DivePacket_SubsurfaceCurrentVector::MergeImpl(*this, from);
2892 }
2893 private:
2894 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2895 public:
2896 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2897 bool IsInitialized() const final;
2898
2899 size_t ByteSizeLong() const final;
2900 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2901 uint8_t* _InternalSerialize(
2902 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2903 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2904
2905 private:
2906 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2907 void SharedDtor();
2908 void SetCachedSize(int size) const final;
2909 void InternalSwap(DivePacket_SubsurfaceCurrentVector* other);
2910
2911 private:
2912 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2913 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2914 return "jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector";
2915 }
2916 protected:
2917 explicit DivePacket_SubsurfaceCurrentVector(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2918 bool is_message_owned = false);
2919 public:
2920
2921 static const ClassData _class_data_;
2922 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2923
2924 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2925
2926 // nested types ----------------------------------------------------
2927
2928 // accessors -------------------------------------------------------
2929
2930 enum : int {
2931 kVelocityFieldNumber = 1,
2932 kHeadingFieldNumber = 2,
2933 };
2934 // required double velocity = 1 [(.dccl.field) = {
2935 bool has_velocity() const;
2936 private:
2937 bool _internal_has_velocity() const;
2938 public:
2939 void clear_velocity();
2940 double velocity() const;
2941 void set_velocity(double value);
2942 private:
2943 double _internal_velocity() const;
2944 void _internal_set_velocity(double value);
2945 public:
2946
2947 // required double heading = 2 [(.dccl.field) = {
2948 bool has_heading() const;
2949 private:
2950 bool _internal_has_heading() const;
2951 public:
2952 void clear_heading();
2953 double heading() const;
2954 void set_heading(double value);
2955 private:
2956 double _internal_heading() const;
2957 void _internal_set_heading(double value);
2958 public:
2959
2960 typedef boost::units::velocity_dimension velocity_dimension;
2961
2962 typedef boost::units::unit<velocity_dimension,boost::units::si::system> velocity_unit;
2963
2964 template<typename Quantity >
2965 void set_velocity_with_units(Quantity value_w_units)
2966 { set_velocity(boost::units::quantity<velocity_unit,double >(value_w_units).value() ); };
2967
2968 template<typename Quantity >
2969 Quantity velocity_with_units() const
2970 { return Quantity(velocity() * velocity_unit()); };
2971
2972 boost::units::quantity< velocity_unit,double > velocity_with_units() const
2973 { return velocity_with_units<boost::units::quantity< velocity_unit,double > >(); };
2974
2975 typedef boost::units::plane_angle_dimension heading_dimension;
2976
2977 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
2978
2979 template<typename Quantity >
2980 void set_heading_with_units(Quantity value_w_units)
2981 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
2982
2983 template<typename Quantity >
2984 Quantity heading_with_units() const
2985 { return Quantity(heading() * heading_unit()); };
2986
2987 boost::units::quantity< heading_unit,double > heading_with_units() const
2988 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
2989
2990 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector)
2991 private:
2992 class _Internal;
2993
2994 // helper for ByteSizeLong()
2995 size_t RequiredFieldsByteSizeFallback() const;
2996
2997 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2998 typedef void InternalArenaConstructable_;
2999 typedef void DestructorSkippable_;
3000 struct Impl_ {
3001 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3002 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3003 double velocity_;
3004 double heading_;
3005 };
3006 union { Impl_ _impl_; };
3007 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
3008};
3009// -------------------------------------------------------------------
3010
3011class DivePacket final :
3012 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.DivePacket) */ {
3013 public:
3014 inline DivePacket() : DivePacket(nullptr) {}
3015 ~DivePacket() override;
3016 explicit PROTOBUF_CONSTEXPR DivePacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
3017
3019 DivePacket(DivePacket&& from) noexcept
3020 : DivePacket() {
3021 *this = ::std::move(from);
3022 }
3023
3024 inline DivePacket& operator=(const DivePacket& from) {
3025 CopyFrom(from);
3026 return *this;
3027 }
3028 inline DivePacket& operator=(DivePacket&& from) noexcept {
3029 if (this == &from) return *this;
3030 if (GetOwningArena() == from.GetOwningArena()
3031 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
3032 && GetOwningArena() != nullptr
3033 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
3034 ) {
3035 InternalSwap(&from);
3036 } else {
3037 CopyFrom(from);
3038 }
3039 return *this;
3040 }
3041
3042 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3043 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3044 }
3045 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3046 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3047 }
3048
3049 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3050 return GetDescriptor();
3051 }
3052 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3053 return default_instance().GetMetadata().descriptor;
3054 }
3055 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3056 return default_instance().GetMetadata().reflection;
3057 }
3059 return *internal_default_instance();
3060 }
3061 static inline const DivePacket* internal_default_instance() {
3062 return reinterpret_cast<const DivePacket*>(
3064 }
3065 static constexpr int kIndexInFileMessages =
3066 9;
3067
3068 friend void swap(DivePacket& a, DivePacket& b) {
3069 a.Swap(&b);
3070 }
3071 inline void Swap(DivePacket* other) {
3072 if (other == this) return;
3073 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
3074 if (GetOwningArena() != nullptr &&
3075 GetOwningArena() == other->GetOwningArena()) {
3076 #else // PROTOBUF_FORCE_COPY_IN_SWAP
3077 if (GetOwningArena() == other->GetOwningArena()) {
3078 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
3079 InternalSwap(other);
3080 } else {
3081 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3082 }
3083 }
3085 if (other == this) return;
3086 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
3087 InternalSwap(other);
3088 }
3089
3090 // implements Message ----------------------------------------------
3091
3092 DivePacket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
3093 return CreateMaybeMessage<DivePacket>(arena);
3094 }
3095 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
3096 void CopyFrom(const DivePacket& from);
3097 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
3098 void MergeFrom( const DivePacket& from) {
3099 DivePacket::MergeImpl(*this, from);
3100 }
3101 private:
3102 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
3103 public:
3104 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3105 bool IsInitialized() const final;
3106
3107 size_t ByteSizeLong() const final;
3108 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3109 uint8_t* _InternalSerialize(
3110 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3111 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
3112
3113 private:
3114 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
3115 void SharedDtor();
3116 void SetCachedSize(int size) const final;
3117 void InternalSwap(DivePacket* other);
3118
3119 private:
3120 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3121 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3122 return "jaiabot.protobuf.DivePacket";
3123 }
3124 protected:
3125 explicit DivePacket(::PROTOBUF_NAMESPACE_ID::Arena* arena,
3126 bool is_message_owned = false);
3127 public:
3128
3129 static const ClassData _class_data_;
3130 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
3131
3132 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3133
3134 // nested types ----------------------------------------------------
3135
3138
3140 static constexpr BottomType HARD =
3141 DivePacket_BottomType_HARD;
3142 static constexpr BottomType SOFT =
3143 DivePacket_BottomType_SOFT;
3144 static inline bool BottomType_IsValid(int value) {
3145 return DivePacket_BottomType_IsValid(value);
3146 }
3147 static constexpr BottomType BottomType_MIN =
3149 static constexpr BottomType BottomType_MAX =
3151 static constexpr int BottomType_ARRAYSIZE =
3153 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
3157 template<typename T>
3158 static inline const std::string& BottomType_Name(T enum_t_value) {
3159 static_assert(::std::is_same<T, BottomType>::value ||
3160 ::std::is_integral<T>::value,
3161 "Incorrect type passed to function BottomType_Name.");
3162 return DivePacket_BottomType_Name(enum_t_value);
3163 }
3164 static inline bool BottomType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
3165 BottomType* value) {
3166 return DivePacket_BottomType_Parse(name, value);
3167 }
3168
3169 // accessors -------------------------------------------------------
3170
3171 enum : int {
3172 kMeasurementFieldNumber = 14,
3173 kStartLocationFieldNumber = 15,
3174 kSubsurfaceCurrentFieldNumber = 21,
3175 kDiveRateFieldNumber = 10,
3176 kUnpoweredRiseRateFieldNumber = 11,
3177 kPoweredRiseRateFieldNumber = 12,
3178 kDepthAchievedFieldNumber = 13,
3179 kDurationToAcquireGpsFieldNumber = 16,
3180 kMaxAccelerationFieldNumber = 20,
3181 kBottomDiveFieldNumber = 17,
3182 kReachedMinDepthFieldNumber = 18,
3183 kBottomTypeFieldNumber = 19,
3184 };
3185 // repeated .jaiabot.protobuf.DivePacket.Measurements measurement = 14 [(.dccl.field) = {
3186 int measurement_size() const;
3187 private:
3188 int _internal_measurement_size() const;
3189 public:
3190 void clear_measurement();
3191 ::jaiabot::protobuf::DivePacket_Measurements* mutable_measurement(int index);
3192 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::DivePacket_Measurements >*
3193 mutable_measurement();
3194 private:
3195 const ::jaiabot::protobuf::DivePacket_Measurements& _internal_measurement(int index) const;
3196 ::jaiabot::protobuf::DivePacket_Measurements* _internal_add_measurement();
3197 public:
3198 const ::jaiabot::protobuf::DivePacket_Measurements& measurement(int index) const;
3200 const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::DivePacket_Measurements >&
3201 measurement() const;
3202
3203 // optional .jaiabot.protobuf.GeographicCoordinate start_location = 15 [(.jaia.field) = {
3204 bool has_start_location() const;
3205 private:
3206 bool _internal_has_start_location() const;
3207 public:
3209 const ::jaiabot::protobuf::GeographicCoordinate& start_location() const;
3210 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_start_location();
3211 ::jaiabot::protobuf::GeographicCoordinate* mutable_start_location();
3212 void set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location);
3213 private:
3214 const ::jaiabot::protobuf::GeographicCoordinate& _internal_start_location() const;
3215 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_start_location();
3216 public:
3217 void unsafe_arena_set_allocated_start_location(
3219 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_start_location();
3220
3221 // optional .jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector subsurface_current = 21 [(.jaia.field) = {
3222 bool has_subsurface_current() const;
3223 private:
3224 bool _internal_has_subsurface_current() const;
3225 public:
3226 void clear_subsurface_current();
3227 const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector& subsurface_current() const;
3228 PROTOBUF_NODISCARD ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* release_subsurface_current();
3229 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* mutable_subsurface_current();
3230 void set_allocated_subsurface_current(::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* subsurface_current);
3231 private:
3232 const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector& _internal_subsurface_current() const;
3233 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* _internal_mutable_subsurface_current();
3234 public:
3235 void unsafe_arena_set_allocated_subsurface_current(
3237 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* unsafe_arena_release_subsurface_current();
3238
3239 // required double dive_rate = 10 [(.dccl.field) = {
3240 bool has_dive_rate() const;
3241 private:
3242 bool _internal_has_dive_rate() const;
3243 public:
3244 void clear_dive_rate();
3245 double dive_rate() const;
3246 void set_dive_rate(double value);
3247 private:
3248 double _internal_dive_rate() const;
3249 void _internal_set_dive_rate(double value);
3250 public:
3251
3252 // optional double unpowered_rise_rate = 11 [(.dccl.field) = {
3253 bool has_unpowered_rise_rate() const;
3254 private:
3255 bool _internal_has_unpowered_rise_rate() const;
3256 public:
3257 void clear_unpowered_rise_rate();
3258 double unpowered_rise_rate() const;
3259 void set_unpowered_rise_rate(double value);
3260 private:
3261 double _internal_unpowered_rise_rate() const;
3262 void _internal_set_unpowered_rise_rate(double value);
3263 public:
3264
3265 // optional double powered_rise_rate = 12 [(.dccl.field) = {
3266 bool has_powered_rise_rate() const;
3267 private:
3268 bool _internal_has_powered_rise_rate() const;
3269 public:
3270 void clear_powered_rise_rate();
3271 double powered_rise_rate() const;
3272 void set_powered_rise_rate(double value);
3273 private:
3274 double _internal_powered_rise_rate() const;
3275 void _internal_set_powered_rise_rate(double value);
3276 public:
3277
3278 // required double depth_achieved = 13 [(.dccl.field) = {
3279 bool has_depth_achieved() const;
3280 private:
3281 bool _internal_has_depth_achieved() const;
3282 public:
3283 void clear_depth_achieved();
3284 double depth_achieved() const;
3285 void set_depth_achieved(double value);
3286 private:
3287 double _internal_depth_achieved() const;
3288 void _internal_set_depth_achieved(double value);
3289 public:
3290
3291 // optional double duration_to_acquire_gps = 16 [(.dccl.field) = {
3292 bool has_duration_to_acquire_gps() const;
3293 private:
3294 bool _internal_has_duration_to_acquire_gps() const;
3295 public:
3296 void clear_duration_to_acquire_gps();
3297 double duration_to_acquire_gps() const;
3298 void set_duration_to_acquire_gps(double value);
3299 private:
3300 double _internal_duration_to_acquire_gps() const;
3301 void _internal_set_duration_to_acquire_gps(double value);
3302 public:
3303
3304 // optional double max_acceleration = 20 [(.dccl.field) = {
3305 bool has_max_acceleration() const;
3306 private:
3307 bool _internal_has_max_acceleration() const;
3308 public:
3309 void clear_max_acceleration();
3310 double max_acceleration() const;
3311 void set_max_acceleration(double value);
3312 private:
3313 double _internal_max_acceleration() const;
3314 void _internal_set_max_acceleration(double value);
3315 public:
3316
3317 // optional bool bottom_dive = 17 [default = false, (.jaia.field) = {
3318 bool has_bottom_dive() const;
3319 private:
3320 bool _internal_has_bottom_dive() const;
3321 public:
3322 void clear_bottom_dive();
3323 bool bottom_dive() const;
3324 void set_bottom_dive(bool value);
3325 private:
3326 bool _internal_bottom_dive() const;
3327 void _internal_set_bottom_dive(bool value);
3328 public:
3329
3330 // optional bool reached_min_depth = 18 [default = false, (.jaia.field) = {
3331 bool has_reached_min_depth() const;
3332 private:
3333 bool _internal_has_reached_min_depth() const;
3334 public:
3335 void clear_reached_min_depth();
3336 bool reached_min_depth() const;
3337 void set_reached_min_depth(bool value);
3338 private:
3339 bool _internal_reached_min_depth() const;
3340 void _internal_set_reached_min_depth(bool value);
3341 public:
3342
3343 // optional .jaiabot.protobuf.DivePacket.BottomType bottom_type = 19 [(.jaia.field) = {
3344 bool has_bottom_type() const;
3345 private:
3346 bool _internal_has_bottom_type() const;
3347 public:
3348 void clear_bottom_type();
3350 void set_bottom_type(::jaiabot::protobuf::DivePacket_BottomType value);
3351 private:
3352 ::jaiabot::protobuf::DivePacket_BottomType _internal_bottom_type() const;
3353 void _internal_set_bottom_type(::jaiabot::protobuf::DivePacket_BottomType value);
3354 public:
3355
3356 typedef boost::units::velocity_dimension dive_rate_dimension;
3357
3358 typedef boost::units::unit<dive_rate_dimension,boost::units::si::system> dive_rate_unit;
3359
3360 template<typename Quantity >
3361 void set_dive_rate_with_units(Quantity value_w_units)
3362 { set_dive_rate(boost::units::quantity<dive_rate_unit,double >(value_w_units).value() ); };
3363
3364 template<typename Quantity >
3365 Quantity dive_rate_with_units() const
3366 { return Quantity(dive_rate() * dive_rate_unit()); };
3367
3368 boost::units::quantity< dive_rate_unit,double > dive_rate_with_units() const
3369 { return dive_rate_with_units<boost::units::quantity< dive_rate_unit,double > >(); };
3370
3371 typedef boost::units::velocity_dimension unpowered_rise_rate_dimension;
3372
3373 typedef boost::units::unit<unpowered_rise_rate_dimension,boost::units::si::system> unpowered_rise_rate_unit;
3374
3375 template<typename Quantity >
3376 void set_unpowered_rise_rate_with_units(Quantity value_w_units)
3377 { set_unpowered_rise_rate(boost::units::quantity<unpowered_rise_rate_unit,double >(value_w_units).value() ); };
3378
3379 template<typename Quantity >
3381 { return Quantity(unpowered_rise_rate() * unpowered_rise_rate_unit()); };
3382
3383 boost::units::quantity< unpowered_rise_rate_unit,double > unpowered_rise_rate_with_units() const
3384 { return unpowered_rise_rate_with_units<boost::units::quantity< unpowered_rise_rate_unit,double > >(); };
3385
3386 typedef boost::units::velocity_dimension powered_rise_rate_dimension;
3387
3388 typedef boost::units::unit<powered_rise_rate_dimension,boost::units::si::system> powered_rise_rate_unit;
3389
3390 template<typename Quantity >
3391 void set_powered_rise_rate_with_units(Quantity value_w_units)
3392 { set_powered_rise_rate(boost::units::quantity<powered_rise_rate_unit,double >(value_w_units).value() ); };
3393
3394 template<typename Quantity >
3396 { return Quantity(powered_rise_rate() * powered_rise_rate_unit()); };
3397
3398 boost::units::quantity< powered_rise_rate_unit,double > powered_rise_rate_with_units() const
3399 { return powered_rise_rate_with_units<boost::units::quantity< powered_rise_rate_unit,double > >(); };
3400
3401 typedef boost::units::length_dimension depth_achieved_dimension;
3402
3403 typedef boost::units::unit<depth_achieved_dimension,boost::units::si::system> depth_achieved_unit;
3404
3405 template<typename Quantity >
3406 void set_depth_achieved_with_units(Quantity value_w_units)
3407 { set_depth_achieved(boost::units::quantity<depth_achieved_unit,double >(value_w_units).value() ); };
3408
3409 template<typename Quantity >
3411 { return Quantity(depth_achieved() * depth_achieved_unit()); };
3412
3413 boost::units::quantity< depth_achieved_unit,double > depth_achieved_with_units() const
3414 { return depth_achieved_with_units<boost::units::quantity< depth_achieved_unit,double > >(); };
3415
3416 typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type duration_to_acquire_gps_dimension;
3417
3418 typedef boost::units::unit<duration_to_acquire_gps_dimension,boost::units::si::system> duration_to_acquire_gps_unit;
3419
3420 template<typename Quantity >
3421 void set_duration_to_acquire_gps_with_units(Quantity value_w_units)
3422 { set_duration_to_acquire_gps(boost::units::quantity<duration_to_acquire_gps_unit,double >(value_w_units).value() ); };
3423
3424 template<typename Quantity >
3426 { return Quantity(duration_to_acquire_gps() * duration_to_acquire_gps_unit()); };
3427
3428 boost::units::quantity< duration_to_acquire_gps_unit,double > duration_to_acquire_gps_with_units() const
3429 { return duration_to_acquire_gps_with_units<boost::units::quantity< duration_to_acquire_gps_unit,double > >(); };
3430
3431 typedef boost::units::acceleration_dimension max_acceleration_dimension;
3432
3433 typedef boost::units::unit<max_acceleration_dimension,boost::units::si::system> max_acceleration_unit;
3434
3435 template<typename Quantity >
3436 void set_max_acceleration_with_units(Quantity value_w_units)
3437 { set_max_acceleration(boost::units::quantity<max_acceleration_unit,double >(value_w_units).value() ); };
3438
3439 template<typename Quantity >
3441 { return Quantity(max_acceleration() * max_acceleration_unit()); };
3442
3443 boost::units::quantity< max_acceleration_unit,double > max_acceleration_with_units() const
3444 { return max_acceleration_with_units<boost::units::quantity< max_acceleration_unit,double > >(); };
3445
3446 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.DivePacket)
3447 private:
3448 class _Internal;
3449
3450 // helper for ByteSizeLong()
3451 size_t RequiredFieldsByteSizeFallback() const;
3452
3453 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3454 typedef void InternalArenaConstructable_;
3455 typedef void DestructorSkippable_;
3456 struct Impl_ {
3457 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3458 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3459 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::DivePacket_Measurements > measurement_;
3462 double dive_rate_;
3463 double unpowered_rise_rate_;
3464 double powered_rise_rate_;
3465 double depth_achieved_;
3466 double duration_to_acquire_gps_;
3467 double max_acceleration_;
3468 bool bottom_dive_;
3469 bool reached_min_depth_;
3470 int bottom_type_;
3471 };
3472 union { Impl_ _impl_; };
3473 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
3474};
3475// -------------------------------------------------------------------
3476
3477class TaskPacket final :
3478 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.TaskPacket) */ {
3479 public:
3480 inline TaskPacket() : TaskPacket(nullptr) {}
3481 ~TaskPacket() override;
3482 explicit PROTOBUF_CONSTEXPR TaskPacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
3483
3485 TaskPacket(TaskPacket&& from) noexcept
3486 : TaskPacket() {
3487 *this = ::std::move(from);
3488 }
3489
3490 inline TaskPacket& operator=(const TaskPacket& from) {
3491 CopyFrom(from);
3492 return *this;
3493 }
3494 inline TaskPacket& operator=(TaskPacket&& from) noexcept {
3495 if (this == &from) return *this;
3496 if (GetOwningArena() == from.GetOwningArena()
3497 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
3498 && GetOwningArena() != nullptr
3499 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
3500 ) {
3501 InternalSwap(&from);
3502 } else {
3503 CopyFrom(from);
3504 }
3505 return *this;
3506 }
3507
3508 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3509 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3510 }
3511 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3512 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3513 }
3514
3515 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3516 return GetDescriptor();
3517 }
3518 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3519 return default_instance().GetMetadata().descriptor;
3520 }
3521 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3522 return default_instance().GetMetadata().reflection;
3523 }
3525 return *internal_default_instance();
3526 }
3527 static inline const TaskPacket* internal_default_instance() {
3528 return reinterpret_cast<const TaskPacket*>(
3530 }
3531 static constexpr int kIndexInFileMessages =
3532 10;
3533
3534 friend void swap(TaskPacket& a, TaskPacket& b) {
3535 a.Swap(&b);
3536 }
3537 inline void Swap(TaskPacket* other) {
3538 if (other == this) return;
3539 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
3540 if (GetOwningArena() != nullptr &&
3541 GetOwningArena() == other->GetOwningArena()) {
3542 #else // PROTOBUF_FORCE_COPY_IN_SWAP
3543 if (GetOwningArena() == other->GetOwningArena()) {
3544 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
3545 InternalSwap(other);
3546 } else {
3547 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3548 }
3549 }
3551 if (other == this) return;
3552 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
3553 InternalSwap(other);
3554 }
3555
3556 // implements Message ----------------------------------------------
3557
3558 TaskPacket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
3559 return CreateMaybeMessage<TaskPacket>(arena);
3560 }
3561 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
3562 void CopyFrom(const TaskPacket& from);
3563 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
3564 void MergeFrom( const TaskPacket& from) {
3565 TaskPacket::MergeImpl(*this, from);
3566 }
3567 private:
3568 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
3569 public:
3570 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3571 bool IsInitialized() const final;
3572
3573 size_t ByteSizeLong() const final;
3574 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3575 uint8_t* _InternalSerialize(
3576 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3577 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
3578
3579 private:
3580 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
3581 void SharedDtor();
3582 void SetCachedSize(int size) const final;
3583 void InternalSwap(TaskPacket* other);
3584
3585 private:
3586 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3587 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3588 return "jaiabot.protobuf.TaskPacket";
3589 }
3590 protected:
3591 explicit TaskPacket(::PROTOBUF_NAMESPACE_ID::Arena* arena,
3592 bool is_message_owned = false);
3593 public:
3594
3595 static const ClassData _class_data_;
3596 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
3597
3598 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3599
3600 // nested types ----------------------------------------------------
3601
3602 // accessors -------------------------------------------------------
3603
3604 enum : int {
3605 kDiveFieldNumber = 10,
3606 kDriftFieldNumber = 11,
3607 kStartTimeFieldNumber = 2,
3608 kBotIdFieldNumber = 1,
3609 kTypeFieldNumber = 4,
3610 kEndTimeFieldNumber = 3,
3611 kLinkFieldNumber = 5,
3612 };
3613 // optional .jaiabot.protobuf.DivePacket dive = 10 [(.jaia.field) = {
3614 bool has_dive() const;
3615 private:
3616 bool _internal_has_dive() const;
3617 public:
3618 void clear_dive();
3619 const ::jaiabot::protobuf::DivePacket& dive() const;
3620 PROTOBUF_NODISCARD ::jaiabot::protobuf::DivePacket* release_dive();
3621 ::jaiabot::protobuf::DivePacket* mutable_dive();
3622 void set_allocated_dive(::jaiabot::protobuf::DivePacket* dive);
3623 private:
3624 const ::jaiabot::protobuf::DivePacket& _internal_dive() const;
3625 ::jaiabot::protobuf::DivePacket* _internal_mutable_dive();
3626 public:
3627 void unsafe_arena_set_allocated_dive(
3629 ::jaiabot::protobuf::DivePacket* unsafe_arena_release_dive();
3630
3631 // optional .jaiabot.protobuf.DriftPacket drift = 11 [(.jaia.field) = {
3632 bool has_drift() const;
3633 private:
3634 bool _internal_has_drift() const;
3635 public:
3636 void clear_drift();
3637 const ::jaiabot::protobuf::DriftPacket& drift() const;
3638 PROTOBUF_NODISCARD ::jaiabot::protobuf::DriftPacket* release_drift();
3639 ::jaiabot::protobuf::DriftPacket* mutable_drift();
3640 void set_allocated_drift(::jaiabot::protobuf::DriftPacket* drift);
3641 private:
3642 const ::jaiabot::protobuf::DriftPacket& _internal_drift() const;
3643 ::jaiabot::protobuf::DriftPacket* _internal_mutable_drift();
3644 public:
3645 void unsafe_arena_set_allocated_drift(
3647 ::jaiabot::protobuf::DriftPacket* unsafe_arena_release_drift();
3648
3649 // required uint64 start_time = 2 [(.dccl.field) = {
3650 bool has_start_time() const;
3651 private:
3652 bool _internal_has_start_time() const;
3653 public:
3654 void clear_start_time();
3655 uint64_t start_time() const;
3656 void set_start_time(uint64_t value);
3657 private:
3658 uint64_t _internal_start_time() const;
3659 void _internal_set_start_time(uint64_t value);
3660 public:
3661
3662 // required uint32 bot_id = 1 [(.dccl.field) = {
3663 bool has_bot_id() const;
3664 private:
3665 bool _internal_has_bot_id() const;
3666 public:
3667 void clear_bot_id();
3668 uint32_t bot_id() const;
3669 void set_bot_id(uint32_t value);
3670 private:
3671 uint32_t _internal_bot_id() const;
3672 void _internal_set_bot_id(uint32_t value);
3673 public:
3674
3675 // required .jaiabot.protobuf.MissionTask.TaskType type = 4 [(.jaia.field) = {
3676 bool has_type() const;
3677 private:
3678 bool _internal_has_type() const;
3679 public:
3680 void clear_type();
3682 void set_type(::jaiabot::protobuf::MissionTask_TaskType value);
3683 private:
3684 ::jaiabot::protobuf::MissionTask_TaskType _internal_type() const;
3685 void _internal_set_type(::jaiabot::protobuf::MissionTask_TaskType value);
3686 public:
3687
3688 // required uint64 end_time = 3 [(.dccl.field) = {
3689 bool has_end_time() const;
3690 private:
3691 bool _internal_has_end_time() const;
3692 public:
3693 void clear_end_time();
3694 uint64_t end_time() const;
3695 void set_end_time(uint64_t value);
3696 private:
3697 uint64_t _internal_end_time() const;
3698 void _internal_set_end_time(uint64_t value);
3699 public:
3700
3701 // optional .jaiabot.protobuf.Link link = 5 [(.dccl.field) = {
3702 bool has_link() const;
3703 private:
3704 bool _internal_has_link() const;
3705 public:
3706 void clear_link();
3707 ::jaiabot::protobuf::Link link() const;
3708 void set_link(::jaiabot::protobuf::Link value);
3709 private:
3710 ::jaiabot::protobuf::Link _internal_link() const;
3711 void _internal_set_link(::jaiabot::protobuf::Link value);
3712 public:
3713
3714 enum DCCLParameters { DCCL_ID = 20481, DCCL_MAX_BYTES = 250 };
3715 typedef boost::units::time_dimension start_time_dimension;
3716
3717 typedef boost::units::make_scaled_unit<boost::units::unit<start_time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type start_time_unit;
3718
3719 template<typename Quantity >
3720 void set_start_time_with_units(Quantity value_w_units)
3721 { set_start_time(boost::units::quantity<start_time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
3722
3723 template<typename Quantity >
3724 Quantity start_time_with_units() const
3725 { return Quantity(start_time() * start_time_unit()); };
3726
3727 boost::units::quantity< start_time_unit,google::protobuf::uint64 > start_time_with_units() const
3728 { return start_time_with_units<boost::units::quantity< start_time_unit,google::protobuf::uint64 > >(); };
3729
3730 typedef boost::units::time_dimension end_time_dimension;
3731
3732 typedef boost::units::make_scaled_unit<boost::units::unit<end_time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type end_time_unit;
3733
3734 template<typename Quantity >
3735 void set_end_time_with_units(Quantity value_w_units)
3736 { set_end_time(boost::units::quantity<end_time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
3737
3738 template<typename Quantity >
3739 Quantity end_time_with_units() const
3740 { return Quantity(end_time() * end_time_unit()); };
3741
3742 boost::units::quantity< end_time_unit,google::protobuf::uint64 > end_time_with_units() const
3743 { return end_time_with_units<boost::units::quantity< end_time_unit,google::protobuf::uint64 > >(); };
3744
3745 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.TaskPacket)
3746 private:
3747 class _Internal;
3748
3749 // helper for ByteSizeLong()
3750 size_t RequiredFieldsByteSizeFallback() const;
3751
3752 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3753 typedef void InternalArenaConstructable_;
3754 typedef void DestructorSkippable_;
3755 struct Impl_ {
3756 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3757 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3760 uint64_t start_time_;
3761 uint32_t bot_id_;
3762 int type_;
3763 uint64_t end_time_;
3764 int link_;
3765 };
3766 union { Impl_ _impl_; };
3767 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
3768};
3769// -------------------------------------------------------------------
3770
3771class ContactUpdate final :
3772 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.ContactUpdate) */ {
3773 public:
3774 inline ContactUpdate() : ContactUpdate(nullptr) {}
3775 ~ContactUpdate() override;
3776 explicit PROTOBUF_CONSTEXPR ContactUpdate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
3777
3780 : ContactUpdate() {
3781 *this = ::std::move(from);
3782 }
3783
3785 CopyFrom(from);
3786 return *this;
3787 }
3788 inline ContactUpdate& operator=(ContactUpdate&& from) noexcept {
3789 if (this == &from) return *this;
3790 if (GetOwningArena() == from.GetOwningArena()
3791 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
3792 && GetOwningArena() != nullptr
3793 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
3794 ) {
3795 InternalSwap(&from);
3796 } else {
3797 CopyFrom(from);
3798 }
3799 return *this;
3800 }
3801
3802 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3803 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3804 }
3805 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3806 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3807 }
3808
3809 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3810 return GetDescriptor();
3811 }
3812 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3813 return default_instance().GetMetadata().descriptor;
3814 }
3815 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3816 return default_instance().GetMetadata().reflection;
3817 }
3819 return *internal_default_instance();
3820 }
3822 return reinterpret_cast<const ContactUpdate*>(
3824 }
3825 static constexpr int kIndexInFileMessages =
3826 11;
3827
3828 friend void swap(ContactUpdate& a, ContactUpdate& b) {
3829 a.Swap(&b);
3830 }
3831 inline void Swap(ContactUpdate* other) {
3832 if (other == this) return;
3833 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
3834 if (GetOwningArena() != nullptr &&
3835 GetOwningArena() == other->GetOwningArena()) {
3836 #else // PROTOBUF_FORCE_COPY_IN_SWAP
3837 if (GetOwningArena() == other->GetOwningArena()) {
3838 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
3839 InternalSwap(other);
3840 } else {
3841 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3842 }
3843 }
3845 if (other == this) return;
3846 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
3847 InternalSwap(other);
3848 }
3849
3850 // implements Message ----------------------------------------------
3851
3852 ContactUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
3853 return CreateMaybeMessage<ContactUpdate>(arena);
3854 }
3855 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
3856 void CopyFrom(const ContactUpdate& from);
3857 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
3858 void MergeFrom( const ContactUpdate& from) {
3859 ContactUpdate::MergeImpl(*this, from);
3860 }
3861 private:
3862 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
3863 public:
3864 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3865 bool IsInitialized() const final;
3866
3867 size_t ByteSizeLong() const final;
3868 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3869 uint8_t* _InternalSerialize(
3870 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3871 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
3872
3873 private:
3874 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
3875 void SharedDtor();
3876 void SetCachedSize(int size) const final;
3877 void InternalSwap(ContactUpdate* other);
3878
3879 private:
3880 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3881 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3882 return "jaiabot.protobuf.ContactUpdate";
3883 }
3884 protected:
3885 explicit ContactUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena,
3886 bool is_message_owned = false);
3887 public:
3888
3889 static const ClassData _class_data_;
3890 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
3891
3892 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3893
3894 // nested types ----------------------------------------------------
3895
3896 // accessors -------------------------------------------------------
3897
3898 enum : int {
3899 kLocationFieldNumber = 2,
3900 kSpeedOverGroundFieldNumber = 3,
3901 kHeadingOrCogFieldNumber = 5,
3902 kContactFieldNumber = 1,
3903 };
3904 // required .jaiabot.protobuf.GeographicCoordinate location = 2;
3905 bool has_location() const;
3906 private:
3907 bool _internal_has_location() const;
3908 public:
3910 const ::jaiabot::protobuf::GeographicCoordinate& location() const;
3911 PROTOBUF_NODISCARD ::jaiabot::protobuf::GeographicCoordinate* release_location();
3913 void set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location);
3914 private:
3915 const ::jaiabot::protobuf::GeographicCoordinate& _internal_location() const;
3916 ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_location();
3917 public:
3918 void unsafe_arena_set_allocated_location(
3920 ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_location();
3921
3922 // optional double speed_over_ground = 3 [(.dccl.field) = {
3923 bool has_speed_over_ground() const;
3924 private:
3925 bool _internal_has_speed_over_ground() const;
3926 public:
3927 void clear_speed_over_ground();
3928 double speed_over_ground() const;
3929 void set_speed_over_ground(double value);
3930 private:
3931 double _internal_speed_over_ground() const;
3932 void _internal_set_speed_over_ground(double value);
3933 public:
3934
3935 // optional double heading_or_cog = 5 [(.dccl.field) = {
3936 bool has_heading_or_cog() const;
3937 private:
3938 bool _internal_has_heading_or_cog() const;
3939 public:
3940 void clear_heading_or_cog();
3941 double heading_or_cog() const;
3942 void set_heading_or_cog(double value);
3943 private:
3944 double _internal_heading_or_cog() const;
3945 void _internal_set_heading_or_cog(double value);
3946 public:
3947
3948 // optional int32 contact = 1 [(.dccl.field) = {
3949 bool has_contact() const;
3950 private:
3951 bool _internal_has_contact() const;
3952 public:
3953 void clear_contact();
3954 int32_t contact() const;
3955 void set_contact(int32_t value);
3956 private:
3957 int32_t _internal_contact() const;
3958 void _internal_set_contact(int32_t value);
3959 public:
3960
3961 enum DCCLParameters { DCCL_ID = 20482, DCCL_MAX_BYTES = 16 };
3962 typedef boost::units::velocity_dimension speed_over_ground_dimension;
3963
3964 typedef boost::units::unit<speed_over_ground_dimension,boost::units::si::system> speed_over_ground_unit;
3965
3966 template<typename Quantity >
3967 void set_speed_over_ground_with_units(Quantity value_w_units)
3968 { set_speed_over_ground(boost::units::quantity<speed_over_ground_unit,double >(value_w_units).value() ); };
3969
3970 template<typename Quantity >
3972 { return Quantity(speed_over_ground() * speed_over_ground_unit()); };
3973
3974 boost::units::quantity< speed_over_ground_unit,double > speed_over_ground_with_units() const
3975 { return speed_over_ground_with_units<boost::units::quantity< speed_over_ground_unit,double > >(); };
3976
3977 typedef boost::units::plane_angle_dimension heading_or_cog_dimension;
3978
3979 typedef boost::units::unit<heading_or_cog_dimension,boost::units::degree::system> heading_or_cog_unit;
3980
3981 template<typename Quantity >
3982 void set_heading_or_cog_with_units(Quantity value_w_units)
3983 { set_heading_or_cog(boost::units::quantity<heading_or_cog_unit,double >(value_w_units).value() ); };
3984
3985 template<typename Quantity >
3987 { return Quantity(heading_or_cog() * heading_or_cog_unit()); };
3988
3989 boost::units::quantity< heading_or_cog_unit,double > heading_or_cog_with_units() const
3990 { return heading_or_cog_with_units<boost::units::quantity< heading_or_cog_unit,double > >(); };
3991
3992 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.ContactUpdate)
3993 private:
3994 class _Internal;
3995
3996 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3997 typedef void InternalArenaConstructable_;
3998 typedef void DestructorSkippable_;
3999 struct Impl_ {
4000 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
4001 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4003 double speed_over_ground_;
4004 double heading_or_cog_;
4005 int32_t contact_;
4006 };
4007 union { Impl_ _impl_; };
4008 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
4009};
4010// -------------------------------------------------------------------
4011
4012class Hub2HubData final :
4013 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.Hub2HubData) */ {
4014 public:
4015 inline Hub2HubData() : Hub2HubData(nullptr) {}
4016 ~Hub2HubData() override;
4017 explicit PROTOBUF_CONSTEXPR Hub2HubData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
4018
4020 Hub2HubData(Hub2HubData&& from) noexcept
4021 : Hub2HubData() {
4022 *this = ::std::move(from);
4023 }
4024
4025 inline Hub2HubData& operator=(const Hub2HubData& from) {
4026 CopyFrom(from);
4027 return *this;
4028 }
4029 inline Hub2HubData& operator=(Hub2HubData&& from) noexcept {
4030 if (this == &from) return *this;
4031 if (GetOwningArena() == from.GetOwningArena()
4032 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
4033 && GetOwningArena() != nullptr
4034 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
4035 ) {
4036 InternalSwap(&from);
4037 } else {
4038 CopyFrom(from);
4039 }
4040 return *this;
4041 }
4042
4043 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
4044 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
4045 }
4046 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
4047 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4048 }
4049
4050 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4051 return GetDescriptor();
4052 }
4053 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4054 return default_instance().GetMetadata().descriptor;
4055 }
4056 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4057 return default_instance().GetMetadata().reflection;
4058 }
4060 return *internal_default_instance();
4061 }
4063 kBotStatus = 10,
4064 kTaskPacket = 11,
4065 kCommandForBot = 12,
4066 CONTENTS_NOT_SET = 0,
4067 };
4068
4070 return reinterpret_cast<const Hub2HubData*>(
4072 }
4073 static constexpr int kIndexInFileMessages =
4074 12;
4075
4076 friend void swap(Hub2HubData& a, Hub2HubData& b) {
4077 a.Swap(&b);
4078 }
4079 inline void Swap(Hub2HubData* other) {
4080 if (other == this) return;
4081 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
4082 if (GetOwningArena() != nullptr &&
4083 GetOwningArena() == other->GetOwningArena()) {
4084 #else // PROTOBUF_FORCE_COPY_IN_SWAP
4085 if (GetOwningArena() == other->GetOwningArena()) {
4086 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
4087 InternalSwap(other);
4088 } else {
4089 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
4090 }
4091 }
4093 if (other == this) return;
4094 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
4095 InternalSwap(other);
4096 }
4097
4098 // implements Message ----------------------------------------------
4099
4100 Hub2HubData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
4101 return CreateMaybeMessage<Hub2HubData>(arena);
4102 }
4103 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
4104 void CopyFrom(const Hub2HubData& from);
4105 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
4106 void MergeFrom( const Hub2HubData& from) {
4107 Hub2HubData::MergeImpl(*this, from);
4108 }
4109 private:
4110 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
4111 public:
4112 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4113 bool IsInitialized() const final;
4114
4115 size_t ByteSizeLong() const final;
4116 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4117 uint8_t* _InternalSerialize(
4118 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4119 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
4120
4121 private:
4122 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
4123 void SharedDtor();
4124 void SetCachedSize(int size) const final;
4125 void InternalSwap(Hub2HubData* other);
4126
4127 private:
4128 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4129 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4130 return "jaiabot.protobuf.Hub2HubData";
4131 }
4132 protected:
4133 explicit Hub2HubData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
4134 bool is_message_owned = false);
4135 public:
4136
4137 static const ClassData _class_data_;
4138 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
4139
4140 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4141
4142 // nested types ----------------------------------------------------
4143
4144 // accessors -------------------------------------------------------
4145
4146 enum : int {
4147 kTimeFieldNumber = 2,
4148 kHubIdFieldNumber = 1,
4149 kBotStatusFieldNumber = 10,
4150 kTaskPacketFieldNumber = 11,
4151 kCommandForBotFieldNumber = 12,
4152 };
4153 // required uint64 time = 2 [(.dccl.field) = {
4154 bool has_time() const;
4155 private:
4156 bool _internal_has_time() const;
4157 public:
4158 void clear_time();
4159 uint64_t time() const;
4160 void set_time(uint64_t value);
4161 private:
4162 uint64_t _internal_time() const;
4163 void _internal_set_time(uint64_t value);
4164 public:
4165
4166 // required uint32 hub_id = 1 [(.dccl.field) = {
4167 bool has_hub_id() const;
4168 private:
4169 bool _internal_has_hub_id() const;
4170 public:
4171 void clear_hub_id();
4172 uint32_t hub_id() const;
4173 void set_hub_id(uint32_t value);
4174 private:
4175 uint32_t _internal_hub_id() const;
4176 void _internal_set_hub_id(uint32_t value);
4177 public:
4178
4179 // .jaiabot.protobuf.BotStatus bot_status = 10;
4180 bool has_bot_status() const;
4181 private:
4182 bool _internal_has_bot_status() const;
4183 public:
4184 void clear_bot_status();
4185 const ::jaiabot::protobuf::BotStatus& bot_status() const;
4186 PROTOBUF_NODISCARD ::jaiabot::protobuf::BotStatus* release_bot_status();
4187 ::jaiabot::protobuf::BotStatus* mutable_bot_status();
4189 private:
4190 const ::jaiabot::protobuf::BotStatus& _internal_bot_status() const;
4191 ::jaiabot::protobuf::BotStatus* _internal_mutable_bot_status();
4192 public:
4193 void unsafe_arena_set_allocated_bot_status(
4194 ::jaiabot::protobuf::BotStatus* bot_status);
4195 ::jaiabot::protobuf::BotStatus* unsafe_arena_release_bot_status();
4196
4197 // .jaiabot.protobuf.TaskPacket task_packet = 11;
4198 bool has_task_packet() const;
4199 private:
4200 bool _internal_has_task_packet() const;
4201 public:
4202 void clear_task_packet();
4203 const ::jaiabot::protobuf::TaskPacket& task_packet() const;
4204 PROTOBUF_NODISCARD ::jaiabot::protobuf::TaskPacket* release_task_packet();
4205 ::jaiabot::protobuf::TaskPacket* mutable_task_packet();
4207 private:
4208 const ::jaiabot::protobuf::TaskPacket& _internal_task_packet() const;
4209 ::jaiabot::protobuf::TaskPacket* _internal_mutable_task_packet();
4210 public:
4211 void unsafe_arena_set_allocated_task_packet(
4212 ::jaiabot::protobuf::TaskPacket* task_packet);
4213 ::jaiabot::protobuf::TaskPacket* unsafe_arena_release_task_packet();
4214
4215 // .jaiabot.protobuf.Command command_for_bot = 12;
4216 bool has_command_for_bot() const;
4217 private:
4218 bool _internal_has_command_for_bot() const;
4219 public:
4220 void clear_command_for_bot();
4221 const ::jaiabot::protobuf::Command& command_for_bot() const;
4222 PROTOBUF_NODISCARD ::jaiabot::protobuf::Command* release_command_for_bot();
4223 ::jaiabot::protobuf::Command* mutable_command_for_bot();
4225 private:
4226 const ::jaiabot::protobuf::Command& _internal_command_for_bot() const;
4227 ::jaiabot::protobuf::Command* _internal_mutable_command_for_bot();
4228 public:
4229 void unsafe_arena_set_allocated_command_for_bot(
4230 ::jaiabot::protobuf::Command* command_for_bot);
4231 ::jaiabot::protobuf::Command* unsafe_arena_release_command_for_bot();
4232
4234 ContentsCase contents_case() const;
4235 enum DCCLParameters { DCCL_ID = 20483, DCCL_MAX_BYTES = 1000 };
4236 typedef boost::units::time_dimension time_dimension;
4237
4238 typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
4239
4240 template<typename Quantity >
4241 void set_time_with_units(Quantity value_w_units)
4242 { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
4243
4244 template<typename Quantity >
4245 Quantity time_with_units() const
4246 { return Quantity(time() * time_unit()); };
4247
4248 boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
4249 { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
4250
4251 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.Hub2HubData)
4252 private:
4253 class _Internal;
4254 void set_has_bot_status();
4255 void set_has_task_packet();
4256 void set_has_command_for_bot();
4257
4258 inline bool has_contents() const;
4259 inline void clear_has_contents();
4260
4261 // helper for ByteSizeLong()
4262 size_t RequiredFieldsByteSizeFallback() const;
4263
4264 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
4265 typedef void InternalArenaConstructable_;
4266 typedef void DestructorSkippable_;
4267 struct Impl_ {
4268 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
4269 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4270 uint64_t time_;
4271 uint32_t hub_id_;
4279 uint32_t _oneof_case_[1];
4280
4281 };
4282 union { Impl_ _impl_; };
4283 friend struct ::TableStruct_jaiabot_2fmessages_2fjaia_5fdccl_2eproto;
4284};
4285// ===================================================================
4286
4287
4288// ===================================================================
4289
4290#ifdef __GNUC__
4291 #pragma GCC diagnostic push
4292 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
4293#endif // __GNUC__
4294// Command
4295
4296// required uint32 bot_id = 1 [(.dccl.field) = {
4297inline bool Command::_internal_has_bot_id() const {
4298 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
4299 return value;
4300}
4301inline bool Command::has_bot_id() const {
4302 return _internal_has_bot_id();
4303}
4304inline void Command::clear_bot_id() {
4305 _impl_.bot_id_ = 0u;
4306 _impl_._has_bits_[0] &= ~0x00000002u;
4307}
4308inline uint32_t Command::_internal_bot_id() const {
4309 return _impl_.bot_id_;
4310}
4311inline uint32_t Command::bot_id() const {
4312 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.bot_id)
4313 return _internal_bot_id();
4314}
4315inline void Command::_internal_set_bot_id(uint32_t value) {
4316 _impl_._has_bits_[0] |= 0x00000002u;
4317 _impl_.bot_id_ = value;
4318}
4319inline void Command::set_bot_id(uint32_t value) {
4320 _internal_set_bot_id(value);
4321 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Command.bot_id)
4322}
4323
4324// required uint64 time = 2 [(.dccl.field) = {
4325inline bool Command::_internal_has_time() const {
4326 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4327 return value;
4328}
4329inline bool Command::has_time() const {
4330 return _internal_has_time();
4331}
4332inline void Command::clear_time() {
4333 _impl_.time_ = uint64_t{0u};
4334 _impl_._has_bits_[0] &= ~0x00000001u;
4335}
4336inline uint64_t Command::_internal_time() const {
4337 return _impl_.time_;
4338}
4339inline uint64_t Command::time() const {
4340 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.time)
4341 return _internal_time();
4342}
4343inline void Command::_internal_set_time(uint64_t value) {
4344 _impl_._has_bits_[0] |= 0x00000001u;
4345 _impl_.time_ = value;
4346}
4347inline void Command::set_time(uint64_t value) {
4348 _internal_set_time(value);
4349 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Command.time)
4350}
4351
4352// optional .jaiabot.protobuf.Link link = 3 [(.dccl.field) = {
4353inline bool Command::_internal_has_link() const {
4354 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
4355 return value;
4356}
4357inline bool Command::has_link() const {
4358 return _internal_has_link();
4359}
4360inline void Command::clear_link() {
4361 _impl_.link_ = -1;
4362 _impl_._has_bits_[0] &= ~0x00000008u;
4363}
4364inline ::jaiabot::protobuf::Link Command::_internal_link() const {
4365 return static_cast< ::jaiabot::protobuf::Link >(_impl_.link_);
4366}
4367inline ::jaiabot::protobuf::Link Command::link() const {
4368 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.link)
4369 return _internal_link();
4370}
4371inline void Command::_internal_set_link(::jaiabot::protobuf::Link value) {
4372 assert(::jaiabot::protobuf::Link_IsValid(value));
4373 _impl_._has_bits_[0] |= 0x00000008u;
4374 _impl_.link_ = value;
4375}
4376inline void Command::set_link(::jaiabot::protobuf::Link value) {
4377 _internal_set_link(value);
4378 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Command.link)
4379}
4380
4381// optional uint32 from_hub_id = 4 [(.dccl.field) = {
4382inline bool Command::_internal_has_from_hub_id() const {
4383 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
4384 return value;
4385}
4386inline bool Command::has_from_hub_id() const {
4387 return _internal_has_from_hub_id();
4388}
4389inline void Command::clear_from_hub_id() {
4390 _impl_.from_hub_id_ = 0u;
4391 _impl_._has_bits_[0] &= ~0x00000004u;
4392}
4393inline uint32_t Command::_internal_from_hub_id() const {
4394 return _impl_.from_hub_id_;
4395}
4396inline uint32_t Command::from_hub_id() const {
4397 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.from_hub_id)
4398 return _internal_from_hub_id();
4399}
4400inline void Command::_internal_set_from_hub_id(uint32_t value) {
4401 _impl_._has_bits_[0] |= 0x00000004u;
4402 _impl_.from_hub_id_ = value;
4403}
4404inline void Command::set_from_hub_id(uint32_t value) {
4405 _internal_set_from_hub_id(value);
4406 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Command.from_hub_id)
4407}
4408
4409// required .jaiabot.protobuf.Command.CommandType type = 10 [(.jaia.field) = {
4410inline bool Command::_internal_has_type() const {
4411 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
4412 return value;
4413}
4414inline bool Command::has_type() const {
4415 return _internal_has_type();
4416}
4417inline void Command::clear_type() {
4418 _impl_.type_ = 1;
4419 _impl_._has_bits_[0] &= ~0x00000010u;
4420}
4421inline ::jaiabot::protobuf::Command_CommandType Command::_internal_type() const {
4422 return static_cast< ::jaiabot::protobuf::Command_CommandType >(_impl_.type_);
4423}
4424inline ::jaiabot::protobuf::Command_CommandType Command::type() const {
4425 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.type)
4426 return _internal_type();
4427}
4428inline void Command::_internal_set_type(::jaiabot::protobuf::Command_CommandType value) {
4430 _impl_._has_bits_[0] |= 0x00000010u;
4431 _impl_.type_ = value;
4432}
4433inline void Command::set_type(::jaiabot::protobuf::Command_CommandType value) {
4434 _internal_set_type(value);
4435 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Command.type)
4436}
4437
4438// .jaiabot.protobuf.MissionPlan plan = 20 [(.jaia.field) = {
4439inline bool Command::_internal_has_plan() const {
4440 return command_data_case() == kPlan;
4441}
4442inline bool Command::has_plan() const {
4443 return _internal_has_plan();
4444}
4445inline void Command::set_has_plan() {
4446 _impl_._oneof_case_[0] = kPlan;
4447}
4448inline ::jaiabot::protobuf::MissionPlan* Command::release_plan() {
4449 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Command.plan)
4450 if (_internal_has_plan()) {
4451 clear_has_command_data();
4452 ::jaiabot::protobuf::MissionPlan* temp = _impl_.command_data_.plan_;
4453 if (GetArenaForAllocation() != nullptr) {
4454 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4455 }
4456 _impl_.command_data_.plan_ = nullptr;
4457 return temp;
4458 } else {
4459 return nullptr;
4460 }
4461}
4462inline const ::jaiabot::protobuf::MissionPlan& Command::_internal_plan() const {
4463 return _internal_has_plan()
4464 ? *_impl_.command_data_.plan_
4466}
4467inline const ::jaiabot::protobuf::MissionPlan& Command::plan() const {
4468 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.plan)
4469 return _internal_plan();
4470}
4471inline ::jaiabot::protobuf::MissionPlan* Command::unsafe_arena_release_plan() {
4472 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Command.plan)
4473 if (_internal_has_plan()) {
4474 clear_has_command_data();
4475 ::jaiabot::protobuf::MissionPlan* temp = _impl_.command_data_.plan_;
4476 _impl_.command_data_.plan_ = nullptr;
4477 return temp;
4478 } else {
4479 return nullptr;
4480 }
4481}
4482inline void Command::unsafe_arena_set_allocated_plan(::jaiabot::protobuf::MissionPlan* plan) {
4483 clear_command_data();
4484 if (plan) {
4485 set_has_plan();
4486 _impl_.command_data_.plan_ = plan;
4487 }
4488 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Command.plan)
4489}
4490inline ::jaiabot::protobuf::MissionPlan* Command::_internal_mutable_plan() {
4491 if (!_internal_has_plan()) {
4492 clear_command_data();
4493 set_has_plan();
4494 _impl_.command_data_.plan_ = CreateMaybeMessage< ::jaiabot::protobuf::MissionPlan >(GetArenaForAllocation());
4495 }
4496 return _impl_.command_data_.plan_;
4497}
4498inline ::jaiabot::protobuf::MissionPlan* Command::mutable_plan() {
4499 ::jaiabot::protobuf::MissionPlan* _msg = _internal_mutable_plan();
4500 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Command.plan)
4501 return _msg;
4502}
4503
4504// .jaiabot.protobuf.RemoteControl rc = 30 [(.jaia.field) = {
4505inline bool Command::_internal_has_rc() const {
4506 return command_data_case() == kRc;
4507}
4508inline bool Command::has_rc() const {
4509 return _internal_has_rc();
4510}
4511inline void Command::set_has_rc() {
4512 _impl_._oneof_case_[0] = kRc;
4513}
4514inline ::jaiabot::protobuf::RemoteControl* Command::release_rc() {
4515 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Command.rc)
4516 if (_internal_has_rc()) {
4517 clear_has_command_data();
4518 ::jaiabot::protobuf::RemoteControl* temp = _impl_.command_data_.rc_;
4519 if (GetArenaForAllocation() != nullptr) {
4520 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4521 }
4522 _impl_.command_data_.rc_ = nullptr;
4523 return temp;
4524 } else {
4525 return nullptr;
4526 }
4527}
4528inline const ::jaiabot::protobuf::RemoteControl& Command::_internal_rc() const {
4529 return _internal_has_rc()
4530 ? *_impl_.command_data_.rc_
4532}
4533inline const ::jaiabot::protobuf::RemoteControl& Command::rc() const {
4534 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.rc)
4535 return _internal_rc();
4536}
4537inline ::jaiabot::protobuf::RemoteControl* Command::unsafe_arena_release_rc() {
4538 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Command.rc)
4539 if (_internal_has_rc()) {
4540 clear_has_command_data();
4541 ::jaiabot::protobuf::RemoteControl* temp = _impl_.command_data_.rc_;
4542 _impl_.command_data_.rc_ = nullptr;
4543 return temp;
4544 } else {
4545 return nullptr;
4546 }
4547}
4548inline void Command::unsafe_arena_set_allocated_rc(::jaiabot::protobuf::RemoteControl* rc) {
4549 clear_command_data();
4550 if (rc) {
4551 set_has_rc();
4552 _impl_.command_data_.rc_ = rc;
4553 }
4554 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Command.rc)
4555}
4556inline ::jaiabot::protobuf::RemoteControl* Command::_internal_mutable_rc() {
4557 if (!_internal_has_rc()) {
4558 clear_command_data();
4559 set_has_rc();
4560 _impl_.command_data_.rc_ = CreateMaybeMessage< ::jaiabot::protobuf::RemoteControl >(GetArenaForAllocation());
4561 }
4562 return _impl_.command_data_.rc_;
4563}
4564inline ::jaiabot::protobuf::RemoteControl* Command::mutable_rc() {
4565 ::jaiabot::protobuf::RemoteControl* _msg = _internal_mutable_rc();
4566 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Command.rc)
4567 return _msg;
4568}
4569
4570// .jaiabot.protobuf.MissionTask rc_task = 31;
4571inline bool Command::_internal_has_rc_task() const {
4572 return command_data_case() == kRcTask;
4573}
4574inline bool Command::has_rc_task() const {
4575 return _internal_has_rc_task();
4576}
4577inline void Command::set_has_rc_task() {
4578 _impl_._oneof_case_[0] = kRcTask;
4579}
4580inline ::jaiabot::protobuf::MissionTask* Command::release_rc_task() {
4581 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Command.rc_task)
4582 if (_internal_has_rc_task()) {
4583 clear_has_command_data();
4584 ::jaiabot::protobuf::MissionTask* temp = _impl_.command_data_.rc_task_;
4585 if (GetArenaForAllocation() != nullptr) {
4586 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4587 }
4588 _impl_.command_data_.rc_task_ = nullptr;
4589 return temp;
4590 } else {
4591 return nullptr;
4592 }
4593}
4594inline const ::jaiabot::protobuf::MissionTask& Command::_internal_rc_task() const {
4595 return _internal_has_rc_task()
4596 ? *_impl_.command_data_.rc_task_
4598}
4599inline const ::jaiabot::protobuf::MissionTask& Command::rc_task() const {
4600 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Command.rc_task)
4601 return _internal_rc_task();
4602}
4603inline ::jaiabot::protobuf::MissionTask* Command::unsafe_arena_release_rc_task() {
4604 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Command.rc_task)
4605 if (_internal_has_rc_task()) {
4606 clear_has_command_data();
4607 ::jaiabot::protobuf::MissionTask* temp = _impl_.command_data_.rc_task_;
4608 _impl_.command_data_.rc_task_ = nullptr;
4609 return temp;
4610 } else {
4611 return nullptr;
4612 }
4613}
4614inline void Command::unsafe_arena_set_allocated_rc_task(::jaiabot::protobuf::MissionTask* rc_task) {
4615 clear_command_data();
4616 if (rc_task) {
4617 set_has_rc_task();
4618 _impl_.command_data_.rc_task_ = rc_task;
4619 }
4620 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Command.rc_task)
4621}
4622inline ::jaiabot::protobuf::MissionTask* Command::_internal_mutable_rc_task() {
4623 if (!_internal_has_rc_task()) {
4624 clear_command_data();
4625 set_has_rc_task();
4626 _impl_.command_data_.rc_task_ = CreateMaybeMessage< ::jaiabot::protobuf::MissionTask >(GetArenaForAllocation());
4627 }
4628 return _impl_.command_data_.rc_task_;
4629}
4630inline ::jaiabot::protobuf::MissionTask* Command::mutable_rc_task() {
4631 ::jaiabot::protobuf::MissionTask* _msg = _internal_mutable_rc_task();
4632 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Command.rc_task)
4633 return _msg;
4634}
4635
4636inline bool Command::has_command_data() const {
4637 return command_data_case() != COMMAND_DATA_NOT_SET;
4638}
4639inline void Command::clear_has_command_data() {
4640 _impl_._oneof_case_[0] = COMMAND_DATA_NOT_SET;
4641}
4642inline Command::CommandDataCase Command::command_data_case() const {
4643 return Command::CommandDataCase(_impl_._oneof_case_[0]);
4644}
4645// -------------------------------------------------------------------
4646
4647// CommandForHub
4648
4649// required uint32 hub_id = 1 [(.jaia.field) = {
4650inline bool CommandForHub::_internal_has_hub_id() const {
4651 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
4652 return value;
4653}
4654inline bool CommandForHub::has_hub_id() const {
4655 return _internal_has_hub_id();
4656}
4657inline void CommandForHub::clear_hub_id() {
4658 _impl_.hub_id_ = 0u;
4659 _impl_._has_bits_[0] &= ~0x00000004u;
4660}
4661inline uint32_t CommandForHub::_internal_hub_id() const {
4662 return _impl_.hub_id_;
4663}
4664inline uint32_t CommandForHub::hub_id() const {
4665 // @@protoc_insertion_point(field_get:jaiabot.protobuf.CommandForHub.hub_id)
4666 return _internal_hub_id();
4667}
4668inline void CommandForHub::_internal_set_hub_id(uint32_t value) {
4669 _impl_._has_bits_[0] |= 0x00000004u;
4670 _impl_.hub_id_ = value;
4671}
4672inline void CommandForHub::set_hub_id(uint32_t value) {
4673 _internal_set_hub_id(value);
4674 // @@protoc_insertion_point(field_set:jaiabot.protobuf.CommandForHub.hub_id)
4675}
4676
4677// required uint64 time = 2 [(.dccl.field) = {
4678inline bool CommandForHub::_internal_has_time() const {
4679 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
4680 return value;
4681}
4682inline bool CommandForHub::has_time() const {
4683 return _internal_has_time();
4684}
4685inline void CommandForHub::clear_time() {
4686 _impl_.time_ = uint64_t{0u};
4687 _impl_._has_bits_[0] &= ~0x00000002u;
4688}
4689inline uint64_t CommandForHub::_internal_time() const {
4690 return _impl_.time_;
4691}
4692inline uint64_t CommandForHub::time() const {
4693 // @@protoc_insertion_point(field_get:jaiabot.protobuf.CommandForHub.time)
4694 return _internal_time();
4695}
4696inline void CommandForHub::_internal_set_time(uint64_t value) {
4697 _impl_._has_bits_[0] |= 0x00000002u;
4698 _impl_.time_ = value;
4699}
4700inline void CommandForHub::set_time(uint64_t value) {
4701 _internal_set_time(value);
4702 // @@protoc_insertion_point(field_set:jaiabot.protobuf.CommandForHub.time)
4703}
4704
4705// required .jaiabot.protobuf.CommandForHub.HubCommandType type = 10 [(.jaia.field) = {
4706inline bool CommandForHub::_internal_has_type() const {
4707 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
4708 return value;
4709}
4710inline bool CommandForHub::has_type() const {
4711 return _internal_has_type();
4712}
4713inline void CommandForHub::clear_type() {
4714 _impl_.type_ = 5;
4715 _impl_._has_bits_[0] &= ~0x00000010u;
4716}
4717inline ::jaiabot::protobuf::CommandForHub_HubCommandType CommandForHub::_internal_type() const {
4718 return static_cast< ::jaiabot::protobuf::CommandForHub_HubCommandType >(_impl_.type_);
4719}
4720inline ::jaiabot::protobuf::CommandForHub_HubCommandType CommandForHub::type() const {
4721 // @@protoc_insertion_point(field_get:jaiabot.protobuf.CommandForHub.type)
4722 return _internal_type();
4723}
4724inline void CommandForHub::_internal_set_type(::jaiabot::protobuf::CommandForHub_HubCommandType value) {
4726 _impl_._has_bits_[0] |= 0x00000010u;
4727 _impl_.type_ = value;
4728}
4729inline void CommandForHub::set_type(::jaiabot::protobuf::CommandForHub_HubCommandType value) {
4730 _internal_set_type(value);
4731 // @@protoc_insertion_point(field_set:jaiabot.protobuf.CommandForHub.type)
4732}
4733
4734// optional uint32 scan_for_bot_id = 11;
4735inline bool CommandForHub::_internal_has_scan_for_bot_id() const {
4736 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
4737 return value;
4738}
4739inline bool CommandForHub::has_scan_for_bot_id() const {
4740 return _internal_has_scan_for_bot_id();
4741}
4742inline void CommandForHub::clear_scan_for_bot_id() {
4743 _impl_.scan_for_bot_id_ = 0u;
4744 _impl_._has_bits_[0] &= ~0x00000008u;
4745}
4746inline uint32_t CommandForHub::_internal_scan_for_bot_id() const {
4747 return _impl_.scan_for_bot_id_;
4748}
4749inline uint32_t CommandForHub::scan_for_bot_id() const {
4750 // @@protoc_insertion_point(field_get:jaiabot.protobuf.CommandForHub.scan_for_bot_id)
4751 return _internal_scan_for_bot_id();
4752}
4753inline void CommandForHub::_internal_set_scan_for_bot_id(uint32_t value) {
4754 _impl_._has_bits_[0] |= 0x00000008u;
4755 _impl_.scan_for_bot_id_ = value;
4756}
4757inline void CommandForHub::set_scan_for_bot_id(uint32_t value) {
4758 _internal_set_scan_for_bot_id(value);
4759 // @@protoc_insertion_point(field_set:jaiabot.protobuf.CommandForHub.scan_for_bot_id)
4760}
4761
4762// optional .jaiabot.protobuf.GeographicCoordinate hub_location = 80 [(.jaia.field) = {
4763inline bool CommandForHub::_internal_has_hub_location() const {
4764 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4765 PROTOBUF_ASSUME(!value || _impl_.hub_location_ != nullptr);
4766 return value;
4767}
4768inline bool CommandForHub::has_hub_location() const {
4769 return _internal_has_hub_location();
4770}
4771inline const ::jaiabot::protobuf::GeographicCoordinate& CommandForHub::_internal_hub_location() const {
4772 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.hub_location_;
4773 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
4775}
4776inline const ::jaiabot::protobuf::GeographicCoordinate& CommandForHub::hub_location() const {
4777 // @@protoc_insertion_point(field_get:jaiabot.protobuf.CommandForHub.hub_location)
4778 return _internal_hub_location();
4779}
4780inline void CommandForHub::unsafe_arena_set_allocated_hub_location(
4782 if (GetArenaForAllocation() == nullptr) {
4783 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.hub_location_);
4784 }
4785 _impl_.hub_location_ = hub_location;
4786 if (hub_location) {
4787 _impl_._has_bits_[0] |= 0x00000001u;
4788 } else {
4789 _impl_._has_bits_[0] &= ~0x00000001u;
4790 }
4791 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.CommandForHub.hub_location)
4792}
4793inline ::jaiabot::protobuf::GeographicCoordinate* CommandForHub::release_hub_location() {
4794 _impl_._has_bits_[0] &= ~0x00000001u;
4795 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.hub_location_;
4796 _impl_.hub_location_ = nullptr;
4797#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4798 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4799 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4800 if (GetArenaForAllocation() == nullptr) { delete old; }
4801#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4802 if (GetArenaForAllocation() != nullptr) {
4803 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4804 }
4805#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4806 return temp;
4807}
4808inline ::jaiabot::protobuf::GeographicCoordinate* CommandForHub::unsafe_arena_release_hub_location() {
4809 // @@protoc_insertion_point(field_release:jaiabot.protobuf.CommandForHub.hub_location)
4810 _impl_._has_bits_[0] &= ~0x00000001u;
4811 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.hub_location_;
4812 _impl_.hub_location_ = nullptr;
4813 return temp;
4814}
4815inline ::jaiabot::protobuf::GeographicCoordinate* CommandForHub::_internal_mutable_hub_location() {
4816 _impl_._has_bits_[0] |= 0x00000001u;
4817 if (_impl_.hub_location_ == nullptr) {
4818 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
4819 _impl_.hub_location_ = p;
4820 }
4821 return _impl_.hub_location_;
4822}
4823inline ::jaiabot::protobuf::GeographicCoordinate* CommandForHub::mutable_hub_location() {
4824 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_hub_location();
4825 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.CommandForHub.hub_location)
4826 return _msg;
4827}
4828inline void CommandForHub::set_allocated_hub_location(::jaiabot::protobuf::GeographicCoordinate* hub_location) {
4829 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4830 if (message_arena == nullptr) {
4831 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.hub_location_);
4832 }
4833 if (hub_location) {
4834 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4835 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
4836 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(hub_location));
4837 if (message_arena != submessage_arena) {
4838 hub_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4839 message_arena, hub_location, submessage_arena);
4840 }
4841 _impl_._has_bits_[0] |= 0x00000001u;
4842 } else {
4843 _impl_._has_bits_[0] &= ~0x00000001u;
4844 }
4845 _impl_.hub_location_ = hub_location;
4846 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.CommandForHub.hub_location)
4847}
4848
4849// -------------------------------------------------------------------
4850
4851// BotStatus_Attitude
4852
4853// optional double roll = 1 [(.dccl.field) = {
4854inline bool BotStatus_Attitude::_internal_has_roll() const {
4855 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4856 return value;
4857}
4858inline bool BotStatus_Attitude::has_roll() const {
4859 return _internal_has_roll();
4860}
4861inline void BotStatus_Attitude::clear_roll() {
4862 _impl_.roll_ = 0;
4863 _impl_._has_bits_[0] &= ~0x00000001u;
4864}
4865inline double BotStatus_Attitude::_internal_roll() const {
4866 return _impl_.roll_;
4867}
4868inline double BotStatus_Attitude::roll() const {
4869 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Attitude.roll)
4870 return _internal_roll();
4871}
4872inline void BotStatus_Attitude::_internal_set_roll(double value) {
4873 _impl_._has_bits_[0] |= 0x00000001u;
4874 _impl_.roll_ = value;
4875}
4876inline void BotStatus_Attitude::set_roll(double value) {
4877 _internal_set_roll(value);
4878 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Attitude.roll)
4879}
4880
4881// optional double pitch = 2 [(.dccl.field) = {
4882inline bool BotStatus_Attitude::_internal_has_pitch() const {
4883 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
4884 return value;
4885}
4886inline bool BotStatus_Attitude::has_pitch() const {
4887 return _internal_has_pitch();
4888}
4889inline void BotStatus_Attitude::clear_pitch() {
4890 _impl_.pitch_ = 0;
4891 _impl_._has_bits_[0] &= ~0x00000002u;
4892}
4893inline double BotStatus_Attitude::_internal_pitch() const {
4894 return _impl_.pitch_;
4895}
4896inline double BotStatus_Attitude::pitch() const {
4897 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Attitude.pitch)
4898 return _internal_pitch();
4899}
4900inline void BotStatus_Attitude::_internal_set_pitch(double value) {
4901 _impl_._has_bits_[0] |= 0x00000002u;
4902 _impl_.pitch_ = value;
4903}
4904inline void BotStatus_Attitude::set_pitch(double value) {
4905 _internal_set_pitch(value);
4906 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Attitude.pitch)
4907}
4908
4909// optional double heading = 3 [(.dccl.field) = {
4910inline bool BotStatus_Attitude::_internal_has_heading() const {
4911 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
4912 return value;
4913}
4914inline bool BotStatus_Attitude::has_heading() const {
4915 return _internal_has_heading();
4916}
4917inline void BotStatus_Attitude::clear_heading() {
4918 _impl_.heading_ = 0;
4919 _impl_._has_bits_[0] &= ~0x00000004u;
4920}
4921inline double BotStatus_Attitude::_internal_heading() const {
4922 return _impl_.heading_;
4923}
4924inline double BotStatus_Attitude::heading() const {
4925 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Attitude.heading)
4926 return _internal_heading();
4927}
4928inline void BotStatus_Attitude::_internal_set_heading(double value) {
4929 _impl_._has_bits_[0] |= 0x00000004u;
4930 _impl_.heading_ = value;
4931}
4932inline void BotStatus_Attitude::set_heading(double value) {
4933 _internal_set_heading(value);
4934 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Attitude.heading)
4935}
4936
4937// optional double course_over_ground = 4 [(.dccl.field) = {
4938inline bool BotStatus_Attitude::_internal_has_course_over_ground() const {
4939 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
4940 return value;
4941}
4942inline bool BotStatus_Attitude::has_course_over_ground() const {
4943 return _internal_has_course_over_ground();
4944}
4945inline void BotStatus_Attitude::clear_course_over_ground() {
4946 _impl_.course_over_ground_ = 0;
4947 _impl_._has_bits_[0] &= ~0x00000008u;
4948}
4949inline double BotStatus_Attitude::_internal_course_over_ground() const {
4950 return _impl_.course_over_ground_;
4951}
4952inline double BotStatus_Attitude::course_over_ground() const {
4953 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Attitude.course_over_ground)
4954 return _internal_course_over_ground();
4955}
4956inline void BotStatus_Attitude::_internal_set_course_over_ground(double value) {
4957 _impl_._has_bits_[0] |= 0x00000008u;
4958 _impl_.course_over_ground_ = value;
4959}
4960inline void BotStatus_Attitude::set_course_over_ground(double value) {
4961 _internal_set_course_over_ground(value);
4962 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Attitude.course_over_ground)
4963}
4964
4965// -------------------------------------------------------------------
4966
4967// BotStatus_Speed
4968
4969// optional double over_ground = 1 [(.dccl.field) = {
4970inline bool BotStatus_Speed::_internal_has_over_ground() const {
4971 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4972 return value;
4973}
4974inline bool BotStatus_Speed::has_over_ground() const {
4975 return _internal_has_over_ground();
4976}
4977inline void BotStatus_Speed::clear_over_ground() {
4978 _impl_.over_ground_ = 0;
4979 _impl_._has_bits_[0] &= ~0x00000001u;
4980}
4981inline double BotStatus_Speed::_internal_over_ground() const {
4982 return _impl_.over_ground_;
4983}
4984inline double BotStatus_Speed::over_ground() const {
4985 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Speed.over_ground)
4986 return _internal_over_ground();
4987}
4988inline void BotStatus_Speed::_internal_set_over_ground(double value) {
4989 _impl_._has_bits_[0] |= 0x00000001u;
4990 _impl_.over_ground_ = value;
4991}
4992inline void BotStatus_Speed::set_over_ground(double value) {
4993 _internal_set_over_ground(value);
4994 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Speed.over_ground)
4995}
4996
4997// optional double over_water = 2 [(.dccl.field) = {
4998inline bool BotStatus_Speed::_internal_has_over_water() const {
4999 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
5000 return value;
5001}
5002inline bool BotStatus_Speed::has_over_water() const {
5003 return _internal_has_over_water();
5004}
5005inline void BotStatus_Speed::clear_over_water() {
5006 _impl_.over_water_ = 0;
5007 _impl_._has_bits_[0] &= ~0x00000002u;
5008}
5009inline double BotStatus_Speed::_internal_over_water() const {
5010 return _impl_.over_water_;
5011}
5012inline double BotStatus_Speed::over_water() const {
5013 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.Speed.over_water)
5014 return _internal_over_water();
5015}
5016inline void BotStatus_Speed::_internal_set_over_water(double value) {
5017 _impl_._has_bits_[0] |= 0x00000002u;
5018 _impl_.over_water_ = value;
5019}
5020inline void BotStatus_Speed::set_over_water(double value) {
5021 _internal_set_over_water(value);
5022 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.Speed.over_water)
5023}
5024
5025// -------------------------------------------------------------------
5026
5027// BotStatus
5028
5029// required uint32 bot_id = 1 [(.dccl.field) = {
5030inline bool BotStatus::_internal_has_bot_id() const {
5031 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
5032 return value;
5033}
5034inline bool BotStatus::has_bot_id() const {
5035 return _internal_has_bot_id();
5036}
5037inline void BotStatus::clear_bot_id() {
5038 _impl_.bot_id_ = 0u;
5039 _impl_._has_bits_[0] &= ~0x00000080u;
5040}
5041inline uint32_t BotStatus::_internal_bot_id() const {
5042 return _impl_.bot_id_;
5043}
5044inline uint32_t BotStatus::bot_id() const {
5045 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.bot_id)
5046 return _internal_bot_id();
5047}
5048inline void BotStatus::_internal_set_bot_id(uint32_t value) {
5049 _impl_._has_bits_[0] |= 0x00000080u;
5050 _impl_.bot_id_ = value;
5051}
5052inline void BotStatus::set_bot_id(uint32_t value) {
5053 _internal_set_bot_id(value);
5054 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.bot_id)
5055}
5056
5057// required uint64 time = 2 [(.dccl.field) = {
5058inline bool BotStatus::_internal_has_time() const {
5059 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
5060 return value;
5061}
5062inline bool BotStatus::has_time() const {
5063 return _internal_has_time();
5064}
5065inline void BotStatus::clear_time() {
5066 _impl_.time_ = uint64_t{0u};
5067 _impl_._has_bits_[0] &= ~0x00000008u;
5068}
5069inline uint64_t BotStatus::_internal_time() const {
5070 return _impl_.time_;
5071}
5072inline uint64_t BotStatus::time() const {
5073 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.time)
5074 return _internal_time();
5075}
5076inline void BotStatus::_internal_set_time(uint64_t value) {
5077 _impl_._has_bits_[0] |= 0x00000008u;
5078 _impl_.time_ = value;
5079}
5080inline void BotStatus::set_time(uint64_t value) {
5081 _internal_set_time(value);
5082 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.time)
5083}
5084
5085// optional uint64 last_command_time = 3 [(.dccl.field) = {
5086inline bool BotStatus::_internal_has_last_command_time() const {
5087 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
5088 return value;
5089}
5090inline bool BotStatus::has_last_command_time() const {
5091 return _internal_has_last_command_time();
5092}
5093inline void BotStatus::clear_last_command_time() {
5094 _impl_.last_command_time_ = uint64_t{0u};
5095 _impl_._has_bits_[0] &= ~0x00000010u;
5096}
5097inline uint64_t BotStatus::_internal_last_command_time() const {
5098 return _impl_.last_command_time_;
5099}
5100inline uint64_t BotStatus::last_command_time() const {
5101 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.last_command_time)
5102 return _internal_last_command_time();
5103}
5104inline void BotStatus::_internal_set_last_command_time(uint64_t value) {
5105 _impl_._has_bits_[0] |= 0x00000010u;
5106 _impl_.last_command_time_ = value;
5107}
5108inline void BotStatus::set_last_command_time(uint64_t value) {
5109 _internal_set_last_command_time(value);
5110 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.last_command_time)
5111}
5112
5113// optional .goby.middleware.protobuf.HealthState health_state = 4 [(.jaia.field) = {
5114inline bool BotStatus::_internal_has_health_state() const {
5115 bool value = (_impl_._has_bits_[0] & 0x00200000u) != 0;
5116 return value;
5117}
5118inline bool BotStatus::has_health_state() const {
5119 return _internal_has_health_state();
5120}
5121inline void BotStatus::clear_health_state() {
5122 _impl_.health_state_ = 1;
5123 _impl_._has_bits_[0] &= ~0x00200000u;
5124}
5125inline ::goby::middleware::protobuf::HealthState BotStatus::_internal_health_state() const {
5126 return static_cast< ::goby::middleware::protobuf::HealthState >(_impl_.health_state_);
5127}
5128inline ::goby::middleware::protobuf::HealthState BotStatus::health_state() const {
5129 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.health_state)
5130 return _internal_health_state();
5131}
5132inline void BotStatus::_internal_set_health_state(::goby::middleware::protobuf::HealthState value) {
5133 assert(::goby::middleware::protobuf::HealthState_IsValid(value));
5134 _impl_._has_bits_[0] |= 0x00200000u;
5135 _impl_.health_state_ = value;
5136}
5137inline void BotStatus::set_health_state(::goby::middleware::protobuf::HealthState value) {
5138 _internal_set_health_state(value);
5139 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.health_state)
5140}
5141
5142// repeated .jaiabot.protobuf.Error error = 5 [(.dccl.field) = {
5143inline int BotStatus::_internal_error_size() const {
5144 return _impl_.error_.size();
5145}
5146inline int BotStatus::error_size() const {
5147 return _internal_error_size();
5148}
5149inline void BotStatus::clear_error() {
5150 _impl_.error_.Clear();
5151}
5152inline ::jaiabot::protobuf::Error BotStatus::_internal_error(int index) const {
5153 return static_cast< ::jaiabot::protobuf::Error >(_impl_.error_.Get(index));
5154}
5155inline ::jaiabot::protobuf::Error BotStatus::error(int index) const {
5156 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.error)
5157 return _internal_error(index);
5158}
5159inline void BotStatus::set_error(int index, ::jaiabot::protobuf::Error value) {
5161 _impl_.error_.Set(index, value);
5162 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.error)
5163}
5164inline void BotStatus::_internal_add_error(::jaiabot::protobuf::Error value) {
5166 _impl_.error_.Add(value);
5167}
5168inline void BotStatus::add_error(::jaiabot::protobuf::Error value) {
5169 _internal_add_error(value);
5170 // @@protoc_insertion_point(field_add:jaiabot.protobuf.BotStatus.error)
5171}
5172inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
5173BotStatus::error() const {
5174 // @@protoc_insertion_point(field_list:jaiabot.protobuf.BotStatus.error)
5175 return _impl_.error_;
5176}
5177inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
5178BotStatus::_internal_mutable_error() {
5179 return &_impl_.error_;
5180}
5181inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
5182BotStatus::mutable_error() {
5183 // @@protoc_insertion_point(field_mutable_list:jaiabot.protobuf.BotStatus.error)
5184 return _internal_mutable_error();
5185}
5186
5187// repeated .jaiabot.protobuf.Warning warning = 6 [(.dccl.field) = {
5188inline int BotStatus::_internal_warning_size() const {
5189 return _impl_.warning_.size();
5190}
5191inline int BotStatus::warning_size() const {
5192 return _internal_warning_size();
5193}
5194inline void BotStatus::clear_warning() {
5195 _impl_.warning_.Clear();
5196}
5197inline ::jaiabot::protobuf::Warning BotStatus::_internal_warning(int index) const {
5198 return static_cast< ::jaiabot::protobuf::Warning >(_impl_.warning_.Get(index));
5199}
5200inline ::jaiabot::protobuf::Warning BotStatus::warning(int index) const {
5201 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.warning)
5202 return _internal_warning(index);
5203}
5204inline void BotStatus::set_warning(int index, ::jaiabot::protobuf::Warning value) {
5206 _impl_.warning_.Set(index, value);
5207 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.warning)
5208}
5209inline void BotStatus::_internal_add_warning(::jaiabot::protobuf::Warning value) {
5211 _impl_.warning_.Add(value);
5212}
5213inline void BotStatus::add_warning(::jaiabot::protobuf::Warning value) {
5214 _internal_add_warning(value);
5215 // @@protoc_insertion_point(field_add:jaiabot.protobuf.BotStatus.warning)
5216}
5217inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
5218BotStatus::warning() const {
5219 // @@protoc_insertion_point(field_list:jaiabot.protobuf.BotStatus.warning)
5220 return _impl_.warning_;
5221}
5222inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
5223BotStatus::_internal_mutable_warning() {
5224 return &_impl_.warning_;
5225}
5226inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
5227BotStatus::mutable_warning() {
5228 // @@protoc_insertion_point(field_mutable_list:jaiabot.protobuf.BotStatus.warning)
5229 return _internal_mutable_warning();
5230}
5231
5232// optional .jaiabot.protobuf.BotStatus.BotType bot_type = 7 [(.jaia.field) = {
5233inline bool BotStatus::_internal_has_bot_type() const {
5234 bool value = (_impl_._has_bits_[0] & 0x00400000u) != 0;
5235 return value;
5236}
5237inline bool BotStatus::has_bot_type() const {
5238 return _internal_has_bot_type();
5239}
5240inline void BotStatus::clear_bot_type() {
5241 _impl_.bot_type_ = 1;
5242 _impl_._has_bits_[0] &= ~0x00400000u;
5243}
5244inline ::jaiabot::protobuf::BotStatus_BotType BotStatus::_internal_bot_type() const {
5245 return static_cast< ::jaiabot::protobuf::BotStatus_BotType >(_impl_.bot_type_);
5246}
5247inline ::jaiabot::protobuf::BotStatus_BotType BotStatus::bot_type() const {
5248 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.bot_type)
5249 return _internal_bot_type();
5250}
5251inline void BotStatus::_internal_set_bot_type(::jaiabot::protobuf::BotStatus_BotType value) {
5253 _impl_._has_bits_[0] |= 0x00400000u;
5254 _impl_.bot_type_ = value;
5255}
5256inline void BotStatus::set_bot_type(::jaiabot::protobuf::BotStatus_BotType value) {
5257 _internal_set_bot_type(value);
5258 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.bot_type)
5259}
5260
5261// optional .jaiabot.protobuf.Link link = 8 [(.dccl.field) = {
5262inline bool BotStatus::_internal_has_link() const {
5263 bool value = (_impl_._has_bits_[0] & 0x00800000u) != 0;
5264 return value;
5265}
5266inline bool BotStatus::has_link() const {
5267 return _internal_has_link();
5268}
5269inline void BotStatus::clear_link() {
5270 _impl_.link_ = -1;
5271 _impl_._has_bits_[0] &= ~0x00800000u;
5272}
5273inline ::jaiabot::protobuf::Link BotStatus::_internal_link() const {
5274 return static_cast< ::jaiabot::protobuf::Link >(_impl_.link_);
5275}
5276inline ::jaiabot::protobuf::Link BotStatus::link() const {
5277 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.link)
5278 return _internal_link();
5279}
5280inline void BotStatus::_internal_set_link(::jaiabot::protobuf::Link value) {
5281 assert(::jaiabot::protobuf::Link_IsValid(value));
5282 _impl_._has_bits_[0] |= 0x00800000u;
5283 _impl_.link_ = value;
5284}
5285inline void BotStatus::set_link(::jaiabot::protobuf::Link value) {
5286 _internal_set_link(value);
5287 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.link)
5288}
5289
5290// optional .jaiabot.protobuf.GeographicCoordinate location = 10 [(.jaia.field) = {
5291inline bool BotStatus::_internal_has_location() const {
5292 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
5293 PROTOBUF_ASSUME(!value || _impl_.location_ != nullptr);
5294 return value;
5295}
5296inline bool BotStatus::has_location() const {
5297 return _internal_has_location();
5298}
5299inline const ::jaiabot::protobuf::GeographicCoordinate& BotStatus::_internal_location() const {
5300 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.location_;
5301 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
5303}
5304inline const ::jaiabot::protobuf::GeographicCoordinate& BotStatus::location() const {
5305 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.location)
5306 return _internal_location();
5307}
5308inline void BotStatus::unsafe_arena_set_allocated_location(
5310 if (GetArenaForAllocation() == nullptr) {
5311 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.location_);
5312 }
5313 _impl_.location_ = location;
5314 if (location) {
5315 _impl_._has_bits_[0] |= 0x00000001u;
5316 } else {
5317 _impl_._has_bits_[0] &= ~0x00000001u;
5318 }
5319 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.BotStatus.location)
5320}
5321inline ::jaiabot::protobuf::GeographicCoordinate* BotStatus::release_location() {
5322 _impl_._has_bits_[0] &= ~0x00000001u;
5323 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.location_;
5324 _impl_.location_ = nullptr;
5325#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
5326 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
5327 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5328 if (GetArenaForAllocation() == nullptr) { delete old; }
5329#else // PROTOBUF_FORCE_COPY_IN_RELEASE
5330 if (GetArenaForAllocation() != nullptr) {
5331 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5332 }
5333#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
5334 return temp;
5335}
5336inline ::jaiabot::protobuf::GeographicCoordinate* BotStatus::unsafe_arena_release_location() {
5337 // @@protoc_insertion_point(field_release:jaiabot.protobuf.BotStatus.location)
5338 _impl_._has_bits_[0] &= ~0x00000001u;
5339 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.location_;
5340 _impl_.location_ = nullptr;
5341 return temp;
5342}
5343inline ::jaiabot::protobuf::GeographicCoordinate* BotStatus::_internal_mutable_location() {
5344 _impl_._has_bits_[0] |= 0x00000001u;
5345 if (_impl_.location_ == nullptr) {
5346 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
5347 _impl_.location_ = p;
5348 }
5349 return _impl_.location_;
5350}
5351inline ::jaiabot::protobuf::GeographicCoordinate* BotStatus::mutable_location() {
5352 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_location();
5353 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.BotStatus.location)
5354 return _msg;
5355}
5356inline void BotStatus::set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location) {
5357 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
5358 if (message_arena == nullptr) {
5359 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.location_);
5360 }
5361 if (location) {
5362 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5363 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
5364 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location));
5365 if (message_arena != submessage_arena) {
5366 location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5367 message_arena, location, submessage_arena);
5368 }
5369 _impl_._has_bits_[0] |= 0x00000001u;
5370 } else {
5371 _impl_._has_bits_[0] &= ~0x00000001u;
5372 }
5373 _impl_.location_ = location;
5374 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.BotStatus.location)
5375}
5376
5377// optional double sensor_depth = 11 [(.dccl.field) = {
5378inline bool BotStatus::_internal_has_sensor_depth() const {
5379 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
5380 return value;
5381}
5382inline bool BotStatus::has_sensor_depth() const {
5383 return _internal_has_sensor_depth();
5384}
5385inline void BotStatus::clear_sensor_depth() {
5386 _impl_.sensor_depth_ = 0;
5387 _impl_._has_bits_[0] &= ~0x00000020u;
5388}
5389inline double BotStatus::_internal_sensor_depth() const {
5390 return _impl_.sensor_depth_;
5391}
5392inline double BotStatus::sensor_depth() const {
5393 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.sensor_depth)
5394 return _internal_sensor_depth();
5395}
5396inline void BotStatus::_internal_set_sensor_depth(double value) {
5397 _impl_._has_bits_[0] |= 0x00000020u;
5398 _impl_.sensor_depth_ = value;
5399}
5400inline void BotStatus::set_sensor_depth(double value) {
5401 _internal_set_sensor_depth(value);
5402 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.sensor_depth)
5403}
5404
5405// optional double depth = 12 [(.dccl.field) = {
5406inline bool BotStatus::_internal_has_depth() const {
5407 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
5408 return value;
5409}
5410inline bool BotStatus::has_depth() const {
5411 return _internal_has_depth();
5412}
5413inline void BotStatus::clear_depth() {
5414 _impl_.depth_ = 0;
5415 _impl_._has_bits_[0] &= ~0x00000040u;
5416}
5417inline double BotStatus::_internal_depth() const {
5418 return _impl_.depth_;
5419}
5420inline double BotStatus::depth() const {
5421 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.depth)
5422 return _internal_depth();
5423}
5424inline void BotStatus::_internal_set_depth(double value) {
5425 _impl_._has_bits_[0] |= 0x00000040u;
5426 _impl_.depth_ = value;
5427}
5428inline void BotStatus::set_depth(double value) {
5429 _internal_set_depth(value);
5430 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.depth)
5431}
5432
5433// optional .jaiabot.protobuf.BotStatus.Attitude attitude = 20 [(.jaia.field) = {
5434inline bool BotStatus::_internal_has_attitude() const {
5435 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
5436 PROTOBUF_ASSUME(!value || _impl_.attitude_ != nullptr);
5437 return value;
5438}
5439inline bool BotStatus::has_attitude() const {
5440 return _internal_has_attitude();
5441}
5442inline void BotStatus::clear_attitude() {
5443 if (_impl_.attitude_ != nullptr) _impl_.attitude_->Clear();
5444 _impl_._has_bits_[0] &= ~0x00000002u;
5445}
5446inline const ::jaiabot::protobuf::BotStatus_Attitude& BotStatus::_internal_attitude() const {
5447 const ::jaiabot::protobuf::BotStatus_Attitude* p = _impl_.attitude_;
5448 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::BotStatus_Attitude&>(
5450}
5451inline const ::jaiabot::protobuf::BotStatus_Attitude& BotStatus::attitude() const {
5452 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.attitude)
5453 return _internal_attitude();
5454}
5455inline void BotStatus::unsafe_arena_set_allocated_attitude(
5457 if (GetArenaForAllocation() == nullptr) {
5458 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.attitude_);
5459 }
5460 _impl_.attitude_ = attitude;
5461 if (attitude) {
5462 _impl_._has_bits_[0] |= 0x00000002u;
5463 } else {
5464 _impl_._has_bits_[0] &= ~0x00000002u;
5465 }
5466 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.BotStatus.attitude)
5467}
5468inline ::jaiabot::protobuf::BotStatus_Attitude* BotStatus::release_attitude() {
5469 _impl_._has_bits_[0] &= ~0x00000002u;
5470 ::jaiabot::protobuf::BotStatus_Attitude* temp = _impl_.attitude_;
5471 _impl_.attitude_ = nullptr;
5472#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
5473 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
5474 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5475 if (GetArenaForAllocation() == nullptr) { delete old; }
5476#else // PROTOBUF_FORCE_COPY_IN_RELEASE
5477 if (GetArenaForAllocation() != nullptr) {
5478 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5479 }
5480#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
5481 return temp;
5482}
5483inline ::jaiabot::protobuf::BotStatus_Attitude* BotStatus::unsafe_arena_release_attitude() {
5484 // @@protoc_insertion_point(field_release:jaiabot.protobuf.BotStatus.attitude)
5485 _impl_._has_bits_[0] &= ~0x00000002u;
5486 ::jaiabot::protobuf::BotStatus_Attitude* temp = _impl_.attitude_;
5487 _impl_.attitude_ = nullptr;
5488 return temp;
5489}
5490inline ::jaiabot::protobuf::BotStatus_Attitude* BotStatus::_internal_mutable_attitude() {
5491 _impl_._has_bits_[0] |= 0x00000002u;
5492 if (_impl_.attitude_ == nullptr) {
5493 auto* p = CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Attitude>(GetArenaForAllocation());
5494 _impl_.attitude_ = p;
5495 }
5496 return _impl_.attitude_;
5497}
5498inline ::jaiabot::protobuf::BotStatus_Attitude* BotStatus::mutable_attitude() {
5499 ::jaiabot::protobuf::BotStatus_Attitude* _msg = _internal_mutable_attitude();
5500 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.BotStatus.attitude)
5501 return _msg;
5502}
5503inline void BotStatus::set_allocated_attitude(::jaiabot::protobuf::BotStatus_Attitude* attitude) {
5504 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
5505 if (message_arena == nullptr) {
5506 delete _impl_.attitude_;
5507 }
5508 if (attitude) {
5509 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5510 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(attitude);
5511 if (message_arena != submessage_arena) {
5512 attitude = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5513 message_arena, attitude, submessage_arena);
5514 }
5515 _impl_._has_bits_[0] |= 0x00000002u;
5516 } else {
5517 _impl_._has_bits_[0] &= ~0x00000002u;
5518 }
5519 _impl_.attitude_ = attitude;
5520 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.BotStatus.attitude)
5521}
5522
5523// optional .jaiabot.protobuf.BotStatus.Speed speed = 30 [(.jaia.field) = {
5524inline bool BotStatus::_internal_has_speed() const {
5525 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
5526 PROTOBUF_ASSUME(!value || _impl_.speed_ != nullptr);
5527 return value;
5528}
5529inline bool BotStatus::has_speed() const {
5530 return _internal_has_speed();
5531}
5532inline void BotStatus::clear_speed() {
5533 if (_impl_.speed_ != nullptr) _impl_.speed_->Clear();
5534 _impl_._has_bits_[0] &= ~0x00000004u;
5535}
5536inline const ::jaiabot::protobuf::BotStatus_Speed& BotStatus::_internal_speed() const {
5537 const ::jaiabot::protobuf::BotStatus_Speed* p = _impl_.speed_;
5538 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::BotStatus_Speed&>(
5540}
5541inline const ::jaiabot::protobuf::BotStatus_Speed& BotStatus::speed() const {
5542 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.speed)
5543 return _internal_speed();
5544}
5545inline void BotStatus::unsafe_arena_set_allocated_speed(
5547 if (GetArenaForAllocation() == nullptr) {
5548 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.speed_);
5549 }
5550 _impl_.speed_ = speed;
5551 if (speed) {
5552 _impl_._has_bits_[0] |= 0x00000004u;
5553 } else {
5554 _impl_._has_bits_[0] &= ~0x00000004u;
5555 }
5556 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.BotStatus.speed)
5557}
5558inline ::jaiabot::protobuf::BotStatus_Speed* BotStatus::release_speed() {
5559 _impl_._has_bits_[0] &= ~0x00000004u;
5560 ::jaiabot::protobuf::BotStatus_Speed* temp = _impl_.speed_;
5561 _impl_.speed_ = nullptr;
5562#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
5563 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
5564 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5565 if (GetArenaForAllocation() == nullptr) { delete old; }
5566#else // PROTOBUF_FORCE_COPY_IN_RELEASE
5567 if (GetArenaForAllocation() != nullptr) {
5568 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5569 }
5570#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
5571 return temp;
5572}
5573inline ::jaiabot::protobuf::BotStatus_Speed* BotStatus::unsafe_arena_release_speed() {
5574 // @@protoc_insertion_point(field_release:jaiabot.protobuf.BotStatus.speed)
5575 _impl_._has_bits_[0] &= ~0x00000004u;
5576 ::jaiabot::protobuf::BotStatus_Speed* temp = _impl_.speed_;
5577 _impl_.speed_ = nullptr;
5578 return temp;
5579}
5580inline ::jaiabot::protobuf::BotStatus_Speed* BotStatus::_internal_mutable_speed() {
5581 _impl_._has_bits_[0] |= 0x00000004u;
5582 if (_impl_.speed_ == nullptr) {
5583 auto* p = CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Speed>(GetArenaForAllocation());
5584 _impl_.speed_ = p;
5585 }
5586 return _impl_.speed_;
5587}
5588inline ::jaiabot::protobuf::BotStatus_Speed* BotStatus::mutable_speed() {
5589 ::jaiabot::protobuf::BotStatus_Speed* _msg = _internal_mutable_speed();
5590 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.BotStatus.speed)
5591 return _msg;
5592}
5593inline void BotStatus::set_allocated_speed(::jaiabot::protobuf::BotStatus_Speed* speed) {
5594 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
5595 if (message_arena == nullptr) {
5596 delete _impl_.speed_;
5597 }
5598 if (speed) {
5599 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5600 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(speed);
5601 if (message_arena != submessage_arena) {
5602 speed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5603 message_arena, speed, submessage_arena);
5604 }
5605 _impl_._has_bits_[0] |= 0x00000004u;
5606 } else {
5607 _impl_._has_bits_[0] &= ~0x00000004u;
5608 }
5609 _impl_.speed_ = speed;
5610 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.BotStatus.speed)
5611}
5612
5613// optional .jaiabot.protobuf.MissionState mission_state = 40 [(.jaia.field) = {
5614inline bool BotStatus::_internal_has_mission_state() const {
5615 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
5616 return value;
5617}
5618inline bool BotStatus::has_mission_state() const {
5619 return _internal_has_mission_state();
5620}
5621inline void BotStatus::clear_mission_state() {
5622 _impl_.mission_state_ = 0;
5623 _impl_._has_bits_[0] &= ~0x00000100u;
5624}
5625inline ::jaiabot::protobuf::MissionState BotStatus::_internal_mission_state() const {
5626 return static_cast< ::jaiabot::protobuf::MissionState >(_impl_.mission_state_);
5627}
5628inline ::jaiabot::protobuf::MissionState BotStatus::mission_state() const {
5629 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.mission_state)
5630 return _internal_mission_state();
5631}
5632inline void BotStatus::_internal_set_mission_state(::jaiabot::protobuf::MissionState value) {
5634 _impl_._has_bits_[0] |= 0x00000100u;
5635 _impl_.mission_state_ = value;
5636}
5637inline void BotStatus::set_mission_state(::jaiabot::protobuf::MissionState value) {
5638 _internal_set_mission_state(value);
5639 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.mission_state)
5640}
5641
5642// optional int32 active_goal = 41 [(.dccl.field) = {
5643inline bool BotStatus::_internal_has_active_goal() const {
5644 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
5645 return value;
5646}
5647inline bool BotStatus::has_active_goal() const {
5648 return _internal_has_active_goal();
5649}
5650inline void BotStatus::clear_active_goal() {
5651 _impl_.active_goal_ = 0;
5652 _impl_._has_bits_[0] &= ~0x00000400u;
5653}
5654inline int32_t BotStatus::_internal_active_goal() const {
5655 return _impl_.active_goal_;
5656}
5657inline int32_t BotStatus::active_goal() const {
5658 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.active_goal)
5659 return _internal_active_goal();
5660}
5661inline void BotStatus::_internal_set_active_goal(int32_t value) {
5662 _impl_._has_bits_[0] |= 0x00000400u;
5663 _impl_.active_goal_ = value;
5664}
5665inline void BotStatus::set_active_goal(int32_t value) {
5666 _internal_set_active_goal(value);
5667 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.active_goal)
5668}
5669
5670// optional double distance_to_active_goal = 42 [(.dccl.field) = {
5671inline bool BotStatus::_internal_has_distance_to_active_goal() const {
5672 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
5673 return value;
5674}
5675inline bool BotStatus::has_distance_to_active_goal() const {
5676 return _internal_has_distance_to_active_goal();
5677}
5678inline void BotStatus::clear_distance_to_active_goal() {
5679 _impl_.distance_to_active_goal_ = 0;
5680 _impl_._has_bits_[0] &= ~0x00000200u;
5681}
5682inline double BotStatus::_internal_distance_to_active_goal() const {
5683 return _impl_.distance_to_active_goal_;
5684}
5685inline double BotStatus::distance_to_active_goal() const {
5686 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.distance_to_active_goal)
5687 return _internal_distance_to_active_goal();
5688}
5689inline void BotStatus::_internal_set_distance_to_active_goal(double value) {
5690 _impl_._has_bits_[0] |= 0x00000200u;
5691 _impl_.distance_to_active_goal_ = value;
5692}
5693inline void BotStatus::set_distance_to_active_goal(double value) {
5694 _internal_set_distance_to_active_goal(value);
5695 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.distance_to_active_goal)
5696}
5697
5698// optional uint32 active_goal_timeout = 43 [(.dccl.field) = {
5699inline bool BotStatus::_internal_has_active_goal_timeout() const {
5700 bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0;
5701 return value;
5702}
5703inline bool BotStatus::has_active_goal_timeout() const {
5704 return _internal_has_active_goal_timeout();
5705}
5706inline void BotStatus::clear_active_goal_timeout() {
5707 _impl_.active_goal_timeout_ = 0u;
5708 _impl_._has_bits_[0] &= ~0x00000800u;
5709}
5710inline uint32_t BotStatus::_internal_active_goal_timeout() const {
5711 return _impl_.active_goal_timeout_;
5712}
5713inline uint32_t BotStatus::active_goal_timeout() const {
5714 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.active_goal_timeout)
5715 return _internal_active_goal_timeout();
5716}
5717inline void BotStatus::_internal_set_active_goal_timeout(uint32_t value) {
5718 _impl_._has_bits_[0] |= 0x00000800u;
5719 _impl_.active_goal_timeout_ = value;
5720}
5721inline void BotStatus::set_active_goal_timeout(uint32_t value) {
5722 _internal_set_active_goal_timeout(value);
5723 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.active_goal_timeout)
5724}
5725
5726// optional int32 repeat_index = 44 [(.dccl.field) = {
5727inline bool BotStatus::_internal_has_repeat_index() const {
5728 bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0;
5729 return value;
5730}
5731inline bool BotStatus::has_repeat_index() const {
5732 return _internal_has_repeat_index();
5733}
5734inline void BotStatus::clear_repeat_index() {
5735 _impl_.repeat_index_ = 0;
5736 _impl_._has_bits_[0] &= ~0x00001000u;
5737}
5738inline int32_t BotStatus::_internal_repeat_index() const {
5739 return _impl_.repeat_index_;
5740}
5741inline int32_t BotStatus::repeat_index() const {
5742 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.repeat_index)
5743 return _internal_repeat_index();
5744}
5745inline void BotStatus::_internal_set_repeat_index(int32_t value) {
5746 _impl_._has_bits_[0] |= 0x00001000u;
5747 _impl_.repeat_index_ = value;
5748}
5749inline void BotStatus::set_repeat_index(int32_t value) {
5750 _internal_set_repeat_index(value);
5751 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.repeat_index)
5752}
5753
5754// optional double salinity = 51 [(.dccl.field) = {
5755inline bool BotStatus::_internal_has_salinity() const {
5756 bool value = (_impl_._has_bits_[0] & 0x00004000u) != 0;
5757 return value;
5758}
5759inline bool BotStatus::has_salinity() const {
5760 return _internal_has_salinity();
5761}
5762inline void BotStatus::clear_salinity() {
5763 _impl_.salinity_ = 0;
5764 _impl_._has_bits_[0] &= ~0x00004000u;
5765}
5766inline double BotStatus::_internal_salinity() const {
5767 return _impl_.salinity_;
5768}
5769inline double BotStatus::salinity() const {
5770 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.salinity)
5771 return _internal_salinity();
5772}
5773inline void BotStatus::_internal_set_salinity(double value) {
5774 _impl_._has_bits_[0] |= 0x00004000u;
5775 _impl_.salinity_ = value;
5776}
5777inline void BotStatus::set_salinity(double value) {
5778 _internal_set_salinity(value);
5779 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.salinity)
5780}
5781
5782// optional double temperature = 52 [(.dccl.field) = {
5783inline bool BotStatus::_internal_has_temperature() const {
5784 bool value = (_impl_._has_bits_[0] & 0x00008000u) != 0;
5785 return value;
5786}
5787inline bool BotStatus::has_temperature() const {
5788 return _internal_has_temperature();
5789}
5790inline void BotStatus::clear_temperature() {
5791 _impl_.temperature_ = 0;
5792 _impl_._has_bits_[0] &= ~0x00008000u;
5793}
5794inline double BotStatus::_internal_temperature() const {
5795 return _impl_.temperature_;
5796}
5797inline double BotStatus::temperature() const {
5798 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.temperature)
5799 return _internal_temperature();
5800}
5801inline void BotStatus::_internal_set_temperature(double value) {
5802 _impl_._has_bits_[0] |= 0x00008000u;
5803 _impl_.temperature_ = value;
5804}
5805inline void BotStatus::set_temperature(double value) {
5806 _internal_set_temperature(value);
5807 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.temperature)
5808}
5809
5810// optional double battery_percent = 53 [(.dccl.field) = {
5811inline bool BotStatus::_internal_has_battery_percent() const {
5812 bool value = (_impl_._has_bits_[0] & 0x00010000u) != 0;
5813 return value;
5814}
5815inline bool BotStatus::has_battery_percent() const {
5816 return _internal_has_battery_percent();
5817}
5818inline void BotStatus::clear_battery_percent() {
5819 _impl_.battery_percent_ = 0;
5820 _impl_._has_bits_[0] &= ~0x00010000u;
5821}
5822inline double BotStatus::_internal_battery_percent() const {
5823 return _impl_.battery_percent_;
5824}
5825inline double BotStatus::battery_percent() const {
5826 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.battery_percent)
5827 return _internal_battery_percent();
5828}
5829inline void BotStatus::_internal_set_battery_percent(double value) {
5830 _impl_._has_bits_[0] |= 0x00010000u;
5831 _impl_.battery_percent_ = value;
5832}
5833inline void BotStatus::set_battery_percent(double value) {
5834 _internal_set_battery_percent(value);
5835 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.battery_percent)
5836}
5837
5838// optional int32 calibration_status = 54 [(.dccl.field) = {
5839inline bool BotStatus::_internal_has_calibration_status() const {
5840 bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0;
5841 return value;
5842}
5843inline bool BotStatus::has_calibration_status() const {
5844 return _internal_has_calibration_status();
5845}
5846inline void BotStatus::clear_calibration_status() {
5847 _impl_.calibration_status_ = 0;
5848 _impl_._has_bits_[0] &= ~0x00002000u;
5849}
5850inline int32_t BotStatus::_internal_calibration_status() const {
5851 return _impl_.calibration_status_;
5852}
5853inline int32_t BotStatus::calibration_status() const {
5854 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.calibration_status)
5855 return _internal_calibration_status();
5856}
5857inline void BotStatus::_internal_set_calibration_status(int32_t value) {
5858 _impl_._has_bits_[0] |= 0x00002000u;
5859 _impl_.calibration_status_ = value;
5860}
5861inline void BotStatus::set_calibration_status(int32_t value) {
5862 _internal_set_calibration_status(value);
5863 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.calibration_status)
5864}
5865
5866// optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 55;
5867inline bool BotStatus::_internal_has_calibration_state() const {
5868 bool value = (_impl_._has_bits_[0] & 0x01000000u) != 0;
5869 return value;
5870}
5871inline bool BotStatus::has_calibration_state() const {
5872 return _internal_has_calibration_state();
5873}
5874inline void BotStatus::clear_calibration_state() {
5875 _impl_.calibration_state_ = 1;
5876 _impl_._has_bits_[0] &= ~0x01000000u;
5877}
5878inline ::jaiabot::protobuf::IMUCalibrationState BotStatus::_internal_calibration_state() const {
5879 return static_cast< ::jaiabot::protobuf::IMUCalibrationState >(_impl_.calibration_state_);
5880}
5881inline ::jaiabot::protobuf::IMUCalibrationState BotStatus::calibration_state() const {
5882 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.calibration_state)
5883 return _internal_calibration_state();
5884}
5885inline void BotStatus::_internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
5887 _impl_._has_bits_[0] |= 0x01000000u;
5888 _impl_.calibration_state_ = value;
5889}
5890inline void BotStatus::set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
5891 _internal_set_calibration_state(value);
5892 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.calibration_state)
5893}
5894
5895// optional double hdop = 56 [(.dccl.field) = {
5896inline bool BotStatus::_internal_has_hdop() const {
5897 bool value = (_impl_._has_bits_[0] & 0x00020000u) != 0;
5898 return value;
5899}
5900inline bool BotStatus::has_hdop() const {
5901 return _internal_has_hdop();
5902}
5903inline void BotStatus::clear_hdop() {
5904 _impl_.hdop_ = 0;
5905 _impl_._has_bits_[0] &= ~0x00020000u;
5906}
5907inline double BotStatus::_internal_hdop() const {
5908 return _impl_.hdop_;
5909}
5910inline double BotStatus::hdop() const {
5911 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.hdop)
5912 return _internal_hdop();
5913}
5914inline void BotStatus::_internal_set_hdop(double value) {
5915 _impl_._has_bits_[0] |= 0x00020000u;
5916 _impl_.hdop_ = value;
5917}
5918inline void BotStatus::set_hdop(double value) {
5919 _internal_set_hdop(value);
5920 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.hdop)
5921}
5922
5923// optional double pdop = 57 [(.dccl.field) = {
5924inline bool BotStatus::_internal_has_pdop() const {
5925 bool value = (_impl_._has_bits_[0] & 0x00040000u) != 0;
5926 return value;
5927}
5928inline bool BotStatus::has_pdop() const {
5929 return _internal_has_pdop();
5930}
5931inline void BotStatus::clear_pdop() {
5932 _impl_.pdop_ = 0;
5933 _impl_._has_bits_[0] &= ~0x00040000u;
5934}
5935inline double BotStatus::_internal_pdop() const {
5936 return _impl_.pdop_;
5937}
5938inline double BotStatus::pdop() const {
5939 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.pdop)
5940 return _internal_pdop();
5941}
5942inline void BotStatus::_internal_set_pdop(double value) {
5943 _impl_._has_bits_[0] |= 0x00040000u;
5944 _impl_.pdop_ = value;
5945}
5946inline void BotStatus::set_pdop(double value) {
5947 _internal_set_pdop(value);
5948 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.pdop)
5949}
5950
5951// optional int32 wifi_link_quality_percentage = 58 [(.dccl.field) = {
5952inline bool BotStatus::_internal_has_wifi_link_quality_percentage() const {
5953 bool value = (_impl_._has_bits_[0] & 0x00100000u) != 0;
5954 return value;
5955}
5956inline bool BotStatus::has_wifi_link_quality_percentage() const {
5957 return _internal_has_wifi_link_quality_percentage();
5958}
5959inline void BotStatus::clear_wifi_link_quality_percentage() {
5960 _impl_.wifi_link_quality_percentage_ = 0;
5961 _impl_._has_bits_[0] &= ~0x00100000u;
5962}
5963inline int32_t BotStatus::_internal_wifi_link_quality_percentage() const {
5964 return _impl_.wifi_link_quality_percentage_;
5965}
5966inline int32_t BotStatus::wifi_link_quality_percentage() const {
5967 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.wifi_link_quality_percentage)
5968 return _internal_wifi_link_quality_percentage();
5969}
5970inline void BotStatus::_internal_set_wifi_link_quality_percentage(int32_t value) {
5971 _impl_._has_bits_[0] |= 0x00100000u;
5972 _impl_.wifi_link_quality_percentage_ = value;
5973}
5974inline void BotStatus::set_wifi_link_quality_percentage(int32_t value) {
5975 _internal_set_wifi_link_quality_percentage(value);
5976 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.wifi_link_quality_percentage)
5977}
5978
5979// optional uint64 received_time = 59 [(.dccl.field) = {
5980inline bool BotStatus::_internal_has_received_time() const {
5981 bool value = (_impl_._has_bits_[0] & 0x00080000u) != 0;
5982 return value;
5983}
5984inline bool BotStatus::has_received_time() const {
5985 return _internal_has_received_time();
5986}
5987inline void BotStatus::clear_received_time() {
5988 _impl_.received_time_ = uint64_t{0u};
5989 _impl_._has_bits_[0] &= ~0x00080000u;
5990}
5991inline uint64_t BotStatus::_internal_received_time() const {
5992 return _impl_.received_time_;
5993}
5994inline uint64_t BotStatus::received_time() const {
5995 // @@protoc_insertion_point(field_get:jaiabot.protobuf.BotStatus.received_time)
5996 return _internal_received_time();
5997}
5998inline void BotStatus::_internal_set_received_time(uint64_t value) {
5999 _impl_._has_bits_[0] |= 0x00080000u;
6000 _impl_.received_time_ = value;
6001}
6002inline void BotStatus::set_received_time(uint64_t value) {
6003 _internal_set_received_time(value);
6004 // @@protoc_insertion_point(field_set:jaiabot.protobuf.BotStatus.received_time)
6005}
6006
6007// -------------------------------------------------------------------
6008
6009// DriftPacket_EstimatedDrift
6010
6011// required double speed = 1 [(.dccl.field) = {
6012inline bool DriftPacket_EstimatedDrift::_internal_has_speed() const {
6013 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
6014 return value;
6015}
6016inline bool DriftPacket_EstimatedDrift::has_speed() const {
6017 return _internal_has_speed();
6018}
6019inline void DriftPacket_EstimatedDrift::clear_speed() {
6020 _impl_.speed_ = 0;
6021 _impl_._has_bits_[0] &= ~0x00000001u;
6022}
6023inline double DriftPacket_EstimatedDrift::_internal_speed() const {
6024 return _impl_.speed_;
6025}
6026inline double DriftPacket_EstimatedDrift::speed() const {
6027 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.EstimatedDrift.speed)
6028 return _internal_speed();
6029}
6030inline void DriftPacket_EstimatedDrift::_internal_set_speed(double value) {
6031 _impl_._has_bits_[0] |= 0x00000001u;
6032 _impl_.speed_ = value;
6033}
6034inline void DriftPacket_EstimatedDrift::set_speed(double value) {
6035 _internal_set_speed(value);
6036 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DriftPacket.EstimatedDrift.speed)
6037}
6038
6039// optional double heading = 3 [(.dccl.field) = {
6040inline bool DriftPacket_EstimatedDrift::_internal_has_heading() const {
6041 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
6042 return value;
6043}
6044inline bool DriftPacket_EstimatedDrift::has_heading() const {
6045 return _internal_has_heading();
6046}
6047inline void DriftPacket_EstimatedDrift::clear_heading() {
6048 _impl_.heading_ = 0;
6049 _impl_._has_bits_[0] &= ~0x00000002u;
6050}
6051inline double DriftPacket_EstimatedDrift::_internal_heading() const {
6052 return _impl_.heading_;
6053}
6054inline double DriftPacket_EstimatedDrift::heading() const {
6055 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.EstimatedDrift.heading)
6056 return _internal_heading();
6057}
6058inline void DriftPacket_EstimatedDrift::_internal_set_heading(double value) {
6059 _impl_._has_bits_[0] |= 0x00000002u;
6060 _impl_.heading_ = value;
6061}
6062inline void DriftPacket_EstimatedDrift::set_heading(double value) {
6063 _internal_set_heading(value);
6064 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DriftPacket.EstimatedDrift.heading)
6065}
6066
6067// -------------------------------------------------------------------
6068
6069// DriftPacket
6070
6071// optional int32 drift_duration = 1 [default = 0, (.dccl.field) = {
6072inline bool DriftPacket::_internal_has_drift_duration() const {
6073 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
6074 return value;
6075}
6076inline bool DriftPacket::has_drift_duration() const {
6077 return _internal_has_drift_duration();
6078}
6079inline void DriftPacket::clear_drift_duration() {
6080 _impl_.drift_duration_ = 0;
6081 _impl_._has_bits_[0] &= ~0x00000010u;
6082}
6083inline int32_t DriftPacket::_internal_drift_duration() const {
6084 return _impl_.drift_duration_;
6085}
6086inline int32_t DriftPacket::drift_duration() const {
6087 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.drift_duration)
6088 return _internal_drift_duration();
6089}
6090inline void DriftPacket::_internal_set_drift_duration(int32_t value) {
6091 _impl_._has_bits_[0] |= 0x00000010u;
6092 _impl_.drift_duration_ = value;
6093}
6094inline void DriftPacket::set_drift_duration(int32_t value) {
6095 _internal_set_drift_duration(value);
6096 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DriftPacket.drift_duration)
6097}
6098
6099// optional .jaiabot.protobuf.DriftPacket.EstimatedDrift estimated_drift = 10 [(.jaia.field) = {
6100inline bool DriftPacket::_internal_has_estimated_drift() const {
6101 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
6102 PROTOBUF_ASSUME(!value || _impl_.estimated_drift_ != nullptr);
6103 return value;
6104}
6105inline bool DriftPacket::has_estimated_drift() const {
6106 return _internal_has_estimated_drift();
6107}
6108inline void DriftPacket::clear_estimated_drift() {
6109 if (_impl_.estimated_drift_ != nullptr) _impl_.estimated_drift_->Clear();
6110 _impl_._has_bits_[0] &= ~0x00000001u;
6111}
6112inline const ::jaiabot::protobuf::DriftPacket_EstimatedDrift& DriftPacket::_internal_estimated_drift() const {
6113 const ::jaiabot::protobuf::DriftPacket_EstimatedDrift* p = _impl_.estimated_drift_;
6114 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::DriftPacket_EstimatedDrift&>(
6116}
6117inline const ::jaiabot::protobuf::DriftPacket_EstimatedDrift& DriftPacket::estimated_drift() const {
6118 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.estimated_drift)
6119 return _internal_estimated_drift();
6120}
6121inline void DriftPacket::unsafe_arena_set_allocated_estimated_drift(
6123 if (GetArenaForAllocation() == nullptr) {
6124 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.estimated_drift_);
6125 }
6126 _impl_.estimated_drift_ = estimated_drift;
6127 if (estimated_drift) {
6128 _impl_._has_bits_[0] |= 0x00000001u;
6129 } else {
6130 _impl_._has_bits_[0] &= ~0x00000001u;
6131 }
6132 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.DriftPacket.estimated_drift)
6133}
6134inline ::jaiabot::protobuf::DriftPacket_EstimatedDrift* DriftPacket::release_estimated_drift() {
6135 _impl_._has_bits_[0] &= ~0x00000001u;
6136 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* temp = _impl_.estimated_drift_;
6137 _impl_.estimated_drift_ = nullptr;
6138#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
6139 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
6140 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6141 if (GetArenaForAllocation() == nullptr) { delete old; }
6142#else // PROTOBUF_FORCE_COPY_IN_RELEASE
6143 if (GetArenaForAllocation() != nullptr) {
6144 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6145 }
6146#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
6147 return temp;
6148}
6149inline ::jaiabot::protobuf::DriftPacket_EstimatedDrift* DriftPacket::unsafe_arena_release_estimated_drift() {
6150 // @@protoc_insertion_point(field_release:jaiabot.protobuf.DriftPacket.estimated_drift)
6151 _impl_._has_bits_[0] &= ~0x00000001u;
6152 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* temp = _impl_.estimated_drift_;
6153 _impl_.estimated_drift_ = nullptr;
6154 return temp;
6155}
6156inline ::jaiabot::protobuf::DriftPacket_EstimatedDrift* DriftPacket::_internal_mutable_estimated_drift() {
6157 _impl_._has_bits_[0] |= 0x00000001u;
6158 if (_impl_.estimated_drift_ == nullptr) {
6160 _impl_.estimated_drift_ = p;
6161 }
6162 return _impl_.estimated_drift_;
6163}
6164inline ::jaiabot::protobuf::DriftPacket_EstimatedDrift* DriftPacket::mutable_estimated_drift() {
6165 ::jaiabot::protobuf::DriftPacket_EstimatedDrift* _msg = _internal_mutable_estimated_drift();
6166 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DriftPacket.estimated_drift)
6167 return _msg;
6168}
6169inline void DriftPacket::set_allocated_estimated_drift(::jaiabot::protobuf::DriftPacket_EstimatedDrift* estimated_drift) {
6170 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
6171 if (message_arena == nullptr) {
6172 delete _impl_.estimated_drift_;
6173 }
6174 if (estimated_drift) {
6175 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6176 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(estimated_drift);
6177 if (message_arena != submessage_arena) {
6178 estimated_drift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6179 message_arena, estimated_drift, submessage_arena);
6180 }
6181 _impl_._has_bits_[0] |= 0x00000001u;
6182 } else {
6183 _impl_._has_bits_[0] &= ~0x00000001u;
6184 }
6185 _impl_.estimated_drift_ = estimated_drift;
6186 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.DriftPacket.estimated_drift)
6187}
6188
6189// optional .jaiabot.protobuf.GeographicCoordinate start_location = 11 [(.jaia.field) = {
6190inline bool DriftPacket::_internal_has_start_location() const {
6191 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
6192 PROTOBUF_ASSUME(!value || _impl_.start_location_ != nullptr);
6193 return value;
6194}
6195inline bool DriftPacket::has_start_location() const {
6196 return _internal_has_start_location();
6197}
6198inline const ::jaiabot::protobuf::GeographicCoordinate& DriftPacket::_internal_start_location() const {
6199 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.start_location_;
6200 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
6202}
6203inline const ::jaiabot::protobuf::GeographicCoordinate& DriftPacket::start_location() const {
6204 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.start_location)
6205 return _internal_start_location();
6206}
6207inline void DriftPacket::unsafe_arena_set_allocated_start_location(
6209 if (GetArenaForAllocation() == nullptr) {
6210 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_location_);
6211 }
6212 _impl_.start_location_ = start_location;
6213 if (start_location) {
6214 _impl_._has_bits_[0] |= 0x00000002u;
6215 } else {
6216 _impl_._has_bits_[0] &= ~0x00000002u;
6217 }
6218 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.DriftPacket.start_location)
6219}
6220inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::release_start_location() {
6221 _impl_._has_bits_[0] &= ~0x00000002u;
6222 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.start_location_;
6223 _impl_.start_location_ = nullptr;
6224#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
6225 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
6226 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6227 if (GetArenaForAllocation() == nullptr) { delete old; }
6228#else // PROTOBUF_FORCE_COPY_IN_RELEASE
6229 if (GetArenaForAllocation() != nullptr) {
6230 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6231 }
6232#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
6233 return temp;
6234}
6235inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::unsafe_arena_release_start_location() {
6236 // @@protoc_insertion_point(field_release:jaiabot.protobuf.DriftPacket.start_location)
6237 _impl_._has_bits_[0] &= ~0x00000002u;
6238 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.start_location_;
6239 _impl_.start_location_ = nullptr;
6240 return temp;
6241}
6242inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::_internal_mutable_start_location() {
6243 _impl_._has_bits_[0] |= 0x00000002u;
6244 if (_impl_.start_location_ == nullptr) {
6245 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
6246 _impl_.start_location_ = p;
6247 }
6248 return _impl_.start_location_;
6249}
6250inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::mutable_start_location() {
6251 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_start_location();
6252 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DriftPacket.start_location)
6253 return _msg;
6254}
6255inline void DriftPacket::set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location) {
6256 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
6257 if (message_arena == nullptr) {
6258 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_location_);
6259 }
6260 if (start_location) {
6261 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6262 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
6263 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_location));
6264 if (message_arena != submessage_arena) {
6265 start_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6266 message_arena, start_location, submessage_arena);
6267 }
6268 _impl_._has_bits_[0] |= 0x00000002u;
6269 } else {
6270 _impl_._has_bits_[0] &= ~0x00000002u;
6271 }
6272 _impl_.start_location_ = start_location;
6273 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.DriftPacket.start_location)
6274}
6275
6276// optional .jaiabot.protobuf.GeographicCoordinate end_location = 12 [(.jaia.field) = {
6277inline bool DriftPacket::_internal_has_end_location() const {
6278 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
6279 PROTOBUF_ASSUME(!value || _impl_.end_location_ != nullptr);
6280 return value;
6281}
6282inline bool DriftPacket::has_end_location() const {
6283 return _internal_has_end_location();
6284}
6285inline const ::jaiabot::protobuf::GeographicCoordinate& DriftPacket::_internal_end_location() const {
6286 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.end_location_;
6287 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
6289}
6290inline const ::jaiabot::protobuf::GeographicCoordinate& DriftPacket::end_location() const {
6291 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.end_location)
6292 return _internal_end_location();
6293}
6294inline void DriftPacket::unsafe_arena_set_allocated_end_location(
6296 if (GetArenaForAllocation() == nullptr) {
6297 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.end_location_);
6298 }
6299 _impl_.end_location_ = end_location;
6300 if (end_location) {
6301 _impl_._has_bits_[0] |= 0x00000004u;
6302 } else {
6303 _impl_._has_bits_[0] &= ~0x00000004u;
6304 }
6305 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.DriftPacket.end_location)
6306}
6307inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::release_end_location() {
6308 _impl_._has_bits_[0] &= ~0x00000004u;
6309 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.end_location_;
6310 _impl_.end_location_ = nullptr;
6311#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
6312 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
6313 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6314 if (GetArenaForAllocation() == nullptr) { delete old; }
6315#else // PROTOBUF_FORCE_COPY_IN_RELEASE
6316 if (GetArenaForAllocation() != nullptr) {
6317 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6318 }
6319#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
6320 return temp;
6321}
6322inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::unsafe_arena_release_end_location() {
6323 // @@protoc_insertion_point(field_release:jaiabot.protobuf.DriftPacket.end_location)
6324 _impl_._has_bits_[0] &= ~0x00000004u;
6325 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.end_location_;
6326 _impl_.end_location_ = nullptr;
6327 return temp;
6328}
6329inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::_internal_mutable_end_location() {
6330 _impl_._has_bits_[0] |= 0x00000004u;
6331 if (_impl_.end_location_ == nullptr) {
6332 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
6333 _impl_.end_location_ = p;
6334 }
6335 return _impl_.end_location_;
6336}
6337inline ::jaiabot::protobuf::GeographicCoordinate* DriftPacket::mutable_end_location() {
6338 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_end_location();
6339 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DriftPacket.end_location)
6340 return _msg;
6341}
6342inline void DriftPacket::set_allocated_end_location(::jaiabot::protobuf::GeographicCoordinate* end_location) {
6343 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
6344 if (message_arena == nullptr) {
6345 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.end_location_);
6346 }
6347 if (end_location) {
6348 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6349 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
6350 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(end_location));
6351 if (message_arena != submessage_arena) {
6352 end_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6353 message_arena, end_location, submessage_arena);
6354 }
6355 _impl_._has_bits_[0] |= 0x00000004u;
6356 } else {
6357 _impl_._has_bits_[0] &= ~0x00000004u;
6358 }
6359 _impl_.end_location_ = end_location;
6360 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.DriftPacket.end_location)
6361}
6362
6363// optional double significant_wave_height = 13 [(.dccl.field) = {
6364inline bool DriftPacket::_internal_has_significant_wave_height() const {
6365 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
6366 return value;
6367}
6368inline bool DriftPacket::has_significant_wave_height() const {
6369 return _internal_has_significant_wave_height();
6370}
6371inline void DriftPacket::clear_significant_wave_height() {
6372 _impl_.significant_wave_height_ = 0;
6373 _impl_._has_bits_[0] &= ~0x00000008u;
6374}
6375inline double DriftPacket::_internal_significant_wave_height() const {
6376 return _impl_.significant_wave_height_;
6377}
6378inline double DriftPacket::significant_wave_height() const {
6379 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DriftPacket.significant_wave_height)
6380 return _internal_significant_wave_height();
6381}
6382inline void DriftPacket::_internal_set_significant_wave_height(double value) {
6383 _impl_._has_bits_[0] |= 0x00000008u;
6384 _impl_.significant_wave_height_ = value;
6385}
6386inline void DriftPacket::set_significant_wave_height(double value) {
6387 _internal_set_significant_wave_height(value);
6388 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DriftPacket.significant_wave_height)
6389}
6390
6391// -------------------------------------------------------------------
6392
6393// DivePacket_Measurements
6394
6395// optional double mean_depth = 1 [(.dccl.field) = {
6396inline bool DivePacket_Measurements::_internal_has_mean_depth() const {
6397 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
6398 return value;
6399}
6400inline bool DivePacket_Measurements::has_mean_depth() const {
6401 return _internal_has_mean_depth();
6402}
6403inline void DivePacket_Measurements::clear_mean_depth() {
6404 _impl_.mean_depth_ = 0;
6405 _impl_._has_bits_[0] &= ~0x00000001u;
6406}
6407inline double DivePacket_Measurements::_internal_mean_depth() const {
6408 return _impl_.mean_depth_;
6409}
6410inline double DivePacket_Measurements::mean_depth() const {
6411 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.Measurements.mean_depth)
6412 return _internal_mean_depth();
6413}
6414inline void DivePacket_Measurements::_internal_set_mean_depth(double value) {
6415 _impl_._has_bits_[0] |= 0x00000001u;
6416 _impl_.mean_depth_ = value;
6417}
6418inline void DivePacket_Measurements::set_mean_depth(double value) {
6419 _internal_set_mean_depth(value);
6420 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.Measurements.mean_depth)
6421}
6422
6423// optional double mean_temperature = 2 [(.dccl.field) = {
6424inline bool DivePacket_Measurements::_internal_has_mean_temperature() const {
6425 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
6426 return value;
6427}
6428inline bool DivePacket_Measurements::has_mean_temperature() const {
6429 return _internal_has_mean_temperature();
6430}
6431inline void DivePacket_Measurements::clear_mean_temperature() {
6432 _impl_.mean_temperature_ = 0;
6433 _impl_._has_bits_[0] &= ~0x00000002u;
6434}
6435inline double DivePacket_Measurements::_internal_mean_temperature() const {
6436 return _impl_.mean_temperature_;
6437}
6438inline double DivePacket_Measurements::mean_temperature() const {
6439 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.Measurements.mean_temperature)
6440 return _internal_mean_temperature();
6441}
6442inline void DivePacket_Measurements::_internal_set_mean_temperature(double value) {
6443 _impl_._has_bits_[0] |= 0x00000002u;
6444 _impl_.mean_temperature_ = value;
6445}
6446inline void DivePacket_Measurements::set_mean_temperature(double value) {
6447 _internal_set_mean_temperature(value);
6448 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.Measurements.mean_temperature)
6449}
6450
6451// optional double mean_salinity = 3 [(.dccl.field) = {
6452inline bool DivePacket_Measurements::_internal_has_mean_salinity() const {
6453 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
6454 return value;
6455}
6456inline bool DivePacket_Measurements::has_mean_salinity() const {
6457 return _internal_has_mean_salinity();
6458}
6459inline void DivePacket_Measurements::clear_mean_salinity() {
6460 _impl_.mean_salinity_ = 0;
6461 _impl_._has_bits_[0] &= ~0x00000004u;
6462}
6463inline double DivePacket_Measurements::_internal_mean_salinity() const {
6464 return _impl_.mean_salinity_;
6465}
6466inline double DivePacket_Measurements::mean_salinity() const {
6467 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.Measurements.mean_salinity)
6468 return _internal_mean_salinity();
6469}
6470inline void DivePacket_Measurements::_internal_set_mean_salinity(double value) {
6471 _impl_._has_bits_[0] |= 0x00000004u;
6472 _impl_.mean_salinity_ = value;
6473}
6474inline void DivePacket_Measurements::set_mean_salinity(double value) {
6475 _internal_set_mean_salinity(value);
6476 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.Measurements.mean_salinity)
6477}
6478
6479// -------------------------------------------------------------------
6480
6481// DivePacket_SubsurfaceCurrentVector
6482
6483// required double velocity = 1 [(.dccl.field) = {
6484inline bool DivePacket_SubsurfaceCurrentVector::_internal_has_velocity() const {
6485 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
6486 return value;
6487}
6488inline bool DivePacket_SubsurfaceCurrentVector::has_velocity() const {
6489 return _internal_has_velocity();
6490}
6491inline void DivePacket_SubsurfaceCurrentVector::clear_velocity() {
6492 _impl_.velocity_ = 0;
6493 _impl_._has_bits_[0] &= ~0x00000001u;
6494}
6495inline double DivePacket_SubsurfaceCurrentVector::_internal_velocity() const {
6496 return _impl_.velocity_;
6497}
6498inline double DivePacket_SubsurfaceCurrentVector::velocity() const {
6499 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector.velocity)
6500 return _internal_velocity();
6501}
6502inline void DivePacket_SubsurfaceCurrentVector::_internal_set_velocity(double value) {
6503 _impl_._has_bits_[0] |= 0x00000001u;
6504 _impl_.velocity_ = value;
6505}
6506inline void DivePacket_SubsurfaceCurrentVector::set_velocity(double value) {
6507 _internal_set_velocity(value);
6508 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector.velocity)
6509}
6510
6511// required double heading = 2 [(.dccl.field) = {
6512inline bool DivePacket_SubsurfaceCurrentVector::_internal_has_heading() const {
6513 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
6514 return value;
6515}
6516inline bool DivePacket_SubsurfaceCurrentVector::has_heading() const {
6517 return _internal_has_heading();
6518}
6519inline void DivePacket_SubsurfaceCurrentVector::clear_heading() {
6520 _impl_.heading_ = 0;
6521 _impl_._has_bits_[0] &= ~0x00000002u;
6522}
6523inline double DivePacket_SubsurfaceCurrentVector::_internal_heading() const {
6524 return _impl_.heading_;
6525}
6526inline double DivePacket_SubsurfaceCurrentVector::heading() const {
6527 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector.heading)
6528 return _internal_heading();
6529}
6530inline void DivePacket_SubsurfaceCurrentVector::_internal_set_heading(double value) {
6531 _impl_._has_bits_[0] |= 0x00000002u;
6532 _impl_.heading_ = value;
6533}
6534inline void DivePacket_SubsurfaceCurrentVector::set_heading(double value) {
6535 _internal_set_heading(value);
6536 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector.heading)
6537}
6538
6539// -------------------------------------------------------------------
6540
6541// DivePacket
6542
6543// required double dive_rate = 10 [(.dccl.field) = {
6544inline bool DivePacket::_internal_has_dive_rate() const {
6545 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
6546 return value;
6547}
6548inline bool DivePacket::has_dive_rate() const {
6549 return _internal_has_dive_rate();
6550}
6551inline void DivePacket::clear_dive_rate() {
6552 _impl_.dive_rate_ = 0;
6553 _impl_._has_bits_[0] &= ~0x00000004u;
6554}
6555inline double DivePacket::_internal_dive_rate() const {
6556 return _impl_.dive_rate_;
6557}
6558inline double DivePacket::dive_rate() const {
6559 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.dive_rate)
6560 return _internal_dive_rate();
6561}
6562inline void DivePacket::_internal_set_dive_rate(double value) {
6563 _impl_._has_bits_[0] |= 0x00000004u;
6564 _impl_.dive_rate_ = value;
6565}
6566inline void DivePacket::set_dive_rate(double value) {
6567 _internal_set_dive_rate(value);
6568 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.dive_rate)
6569}
6570
6571// optional double unpowered_rise_rate = 11 [(.dccl.field) = {
6572inline bool DivePacket::_internal_has_unpowered_rise_rate() const {
6573 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
6574 return value;
6575}
6576inline bool DivePacket::has_unpowered_rise_rate() const {
6577 return _internal_has_unpowered_rise_rate();
6578}
6579inline void DivePacket::clear_unpowered_rise_rate() {
6580 _impl_.unpowered_rise_rate_ = 0;
6581 _impl_._has_bits_[0] &= ~0x00000008u;
6582}
6583inline double DivePacket::_internal_unpowered_rise_rate() const {
6584 return _impl_.unpowered_rise_rate_;
6585}
6586inline double DivePacket::unpowered_rise_rate() const {
6587 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.unpowered_rise_rate)
6588 return _internal_unpowered_rise_rate();
6589}
6590inline void DivePacket::_internal_set_unpowered_rise_rate(double value) {
6591 _impl_._has_bits_[0] |= 0x00000008u;
6592 _impl_.unpowered_rise_rate_ = value;
6593}
6594inline void DivePacket::set_unpowered_rise_rate(double value) {
6595 _internal_set_unpowered_rise_rate(value);
6596 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.unpowered_rise_rate)
6597}
6598
6599// optional double powered_rise_rate = 12 [(.dccl.field) = {
6600inline bool DivePacket::_internal_has_powered_rise_rate() const {
6601 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
6602 return value;
6603}
6604inline bool DivePacket::has_powered_rise_rate() const {
6605 return _internal_has_powered_rise_rate();
6606}
6607inline void DivePacket::clear_powered_rise_rate() {
6608 _impl_.powered_rise_rate_ = 0;
6609 _impl_._has_bits_[0] &= ~0x00000010u;
6610}
6611inline double DivePacket::_internal_powered_rise_rate() const {
6612 return _impl_.powered_rise_rate_;
6613}
6614inline double DivePacket::powered_rise_rate() const {
6615 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.powered_rise_rate)
6616 return _internal_powered_rise_rate();
6617}
6618inline void DivePacket::_internal_set_powered_rise_rate(double value) {
6619 _impl_._has_bits_[0] |= 0x00000010u;
6620 _impl_.powered_rise_rate_ = value;
6621}
6622inline void DivePacket::set_powered_rise_rate(double value) {
6623 _internal_set_powered_rise_rate(value);
6624 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.powered_rise_rate)
6625}
6626
6627// required double depth_achieved = 13 [(.dccl.field) = {
6628inline bool DivePacket::_internal_has_depth_achieved() const {
6629 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
6630 return value;
6631}
6632inline bool DivePacket::has_depth_achieved() const {
6633 return _internal_has_depth_achieved();
6634}
6635inline void DivePacket::clear_depth_achieved() {
6636 _impl_.depth_achieved_ = 0;
6637 _impl_._has_bits_[0] &= ~0x00000020u;
6638}
6639inline double DivePacket::_internal_depth_achieved() const {
6640 return _impl_.depth_achieved_;
6641}
6642inline double DivePacket::depth_achieved() const {
6643 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.depth_achieved)
6644 return _internal_depth_achieved();
6645}
6646inline void DivePacket::_internal_set_depth_achieved(double value) {
6647 _impl_._has_bits_[0] |= 0x00000020u;
6648 _impl_.depth_achieved_ = value;
6649}
6650inline void DivePacket::set_depth_achieved(double value) {
6651 _internal_set_depth_achieved(value);
6652 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.depth_achieved)
6653}
6654
6655// repeated .jaiabot.protobuf.DivePacket.Measurements measurement = 14 [(.dccl.field) = {
6656inline int DivePacket::_internal_measurement_size() const {
6657 return _impl_.measurement_.size();
6658}
6659inline int DivePacket::measurement_size() const {
6660 return _internal_measurement_size();
6661}
6662inline void DivePacket::clear_measurement() {
6663 _impl_.measurement_.Clear();
6664}
6665inline ::jaiabot::protobuf::DivePacket_Measurements* DivePacket::mutable_measurement(int index) {
6666 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DivePacket.measurement)
6667 return _impl_.measurement_.Mutable(index);
6668}
6669inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::DivePacket_Measurements >*
6670DivePacket::mutable_measurement() {
6671 // @@protoc_insertion_point(field_mutable_list:jaiabot.protobuf.DivePacket.measurement)
6672 return &_impl_.measurement_;
6673}
6674inline const ::jaiabot::protobuf::DivePacket_Measurements& DivePacket::_internal_measurement(int index) const {
6675 return _impl_.measurement_.Get(index);
6676}
6677inline const ::jaiabot::protobuf::DivePacket_Measurements& DivePacket::measurement(int index) const {
6678 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.measurement)
6679 return _internal_measurement(index);
6680}
6681inline ::jaiabot::protobuf::DivePacket_Measurements* DivePacket::_internal_add_measurement() {
6682 return _impl_.measurement_.Add();
6683}
6684inline ::jaiabot::protobuf::DivePacket_Measurements* DivePacket::add_measurement() {
6685 ::jaiabot::protobuf::DivePacket_Measurements* _add = _internal_add_measurement();
6686 // @@protoc_insertion_point(field_add:jaiabot.protobuf.DivePacket.measurement)
6687 return _add;
6688}
6689inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::DivePacket_Measurements >&
6690DivePacket::measurement() const {
6691 // @@protoc_insertion_point(field_list:jaiabot.protobuf.DivePacket.measurement)
6692 return _impl_.measurement_;
6693}
6694
6695// optional .jaiabot.protobuf.GeographicCoordinate start_location = 15 [(.jaia.field) = {
6696inline bool DivePacket::_internal_has_start_location() const {
6697 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
6698 PROTOBUF_ASSUME(!value || _impl_.start_location_ != nullptr);
6699 return value;
6700}
6701inline bool DivePacket::has_start_location() const {
6702 return _internal_has_start_location();
6703}
6704inline const ::jaiabot::protobuf::GeographicCoordinate& DivePacket::_internal_start_location() const {
6705 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.start_location_;
6706 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
6708}
6709inline const ::jaiabot::protobuf::GeographicCoordinate& DivePacket::start_location() const {
6710 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.start_location)
6711 return _internal_start_location();
6712}
6713inline void DivePacket::unsafe_arena_set_allocated_start_location(
6715 if (GetArenaForAllocation() == nullptr) {
6716 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_location_);
6717 }
6718 _impl_.start_location_ = start_location;
6719 if (start_location) {
6720 _impl_._has_bits_[0] |= 0x00000001u;
6721 } else {
6722 _impl_._has_bits_[0] &= ~0x00000001u;
6723 }
6724 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.DivePacket.start_location)
6725}
6726inline ::jaiabot::protobuf::GeographicCoordinate* DivePacket::release_start_location() {
6727 _impl_._has_bits_[0] &= ~0x00000001u;
6728 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.start_location_;
6729 _impl_.start_location_ = nullptr;
6730#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
6731 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
6732 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6733 if (GetArenaForAllocation() == nullptr) { delete old; }
6734#else // PROTOBUF_FORCE_COPY_IN_RELEASE
6735 if (GetArenaForAllocation() != nullptr) {
6736 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6737 }
6738#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
6739 return temp;
6740}
6741inline ::jaiabot::protobuf::GeographicCoordinate* DivePacket::unsafe_arena_release_start_location() {
6742 // @@protoc_insertion_point(field_release:jaiabot.protobuf.DivePacket.start_location)
6743 _impl_._has_bits_[0] &= ~0x00000001u;
6744 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.start_location_;
6745 _impl_.start_location_ = nullptr;
6746 return temp;
6747}
6748inline ::jaiabot::protobuf::GeographicCoordinate* DivePacket::_internal_mutable_start_location() {
6749 _impl_._has_bits_[0] |= 0x00000001u;
6750 if (_impl_.start_location_ == nullptr) {
6751 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
6752 _impl_.start_location_ = p;
6753 }
6754 return _impl_.start_location_;
6755}
6756inline ::jaiabot::protobuf::GeographicCoordinate* DivePacket::mutable_start_location() {
6757 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_start_location();
6758 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DivePacket.start_location)
6759 return _msg;
6760}
6761inline void DivePacket::set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location) {
6762 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
6763 if (message_arena == nullptr) {
6764 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.start_location_);
6765 }
6766 if (start_location) {
6767 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6768 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
6769 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_location));
6770 if (message_arena != submessage_arena) {
6771 start_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6772 message_arena, start_location, submessage_arena);
6773 }
6774 _impl_._has_bits_[0] |= 0x00000001u;
6775 } else {
6776 _impl_._has_bits_[0] &= ~0x00000001u;
6777 }
6778 _impl_.start_location_ = start_location;
6779 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.DivePacket.start_location)
6780}
6781
6782// optional double duration_to_acquire_gps = 16 [(.dccl.field) = {
6783inline bool DivePacket::_internal_has_duration_to_acquire_gps() const {
6784 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
6785 return value;
6786}
6787inline bool DivePacket::has_duration_to_acquire_gps() const {
6788 return _internal_has_duration_to_acquire_gps();
6789}
6790inline void DivePacket::clear_duration_to_acquire_gps() {
6791 _impl_.duration_to_acquire_gps_ = 0;
6792 _impl_._has_bits_[0] &= ~0x00000040u;
6793}
6794inline double DivePacket::_internal_duration_to_acquire_gps() const {
6795 return _impl_.duration_to_acquire_gps_;
6796}
6797inline double DivePacket::duration_to_acquire_gps() const {
6798 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.duration_to_acquire_gps)
6799 return _internal_duration_to_acquire_gps();
6800}
6801inline void DivePacket::_internal_set_duration_to_acquire_gps(double value) {
6802 _impl_._has_bits_[0] |= 0x00000040u;
6803 _impl_.duration_to_acquire_gps_ = value;
6804}
6805inline void DivePacket::set_duration_to_acquire_gps(double value) {
6806 _internal_set_duration_to_acquire_gps(value);
6807 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.duration_to_acquire_gps)
6808}
6809
6810// optional bool bottom_dive = 17 [default = false, (.jaia.field) = {
6811inline bool DivePacket::_internal_has_bottom_dive() const {
6812 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
6813 return value;
6814}
6815inline bool DivePacket::has_bottom_dive() const {
6816 return _internal_has_bottom_dive();
6817}
6818inline void DivePacket::clear_bottom_dive() {
6819 _impl_.bottom_dive_ = false;
6820 _impl_._has_bits_[0] &= ~0x00000100u;
6821}
6822inline bool DivePacket::_internal_bottom_dive() const {
6823 return _impl_.bottom_dive_;
6824}
6825inline bool DivePacket::bottom_dive() const {
6826 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.bottom_dive)
6827 return _internal_bottom_dive();
6828}
6829inline void DivePacket::_internal_set_bottom_dive(bool value) {
6830 _impl_._has_bits_[0] |= 0x00000100u;
6831 _impl_.bottom_dive_ = value;
6832}
6833inline void DivePacket::set_bottom_dive(bool value) {
6834 _internal_set_bottom_dive(value);
6835 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.bottom_dive)
6836}
6837
6838// optional bool reached_min_depth = 18 [default = false, (.jaia.field) = {
6839inline bool DivePacket::_internal_has_reached_min_depth() const {
6840 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
6841 return value;
6842}
6843inline bool DivePacket::has_reached_min_depth() const {
6844 return _internal_has_reached_min_depth();
6845}
6846inline void DivePacket::clear_reached_min_depth() {
6847 _impl_.reached_min_depth_ = false;
6848 _impl_._has_bits_[0] &= ~0x00000200u;
6849}
6850inline bool DivePacket::_internal_reached_min_depth() const {
6851 return _impl_.reached_min_depth_;
6852}
6853inline bool DivePacket::reached_min_depth() const {
6854 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.reached_min_depth)
6855 return _internal_reached_min_depth();
6856}
6857inline void DivePacket::_internal_set_reached_min_depth(bool value) {
6858 _impl_._has_bits_[0] |= 0x00000200u;
6859 _impl_.reached_min_depth_ = value;
6860}
6861inline void DivePacket::set_reached_min_depth(bool value) {
6862 _internal_set_reached_min_depth(value);
6863 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.reached_min_depth)
6864}
6865
6866// optional .jaiabot.protobuf.DivePacket.BottomType bottom_type = 19 [(.jaia.field) = {
6867inline bool DivePacket::_internal_has_bottom_type() const {
6868 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
6869 return value;
6870}
6871inline bool DivePacket::has_bottom_type() const {
6872 return _internal_has_bottom_type();
6873}
6874inline void DivePacket::clear_bottom_type() {
6875 _impl_.bottom_type_ = 1;
6876 _impl_._has_bits_[0] &= ~0x00000400u;
6877}
6878inline ::jaiabot::protobuf::DivePacket_BottomType DivePacket::_internal_bottom_type() const {
6879 return static_cast< ::jaiabot::protobuf::DivePacket_BottomType >(_impl_.bottom_type_);
6880}
6881inline ::jaiabot::protobuf::DivePacket_BottomType DivePacket::bottom_type() const {
6882 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.bottom_type)
6883 return _internal_bottom_type();
6884}
6885inline void DivePacket::_internal_set_bottom_type(::jaiabot::protobuf::DivePacket_BottomType value) {
6887 _impl_._has_bits_[0] |= 0x00000400u;
6888 _impl_.bottom_type_ = value;
6889}
6890inline void DivePacket::set_bottom_type(::jaiabot::protobuf::DivePacket_BottomType value) {
6891 _internal_set_bottom_type(value);
6892 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.bottom_type)
6893}
6894
6895// optional double max_acceleration = 20 [(.dccl.field) = {
6896inline bool DivePacket::_internal_has_max_acceleration() const {
6897 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
6898 return value;
6899}
6900inline bool DivePacket::has_max_acceleration() const {
6901 return _internal_has_max_acceleration();
6902}
6903inline void DivePacket::clear_max_acceleration() {
6904 _impl_.max_acceleration_ = 0;
6905 _impl_._has_bits_[0] &= ~0x00000080u;
6906}
6907inline double DivePacket::_internal_max_acceleration() const {
6908 return _impl_.max_acceleration_;
6909}
6910inline double DivePacket::max_acceleration() const {
6911 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.max_acceleration)
6912 return _internal_max_acceleration();
6913}
6914inline void DivePacket::_internal_set_max_acceleration(double value) {
6915 _impl_._has_bits_[0] |= 0x00000080u;
6916 _impl_.max_acceleration_ = value;
6917}
6918inline void DivePacket::set_max_acceleration(double value) {
6919 _internal_set_max_acceleration(value);
6920 // @@protoc_insertion_point(field_set:jaiabot.protobuf.DivePacket.max_acceleration)
6921}
6922
6923// optional .jaiabot.protobuf.DivePacket.SubsurfaceCurrentVector subsurface_current = 21 [(.jaia.field) = {
6924inline bool DivePacket::_internal_has_subsurface_current() const {
6925 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
6926 PROTOBUF_ASSUME(!value || _impl_.subsurface_current_ != nullptr);
6927 return value;
6928}
6929inline bool DivePacket::has_subsurface_current() const {
6930 return _internal_has_subsurface_current();
6931}
6932inline void DivePacket::clear_subsurface_current() {
6933 if (_impl_.subsurface_current_ != nullptr) _impl_.subsurface_current_->Clear();
6934 _impl_._has_bits_[0] &= ~0x00000002u;
6935}
6936inline const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector& DivePacket::_internal_subsurface_current() const {
6937 const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* p = _impl_.subsurface_current_;
6938 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector&>(
6940}
6941inline const ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector& DivePacket::subsurface_current() const {
6942 // @@protoc_insertion_point(field_get:jaiabot.protobuf.DivePacket.subsurface_current)
6943 return _internal_subsurface_current();
6944}
6945inline void DivePacket::unsafe_arena_set_allocated_subsurface_current(
6947 if (GetArenaForAllocation() == nullptr) {
6948 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.subsurface_current_);
6949 }
6950 _impl_.subsurface_current_ = subsurface_current;
6951 if (subsurface_current) {
6952 _impl_._has_bits_[0] |= 0x00000002u;
6953 } else {
6954 _impl_._has_bits_[0] &= ~0x00000002u;
6955 }
6956 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.DivePacket.subsurface_current)
6957}
6958inline ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* DivePacket::release_subsurface_current() {
6959 _impl_._has_bits_[0] &= ~0x00000002u;
6960 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* temp = _impl_.subsurface_current_;
6961 _impl_.subsurface_current_ = nullptr;
6962#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
6963 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
6964 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6965 if (GetArenaForAllocation() == nullptr) { delete old; }
6966#else // PROTOBUF_FORCE_COPY_IN_RELEASE
6967 if (GetArenaForAllocation() != nullptr) {
6968 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6969 }
6970#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
6971 return temp;
6972}
6973inline ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* DivePacket::unsafe_arena_release_subsurface_current() {
6974 // @@protoc_insertion_point(field_release:jaiabot.protobuf.DivePacket.subsurface_current)
6975 _impl_._has_bits_[0] &= ~0x00000002u;
6976 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* temp = _impl_.subsurface_current_;
6977 _impl_.subsurface_current_ = nullptr;
6978 return temp;
6979}
6980inline ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* DivePacket::_internal_mutable_subsurface_current() {
6981 _impl_._has_bits_[0] |= 0x00000002u;
6982 if (_impl_.subsurface_current_ == nullptr) {
6984 _impl_.subsurface_current_ = p;
6985 }
6986 return _impl_.subsurface_current_;
6987}
6988inline ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* DivePacket::mutable_subsurface_current() {
6989 ::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* _msg = _internal_mutable_subsurface_current();
6990 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.DivePacket.subsurface_current)
6991 return _msg;
6992}
6993inline void DivePacket::set_allocated_subsurface_current(::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector* subsurface_current) {
6994 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
6995 if (message_arena == nullptr) {
6996 delete _impl_.subsurface_current_;
6997 }
6998 if (subsurface_current) {
6999 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
7000 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(subsurface_current);
7001 if (message_arena != submessage_arena) {
7002 subsurface_current = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7003 message_arena, subsurface_current, submessage_arena);
7004 }
7005 _impl_._has_bits_[0] |= 0x00000002u;
7006 } else {
7007 _impl_._has_bits_[0] &= ~0x00000002u;
7008 }
7009 _impl_.subsurface_current_ = subsurface_current;
7010 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.DivePacket.subsurface_current)
7011}
7012
7013// -------------------------------------------------------------------
7014
7015// TaskPacket
7016
7017// required uint32 bot_id = 1 [(.dccl.field) = {
7018inline bool TaskPacket::_internal_has_bot_id() const {
7019 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
7020 return value;
7021}
7022inline bool TaskPacket::has_bot_id() const {
7023 return _internal_has_bot_id();
7024}
7025inline void TaskPacket::clear_bot_id() {
7026 _impl_.bot_id_ = 0u;
7027 _impl_._has_bits_[0] &= ~0x00000008u;
7028}
7029inline uint32_t TaskPacket::_internal_bot_id() const {
7030 return _impl_.bot_id_;
7031}
7032inline uint32_t TaskPacket::bot_id() const {
7033 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.bot_id)
7034 return _internal_bot_id();
7035}
7036inline void TaskPacket::_internal_set_bot_id(uint32_t value) {
7037 _impl_._has_bits_[0] |= 0x00000008u;
7038 _impl_.bot_id_ = value;
7039}
7040inline void TaskPacket::set_bot_id(uint32_t value) {
7041 _internal_set_bot_id(value);
7042 // @@protoc_insertion_point(field_set:jaiabot.protobuf.TaskPacket.bot_id)
7043}
7044
7045// required uint64 start_time = 2 [(.dccl.field) = {
7046inline bool TaskPacket::_internal_has_start_time() const {
7047 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
7048 return value;
7049}
7050inline bool TaskPacket::has_start_time() const {
7051 return _internal_has_start_time();
7052}
7053inline void TaskPacket::clear_start_time() {
7054 _impl_.start_time_ = uint64_t{0u};
7055 _impl_._has_bits_[0] &= ~0x00000004u;
7056}
7057inline uint64_t TaskPacket::_internal_start_time() const {
7058 return _impl_.start_time_;
7059}
7060inline uint64_t TaskPacket::start_time() const {
7061 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.start_time)
7062 return _internal_start_time();
7063}
7064inline void TaskPacket::_internal_set_start_time(uint64_t value) {
7065 _impl_._has_bits_[0] |= 0x00000004u;
7066 _impl_.start_time_ = value;
7067}
7068inline void TaskPacket::set_start_time(uint64_t value) {
7069 _internal_set_start_time(value);
7070 // @@protoc_insertion_point(field_set:jaiabot.protobuf.TaskPacket.start_time)
7071}
7072
7073// required uint64 end_time = 3 [(.dccl.field) = {
7074inline bool TaskPacket::_internal_has_end_time() const {
7075 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
7076 return value;
7077}
7078inline bool TaskPacket::has_end_time() const {
7079 return _internal_has_end_time();
7080}
7081inline void TaskPacket::clear_end_time() {
7082 _impl_.end_time_ = uint64_t{0u};
7083 _impl_._has_bits_[0] &= ~0x00000020u;
7084}
7085inline uint64_t TaskPacket::_internal_end_time() const {
7086 return _impl_.end_time_;
7087}
7088inline uint64_t TaskPacket::end_time() const {
7089 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.end_time)
7090 return _internal_end_time();
7091}
7092inline void TaskPacket::_internal_set_end_time(uint64_t value) {
7093 _impl_._has_bits_[0] |= 0x00000020u;
7094 _impl_.end_time_ = value;
7095}
7096inline void TaskPacket::set_end_time(uint64_t value) {
7097 _internal_set_end_time(value);
7098 // @@protoc_insertion_point(field_set:jaiabot.protobuf.TaskPacket.end_time)
7099}
7100
7101// required .jaiabot.protobuf.MissionTask.TaskType type = 4 [(.jaia.field) = {
7102inline bool TaskPacket::_internal_has_type() const {
7103 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
7104 return value;
7105}
7106inline bool TaskPacket::has_type() const {
7107 return _internal_has_type();
7108}
7109inline void TaskPacket::clear_type() {
7110 _impl_.type_ = 0;
7111 _impl_._has_bits_[0] &= ~0x00000010u;
7112}
7113inline ::jaiabot::protobuf::MissionTask_TaskType TaskPacket::_internal_type() const {
7114 return static_cast< ::jaiabot::protobuf::MissionTask_TaskType >(_impl_.type_);
7115}
7116inline ::jaiabot::protobuf::MissionTask_TaskType TaskPacket::type() const {
7117 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.type)
7118 return _internal_type();
7119}
7120inline void TaskPacket::_internal_set_type(::jaiabot::protobuf::MissionTask_TaskType value) {
7122 _impl_._has_bits_[0] |= 0x00000010u;
7123 _impl_.type_ = value;
7124}
7125inline void TaskPacket::set_type(::jaiabot::protobuf::MissionTask_TaskType value) {
7126 _internal_set_type(value);
7127 // @@protoc_insertion_point(field_set:jaiabot.protobuf.TaskPacket.type)
7128}
7129
7130// optional .jaiabot.protobuf.Link link = 5 [(.dccl.field) = {
7131inline bool TaskPacket::_internal_has_link() const {
7132 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
7133 return value;
7134}
7135inline bool TaskPacket::has_link() const {
7136 return _internal_has_link();
7137}
7138inline void TaskPacket::clear_link() {
7139 _impl_.link_ = -1;
7140 _impl_._has_bits_[0] &= ~0x00000040u;
7141}
7142inline ::jaiabot::protobuf::Link TaskPacket::_internal_link() const {
7143 return static_cast< ::jaiabot::protobuf::Link >(_impl_.link_);
7144}
7145inline ::jaiabot::protobuf::Link TaskPacket::link() const {
7146 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.link)
7147 return _internal_link();
7148}
7149inline void TaskPacket::_internal_set_link(::jaiabot::protobuf::Link value) {
7150 assert(::jaiabot::protobuf::Link_IsValid(value));
7151 _impl_._has_bits_[0] |= 0x00000040u;
7152 _impl_.link_ = value;
7153}
7154inline void TaskPacket::set_link(::jaiabot::protobuf::Link value) {
7155 _internal_set_link(value);
7156 // @@protoc_insertion_point(field_set:jaiabot.protobuf.TaskPacket.link)
7157}
7158
7159// optional .jaiabot.protobuf.DivePacket dive = 10 [(.jaia.field) = {
7160inline bool TaskPacket::_internal_has_dive() const {
7161 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
7162 PROTOBUF_ASSUME(!value || _impl_.dive_ != nullptr);
7163 return value;
7164}
7165inline bool TaskPacket::has_dive() const {
7166 return _internal_has_dive();
7167}
7168inline void TaskPacket::clear_dive() {
7169 if (_impl_.dive_ != nullptr) _impl_.dive_->Clear();
7170 _impl_._has_bits_[0] &= ~0x00000001u;
7171}
7172inline const ::jaiabot::protobuf::DivePacket& TaskPacket::_internal_dive() const {
7173 const ::jaiabot::protobuf::DivePacket* p = _impl_.dive_;
7174 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::DivePacket&>(
7176}
7177inline const ::jaiabot::protobuf::DivePacket& TaskPacket::dive() const {
7178 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.dive)
7179 return _internal_dive();
7180}
7181inline void TaskPacket::unsafe_arena_set_allocated_dive(
7183 if (GetArenaForAllocation() == nullptr) {
7184 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.dive_);
7185 }
7186 _impl_.dive_ = dive;
7187 if (dive) {
7188 _impl_._has_bits_[0] |= 0x00000001u;
7189 } else {
7190 _impl_._has_bits_[0] &= ~0x00000001u;
7191 }
7192 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.TaskPacket.dive)
7193}
7194inline ::jaiabot::protobuf::DivePacket* TaskPacket::release_dive() {
7195 _impl_._has_bits_[0] &= ~0x00000001u;
7196 ::jaiabot::protobuf::DivePacket* temp = _impl_.dive_;
7197 _impl_.dive_ = nullptr;
7198#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
7199 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
7200 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7201 if (GetArenaForAllocation() == nullptr) { delete old; }
7202#else // PROTOBUF_FORCE_COPY_IN_RELEASE
7203 if (GetArenaForAllocation() != nullptr) {
7204 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7205 }
7206#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
7207 return temp;
7208}
7209inline ::jaiabot::protobuf::DivePacket* TaskPacket::unsafe_arena_release_dive() {
7210 // @@protoc_insertion_point(field_release:jaiabot.protobuf.TaskPacket.dive)
7211 _impl_._has_bits_[0] &= ~0x00000001u;
7212 ::jaiabot::protobuf::DivePacket* temp = _impl_.dive_;
7213 _impl_.dive_ = nullptr;
7214 return temp;
7215}
7216inline ::jaiabot::protobuf::DivePacket* TaskPacket::_internal_mutable_dive() {
7217 _impl_._has_bits_[0] |= 0x00000001u;
7218 if (_impl_.dive_ == nullptr) {
7219 auto* p = CreateMaybeMessage<::jaiabot::protobuf::DivePacket>(GetArenaForAllocation());
7220 _impl_.dive_ = p;
7221 }
7222 return _impl_.dive_;
7223}
7224inline ::jaiabot::protobuf::DivePacket* TaskPacket::mutable_dive() {
7225 ::jaiabot::protobuf::DivePacket* _msg = _internal_mutable_dive();
7226 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.TaskPacket.dive)
7227 return _msg;
7228}
7229inline void TaskPacket::set_allocated_dive(::jaiabot::protobuf::DivePacket* dive) {
7230 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
7231 if (message_arena == nullptr) {
7232 delete _impl_.dive_;
7233 }
7234 if (dive) {
7235 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
7236 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(dive);
7237 if (message_arena != submessage_arena) {
7238 dive = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7239 message_arena, dive, submessage_arena);
7240 }
7241 _impl_._has_bits_[0] |= 0x00000001u;
7242 } else {
7243 _impl_._has_bits_[0] &= ~0x00000001u;
7244 }
7245 _impl_.dive_ = dive;
7246 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.TaskPacket.dive)
7247}
7248
7249// optional .jaiabot.protobuf.DriftPacket drift = 11 [(.jaia.field) = {
7250inline bool TaskPacket::_internal_has_drift() const {
7251 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
7252 PROTOBUF_ASSUME(!value || _impl_.drift_ != nullptr);
7253 return value;
7254}
7255inline bool TaskPacket::has_drift() const {
7256 return _internal_has_drift();
7257}
7258inline void TaskPacket::clear_drift() {
7259 if (_impl_.drift_ != nullptr) _impl_.drift_->Clear();
7260 _impl_._has_bits_[0] &= ~0x00000002u;
7261}
7262inline const ::jaiabot::protobuf::DriftPacket& TaskPacket::_internal_drift() const {
7263 const ::jaiabot::protobuf::DriftPacket* p = _impl_.drift_;
7264 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::DriftPacket&>(
7266}
7267inline const ::jaiabot::protobuf::DriftPacket& TaskPacket::drift() const {
7268 // @@protoc_insertion_point(field_get:jaiabot.protobuf.TaskPacket.drift)
7269 return _internal_drift();
7270}
7271inline void TaskPacket::unsafe_arena_set_allocated_drift(
7273 if (GetArenaForAllocation() == nullptr) {
7274 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.drift_);
7275 }
7276 _impl_.drift_ = drift;
7277 if (drift) {
7278 _impl_._has_bits_[0] |= 0x00000002u;
7279 } else {
7280 _impl_._has_bits_[0] &= ~0x00000002u;
7281 }
7282 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.TaskPacket.drift)
7283}
7284inline ::jaiabot::protobuf::DriftPacket* TaskPacket::release_drift() {
7285 _impl_._has_bits_[0] &= ~0x00000002u;
7286 ::jaiabot::protobuf::DriftPacket* temp = _impl_.drift_;
7287 _impl_.drift_ = nullptr;
7288#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
7289 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
7290 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7291 if (GetArenaForAllocation() == nullptr) { delete old; }
7292#else // PROTOBUF_FORCE_COPY_IN_RELEASE
7293 if (GetArenaForAllocation() != nullptr) {
7294 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7295 }
7296#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
7297 return temp;
7298}
7299inline ::jaiabot::protobuf::DriftPacket* TaskPacket::unsafe_arena_release_drift() {
7300 // @@protoc_insertion_point(field_release:jaiabot.protobuf.TaskPacket.drift)
7301 _impl_._has_bits_[0] &= ~0x00000002u;
7302 ::jaiabot::protobuf::DriftPacket* temp = _impl_.drift_;
7303 _impl_.drift_ = nullptr;
7304 return temp;
7305}
7306inline ::jaiabot::protobuf::DriftPacket* TaskPacket::_internal_mutable_drift() {
7307 _impl_._has_bits_[0] |= 0x00000002u;
7308 if (_impl_.drift_ == nullptr) {
7309 auto* p = CreateMaybeMessage<::jaiabot::protobuf::DriftPacket>(GetArenaForAllocation());
7310 _impl_.drift_ = p;
7311 }
7312 return _impl_.drift_;
7313}
7314inline ::jaiabot::protobuf::DriftPacket* TaskPacket::mutable_drift() {
7315 ::jaiabot::protobuf::DriftPacket* _msg = _internal_mutable_drift();
7316 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.TaskPacket.drift)
7317 return _msg;
7318}
7319inline void TaskPacket::set_allocated_drift(::jaiabot::protobuf::DriftPacket* drift) {
7320 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
7321 if (message_arena == nullptr) {
7322 delete _impl_.drift_;
7323 }
7324 if (drift) {
7325 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
7326 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drift);
7327 if (message_arena != submessage_arena) {
7328 drift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7329 message_arena, drift, submessage_arena);
7330 }
7331 _impl_._has_bits_[0] |= 0x00000002u;
7332 } else {
7333 _impl_._has_bits_[0] &= ~0x00000002u;
7334 }
7335 _impl_.drift_ = drift;
7336 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.TaskPacket.drift)
7337}
7338
7339// -------------------------------------------------------------------
7340
7341// ContactUpdate
7342
7343// optional int32 contact = 1 [(.dccl.field) = {
7344inline bool ContactUpdate::_internal_has_contact() const {
7345 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
7346 return value;
7347}
7348inline bool ContactUpdate::has_contact() const {
7349 return _internal_has_contact();
7350}
7351inline void ContactUpdate::clear_contact() {
7352 _impl_.contact_ = 0;
7353 _impl_._has_bits_[0] &= ~0x00000008u;
7354}
7355inline int32_t ContactUpdate::_internal_contact() const {
7356 return _impl_.contact_;
7357}
7358inline int32_t ContactUpdate::contact() const {
7359 // @@protoc_insertion_point(field_get:jaiabot.protobuf.ContactUpdate.contact)
7360 return _internal_contact();
7361}
7362inline void ContactUpdate::_internal_set_contact(int32_t value) {
7363 _impl_._has_bits_[0] |= 0x00000008u;
7364 _impl_.contact_ = value;
7365}
7366inline void ContactUpdate::set_contact(int32_t value) {
7367 _internal_set_contact(value);
7368 // @@protoc_insertion_point(field_set:jaiabot.protobuf.ContactUpdate.contact)
7369}
7370
7371// required .jaiabot.protobuf.GeographicCoordinate location = 2;
7372inline bool ContactUpdate::_internal_has_location() const {
7373 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
7374 PROTOBUF_ASSUME(!value || _impl_.location_ != nullptr);
7375 return value;
7376}
7377inline bool ContactUpdate::has_location() const {
7378 return _internal_has_location();
7379}
7380inline const ::jaiabot::protobuf::GeographicCoordinate& ContactUpdate::_internal_location() const {
7381 const ::jaiabot::protobuf::GeographicCoordinate* p = _impl_.location_;
7382 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate&>(
7384}
7385inline const ::jaiabot::protobuf::GeographicCoordinate& ContactUpdate::location() const {
7386 // @@protoc_insertion_point(field_get:jaiabot.protobuf.ContactUpdate.location)
7387 return _internal_location();
7388}
7389inline void ContactUpdate::unsafe_arena_set_allocated_location(
7391 if (GetArenaForAllocation() == nullptr) {
7392 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.location_);
7393 }
7394 _impl_.location_ = location;
7395 if (location) {
7396 _impl_._has_bits_[0] |= 0x00000001u;
7397 } else {
7398 _impl_._has_bits_[0] &= ~0x00000001u;
7399 }
7400 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.ContactUpdate.location)
7401}
7402inline ::jaiabot::protobuf::GeographicCoordinate* ContactUpdate::release_location() {
7403 _impl_._has_bits_[0] &= ~0x00000001u;
7404 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.location_;
7405 _impl_.location_ = nullptr;
7406#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
7407 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
7408 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7409 if (GetArenaForAllocation() == nullptr) { delete old; }
7410#else // PROTOBUF_FORCE_COPY_IN_RELEASE
7411 if (GetArenaForAllocation() != nullptr) {
7412 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7413 }
7414#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
7415 return temp;
7416}
7417inline ::jaiabot::protobuf::GeographicCoordinate* ContactUpdate::unsafe_arena_release_location() {
7418 // @@protoc_insertion_point(field_release:jaiabot.protobuf.ContactUpdate.location)
7419 _impl_._has_bits_[0] &= ~0x00000001u;
7420 ::jaiabot::protobuf::GeographicCoordinate* temp = _impl_.location_;
7421 _impl_.location_ = nullptr;
7422 return temp;
7423}
7424inline ::jaiabot::protobuf::GeographicCoordinate* ContactUpdate::_internal_mutable_location() {
7425 _impl_._has_bits_[0] |= 0x00000001u;
7426 if (_impl_.location_ == nullptr) {
7427 auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArenaForAllocation());
7428 _impl_.location_ = p;
7429 }
7430 return _impl_.location_;
7431}
7432inline ::jaiabot::protobuf::GeographicCoordinate* ContactUpdate::mutable_location() {
7433 ::jaiabot::protobuf::GeographicCoordinate* _msg = _internal_mutable_location();
7434 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.ContactUpdate.location)
7435 return _msg;
7436}
7437inline void ContactUpdate::set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location) {
7438 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
7439 if (message_arena == nullptr) {
7440 delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.location_);
7441 }
7442 if (location) {
7443 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
7444 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(
7445 reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location));
7446 if (message_arena != submessage_arena) {
7447 location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7448 message_arena, location, submessage_arena);
7449 }
7450 _impl_._has_bits_[0] |= 0x00000001u;
7451 } else {
7452 _impl_._has_bits_[0] &= ~0x00000001u;
7453 }
7454 _impl_.location_ = location;
7455 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.ContactUpdate.location)
7456}
7457
7458// optional double speed_over_ground = 3 [(.dccl.field) = {
7459inline bool ContactUpdate::_internal_has_speed_over_ground() const {
7460 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
7461 return value;
7462}
7463inline bool ContactUpdate::has_speed_over_ground() const {
7464 return _internal_has_speed_over_ground();
7465}
7466inline void ContactUpdate::clear_speed_over_ground() {
7467 _impl_.speed_over_ground_ = 0;
7468 _impl_._has_bits_[0] &= ~0x00000002u;
7469}
7470inline double ContactUpdate::_internal_speed_over_ground() const {
7471 return _impl_.speed_over_ground_;
7472}
7473inline double ContactUpdate::speed_over_ground() const {
7474 // @@protoc_insertion_point(field_get:jaiabot.protobuf.ContactUpdate.speed_over_ground)
7475 return _internal_speed_over_ground();
7476}
7477inline void ContactUpdate::_internal_set_speed_over_ground(double value) {
7478 _impl_._has_bits_[0] |= 0x00000002u;
7479 _impl_.speed_over_ground_ = value;
7480}
7481inline void ContactUpdate::set_speed_over_ground(double value) {
7482 _internal_set_speed_over_ground(value);
7483 // @@protoc_insertion_point(field_set:jaiabot.protobuf.ContactUpdate.speed_over_ground)
7484}
7485
7486// optional double heading_or_cog = 5 [(.dccl.field) = {
7487inline bool ContactUpdate::_internal_has_heading_or_cog() const {
7488 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
7489 return value;
7490}
7491inline bool ContactUpdate::has_heading_or_cog() const {
7492 return _internal_has_heading_or_cog();
7493}
7494inline void ContactUpdate::clear_heading_or_cog() {
7495 _impl_.heading_or_cog_ = 0;
7496 _impl_._has_bits_[0] &= ~0x00000004u;
7497}
7498inline double ContactUpdate::_internal_heading_or_cog() const {
7499 return _impl_.heading_or_cog_;
7500}
7501inline double ContactUpdate::heading_or_cog() const {
7502 // @@protoc_insertion_point(field_get:jaiabot.protobuf.ContactUpdate.heading_or_cog)
7503 return _internal_heading_or_cog();
7504}
7505inline void ContactUpdate::_internal_set_heading_or_cog(double value) {
7506 _impl_._has_bits_[0] |= 0x00000004u;
7507 _impl_.heading_or_cog_ = value;
7508}
7509inline void ContactUpdate::set_heading_or_cog(double value) {
7510 _internal_set_heading_or_cog(value);
7511 // @@protoc_insertion_point(field_set:jaiabot.protobuf.ContactUpdate.heading_or_cog)
7512}
7513
7514// -------------------------------------------------------------------
7515
7516// Hub2HubData
7517
7518// required uint32 hub_id = 1 [(.dccl.field) = {
7519inline bool Hub2HubData::_internal_has_hub_id() const {
7520 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
7521 return value;
7522}
7523inline bool Hub2HubData::has_hub_id() const {
7524 return _internal_has_hub_id();
7525}
7526inline void Hub2HubData::clear_hub_id() {
7527 _impl_.hub_id_ = 0u;
7528 _impl_._has_bits_[0] &= ~0x00000002u;
7529}
7530inline uint32_t Hub2HubData::_internal_hub_id() const {
7531 return _impl_.hub_id_;
7532}
7533inline uint32_t Hub2HubData::hub_id() const {
7534 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Hub2HubData.hub_id)
7535 return _internal_hub_id();
7536}
7537inline void Hub2HubData::_internal_set_hub_id(uint32_t value) {
7538 _impl_._has_bits_[0] |= 0x00000002u;
7539 _impl_.hub_id_ = value;
7540}
7541inline void Hub2HubData::set_hub_id(uint32_t value) {
7542 _internal_set_hub_id(value);
7543 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Hub2HubData.hub_id)
7544}
7545
7546// required uint64 time = 2 [(.dccl.field) = {
7547inline bool Hub2HubData::_internal_has_time() const {
7548 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
7549 return value;
7550}
7551inline bool Hub2HubData::has_time() const {
7552 return _internal_has_time();
7553}
7554inline void Hub2HubData::clear_time() {
7555 _impl_.time_ = uint64_t{0u};
7556 _impl_._has_bits_[0] &= ~0x00000001u;
7557}
7558inline uint64_t Hub2HubData::_internal_time() const {
7559 return _impl_.time_;
7560}
7561inline uint64_t Hub2HubData::time() const {
7562 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Hub2HubData.time)
7563 return _internal_time();
7564}
7565inline void Hub2HubData::_internal_set_time(uint64_t value) {
7566 _impl_._has_bits_[0] |= 0x00000001u;
7567 _impl_.time_ = value;
7568}
7569inline void Hub2HubData::set_time(uint64_t value) {
7570 _internal_set_time(value);
7571 // @@protoc_insertion_point(field_set:jaiabot.protobuf.Hub2HubData.time)
7572}
7573
7574// .jaiabot.protobuf.BotStatus bot_status = 10;
7575inline bool Hub2HubData::_internal_has_bot_status() const {
7576 return contents_case() == kBotStatus;
7577}
7578inline bool Hub2HubData::has_bot_status() const {
7579 return _internal_has_bot_status();
7580}
7581inline void Hub2HubData::set_has_bot_status() {
7582 _impl_._oneof_case_[0] = kBotStatus;
7583}
7584inline void Hub2HubData::clear_bot_status() {
7585 if (_internal_has_bot_status()) {
7586 if (GetArenaForAllocation() == nullptr) {
7587 delete _impl_.contents_.bot_status_;
7588 }
7589 clear_has_contents();
7590 }
7591}
7592inline ::jaiabot::protobuf::BotStatus* Hub2HubData::release_bot_status() {
7593 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Hub2HubData.bot_status)
7594 if (_internal_has_bot_status()) {
7595 clear_has_contents();
7596 ::jaiabot::protobuf::BotStatus* temp = _impl_.contents_.bot_status_;
7597 if (GetArenaForAllocation() != nullptr) {
7598 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7599 }
7600 _impl_.contents_.bot_status_ = nullptr;
7601 return temp;
7602 } else {
7603 return nullptr;
7604 }
7605}
7606inline const ::jaiabot::protobuf::BotStatus& Hub2HubData::_internal_bot_status() const {
7607 return _internal_has_bot_status()
7608 ? *_impl_.contents_.bot_status_
7610}
7611inline const ::jaiabot::protobuf::BotStatus& Hub2HubData::bot_status() const {
7612 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Hub2HubData.bot_status)
7613 return _internal_bot_status();
7614}
7615inline ::jaiabot::protobuf::BotStatus* Hub2HubData::unsafe_arena_release_bot_status() {
7616 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Hub2HubData.bot_status)
7617 if (_internal_has_bot_status()) {
7618 clear_has_contents();
7619 ::jaiabot::protobuf::BotStatus* temp = _impl_.contents_.bot_status_;
7620 _impl_.contents_.bot_status_ = nullptr;
7621 return temp;
7622 } else {
7623 return nullptr;
7624 }
7625}
7626inline void Hub2HubData::unsafe_arena_set_allocated_bot_status(::jaiabot::protobuf::BotStatus* bot_status) {
7627 clear_contents();
7628 if (bot_status) {
7629 set_has_bot_status();
7630 _impl_.contents_.bot_status_ = bot_status;
7631 }
7632 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Hub2HubData.bot_status)
7633}
7634inline ::jaiabot::protobuf::BotStatus* Hub2HubData::_internal_mutable_bot_status() {
7635 if (!_internal_has_bot_status()) {
7636 clear_contents();
7637 set_has_bot_status();
7638 _impl_.contents_.bot_status_ = CreateMaybeMessage< ::jaiabot::protobuf::BotStatus >(GetArenaForAllocation());
7639 }
7640 return _impl_.contents_.bot_status_;
7641}
7642inline ::jaiabot::protobuf::BotStatus* Hub2HubData::mutable_bot_status() {
7643 ::jaiabot::protobuf::BotStatus* _msg = _internal_mutable_bot_status();
7644 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Hub2HubData.bot_status)
7645 return _msg;
7646}
7647
7648// .jaiabot.protobuf.TaskPacket task_packet = 11;
7649inline bool Hub2HubData::_internal_has_task_packet() const {
7650 return contents_case() == kTaskPacket;
7651}
7652inline bool Hub2HubData::has_task_packet() const {
7653 return _internal_has_task_packet();
7654}
7655inline void Hub2HubData::set_has_task_packet() {
7656 _impl_._oneof_case_[0] = kTaskPacket;
7657}
7658inline void Hub2HubData::clear_task_packet() {
7659 if (_internal_has_task_packet()) {
7660 if (GetArenaForAllocation() == nullptr) {
7661 delete _impl_.contents_.task_packet_;
7662 }
7663 clear_has_contents();
7664 }
7665}
7666inline ::jaiabot::protobuf::TaskPacket* Hub2HubData::release_task_packet() {
7667 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Hub2HubData.task_packet)
7668 if (_internal_has_task_packet()) {
7669 clear_has_contents();
7670 ::jaiabot::protobuf::TaskPacket* temp = _impl_.contents_.task_packet_;
7671 if (GetArenaForAllocation() != nullptr) {
7672 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7673 }
7674 _impl_.contents_.task_packet_ = nullptr;
7675 return temp;
7676 } else {
7677 return nullptr;
7678 }
7679}
7680inline const ::jaiabot::protobuf::TaskPacket& Hub2HubData::_internal_task_packet() const {
7681 return _internal_has_task_packet()
7682 ? *_impl_.contents_.task_packet_
7684}
7685inline const ::jaiabot::protobuf::TaskPacket& Hub2HubData::task_packet() const {
7686 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Hub2HubData.task_packet)
7687 return _internal_task_packet();
7688}
7689inline ::jaiabot::protobuf::TaskPacket* Hub2HubData::unsafe_arena_release_task_packet() {
7690 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Hub2HubData.task_packet)
7691 if (_internal_has_task_packet()) {
7692 clear_has_contents();
7693 ::jaiabot::protobuf::TaskPacket* temp = _impl_.contents_.task_packet_;
7694 _impl_.contents_.task_packet_ = nullptr;
7695 return temp;
7696 } else {
7697 return nullptr;
7698 }
7699}
7700inline void Hub2HubData::unsafe_arena_set_allocated_task_packet(::jaiabot::protobuf::TaskPacket* task_packet) {
7701 clear_contents();
7702 if (task_packet) {
7703 set_has_task_packet();
7704 _impl_.contents_.task_packet_ = task_packet;
7705 }
7706 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Hub2HubData.task_packet)
7707}
7708inline ::jaiabot::protobuf::TaskPacket* Hub2HubData::_internal_mutable_task_packet() {
7709 if (!_internal_has_task_packet()) {
7710 clear_contents();
7711 set_has_task_packet();
7712 _impl_.contents_.task_packet_ = CreateMaybeMessage< ::jaiabot::protobuf::TaskPacket >(GetArenaForAllocation());
7713 }
7714 return _impl_.contents_.task_packet_;
7715}
7716inline ::jaiabot::protobuf::TaskPacket* Hub2HubData::mutable_task_packet() {
7717 ::jaiabot::protobuf::TaskPacket* _msg = _internal_mutable_task_packet();
7718 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Hub2HubData.task_packet)
7719 return _msg;
7720}
7721
7722// .jaiabot.protobuf.Command command_for_bot = 12;
7723inline bool Hub2HubData::_internal_has_command_for_bot() const {
7724 return contents_case() == kCommandForBot;
7725}
7726inline bool Hub2HubData::has_command_for_bot() const {
7727 return _internal_has_command_for_bot();
7728}
7729inline void Hub2HubData::set_has_command_for_bot() {
7730 _impl_._oneof_case_[0] = kCommandForBot;
7731}
7732inline void Hub2HubData::clear_command_for_bot() {
7733 if (_internal_has_command_for_bot()) {
7734 if (GetArenaForAllocation() == nullptr) {
7735 delete _impl_.contents_.command_for_bot_;
7736 }
7737 clear_has_contents();
7738 }
7739}
7740inline ::jaiabot::protobuf::Command* Hub2HubData::release_command_for_bot() {
7741 // @@protoc_insertion_point(field_release:jaiabot.protobuf.Hub2HubData.command_for_bot)
7742 if (_internal_has_command_for_bot()) {
7743 clear_has_contents();
7744 ::jaiabot::protobuf::Command* temp = _impl_.contents_.command_for_bot_;
7745 if (GetArenaForAllocation() != nullptr) {
7746 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7747 }
7748 _impl_.contents_.command_for_bot_ = nullptr;
7749 return temp;
7750 } else {
7751 return nullptr;
7752 }
7753}
7754inline const ::jaiabot::protobuf::Command& Hub2HubData::_internal_command_for_bot() const {
7755 return _internal_has_command_for_bot()
7756 ? *_impl_.contents_.command_for_bot_
7758}
7759inline const ::jaiabot::protobuf::Command& Hub2HubData::command_for_bot() const {
7760 // @@protoc_insertion_point(field_get:jaiabot.protobuf.Hub2HubData.command_for_bot)
7761 return _internal_command_for_bot();
7762}
7763inline ::jaiabot::protobuf::Command* Hub2HubData::unsafe_arena_release_command_for_bot() {
7764 // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.Hub2HubData.command_for_bot)
7765 if (_internal_has_command_for_bot()) {
7766 clear_has_contents();
7767 ::jaiabot::protobuf::Command* temp = _impl_.contents_.command_for_bot_;
7768 _impl_.contents_.command_for_bot_ = nullptr;
7769 return temp;
7770 } else {
7771 return nullptr;
7772 }
7773}
7774inline void Hub2HubData::unsafe_arena_set_allocated_command_for_bot(::jaiabot::protobuf::Command* command_for_bot) {
7775 clear_contents();
7776 if (command_for_bot) {
7777 set_has_command_for_bot();
7778 _impl_.contents_.command_for_bot_ = command_for_bot;
7779 }
7780 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.Hub2HubData.command_for_bot)
7781}
7782inline ::jaiabot::protobuf::Command* Hub2HubData::_internal_mutable_command_for_bot() {
7783 if (!_internal_has_command_for_bot()) {
7784 clear_contents();
7785 set_has_command_for_bot();
7786 _impl_.contents_.command_for_bot_ = CreateMaybeMessage< ::jaiabot::protobuf::Command >(GetArenaForAllocation());
7787 }
7788 return _impl_.contents_.command_for_bot_;
7789}
7790inline ::jaiabot::protobuf::Command* Hub2HubData::mutable_command_for_bot() {
7791 ::jaiabot::protobuf::Command* _msg = _internal_mutable_command_for_bot();
7792 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.Hub2HubData.command_for_bot)
7793 return _msg;
7794}
7795
7796inline bool Hub2HubData::has_contents() const {
7797 return contents_case() != CONTENTS_NOT_SET;
7798}
7799inline void Hub2HubData::clear_has_contents() {
7800 _impl_._oneof_case_[0] = CONTENTS_NOT_SET;
7801}
7802inline Hub2HubData::ContentsCase Hub2HubData::contents_case() const {
7803 return Hub2HubData::ContentsCase(_impl_._oneof_case_[0]);
7804}
7805#ifdef __GNUC__
7806 #pragma GCC diagnostic pop
7807#endif // __GNUC__
7808// -------------------------------------------------------------------
7809
7810// -------------------------------------------------------------------
7811
7812// -------------------------------------------------------------------
7813
7814// -------------------------------------------------------------------
7815
7816// -------------------------------------------------------------------
7817
7818// -------------------------------------------------------------------
7819
7820// -------------------------------------------------------------------
7821
7822// -------------------------------------------------------------------
7823
7824// -------------------------------------------------------------------
7825
7826// -------------------------------------------------------------------
7827
7828// -------------------------------------------------------------------
7829
7830// -------------------------------------------------------------------
7831
7832
7833// @@protoc_insertion_point(namespace_scope)
7834
7835} // namespace protobuf
7836} // namespace jaiabot
7837
7838PROTOBUF_NAMESPACE_OPEN
7839
7840template <> struct is_proto_enum< ::jaiabot::protobuf::Command_CommandType> : ::std::true_type {};
7841template <>
7843 return ::jaiabot::protobuf::Command_CommandType_descriptor();
7844}
7845template <> struct is_proto_enum< ::jaiabot::protobuf::CommandForHub_HubCommandType> : ::std::true_type {};
7846template <>
7848 return ::jaiabot::protobuf::CommandForHub_HubCommandType_descriptor();
7849}
7850template <> struct is_proto_enum< ::jaiabot::protobuf::BotStatus_BotType> : ::std::true_type {};
7851template <>
7853 return ::jaiabot::protobuf::BotStatus_BotType_descriptor();
7854}
7855template <> struct is_proto_enum< ::jaiabot::protobuf::DivePacket_BottomType> : ::std::true_type {};
7856template <>
7858 return ::jaiabot::protobuf::DivePacket_BottomType_descriptor();
7859}
7860
7861PROTOBUF_NAMESPACE_CLOSE
7862
7863// @@protoc_insertion_point(global_scope)
7864
7865#include <google/protobuf/port_undef.inc>
7866#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fjaia_5fdccl_2eproto
boost::units::unit< pitch_dimension, boost::units::degree::system > pitch_unit
BotStatus_Attitude(const BotStatus_Attitude &from)
static const BotStatus_Attitude * internal_default_instance()
PROTOBUF_CONSTEXPR BotStatus_Attitude(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
boost::units::unit< roll_dimension, boost::units::degree::system > roll_unit
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
boost::units::quantity< roll_unit, double > roll_with_units() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_heading_with_units(Quantity value_w_units)
static const BotStatus_Attitude & default_instance()
BotStatus_Attitude & operator=(BotStatus_Attitude &&from) noexcept
void set_roll_with_units(Quantity value_w_units)
void set_pitch_with_units(Quantity value_w_units)
friend void swap(BotStatus_Attitude &a, BotStatus_Attitude &b)
void UnsafeArenaSwap(BotStatus_Attitude *other)
BotStatus_Attitude(BotStatus_Attitude &&from) noexcept
BotStatus_Attitude & operator=(const BotStatus_Attitude &from)
boost::units::plane_angle_dimension roll_dimension
boost::units::quantity< course_over_ground_unit, double > course_over_ground_with_units() const
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void set_course_over_ground_with_units(Quantity value_w_units)
boost::units::quantity< pitch_unit, double > pitch_with_units() const
void MergeFrom(const BotStatus_Attitude &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
BotStatus_Attitude * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
BotStatus_Attitude(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
boost::units::plane_angle_dimension course_over_ground_dimension
void CopyFrom(const BotStatus_Attitude &from)
boost::units::plane_angle_dimension pitch_dimension
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void Swap(BotStatus_Attitude *other)
boost::units::quantity< heading_unit, double > heading_with_units() const
boost::units::plane_angle_dimension heading_dimension
boost::units::unit< course_over_ground_dimension, boost::units::degree::system > course_over_ground_unit
BotStatus_Speed(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
boost::units::velocity_dimension over_ground_dimension
boost::units::velocity_dimension over_water_dimension
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
boost::units::unit< over_water_dimension, boost::units::si::system > over_water_unit
boost::units::quantity< over_water_unit, double > over_water_with_units() const
PROTOBUF_CONSTEXPR BotStatus_Speed(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
static const BotStatus_Speed * internal_default_instance()
friend void swap(BotStatus_Speed &a, BotStatus_Speed &b)
void MergeFrom(const BotStatus_Speed &from)
void Swap(BotStatus_Speed *other)
void set_over_water_with_units(Quantity value_w_units)
BotStatus_Speed * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
BotStatus_Speed(const BotStatus_Speed &from)
boost::units::quantity< over_ground_unit, double > over_ground_with_units() const
void set_over_ground_with_units(Quantity value_w_units)
boost::units::unit< over_ground_dimension, boost::units::si::system > over_ground_unit
static const ClassData _class_data_
void CopyFrom(const BotStatus_Speed &from)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void UnsafeArenaSwap(BotStatus_Speed *other)
static const BotStatus_Speed & default_instance()
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
BotStatus_Speed(BotStatus_Speed &&from) noexcept
BotStatus_Speed & operator=(BotStatus_Speed &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
BotStatus_Speed & operator=(const BotStatus_Speed &from)
static bool BotType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BotType *value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Quantity last_command_time_with_units() const
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
BotStatus(const BotStatus &from)
boost::units::time_dimension time_dimension
boost::units::quantity< depth_unit, double > depth_with_units() const
boost::units::unit< sensor_depth_dimension, boost::units::si::system > sensor_depth_unit
Quantity sensor_depth_with_units() const
boost::units::quantity< active_goal_timeout_unit, google::protobuf::uint32 > active_goal_timeout_with_units() const
Quantity depth_with_units() const
Quantity temperature_with_units() const
void set_temperature_with_units(Quantity value_w_units)
boost::units::quantity< distance_to_active_goal_unit, double > distance_to_active_goal_with_units() const
boost::units::make_scaled_unit< boost::units::unit< last_command_time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type last_command_time_unit
boost::units::time_dimension received_time_dimension
BotStatus * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
boost::units::quantity< temperature_unit, double > temperature_with_units() const
boost::units::temperature_dimension temperature_dimension
Quantity distance_to_active_goal_with_units() const
friend void swap(BotStatus &a, BotStatus &b)
boost::units::unit< active_goal_timeout_dimension, boost::units::si::system > active_goal_timeout_unit
boost::units::quantity< time_unit, google::protobuf::uint64 > time_with_units() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const std::string & BotType_Name(T enum_t_value)
void Swap(BotStatus *other)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BotType_descriptor()
boost::units::make_scaled_unit< boost::units::unit< time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type time_unit
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
boost::units::quantity< received_time_unit, google::protobuf::uint64 > received_time_with_units() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
boost::units::absolute< boost::units::unit< temperature_dimension, boost::units::celsius::system > > temperature_unit
boost::units::length_dimension distance_to_active_goal_dimension
static const BotStatus & default_instance()
boost::units::quantity< sensor_depth_unit, double > sensor_depth_with_units() const
void set_sensor_depth_with_units(Quantity value_w_units)
void set_last_command_time_with_units(Quantity value_w_units)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type active_goal_timeout_dimension
BotStatus(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ClassData _class_data_
boost::units::make_scaled_unit< boost::units::unit< received_time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type received_time_unit
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
boost::units::quantity< last_command_time_unit, google::protobuf::uint64 > last_command_time_with_units() const
BotStatus & operator=(const BotStatus &from)
Quantity received_time_with_units() const
boost::units::length_dimension sensor_depth_dimension
void set_active_goal_timeout_with_units(Quantity value_w_units)
void set_received_time_with_units(Quantity value_w_units)
static const BotStatus * internal_default_instance()
void set_depth_with_units(Quantity value_w_units)
void CopyFrom(const BotStatus &from)
BotStatus(BotStatus &&from) noexcept
boost::units::unit< distance_to_active_goal_dimension, boost::units::si::system > distance_to_active_goal_unit
Quantity active_goal_timeout_with_units() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::time_dimension last_command_time_dimension
void set_distance_to_active_goal_with_units(Quantity value_w_units)
Quantity time_with_units() const
void MergeFrom(const BotStatus &from)
boost::units::length_dimension depth_dimension
PROTOBUF_CONSTEXPR BotStatus(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
BotStatus & operator=(BotStatus &&from) noexcept
void set_time_with_units(Quantity value_w_units)
boost::units::unit< depth_dimension, boost::units::si::system > depth_unit
void UnsafeArenaSwap(BotStatus *other)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
CommandForHub * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * HubCommandType_descriptor()
void CopyFrom(const CommandForHub &from)
CommandForHub(const CommandForHub &from)
boost::units::time_dimension time_dimension
static const CommandForHub * internal_default_instance()
friend void swap(CommandForHub &a, CommandForHub &b)
static const std::string & HubCommandType_Name(T enum_t_value)
static const ClassData _class_data_
boost::units::quantity< time_unit, google::protobuf::uint64 > time_with_units() const
void UnsafeArenaSwap(CommandForHub *other)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
PROTOBUF_CONSTEXPR CommandForHub(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
CommandForHub(CommandForHub &&from) noexcept
CommandForHub & operator=(const CommandForHub &from)
void set_time_with_units(Quantity value_w_units)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
CommandForHub & operator=(CommandForHub &&from) noexcept
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void Swap(CommandForHub *other)
static const CommandForHub & default_instance()
boost::units::make_scaled_unit< boost::units::unit< time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type time_unit
void MergeFrom(const CommandForHub &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static bool HubCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, HubCommandType *value)
CommandForHub(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
PROTOBUF_NODISCARD::jaiabot::protobuf::MissionPlan * release_plan()
PROTOBUF_NODISCARD::jaiabot::protobuf::RemoteControl * release_rc()
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const ::jaiabot::protobuf::RemoteControl & rc() const
void unsafe_arena_set_allocated_rc_task(::jaiabot::protobuf::MissionTask *rc_task)
Command(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static constexpr CommandType DATA_OFFLOAD_COMPLETE
static constexpr CommandType SHUTDOWN_COMPUTER
static constexpr CommandType STOP
boost::units::quantity< time_unit, google::protobuf::uint64 > time_with_units() const
void set_allocated_rc_task(::jaiabot::protobuf::MissionTask *rc_task)
friend void swap(Command &a, Command &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void MergeFrom(const Command &from)
static constexpr CommandType START_MISSION
static constexpr CommandType RETRY_DATA_OFFLOAD
static const Command * internal_default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static constexpr int kIndexInFileMessages
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static bool CommandType_IsValid(int value)
Command(Command &&from) noexcept
::jaiabot::protobuf::MissionPlan * unsafe_arena_release_plan()
static constexpr CommandType CommandType_MIN
void set_type(::jaiabot::protobuf::Command_CommandType value)
static constexpr CommandType ACTIVATE
::jaiabot::protobuf::Command_CommandType type() const
int GetCachedSize() const final
static constexpr CommandType NEXT_TASK
void set_allocated_rc(::jaiabot::protobuf::RemoteControl *rc)
static const std::string & CommandType_Name(T enum_t_value)
static constexpr CommandType CommandType_MAX
static bool CommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CommandType *value)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void UnsafeArenaSwap(Command *other)
static constexpr CommandType REBOOT_COMPUTER
PROTOBUF_NODISCARD::jaiabot::protobuf::MissionTask * release_rc_task()
::jaiabot::protobuf::MissionTask * unsafe_arena_release_rc_task()
static constexpr CommandType RESTART_ALL_SERVICES
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
static const Command & default_instance()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
const ::jaiabot::protobuf::MissionTask & rc_task() const
void set_bot_id(uint32_t value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CommandType_descriptor()
static constexpr CommandType REMOTE_CONTROL_TASK
Command(const Command &from)
Command * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Quantity time_with_units() const
void set_allocated_plan(::jaiabot::protobuf::MissionPlan *plan)
void CopyFrom(const Command &from)
void set_time_with_units(Quantity value_w_units)
boost::units::time_dimension time_dimension
void set_time(uint64_t value)
::jaiabot::protobuf::RemoteControl * mutable_rc()
void set_link(::jaiabot::protobuf::Link value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static constexpr CommandType PAUSE
void unsafe_arena_set_allocated_rc(::jaiabot::protobuf::RemoteControl *rc)
::jaiabot::protobuf::RemoteControl * unsafe_arena_release_rc()
static constexpr CommandType REMOTE_CONTROL_SETPOINT
static constexpr CommandType RECOVERED
static constexpr CommandType MISSION_PLAN
static constexpr CommandType DATA_OFFLOAD_FAILED
size_t ByteSizeLong() const final
bool IsInitialized() const final
void Swap(Command *other)
void set_from_hub_id(uint32_t value)
::jaiabot::protobuf::MissionPlan * mutable_plan()
static constexpr CommandType RESUME
::jaiabot::protobuf::MissionTask * mutable_rc_task()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
CommandDataCase command_data_case() const
::jaiabot::protobuf::Link link() const
const ::jaiabot::protobuf::MissionPlan & plan() const
static constexpr int CommandType_ARRAYSIZE
void unsafe_arena_set_allocated_plan(::jaiabot::protobuf::MissionPlan *plan)
static constexpr CommandType RETURN_TO_HOME
Command & operator=(Command &&from) noexcept
uint32_t from_hub_id() const
static const ClassData _class_data_
static constexpr CommandType REMOTE_CONTROL_RESUME_MOVEMENT
static constexpr CommandType SHUTDOWN
boost::units::make_scaled_unit< boost::units::unit< time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type time_unit
static constexpr CommandType MISSION_PLAN_FRAGMENT
Command & operator=(const Command &from)
PROTOBUF_CONSTEXPR Command(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
void set_heading_or_cog_with_units(Quantity value_w_units)
friend void swap(ContactUpdate &a, ContactUpdate &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
ContactUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
ContactUpdate & operator=(ContactUpdate &&from) noexcept
PROTOBUF_CONSTEXPR ContactUpdate(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ContactUpdate * internal_default_instance()
void set_speed_over_ground_with_units(Quantity value_w_units)
static const ClassData _class_data_
Quantity speed_over_ground_with_units() const
boost::units::quantity< heading_or_cog_unit, double > heading_or_cog_with_units() const
ContactUpdate(const ContactUpdate &from)
boost::units::unit< speed_over_ground_dimension, boost::units::si::system > speed_over_ground_unit
boost::units::unit< heading_or_cog_dimension, boost::units::degree::system > heading_or_cog_unit
boost::units::plane_angle_dimension heading_or_cog_dimension
boost::units::velocity_dimension speed_over_ground_dimension
static const ContactUpdate & default_instance()
ContactUpdate(ContactUpdate &&from) noexcept
ContactUpdate & operator=(const ContactUpdate &from)
Quantity heading_or_cog_with_units() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void UnsafeArenaSwap(ContactUpdate *other)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
boost::units::quantity< speed_over_ground_unit, double > speed_over_ground_with_units() const
ContactUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void Swap(ContactUpdate *other)
void CopyFrom(const ContactUpdate &from)
void MergeFrom(const ContactUpdate &from)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
DivePacket_Measurements & operator=(const DivePacket_Measurements &from)
static const DivePacket_Measurements * internal_default_instance()
void set_mean_temperature_with_units(Quantity value_w_units)
DivePacket_Measurements(const DivePacket_Measurements &from)
void UnsafeArenaSwap(DivePacket_Measurements *other)
DivePacket_Measurements(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
void set_mean_depth_with_units(Quantity value_w_units)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const DivePacket_Measurements & default_instance()
DivePacket_Measurements * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
void Swap(DivePacket_Measurements *other)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::unit< mean_depth_dimension, boost::units::si::system > mean_depth_unit
boost::units::temperature_dimension mean_temperature_dimension
boost::units::absolute< boost::units::unit< mean_temperature_dimension, boost::units::celsius::system > > mean_temperature_unit
DivePacket_Measurements(DivePacket_Measurements &&from) noexcept
boost::units::quantity< mean_temperature_unit, double > mean_temperature_with_units() const
DivePacket_Measurements & operator=(DivePacket_Measurements &&from) noexcept
void MergeFrom(const DivePacket_Measurements &from)
boost::units::quantity< mean_depth_unit, double > mean_depth_with_units() const
void CopyFrom(const DivePacket_Measurements &from)
boost::units::length_dimension mean_depth_dimension
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
friend void swap(DivePacket_Measurements &a, DivePacket_Measurements &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
PROTOBUF_CONSTEXPR DivePacket_Measurements(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
void CopyFrom(const DivePacket_SubsurfaceCurrentVector &from)
void Swap(DivePacket_SubsurfaceCurrentVector *other)
DivePacket_SubsurfaceCurrentVector(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const DivePacket_SubsurfaceCurrentVector * internal_default_instance()
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
boost::units::plane_angle_dimension heading_dimension
boost::units::quantity< heading_unit, double > heading_with_units() const
boost::units::unit< velocity_dimension, boost::units::si::system > velocity_unit
DivePacket_SubsurfaceCurrentVector(const DivePacket_SubsurfaceCurrentVector &from)
DivePacket_SubsurfaceCurrentVector * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
boost::units::velocity_dimension velocity_dimension
friend void swap(DivePacket_SubsurfaceCurrentVector &a, DivePacket_SubsurfaceCurrentVector &b)
PROTOBUF_CONSTEXPR DivePacket_SubsurfaceCurrentVector(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
boost::units::quantity< velocity_unit, double > velocity_with_units() const
DivePacket_SubsurfaceCurrentVector & operator=(DivePacket_SubsurfaceCurrentVector &&from) noexcept
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void UnsafeArenaSwap(DivePacket_SubsurfaceCurrentVector *other)
DivePacket_SubsurfaceCurrentVector(DivePacket_SubsurfaceCurrentVector &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static const DivePacket_SubsurfaceCurrentVector & default_instance()
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
DivePacket_SubsurfaceCurrentVector & operator=(const DivePacket_SubsurfaceCurrentVector &from)
void MergeFrom(const DivePacket_SubsurfaceCurrentVector &from)
boost::units::quantity< dive_rate_unit, double > dive_rate_with_units() const
void Swap(DivePacket *other)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const DivePacket * internal_default_instance()
DivePacket(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
void set_dive_rate_with_units(Quantity value_w_units)
boost::units::quantity< powered_rise_rate_unit, double > powered_rise_rate_with_units() const
DivePacket * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
boost::units::unit< duration_to_acquire_gps_dimension, boost::units::si::system > duration_to_acquire_gps_unit
Quantity duration_to_acquire_gps_with_units() const
void set_max_acceleration_with_units(Quantity value_w_units)
DivePacket(const DivePacket &from)
DivePacket & operator=(DivePacket &&from) noexcept
boost::units::acceleration_dimension max_acceleration_dimension
void set_unpowered_rise_rate_with_units(Quantity value_w_units)
void set_depth_achieved_with_units(Quantity value_w_units)
static bool BottomType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BottomType *value)
static const ClassData _class_data_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
boost::units::length_dimension depth_achieved_dimension
Quantity dive_rate_with_units() const
boost::units::unit< max_acceleration_dimension, boost::units::si::system > max_acceleration_unit
boost::units::unit< dive_rate_dimension, boost::units::si::system > dive_rate_unit
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type duration_to_acquire_gps_dimension
void CopyFrom(const DivePacket &from)
static const DivePacket & default_instance()
boost::units::unit< unpowered_rise_rate_dimension, boost::units::si::system > unpowered_rise_rate_unit
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::unit< powered_rise_rate_dimension, boost::units::si::system > powered_rise_rate_unit
static const std::string & BottomType_Name(T enum_t_value)
boost::units::quantity< depth_achieved_unit, double > depth_achieved_with_units() const
boost::units::quantity< unpowered_rise_rate_unit, double > unpowered_rise_rate_with_units() const
void MergeFrom(const DivePacket &from)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
boost::units::velocity_dimension unpowered_rise_rate_dimension
void UnsafeArenaSwap(DivePacket *other)
boost::units::quantity< max_acceleration_unit, double > max_acceleration_with_units() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BottomType_descriptor()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
DivePacket(DivePacket &&from) noexcept
friend void swap(DivePacket &a, DivePacket &b)
Quantity unpowered_rise_rate_with_units() const
boost::units::quantity< duration_to_acquire_gps_unit, double > duration_to_acquire_gps_with_units() const
DivePacket & operator=(const DivePacket &from)
Quantity max_acceleration_with_units() const
void set_powered_rise_rate_with_units(Quantity value_w_units)
Quantity powered_rise_rate_with_units() const
void set_duration_to_acquire_gps_with_units(Quantity value_w_units)
boost::units::velocity_dimension dive_rate_dimension
PROTOBUF_CONSTEXPR DivePacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
Quantity depth_achieved_with_units() const
boost::units::unit< depth_achieved_dimension, boost::units::si::system > depth_achieved_unit
boost::units::velocity_dimension powered_rise_rate_dimension
void set_heading_with_units(Quantity value_w_units)
DriftPacket_EstimatedDrift(DriftPacket_EstimatedDrift &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
DriftPacket_EstimatedDrift & operator=(const DriftPacket_EstimatedDrift &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
DriftPacket_EstimatedDrift & operator=(DriftPacket_EstimatedDrift &&from) noexcept
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
boost::units::quantity< heading_unit, double > heading_with_units() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
friend void swap(DriftPacket_EstimatedDrift &a, DriftPacket_EstimatedDrift &b)
boost::units::quantity< speed_unit, double > speed_with_units() const
static const DriftPacket_EstimatedDrift * internal_default_instance()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
DriftPacket_EstimatedDrift(const DriftPacket_EstimatedDrift &from)
PROTOBUF_CONSTEXPR DriftPacket_EstimatedDrift(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
boost::units::velocity_dimension speed_dimension
void CopyFrom(const DriftPacket_EstimatedDrift &from)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void MergeFrom(const DriftPacket_EstimatedDrift &from)
boost::units::unit< speed_dimension, boost::units::si::system > speed_unit
boost::units::plane_angle_dimension heading_dimension
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
static const DriftPacket_EstimatedDrift & default_instance()
DriftPacket_EstimatedDrift(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
void Swap(DriftPacket_EstimatedDrift *other)
void UnsafeArenaSwap(DriftPacket_EstimatedDrift *other)
void set_speed_with_units(Quantity value_w_units)
DriftPacket_EstimatedDrift * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const DriftPacket * internal_default_instance()
DriftPacket & operator=(DriftPacket &&from) noexcept
DriftPacket(const DriftPacket &from)
void Swap(DriftPacket *other)
PROTOBUF_CONSTEXPR DriftPacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
Quantity significant_wave_height_with_units() const
void set_significant_wave_height_with_units(Quantity value_w_units)
boost::units::quantity< significant_wave_height_unit, double > significant_wave_height_with_units() const
DriftPacket * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
DriftPacket(DriftPacket &&from) noexcept
void set_drift_duration_with_units(Quantity value_w_units)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
DriftPacket & operator=(const DriftPacket &from)
friend void swap(DriftPacket &a, DriftPacket &b)
boost::units::length_dimension significant_wave_height_dimension
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void UnsafeArenaSwap(DriftPacket *other)
static const ClassData _class_data_
boost::units::unit< significant_wave_height_dimension, boost::units::si::system > significant_wave_height_unit
void CopyFrom(const DriftPacket &from)
void MergeFrom(const DriftPacket &from)
boost::units::unit< drift_duration_dimension, boost::units::si::system > drift_duration_unit
boost::units::quantity< drift_duration_unit, google::protobuf::int32 > drift_duration_with_units() const
DriftPacket(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const DriftPacket & default_instance()
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type drift_duration_dimension
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Quantity drift_duration_with_units() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
PROTOBUF_CONSTEXPR Hub2HubData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
Hub2HubData(Hub2HubData &&from) noexcept
Hub2HubData(const Hub2HubData &from)
boost::units::time_dimension time_dimension
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
boost::units::make_scaled_unit< boost::units::unit< time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type time_unit
friend void swap(Hub2HubData &a, Hub2HubData &b)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Hub2HubData * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
void set_allocated_bot_status(::jaiabot::protobuf::BotStatus *bot_status)
void MergeFrom(const Hub2HubData &from)
Hub2HubData(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
Hub2HubData & operator=(const Hub2HubData &from)
void Swap(Hub2HubData *other)
static const ClassData _class_data_
void set_allocated_task_packet(::jaiabot::protobuf::TaskPacket *task_packet)
void set_allocated_command_for_bot(::jaiabot::protobuf::Command *command_for_bot)
static const Hub2HubData * internal_default_instance()
static const Hub2HubData & default_instance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Hub2HubData & operator=(Hub2HubData &&from) noexcept
boost::units::quantity< time_unit, google::protobuf::uint64 > time_with_units() const
void UnsafeArenaSwap(Hub2HubData *other)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void CopyFrom(const Hub2HubData &from)
void set_time_with_units(Quantity value_w_units)
boost::units::time_dimension end_time_dimension
Quantity start_time_with_units() const
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
TaskPacket & operator=(TaskPacket &&from) noexcept
boost::units::quantity< end_time_unit, google::protobuf::uint64 > end_time_with_units() const
Quantity end_time_with_units() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
TaskPacket(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
PROTOBUF_CONSTEXPR TaskPacket(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
TaskPacket(const TaskPacket &from)
void MergeFrom(const TaskPacket &from)
static const TaskPacket * internal_default_instance()
boost::units::quantity< start_time_unit, google::protobuf::uint64 > start_time_with_units() const
friend void swap(TaskPacket &a, TaskPacket &b)
boost::units::make_scaled_unit< boost::units::unit< start_time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type start_time_unit
boost::units::make_scaled_unit< boost::units::unit< end_time_dimension, boost::units::si::system >, boost::units::scale< 10, boost::units::static_rational<-6 > > >::type end_time_unit
static const ClassData _class_data_
static const TaskPacket & default_instance()
void Swap(TaskPacket *other)
void UnsafeArenaSwap(TaskPacket *other)
void CopyFrom(const TaskPacket &from)
TaskPacket * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
void set_end_time_with_units(Quantity value_w_units)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
TaskPacket(TaskPacket &&from) noexcept
boost::units::time_dimension start_time_dimension
void set_start_time_with_units(Quantity value_w_units)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
TaskPacket & operator=(const TaskPacket &from)
PROTOBUF_NAMESPACE_OPEN ::jaiabot::protobuf::GeographicCoordinate * Arena::CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate >(Arena *)
::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector * Arena::CreateMaybeMessage<::jaiabot::protobuf::DivePacket_SubsurfaceCurrentVector >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::DivePacket_BottomType >()
::jaiabot::protobuf::DriftPacket * Arena::CreateMaybeMessage<::jaiabot::protobuf::DriftPacket >(Arena *)
::jaiabot::protobuf::DivePacket * Arena::CreateMaybeMessage<::jaiabot::protobuf::DivePacket >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::Command_CommandType >()
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fjaia_5fdccl_2eproto
::jaiabot::protobuf::BotStatus_Attitude * Arena::CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Attitude >(Arena *)
::jaiabot::protobuf::DriftPacket_EstimatedDrift * Arena::CreateMaybeMessage<::jaiabot::protobuf::DriftPacket_EstimatedDrift >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::BotStatus_BotType >()
::jaiabot::protobuf::BotStatus_Speed * Arena::CreateMaybeMessage<::jaiabot::protobuf::BotStatus_Speed >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::CommandForHub_HubCommandType >()
MissionTaskDefaultTypeInternal _MissionTask_default_instance_
constexpr Command_CommandType Command_CommandType_CommandType_MAX
bool BotStatus_BotType_IsValid(int value)
constexpr DivePacket_BottomType DivePacket_BottomType_BottomType_MAX
BotStatus_SpeedDefaultTypeInternal _BotStatus_Speed_default_instance_
bool CommandForHub_HubCommandType_IsValid(int value)
constexpr int CommandForHub_HubCommandType_HubCommandType_ARRAYSIZE
constexpr int DivePacket_BottomType_BottomType_ARRAYSIZE
constexpr BotStatus_BotType BotStatus_BotType_BotType_MAX
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CommandForHub_HubCommandType_descriptor()
MissionPlanDefaultTypeInternal _MissionPlan_default_instance_
bool Command_CommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Command_CommandType *value)
bool DivePacket_BottomType_IsValid(int value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DivePacket_BottomType_descriptor()
Hub2HubDataDefaultTypeInternal _Hub2HubData_default_instance_
bool BotStatus_BotType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BotStatus_BotType *value)
bool Error_IsValid(int value)
const std::string & BotStatus_BotType_Name(T enum_t_value)
constexpr int Command_CommandType_CommandType_ARRAYSIZE
DriftPacket_EstimatedDriftDefaultTypeInternal _DriftPacket_EstimatedDrift_default_instance_
constexpr CommandForHub_HubCommandType CommandForHub_HubCommandType_HubCommandType_MAX
bool DivePacket_BottomType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, DivePacket_BottomType *value)
DivePacket_SubsurfaceCurrentVectorDefaultTypeInternal _DivePacket_SubsurfaceCurrentVector_default_instance_
TaskPacketDefaultTypeInternal _TaskPacket_default_instance_
RemoteControlDefaultTypeInternal _RemoteControl_default_instance_
bool CommandForHub_HubCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CommandForHub_HubCommandType *value)
const std::string & Command_CommandType_Name(T enum_t_value)
ContactUpdateDefaultTypeInternal _ContactUpdate_default_instance_
const std::string & DivePacket_BottomType_Name(T enum_t_value)
@ CommandForHub_HubCommandType_RESTART_ALL_SERVICES
@ CommandForHub_HubCommandType_REBOOT_COMPUTER
@ CommandForHub_HubCommandType_SET_HUB_LOCATION
@ CommandForHub_HubCommandType_SCAN_FOR_BOTS
@ CommandForHub_HubCommandType_SHUTDOWN_COMPUTER
CommandDefaultTypeInternal _Command_default_instance_
DivePacket_MeasurementsDefaultTypeInternal _DivePacket_Measurements_default_instance_
constexpr int BotStatus_BotType_BotType_ARRAYSIZE
DivePacketDefaultTypeInternal _DivePacket_default_instance_
bool MissionTask_TaskType_IsValid(int value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * BotStatus_BotType_descriptor()
DriftPacketDefaultTypeInternal _DriftPacket_default_instance_
bool Link_IsValid(int value)
GeographicCoordinateDefaultTypeInternal _GeographicCoordinate_default_instance_
@ Command_CommandType_REMOTE_CONTROL_TASK
@ Command_CommandType_RETRY_DATA_OFFLOAD
@ Command_CommandType_REBOOT_COMPUTER
@ Command_CommandType_MISSION_PLAN_FRAGMENT
@ Command_CommandType_REMOTE_CONTROL_RESUME_MOVEMENT
@ Command_CommandType_SHUTDOWN_COMPUTER
@ Command_CommandType_DATA_OFFLOAD_COMPLETE
@ Command_CommandType_REMOTE_CONTROL_SETPOINT
@ Command_CommandType_DATA_OFFLOAD_FAILED
@ Command_CommandType_RESTART_ALL_SERVICES
constexpr DivePacket_BottomType DivePacket_BottomType_BottomType_MIN
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * Command_CommandType_descriptor()
const std::string & CommandForHub_HubCommandType_Name(T enum_t_value)
constexpr BotStatus_BotType BotStatus_BotType_BotType_MIN
BotStatusDefaultTypeInternal _BotStatus_default_instance_
bool Command_CommandType_IsValid(int value)
bool Warning_IsValid(int value)
CommandForHubDefaultTypeInternal _CommandForHub_default_instance_
bool IMUCalibrationState_IsValid(int value)
bool MissionState_IsValid(int value)
constexpr CommandForHub_HubCommandType CommandForHub_HubCommandType_HubCommandType_MIN
BotStatus_AttitudeDefaultTypeInternal _BotStatus_Attitude_default_instance_
constexpr Command_CommandType Command_CommandType_CommandType_MIN
::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_
::jaiabot::protobuf::MissionPlan * plan_
::jaiabot::protobuf::MissionTask * rc_task_
::jaiabot::protobuf::RemoteControl * rc_
::jaiabot::protobuf::TaskPacket * task_packet_
::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_