JaiaBot  1.12.0+18+g85da5f82
JaiaBot micro-AUV software
mission.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: jaiabot/messages/mission.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fmission_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fmission_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3012000
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 3012004 < 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_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
37 #include "dccl/option_extensions.pb.h"
38 #include "goby/middleware/protobuf/gpsd.pb.h"
40 #include <boost/units/quantity.hpp>
41 #include <boost/units/absolute.hpp>
42 #include <boost/units/dimensionless_type.hpp>
43 #include <boost/units/make_scaled_unit.hpp>
44 
45 #include <boost/units/systems/angle/degrees.hpp>
46 
47 #include <boost/units/systems/si.hpp>
48 // @@protoc_insertion_point(includes)
49 #include <google/protobuf/port_def.inc>
50 #define PROTOBUF_INTERNAL_EXPORT_jaiabot_2fmessages_2fmission_2eproto
51 PROTOBUF_NAMESPACE_OPEN
52 namespace internal {
53 class AnyMetadata;
54 } // namespace internal
55 PROTOBUF_NAMESPACE_CLOSE
56 
57 // Internal implementation detail -- do not use these members.
59  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
60  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
61  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
62  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
63  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[19]
64  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
65  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
66  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
67  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
68 };
69 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fmission_2eproto;
70 namespace jaiabot {
71 namespace protobuf {
72 class BottomDepthSafetyParams;
73 class BottomDepthSafetyParamsDefaultTypeInternal;
74 extern BottomDepthSafetyParamsDefaultTypeInternal _BottomDepthSafetyParams_default_instance_;
75 class IvPBehaviorReport;
76 class IvPBehaviorReportDefaultTypeInternal;
77 extern IvPBehaviorReportDefaultTypeInternal _IvPBehaviorReport_default_instance_;
78 class IvPBehaviorReport_TransitReport;
79 class IvPBehaviorReport_TransitReportDefaultTypeInternal;
80 extern IvPBehaviorReport_TransitReportDefaultTypeInternal _IvPBehaviorReport_TransitReport_default_instance_;
81 class IvPBehaviorUpdate;
82 class IvPBehaviorUpdateDefaultTypeInternal;
83 extern IvPBehaviorUpdateDefaultTypeInternal _IvPBehaviorUpdate_default_instance_;
84 class IvPBehaviorUpdate_ConstantHeadingUpdate;
85 class IvPBehaviorUpdate_ConstantHeadingUpdateDefaultTypeInternal;
86 extern IvPBehaviorUpdate_ConstantHeadingUpdateDefaultTypeInternal _IvPBehaviorUpdate_ConstantHeadingUpdate_default_instance_;
87 class IvPBehaviorUpdate_ConstantSpeedUpdate;
88 class IvPBehaviorUpdate_ConstantSpeedUpdateDefaultTypeInternal;
89 extern IvPBehaviorUpdate_ConstantSpeedUpdateDefaultTypeInternal _IvPBehaviorUpdate_ConstantSpeedUpdate_default_instance_;
90 class IvPBehaviorUpdate_StationkeepUpdate;
91 class IvPBehaviorUpdate_StationkeepUpdateDefaultTypeInternal;
92 extern IvPBehaviorUpdate_StationkeepUpdateDefaultTypeInternal _IvPBehaviorUpdate_StationkeepUpdate_default_instance_;
93 class IvPBehaviorUpdate_TransitUpdate;
94 class IvPBehaviorUpdate_TransitUpdateDefaultTypeInternal;
95 extern IvPBehaviorUpdate_TransitUpdateDefaultTypeInternal _IvPBehaviorUpdate_TransitUpdate_default_instance_;
96 class MissionPlan;
97 class MissionPlanDefaultTypeInternal;
98 extern MissionPlanDefaultTypeInternal _MissionPlan_default_instance_;
99 class MissionPlan_Goal;
100 class MissionPlan_GoalDefaultTypeInternal;
101 extern MissionPlan_GoalDefaultTypeInternal _MissionPlan_Goal_default_instance_;
102 class MissionPlan_Recovery;
103 class MissionPlan_RecoveryDefaultTypeInternal;
104 extern MissionPlan_RecoveryDefaultTypeInternal _MissionPlan_Recovery_default_instance_;
105 class MissionReport;
106 class MissionReportDefaultTypeInternal;
107 extern MissionReportDefaultTypeInternal _MissionReport_default_instance_;
108 class MissionTask;
109 class MissionTaskDefaultTypeInternal;
110 extern MissionTaskDefaultTypeInternal _MissionTask_default_instance_;
111 class MissionTask_ConstantHeadingParameters;
112 class MissionTask_ConstantHeadingParametersDefaultTypeInternal;
113 extern MissionTask_ConstantHeadingParametersDefaultTypeInternal _MissionTask_ConstantHeadingParameters_default_instance_;
114 class MissionTask_DiveParameters;
115 class MissionTask_DiveParametersDefaultTypeInternal;
116 extern MissionTask_DiveParametersDefaultTypeInternal _MissionTask_DiveParameters_default_instance_;
117 class MissionTask_DriftParameters;
118 class MissionTask_DriftParametersDefaultTypeInternal;
119 extern MissionTask_DriftParametersDefaultTypeInternal _MissionTask_DriftParameters_default_instance_;
120 class MissionTask_StationKeepParameters;
121 class MissionTask_StationKeepParametersDefaultTypeInternal;
122 extern MissionTask_StationKeepParametersDefaultTypeInternal _MissionTask_StationKeepParameters_default_instance_;
123 class MissionTpvMeetsGpsReq;
124 class MissionTpvMeetsGpsReqDefaultTypeInternal;
125 extern MissionTpvMeetsGpsReqDefaultTypeInternal _MissionTpvMeetsGpsReq_default_instance_;
126 class Speeds;
127 class SpeedsDefaultTypeInternal;
128 extern SpeedsDefaultTypeInternal _Speeds_default_instance_;
129 } // namespace protobuf
130 } // namespace jaiabot
131 PROTOBUF_NAMESPACE_OPEN
132 template<> ::jaiabot::protobuf::BottomDepthSafetyParams* Arena::CreateMaybeMessage<::jaiabot::protobuf::BottomDepthSafetyParams>(Arena*);
133 template<> ::jaiabot::protobuf::IvPBehaviorReport* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorReport>(Arena*);
134 template<> ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorReport_TransitReport>(Arena*);
135 template<> ::jaiabot::protobuf::IvPBehaviorUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorUpdate>(Arena*);
136 template<> ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate>(Arena*);
137 template<> ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate>(Arena*);
138 template<> ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate>(Arena*);
139 template<> ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* Arena::CreateMaybeMessage<::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate>(Arena*);
140 template<> ::jaiabot::protobuf::MissionPlan* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionPlan>(Arena*);
141 template<> ::jaiabot::protobuf::MissionPlan_Goal* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionPlan_Goal>(Arena*);
142 template<> ::jaiabot::protobuf::MissionPlan_Recovery* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionPlan_Recovery>(Arena*);
143 template<> ::jaiabot::protobuf::MissionReport* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionReport>(Arena*);
144 template<> ::jaiabot::protobuf::MissionTask* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTask>(Arena*);
145 template<> ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTask_ConstantHeadingParameters>(Arena*);
146 template<> ::jaiabot::protobuf::MissionTask_DiveParameters* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTask_DiveParameters>(Arena*);
147 template<> ::jaiabot::protobuf::MissionTask_DriftParameters* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTask_DriftParameters>(Arena*);
148 template<> ::jaiabot::protobuf::MissionTask_StationKeepParameters* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTask_StationKeepParameters>(Arena*);
149 template<> ::jaiabot::protobuf::MissionTpvMeetsGpsReq* Arena::CreateMaybeMessage<::jaiabot::protobuf::MissionTpvMeetsGpsReq>(Arena*);
150 template<> ::jaiabot::protobuf::Speeds* Arena::CreateMaybeMessage<::jaiabot::protobuf::Speeds>(Arena*);
151 PROTOBUF_NAMESPACE_CLOSE
152 namespace jaiabot {
153 namespace protobuf {
154 
161 };
166 
167 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionTask_TaskType_descriptor();
168 template<typename T>
169 inline const std::string& MissionTask_TaskType_Name(T enum_t_value) {
170  static_assert(::std::is_same<T, MissionTask_TaskType>::value ||
171  ::std::is_integral<T>::value,
172  "Incorrect type passed to function MissionTask_TaskType_Name.");
173  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
174  MissionTask_TaskType_descriptor(), enum_t_value);
175 }
177  const std::string& name, MissionTask_TaskType* value) {
178  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionTask_TaskType>(
179  MissionTask_TaskType_descriptor(), name, value);
180 }
184 };
189 
190 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionPlan_MissionStart_descriptor();
191 template<typename T>
192 inline const std::string& MissionPlan_MissionStart_Name(T enum_t_value) {
193  static_assert(::std::is_same<T, MissionPlan_MissionStart>::value ||
194  ::std::is_integral<T>::value,
195  "Incorrect type passed to function MissionPlan_MissionStart_Name.");
196  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
197  MissionPlan_MissionStart_descriptor(), enum_t_value);
198 }
200  const std::string& name, MissionPlan_MissionStart* value) {
201  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionPlan_MissionStart>(
202  MissionPlan_MissionStart_descriptor(), name, value);
203 }
207 };
212 
213 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionPlan_MovementType_descriptor();
214 template<typename T>
215 inline const std::string& MissionPlan_MovementType_Name(T enum_t_value) {
216  static_assert(::std::is_same<T, MissionPlan_MovementType>::value ||
217  ::std::is_integral<T>::value,
218  "Incorrect type passed to function MissionPlan_MovementType_Name.");
219  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
220  MissionPlan_MovementType_descriptor(), enum_t_value);
221 }
223  const std::string& name, MissionPlan_MovementType* value) {
224  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionPlan_MovementType>(
225  MissionPlan_MovementType_descriptor(), name, value);
226 }
227 enum MissionState : int {
263 };
264 bool MissionState_IsValid(int value);
268 
269 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionState_descriptor();
270 template<typename T>
271 inline const std::string& MissionState_Name(T enum_t_value) {
272  static_assert(::std::is_same<T, MissionState>::value ||
273  ::std::is_integral<T>::value,
274  "Incorrect type passed to function MissionState_Name.");
275  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
276  MissionState_descriptor(), enum_t_value);
277 }
278 inline bool MissionState_Parse(
279  const std::string& name, MissionState* value) {
280  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionState>(
281  MissionState_descriptor(), name, value);
282 }
283 // ===================================================================
284 
285 class Speeds PROTOBUF_FINAL :
286  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.Speeds) */ {
287  public:
288  inline Speeds() : Speeds(nullptr) {};
289  virtual ~Speeds();
290 
291  Speeds(const Speeds& from);
292  Speeds(Speeds&& from) noexcept
293  : Speeds() {
294  *this = ::std::move(from);
295  }
296 
297  inline Speeds& operator=(const Speeds& from) {
298  CopyFrom(from);
299  return *this;
300  }
301  inline Speeds& operator=(Speeds&& from) noexcept {
302  if (GetArena() == from.GetArena()) {
303  if (this != &from) InternalSwap(&from);
304  } else {
305  CopyFrom(from);
306  }
307  return *this;
308  }
309 
310  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
311  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
312  }
313  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
314  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
315  }
316 
317  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
318  return GetDescriptor();
319  }
320  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
321  return GetMetadataStatic().descriptor;
322  }
323  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
324  return GetMetadataStatic().reflection;
325  }
326  static const Speeds& default_instance();
327 
328  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
329  static inline const Speeds* internal_default_instance() {
330  return reinterpret_cast<const Speeds*>(
332  }
333  static constexpr int kIndexInFileMessages =
334  0;
335 
336  friend void swap(Speeds& a, Speeds& b) {
337  a.Swap(&b);
338  }
339  inline void Swap(Speeds* other) {
340  if (other == this) return;
341  if (GetArena() == other->GetArena()) {
342  InternalSwap(other);
343  } else {
344  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
345  }
346  }
347  void UnsafeArenaSwap(Speeds* other) {
348  if (other == this) return;
349  GOOGLE_DCHECK(GetArena() == other->GetArena());
350  InternalSwap(other);
351  }
352 
353  // implements Message ----------------------------------------------
354 
355  inline Speeds* New() const final {
356  return CreateMaybeMessage<Speeds>(nullptr);
357  }
358 
359  Speeds* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
360  return CreateMaybeMessage<Speeds>(arena);
361  }
362  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
363  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
364  void CopyFrom(const Speeds& from);
365  void MergeFrom(const Speeds& from);
366  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
367  bool IsInitialized() const final;
368 
369  size_t ByteSizeLong() const final;
370  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
371  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
372  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
373  int GetCachedSize() const final { return _cached_size_.Get(); }
374 
375  private:
376  inline void SharedCtor();
377  inline void SharedDtor();
378  void SetCachedSize(int size) const final;
379  void InternalSwap(Speeds* other);
380  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
381  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
382  return "jaiabot.protobuf.Speeds";
383  }
384  protected:
385  explicit Speeds(::PROTOBUF_NAMESPACE_ID::Arena* arena);
386  private:
387  static void ArenaDtor(void* object);
388  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
389  public:
390 
391  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
392  private:
393  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
394  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
395  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
396  }
397 
398  public:
399 
400  // nested types ----------------------------------------------------
401 
402  // accessors -------------------------------------------------------
403 
404  enum : int {
405  kTransitFieldNumber = 1,
406  kStationkeepOuterFieldNumber = 2,
407  };
408  // optional double transit = 1 [default = 2, (.dccl.field) = {
409  bool has_transit() const;
410  private:
411  bool _internal_has_transit() const;
412  public:
414  double transit() const;
415  void set_transit(double value);
416  private:
417  double _internal_transit() const;
418  void _internal_set_transit(double value);
419  public:
420 
421  // optional double stationkeep_outer = 2 [default = 0.5, (.dccl.field) = {
422  bool has_stationkeep_outer() const;
423  private:
424  bool _internal_has_stationkeep_outer() const;
425  public:
427  double stationkeep_outer() const;
428  void set_stationkeep_outer(double value);
429  private:
430  double _internal_stationkeep_outer() const;
431  void _internal_set_stationkeep_outer(double value);
432  public:
433 
434  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type transit_dimension;
435 
436  typedef boost::units::unit<transit_dimension,boost::units::si::system> transit_unit;
437 
438  template<typename Quantity >
439  void set_transit_with_units(Quantity value_w_units)
440  { set_transit(boost::units::quantity<transit_unit,double >(value_w_units).value() ); };
441 
442  template<typename Quantity >
443  Quantity transit_with_units() const
444  { return Quantity(transit() * transit_unit()); };
445 
446  boost::units::quantity< transit_unit,double > transit_with_units() const
447  { return transit_with_units<boost::units::quantity< transit_unit,double > >(); };
448 
449  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type stationkeep_outer_dimension;
450 
451  typedef boost::units::unit<stationkeep_outer_dimension,boost::units::si::system> stationkeep_outer_unit;
452 
453  template<typename Quantity >
454  void set_stationkeep_outer_with_units(Quantity value_w_units)
455  { set_stationkeep_outer(boost::units::quantity<stationkeep_outer_unit,double >(value_w_units).value() ); };
456 
457  template<typename Quantity >
459  { return Quantity(stationkeep_outer() * stationkeep_outer_unit()); };
460 
461  boost::units::quantity< stationkeep_outer_unit,double > stationkeep_outer_with_units() const
462  { return stationkeep_outer_with_units<boost::units::quantity< stationkeep_outer_unit,double > >(); };
463 
464  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.Speeds)
465  private:
466  class _Internal;
467 
468  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
469  typedef void InternalArenaConstructable_;
470  typedef void DestructorSkippable_;
471  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
472  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
473  double transit_;
474  double stationkeep_outer_;
475  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
476 };
477 // -------------------------------------------------------------------
478 
479 class BottomDepthSafetyParams PROTOBUF_FINAL :
480  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.BottomDepthSafetyParams) */ {
481  public:
482  inline BottomDepthSafetyParams() : BottomDepthSafetyParams(nullptr) {};
484 
485  BottomDepthSafetyParams(const BottomDepthSafetyParams& from);
486  BottomDepthSafetyParams(BottomDepthSafetyParams&& from) noexcept
487  : BottomDepthSafetyParams() {
488  *this = ::std::move(from);
489  }
490 
491  inline BottomDepthSafetyParams& operator=(const BottomDepthSafetyParams& from) {
492  CopyFrom(from);
493  return *this;
494  }
495  inline BottomDepthSafetyParams& operator=(BottomDepthSafetyParams&& from) noexcept {
496  if (GetArena() == from.GetArena()) {
497  if (this != &from) InternalSwap(&from);
498  } else {
499  CopyFrom(from);
500  }
501  return *this;
502  }
503 
504  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
505  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
506  }
507  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
508  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
509  }
510 
511  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
512  return GetDescriptor();
513  }
514  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
515  return GetMetadataStatic().descriptor;
516  }
517  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
518  return GetMetadataStatic().reflection;
519  }
520  static const BottomDepthSafetyParams& default_instance();
521 
522  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
523  static inline const BottomDepthSafetyParams* internal_default_instance() {
524  return reinterpret_cast<const BottomDepthSafetyParams*>(
526  }
527  static constexpr int kIndexInFileMessages =
528  1;
529 
530  friend void swap(BottomDepthSafetyParams& a, BottomDepthSafetyParams& b) {
531  a.Swap(&b);
532  }
533  inline void Swap(BottomDepthSafetyParams* other) {
534  if (other == this) return;
535  if (GetArena() == other->GetArena()) {
536  InternalSwap(other);
537  } else {
538  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
539  }
540  }
541  void UnsafeArenaSwap(BottomDepthSafetyParams* other) {
542  if (other == this) return;
543  GOOGLE_DCHECK(GetArena() == other->GetArena());
544  InternalSwap(other);
545  }
546 
547  // implements Message ----------------------------------------------
548 
549  inline BottomDepthSafetyParams* New() const final {
550  return CreateMaybeMessage<BottomDepthSafetyParams>(nullptr);
551  }
552 
553  BottomDepthSafetyParams* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
554  return CreateMaybeMessage<BottomDepthSafetyParams>(arena);
555  }
556  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
557  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
558  void CopyFrom(const BottomDepthSafetyParams& from);
559  void MergeFrom(const BottomDepthSafetyParams& from);
560  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
561  bool IsInitialized() const final;
562 
563  size_t ByteSizeLong() const final;
564  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
565  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
566  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
567  int GetCachedSize() const final { return _cached_size_.Get(); }
568 
569  private:
570  inline void SharedCtor();
571  inline void SharedDtor();
572  void SetCachedSize(int size) const final;
573  void InternalSwap(BottomDepthSafetyParams* other);
574  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
575  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
576  return "jaiabot.protobuf.BottomDepthSafetyParams";
577  }
578  protected:
579  explicit BottomDepthSafetyParams(::PROTOBUF_NAMESPACE_ID::Arena* arena);
580  private:
581  static void ArenaDtor(void* object);
582  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
583  public:
584 
585  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
586  private:
587  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
588  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
589  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
590  }
591 
592  public:
593 
594  // nested types ----------------------------------------------------
595 
596  // accessors -------------------------------------------------------
597 
598  enum : int {
599  kConstantHeadingFieldNumber = 1,
600  kConstantHeadingTimeFieldNumber = 2,
601  kConstantHeadingSpeedFieldNumber = 3,
602  kSafetyDepthFieldNumber = 4,
603  };
604  // required double constant_heading = 1 [default = 0, (.dccl.field) = {
605  bool has_constant_heading() const;
606  private:
607  bool _internal_has_constant_heading() const;
608  public:
610  double constant_heading() const;
611  void set_constant_heading(double value);
612  private:
613  double _internal_constant_heading() const;
614  void _internal_set_constant_heading(double value);
615  public:
616 
617  // required int32 constant_heading_time = 2 [default = 0, (.dccl.field) = {
619  private:
620  bool _internal_has_constant_heading_time() const;
621  public:
623  ::PROTOBUF_NAMESPACE_ID::int32 constant_heading_time() const;
624  void set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value);
625  private:
626  ::PROTOBUF_NAMESPACE_ID::int32 _internal_constant_heading_time() const;
627  void _internal_set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value);
628  public:
629 
630  // required double constant_heading_speed = 3 [default = 2, (.dccl.field) = {
632  private:
633  bool _internal_has_constant_heading_speed() const;
634  public:
636  double constant_heading_speed() const;
637  void set_constant_heading_speed(double value);
638  private:
639  double _internal_constant_heading_speed() const;
640  void _internal_set_constant_heading_speed(double value);
641  public:
642 
643  // required double safety_depth = 4 [default = -1, (.dccl.field) = {
644  bool has_safety_depth() const;
645  private:
646  bool _internal_has_safety_depth() const;
647  public:
649  double safety_depth() const;
650  void set_safety_depth(double value);
651  private:
652  double _internal_safety_depth() const;
653  void _internal_set_safety_depth(double value);
654  public:
655 
656  typedef boost::units::plane_angle_dimension constant_heading_dimension;
657 
658  typedef boost::units::unit<constant_heading_dimension,boost::units::degree::system> constant_heading_unit;
659 
660  template<typename Quantity >
661  void set_constant_heading_with_units(Quantity value_w_units)
662  { set_constant_heading(boost::units::quantity<constant_heading_unit,double >(value_w_units).value() ); };
663 
664  template<typename Quantity >
666  { return Quantity(constant_heading() * constant_heading_unit()); };
667 
668  boost::units::quantity< constant_heading_unit,double > constant_heading_with_units() const
669  { return constant_heading_with_units<boost::units::quantity< constant_heading_unit,double > >(); };
670 
671  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type constant_heading_time_dimension;
672 
673  typedef boost::units::unit<constant_heading_time_dimension,boost::units::si::system> constant_heading_time_unit;
674 
675  template<typename Quantity >
676  void set_constant_heading_time_with_units(Quantity value_w_units)
677  { set_constant_heading_time(boost::units::quantity<constant_heading_time_unit,google::protobuf::int32 >(value_w_units).value() ); };
678 
679  template<typename Quantity >
681  { return Quantity(constant_heading_time() * constant_heading_time_unit()); };
682 
683  boost::units::quantity< constant_heading_time_unit,google::protobuf::int32 > constant_heading_time_with_units() const
684  { return constant_heading_time_with_units<boost::units::quantity< constant_heading_time_unit,google::protobuf::int32 > >(); };
685 
686  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type constant_heading_speed_dimension;
687 
688  typedef boost::units::unit<constant_heading_speed_dimension,boost::units::si::system> constant_heading_speed_unit;
689 
690  template<typename Quantity >
691  void set_constant_heading_speed_with_units(Quantity value_w_units)
692  { set_constant_heading_speed(boost::units::quantity<constant_heading_speed_unit,double >(value_w_units).value() ); };
693 
694  template<typename Quantity >
696  { return Quantity(constant_heading_speed() * constant_heading_speed_unit()); };
697 
698  boost::units::quantity< constant_heading_speed_unit,double > constant_heading_speed_with_units() const
699  { return constant_heading_speed_with_units<boost::units::quantity< constant_heading_speed_unit,double > >(); };
700 
701  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type safety_depth_dimension;
702 
703  typedef boost::units::unit<safety_depth_dimension,boost::units::si::system> safety_depth_unit;
704 
705  template<typename Quantity >
706  void set_safety_depth_with_units(Quantity value_w_units)
707  { set_safety_depth(boost::units::quantity<safety_depth_unit,double >(value_w_units).value() ); };
708 
709  template<typename Quantity >
710  Quantity safety_depth_with_units() const
711  { return Quantity(safety_depth() * safety_depth_unit()); };
712 
713  boost::units::quantity< safety_depth_unit,double > safety_depth_with_units() const
714  { return safety_depth_with_units<boost::units::quantity< safety_depth_unit,double > >(); };
715 
716  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.BottomDepthSafetyParams)
717  private:
718  class _Internal;
719 
720  // helper for ByteSizeLong()
721  size_t RequiredFieldsByteSizeFallback() const;
722 
723  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
724  typedef void InternalArenaConstructable_;
725  typedef void DestructorSkippable_;
726  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
727  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
728  double constant_heading_;
729  ::PROTOBUF_NAMESPACE_ID::int32 constant_heading_time_;
730  double constant_heading_speed_;
731  double safety_depth_;
732  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
733 };
734 // -------------------------------------------------------------------
735 
736 class MissionReport PROTOBUF_FINAL :
737  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionReport) */ {
738  public:
739  inline MissionReport() : MissionReport(nullptr) {};
740  virtual ~MissionReport();
741 
742  MissionReport(const MissionReport& from);
743  MissionReport(MissionReport&& from) noexcept
744  : MissionReport() {
745  *this = ::std::move(from);
746  }
747 
748  inline MissionReport& operator=(const MissionReport& from) {
749  CopyFrom(from);
750  return *this;
751  }
752  inline MissionReport& operator=(MissionReport&& from) noexcept {
753  if (GetArena() == from.GetArena()) {
754  if (this != &from) InternalSwap(&from);
755  } else {
756  CopyFrom(from);
757  }
758  return *this;
759  }
760 
761  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
762  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
763  }
764  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
765  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
766  }
767 
768  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
769  return GetDescriptor();
770  }
771  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
772  return GetMetadataStatic().descriptor;
773  }
774  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
775  return GetMetadataStatic().reflection;
776  }
777  static const MissionReport& default_instance();
778 
779  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
780  static inline const MissionReport* internal_default_instance() {
781  return reinterpret_cast<const MissionReport*>(
783  }
784  static constexpr int kIndexInFileMessages =
785  2;
786 
787  friend void swap(MissionReport& a, MissionReport& b) {
788  a.Swap(&b);
789  }
790  inline void Swap(MissionReport* other) {
791  if (other == this) return;
792  if (GetArena() == other->GetArena()) {
793  InternalSwap(other);
794  } else {
795  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
796  }
797  }
798  void UnsafeArenaSwap(MissionReport* other) {
799  if (other == this) return;
800  GOOGLE_DCHECK(GetArena() == other->GetArena());
801  InternalSwap(other);
802  }
803 
804  // implements Message ----------------------------------------------
805 
806  inline MissionReport* New() const final {
807  return CreateMaybeMessage<MissionReport>(nullptr);
808  }
809 
810  MissionReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
811  return CreateMaybeMessage<MissionReport>(arena);
812  }
813  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
814  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
815  void CopyFrom(const MissionReport& from);
816  void MergeFrom(const MissionReport& from);
817  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
818  bool IsInitialized() const final;
819 
820  size_t ByteSizeLong() const final;
821  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
822  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
823  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
824  int GetCachedSize() const final { return _cached_size_.Get(); }
825 
826  private:
827  inline void SharedCtor();
828  inline void SharedDtor();
829  void SetCachedSize(int size) const final;
830  void InternalSwap(MissionReport* other);
831  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
832  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
833  return "jaiabot.protobuf.MissionReport";
834  }
835  protected:
836  explicit MissionReport(::PROTOBUF_NAMESPACE_ID::Arena* arena);
837  private:
838  static void ArenaDtor(void* object);
839  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
840  public:
841 
842  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
843  private:
844  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
845  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
846  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
847  }
848 
849  public:
850 
851  // nested types ----------------------------------------------------
852 
853  // accessors -------------------------------------------------------
854 
855  enum : int {
856  kActiveGoalLocationFieldNumber = 12,
857  kRepeatIndexFieldNumber = 16,
858  kStateFieldNumber = 10,
859  kActiveGoalFieldNumber = 11,
860  kDistanceToActiveGoalFieldNumber = 13,
861  kActiveGoalTimeoutFieldNumber = 14,
862  kDataOffloadPercentageFieldNumber = 15,
863  };
864  // optional .jaiabot.protobuf.GeographicCoordinate active_goal_location = 12;
866  private:
867  bool _internal_has_active_goal_location() const;
868  public:
870  const ::jaiabot::protobuf::GeographicCoordinate& active_goal_location() const;
871  ::jaiabot::protobuf::GeographicCoordinate* release_active_goal_location();
872  ::jaiabot::protobuf::GeographicCoordinate* mutable_active_goal_location();
873  void set_allocated_active_goal_location(::jaiabot::protobuf::GeographicCoordinate* active_goal_location);
874  private:
875  const ::jaiabot::protobuf::GeographicCoordinate& _internal_active_goal_location() const;
876  ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_active_goal_location();
877  public:
879  ::jaiabot::protobuf::GeographicCoordinate* active_goal_location);
880  ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_active_goal_location();
881 
882  // optional int32 repeat_index = 16 [(.dccl.field) = {
883  bool has_repeat_index() const;
884  private:
885  bool _internal_has_repeat_index() const;
886  public:
888  ::PROTOBUF_NAMESPACE_ID::int32 repeat_index() const;
889  void set_repeat_index(::PROTOBUF_NAMESPACE_ID::int32 value);
890  private:
891  ::PROTOBUF_NAMESPACE_ID::int32 _internal_repeat_index() const;
892  void _internal_set_repeat_index(::PROTOBUF_NAMESPACE_ID::int32 value);
893  public:
894 
895  // required .jaiabot.protobuf.MissionState state = 10;
896  bool has_state() const;
897  private:
898  bool _internal_has_state() const;
899  public:
900  void clear_state();
903  private:
904  ::jaiabot::protobuf::MissionState _internal_state() const;
905  void _internal_set_state(::jaiabot::protobuf::MissionState value);
906  public:
907 
908  // optional int32 active_goal = 11;
909  bool has_active_goal() const;
910  private:
911  bool _internal_has_active_goal() const;
912  public:
914  ::PROTOBUF_NAMESPACE_ID::int32 active_goal() const;
915  void set_active_goal(::PROTOBUF_NAMESPACE_ID::int32 value);
916  private:
917  ::PROTOBUF_NAMESPACE_ID::int32 _internal_active_goal() const;
918  void _internal_set_active_goal(::PROTOBUF_NAMESPACE_ID::int32 value);
919  public:
920 
921  // optional double distance_to_active_goal = 13 [(.dccl.field) = {
923  private:
924  bool _internal_has_distance_to_active_goal() const;
925  public:
927  double distance_to_active_goal() const;
928  void set_distance_to_active_goal(double value);
929  private:
930  double _internal_distance_to_active_goal() const;
931  void _internal_set_distance_to_active_goal(double value);
932  public:
933 
934  // optional uint32 active_goal_timeout = 14 [(.dccl.field) = {
936  private:
937  bool _internal_has_active_goal_timeout() const;
938  public:
940  ::PROTOBUF_NAMESPACE_ID::uint32 active_goal_timeout() const;
941  void set_active_goal_timeout(::PROTOBUF_NAMESPACE_ID::uint32 value);
942  private:
943  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_active_goal_timeout() const;
944  void _internal_set_active_goal_timeout(::PROTOBUF_NAMESPACE_ID::uint32 value);
945  public:
946 
947  // optional int32 data_offload_percentage = 15 [(.dccl.field) = {
949  private:
950  bool _internal_has_data_offload_percentage() const;
951  public:
953  ::PROTOBUF_NAMESPACE_ID::int32 data_offload_percentage() const;
954  void set_data_offload_percentage(::PROTOBUF_NAMESPACE_ID::int32 value);
955  private:
956  ::PROTOBUF_NAMESPACE_ID::int32 _internal_data_offload_percentage() const;
957  void _internal_set_data_offload_percentage(::PROTOBUF_NAMESPACE_ID::int32 value);
958  public:
959 
960  typedef boost::units::length_dimension distance_to_active_goal_dimension;
961 
962  typedef boost::units::unit<distance_to_active_goal_dimension,boost::units::si::system> distance_to_active_goal_unit;
963 
964  template<typename Quantity >
965  void set_distance_to_active_goal_with_units(Quantity value_w_units)
966  { set_distance_to_active_goal(boost::units::quantity<distance_to_active_goal_unit,double >(value_w_units).value() ); };
967 
968  template<typename Quantity >
970  { return Quantity(distance_to_active_goal() * distance_to_active_goal_unit()); };
971 
972  boost::units::quantity< distance_to_active_goal_unit,double > distance_to_active_goal_with_units() const
973  { return distance_to_active_goal_with_units<boost::units::quantity< distance_to_active_goal_unit,double > >(); };
974 
975  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type active_goal_timeout_dimension;
976 
977  typedef boost::units::unit<active_goal_timeout_dimension,boost::units::si::system> active_goal_timeout_unit;
978 
979  template<typename Quantity >
980  void set_active_goal_timeout_with_units(Quantity value_w_units)
981  { set_active_goal_timeout(boost::units::quantity<active_goal_timeout_unit,google::protobuf::uint32 >(value_w_units).value() ); };
982 
983  template<typename Quantity >
985  { return Quantity(active_goal_timeout() * active_goal_timeout_unit()); };
986 
987  boost::units::quantity< active_goal_timeout_unit,google::protobuf::uint32 > active_goal_timeout_with_units() const
988  { return active_goal_timeout_with_units<boost::units::quantity< active_goal_timeout_unit,google::protobuf::uint32 > >(); };
989 
990  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionReport)
991  private:
992  class _Internal;
993 
994  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
995  typedef void InternalArenaConstructable_;
996  typedef void DestructorSkippable_;
997  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
998  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
999  ::jaiabot::protobuf::GeographicCoordinate* active_goal_location_;
1000  ::PROTOBUF_NAMESPACE_ID::int32 repeat_index_;
1001  int state_;
1002  ::PROTOBUF_NAMESPACE_ID::int32 active_goal_;
1003  double distance_to_active_goal_;
1004  ::PROTOBUF_NAMESPACE_ID::uint32 active_goal_timeout_;
1005  ::PROTOBUF_NAMESPACE_ID::int32 data_offload_percentage_;
1006  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
1007 };
1008 // -------------------------------------------------------------------
1009 
1010 class MissionTask_DiveParameters PROTOBUF_FINAL :
1011  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTask.DiveParameters) */ {
1012  public:
1013  inline MissionTask_DiveParameters() : MissionTask_DiveParameters(nullptr) {};
1015 
1016  MissionTask_DiveParameters(const MissionTask_DiveParameters& from);
1017  MissionTask_DiveParameters(MissionTask_DiveParameters&& from) noexcept
1018  : MissionTask_DiveParameters() {
1019  *this = ::std::move(from);
1020  }
1021 
1022  inline MissionTask_DiveParameters& operator=(const MissionTask_DiveParameters& from) {
1023  CopyFrom(from);
1024  return *this;
1025  }
1026  inline MissionTask_DiveParameters& operator=(MissionTask_DiveParameters&& from) noexcept {
1027  if (GetArena() == from.GetArena()) {
1028  if (this != &from) InternalSwap(&from);
1029  } else {
1030  CopyFrom(from);
1031  }
1032  return *this;
1033  }
1034 
1035  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1036  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1037  }
1038  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1039  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1040  }
1041 
1042  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1043  return GetDescriptor();
1044  }
1045  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1046  return GetMetadataStatic().descriptor;
1047  }
1048  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1049  return GetMetadataStatic().reflection;
1050  }
1051  static const MissionTask_DiveParameters& default_instance();
1052 
1053  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1054  static inline const MissionTask_DiveParameters* internal_default_instance() {
1055  return reinterpret_cast<const MissionTask_DiveParameters*>(
1057  }
1058  static constexpr int kIndexInFileMessages =
1059  3;
1060 
1061  friend void swap(MissionTask_DiveParameters& a, MissionTask_DiveParameters& b) {
1062  a.Swap(&b);
1063  }
1064  inline void Swap(MissionTask_DiveParameters* other) {
1065  if (other == this) return;
1066  if (GetArena() == other->GetArena()) {
1067  InternalSwap(other);
1068  } else {
1069  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1070  }
1071  }
1072  void UnsafeArenaSwap(MissionTask_DiveParameters* other) {
1073  if (other == this) return;
1074  GOOGLE_DCHECK(GetArena() == other->GetArena());
1075  InternalSwap(other);
1076  }
1077 
1078  // implements Message ----------------------------------------------
1079 
1080  inline MissionTask_DiveParameters* New() const final {
1081  return CreateMaybeMessage<MissionTask_DiveParameters>(nullptr);
1082  }
1083 
1084  MissionTask_DiveParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1085  return CreateMaybeMessage<MissionTask_DiveParameters>(arena);
1086  }
1087  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1088  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1089  void CopyFrom(const MissionTask_DiveParameters& from);
1090  void MergeFrom(const MissionTask_DiveParameters& from);
1091  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1092  bool IsInitialized() const final;
1093 
1094  size_t ByteSizeLong() const final;
1095  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1096  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1097  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1098  int GetCachedSize() const final { return _cached_size_.Get(); }
1099 
1100  private:
1101  inline void SharedCtor();
1102  inline void SharedDtor();
1103  void SetCachedSize(int size) const final;
1104  void InternalSwap(MissionTask_DiveParameters* other);
1105  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1106  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1107  return "jaiabot.protobuf.MissionTask.DiveParameters";
1108  }
1109  protected:
1110  explicit MissionTask_DiveParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1111  private:
1112  static void ArenaDtor(void* object);
1113  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1114  public:
1115 
1116  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1117  private:
1118  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1119  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
1120  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
1121  }
1122 
1123  public:
1124 
1125  // nested types ----------------------------------------------------
1126 
1127  // accessors -------------------------------------------------------
1128 
1129  enum : int {
1130  kHoldTimeFieldNumber = 3,
1131  kBottomDiveFieldNumber = 4,
1132  kMaxDepthFieldNumber = 1,
1133  kDepthIntervalFieldNumber = 2,
1134  };
1135  // optional double hold_time = 3 [default = 0, (.dccl.field) = {
1136  bool has_hold_time() const;
1137  private:
1138  bool _internal_has_hold_time() const;
1139  public:
1141  double hold_time() const;
1142  void set_hold_time(double value);
1143  private:
1144  double _internal_hold_time() const;
1145  void _internal_set_hold_time(double value);
1146  public:
1147 
1148  // optional bool bottom_dive = 4 [default = false, (.jaia.field) = {
1149  bool has_bottom_dive() const;
1150  private:
1151  bool _internal_has_bottom_dive() const;
1152  public:
1154  bool bottom_dive() const;
1155  void set_bottom_dive(bool value);
1156  private:
1157  bool _internal_bottom_dive() const;
1158  void _internal_set_bottom_dive(bool value);
1159  public:
1160 
1161  // optional double max_depth = 1 [default = 60, (.dccl.field) = {
1162  bool has_max_depth() const;
1163  private:
1164  bool _internal_has_max_depth() const;
1165  public:
1167  double max_depth() const;
1168  void set_max_depth(double value);
1169  private:
1170  double _internal_max_depth() const;
1171  void _internal_set_max_depth(double value);
1172  public:
1173 
1174  // optional double depth_interval = 2 [default = inf, (.dccl.field) = {
1175  bool has_depth_interval() const;
1176  private:
1177  bool _internal_has_depth_interval() const;
1178  public:
1180  double depth_interval() const;
1181  void set_depth_interval(double value);
1182  private:
1183  double _internal_depth_interval() const;
1184  void _internal_set_depth_interval(double value);
1185  public:
1186 
1187  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type max_depth_dimension;
1188 
1189  typedef boost::units::unit<max_depth_dimension,boost::units::si::system> max_depth_unit;
1190 
1191  template<typename Quantity >
1192  void set_max_depth_with_units(Quantity value_w_units)
1193  { set_max_depth(boost::units::quantity<max_depth_unit,double >(value_w_units).value() ); };
1194 
1195  template<typename Quantity >
1196  Quantity max_depth_with_units() const
1197  { return Quantity(max_depth() * max_depth_unit()); };
1198 
1199  boost::units::quantity< max_depth_unit,double > max_depth_with_units() const
1200  { return max_depth_with_units<boost::units::quantity< max_depth_unit,double > >(); };
1201 
1202  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type depth_interval_dimension;
1203 
1204  typedef boost::units::unit<depth_interval_dimension,boost::units::si::system> depth_interval_unit;
1205 
1206  template<typename Quantity >
1207  void set_depth_interval_with_units(Quantity value_w_units)
1208  { set_depth_interval(boost::units::quantity<depth_interval_unit,double >(value_w_units).value() ); };
1209 
1210  template<typename Quantity >
1211  Quantity depth_interval_with_units() const
1212  { return Quantity(depth_interval() * depth_interval_unit()); };
1213 
1214  boost::units::quantity< depth_interval_unit,double > depth_interval_with_units() const
1215  { return depth_interval_with_units<boost::units::quantity< depth_interval_unit,double > >(); };
1216 
1217  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type hold_time_dimension;
1218 
1219  typedef boost::units::unit<hold_time_dimension,boost::units::si::system> hold_time_unit;
1220 
1221  template<typename Quantity >
1222  void set_hold_time_with_units(Quantity value_w_units)
1223  { set_hold_time(boost::units::quantity<hold_time_unit,double >(value_w_units).value() ); };
1224 
1225  template<typename Quantity >
1226  Quantity hold_time_with_units() const
1227  { return Quantity(hold_time() * hold_time_unit()); };
1228 
1229  boost::units::quantity< hold_time_unit,double > hold_time_with_units() const
1230  { return hold_time_with_units<boost::units::quantity< hold_time_unit,double > >(); };
1231 
1232  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTask.DiveParameters)
1233  private:
1234  class _Internal;
1235 
1236  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1237  typedef void InternalArenaConstructable_;
1238  typedef void DestructorSkippable_;
1239  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1240  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1241  double hold_time_;
1242  bool bottom_dive_;
1243  double max_depth_;
1244  double depth_interval_;
1245  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
1246 };
1247 // -------------------------------------------------------------------
1248 
1249 class MissionTask_DriftParameters PROTOBUF_FINAL :
1250  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTask.DriftParameters) */ {
1251  public:
1252  inline MissionTask_DriftParameters() : MissionTask_DriftParameters(nullptr) {};
1254 
1255  MissionTask_DriftParameters(const MissionTask_DriftParameters& from);
1256  MissionTask_DriftParameters(MissionTask_DriftParameters&& from) noexcept
1257  : MissionTask_DriftParameters() {
1258  *this = ::std::move(from);
1259  }
1260 
1261  inline MissionTask_DriftParameters& operator=(const MissionTask_DriftParameters& from) {
1262  CopyFrom(from);
1263  return *this;
1264  }
1265  inline MissionTask_DriftParameters& operator=(MissionTask_DriftParameters&& from) noexcept {
1266  if (GetArena() == from.GetArena()) {
1267  if (this != &from) InternalSwap(&from);
1268  } else {
1269  CopyFrom(from);
1270  }
1271  return *this;
1272  }
1273 
1274  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1275  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1276  }
1277  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1278  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1279  }
1280 
1281  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1282  return GetDescriptor();
1283  }
1284  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1285  return GetMetadataStatic().descriptor;
1286  }
1287  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1288  return GetMetadataStatic().reflection;
1289  }
1290  static const MissionTask_DriftParameters& default_instance();
1291 
1292  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1293  static inline const MissionTask_DriftParameters* internal_default_instance() {
1294  return reinterpret_cast<const MissionTask_DriftParameters*>(
1296  }
1297  static constexpr int kIndexInFileMessages =
1298  4;
1299 
1300  friend void swap(MissionTask_DriftParameters& a, MissionTask_DriftParameters& b) {
1301  a.Swap(&b);
1302  }
1303  inline void Swap(MissionTask_DriftParameters* other) {
1304  if (other == this) return;
1305  if (GetArena() == other->GetArena()) {
1306  InternalSwap(other);
1307  } else {
1308  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1309  }
1310  }
1311  void UnsafeArenaSwap(MissionTask_DriftParameters* other) {
1312  if (other == this) return;
1313  GOOGLE_DCHECK(GetArena() == other->GetArena());
1314  InternalSwap(other);
1315  }
1316 
1317  // implements Message ----------------------------------------------
1318 
1319  inline MissionTask_DriftParameters* New() const final {
1320  return CreateMaybeMessage<MissionTask_DriftParameters>(nullptr);
1321  }
1322 
1323  MissionTask_DriftParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1324  return CreateMaybeMessage<MissionTask_DriftParameters>(arena);
1325  }
1326  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1327  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1328  void CopyFrom(const MissionTask_DriftParameters& from);
1329  void MergeFrom(const MissionTask_DriftParameters& from);
1330  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1331  bool IsInitialized() const final;
1332 
1333  size_t ByteSizeLong() const final;
1334  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1335  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1336  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1337  int GetCachedSize() const final { return _cached_size_.Get(); }
1338 
1339  private:
1340  inline void SharedCtor();
1341  inline void SharedDtor();
1342  void SetCachedSize(int size) const final;
1343  void InternalSwap(MissionTask_DriftParameters* other);
1344  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1345  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1346  return "jaiabot.protobuf.MissionTask.DriftParameters";
1347  }
1348  protected:
1349  explicit MissionTask_DriftParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1350  private:
1351  static void ArenaDtor(void* object);
1352  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1353  public:
1354 
1355  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1356  private:
1357  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1358  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
1359  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
1360  }
1361 
1362  public:
1363 
1364  // nested types ----------------------------------------------------
1365 
1366  // accessors -------------------------------------------------------
1367 
1368  enum : int {
1369  kDriftTimeFieldNumber = 3,
1370  };
1371  // optional int32 drift_time = 3 [default = 0, (.dccl.field) = {
1372  bool has_drift_time() const;
1373  private:
1374  bool _internal_has_drift_time() const;
1375  public:
1377  ::PROTOBUF_NAMESPACE_ID::int32 drift_time() const;
1378  void set_drift_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1379  private:
1380  ::PROTOBUF_NAMESPACE_ID::int32 _internal_drift_time() const;
1381  void _internal_set_drift_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1382  public:
1383 
1384  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type drift_time_dimension;
1385 
1386  typedef boost::units::unit<drift_time_dimension,boost::units::si::system> drift_time_unit;
1387 
1388  template<typename Quantity >
1389  void set_drift_time_with_units(Quantity value_w_units)
1390  { set_drift_time(boost::units::quantity<drift_time_unit,google::protobuf::int32 >(value_w_units).value() ); };
1391 
1392  template<typename Quantity >
1393  Quantity drift_time_with_units() const
1394  { return Quantity(drift_time() * drift_time_unit()); };
1395 
1396  boost::units::quantity< drift_time_unit,google::protobuf::int32 > drift_time_with_units() const
1397  { return drift_time_with_units<boost::units::quantity< drift_time_unit,google::protobuf::int32 > >(); };
1398 
1399  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTask.DriftParameters)
1400  private:
1401  class _Internal;
1402 
1403  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1404  typedef void InternalArenaConstructable_;
1405  typedef void DestructorSkippable_;
1406  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1407  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1408  ::PROTOBUF_NAMESPACE_ID::int32 drift_time_;
1409  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
1410 };
1411 // -------------------------------------------------------------------
1412 
1413 class MissionTask_ConstantHeadingParameters PROTOBUF_FINAL :
1414  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTask.ConstantHeadingParameters) */ {
1415  public:
1416  inline MissionTask_ConstantHeadingParameters() : MissionTask_ConstantHeadingParameters(nullptr) {};
1418 
1419  MissionTask_ConstantHeadingParameters(const MissionTask_ConstantHeadingParameters& from);
1420  MissionTask_ConstantHeadingParameters(MissionTask_ConstantHeadingParameters&& from) noexcept
1421  : MissionTask_ConstantHeadingParameters() {
1422  *this = ::std::move(from);
1423  }
1424 
1425  inline MissionTask_ConstantHeadingParameters& operator=(const MissionTask_ConstantHeadingParameters& from) {
1426  CopyFrom(from);
1427  return *this;
1428  }
1429  inline MissionTask_ConstantHeadingParameters& operator=(MissionTask_ConstantHeadingParameters&& from) noexcept {
1430  if (GetArena() == from.GetArena()) {
1431  if (this != &from) InternalSwap(&from);
1432  } else {
1433  CopyFrom(from);
1434  }
1435  return *this;
1436  }
1437 
1438  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1439  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1440  }
1441  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1442  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1443  }
1444 
1445  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1446  return GetDescriptor();
1447  }
1448  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1449  return GetMetadataStatic().descriptor;
1450  }
1451  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1452  return GetMetadataStatic().reflection;
1453  }
1454  static const MissionTask_ConstantHeadingParameters& default_instance();
1455 
1456  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1457  static inline const MissionTask_ConstantHeadingParameters* internal_default_instance() {
1458  return reinterpret_cast<const MissionTask_ConstantHeadingParameters*>(
1460  }
1461  static constexpr int kIndexInFileMessages =
1462  5;
1463 
1464  friend void swap(MissionTask_ConstantHeadingParameters& a, MissionTask_ConstantHeadingParameters& b) {
1465  a.Swap(&b);
1466  }
1467  inline void Swap(MissionTask_ConstantHeadingParameters* other) {
1468  if (other == this) return;
1469  if (GetArena() == other->GetArena()) {
1470  InternalSwap(other);
1471  } else {
1472  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1473  }
1474  }
1475  void UnsafeArenaSwap(MissionTask_ConstantHeadingParameters* other) {
1476  if (other == this) return;
1477  GOOGLE_DCHECK(GetArena() == other->GetArena());
1478  InternalSwap(other);
1479  }
1480 
1481  // implements Message ----------------------------------------------
1482 
1483  inline MissionTask_ConstantHeadingParameters* New() const final {
1484  return CreateMaybeMessage<MissionTask_ConstantHeadingParameters>(nullptr);
1485  }
1486 
1487  MissionTask_ConstantHeadingParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1488  return CreateMaybeMessage<MissionTask_ConstantHeadingParameters>(arena);
1489  }
1490  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1491  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1492  void CopyFrom(const MissionTask_ConstantHeadingParameters& from);
1493  void MergeFrom(const MissionTask_ConstantHeadingParameters& from);
1494  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1495  bool IsInitialized() const final;
1496 
1497  size_t ByteSizeLong() const final;
1498  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1499  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1500  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1501  int GetCachedSize() const final { return _cached_size_.Get(); }
1502 
1503  private:
1504  inline void SharedCtor();
1505  inline void SharedDtor();
1506  void SetCachedSize(int size) const final;
1507  void InternalSwap(MissionTask_ConstantHeadingParameters* other);
1508  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1509  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1510  return "jaiabot.protobuf.MissionTask.ConstantHeadingParameters";
1511  }
1512  protected:
1513  explicit MissionTask_ConstantHeadingParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1514  private:
1515  static void ArenaDtor(void* object);
1516  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1517  public:
1518 
1519  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1520  private:
1521  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1522  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
1523  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
1524  }
1525 
1526  public:
1527 
1528  // nested types ----------------------------------------------------
1529 
1530  // accessors -------------------------------------------------------
1531 
1532  enum : int {
1533  kConstantHeadingFieldNumber = 1,
1534  kConstantHeadingTimeFieldNumber = 2,
1535  kConstantHeadingSpeedFieldNumber = 3,
1536  };
1537  // optional double constant_heading = 1 [(.dccl.field) = {
1538  bool has_constant_heading() const;
1539  private:
1540  bool _internal_has_constant_heading() const;
1541  public:
1543  double constant_heading() const;
1544  void set_constant_heading(double value);
1545  private:
1546  double _internal_constant_heading() const;
1547  void _internal_set_constant_heading(double value);
1548  public:
1549 
1550  // optional int32 constant_heading_time = 2 [default = 0, (.dccl.field) = {
1552  private:
1553  bool _internal_has_constant_heading_time() const;
1554  public:
1556  ::PROTOBUF_NAMESPACE_ID::int32 constant_heading_time() const;
1557  void set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1558  private:
1559  ::PROTOBUF_NAMESPACE_ID::int32 _internal_constant_heading_time() const;
1560  void _internal_set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1561  public:
1562 
1563  // optional double constant_heading_speed = 3 [default = 2, (.dccl.field) = {
1565  private:
1566  bool _internal_has_constant_heading_speed() const;
1567  public:
1569  double constant_heading_speed() const;
1570  void set_constant_heading_speed(double value);
1571  private:
1572  double _internal_constant_heading_speed() const;
1573  void _internal_set_constant_heading_speed(double value);
1574  public:
1575 
1576  typedef boost::units::plane_angle_dimension constant_heading_dimension;
1577 
1578  typedef boost::units::unit<constant_heading_dimension,boost::units::degree::system> constant_heading_unit;
1579 
1580  template<typename Quantity >
1581  void set_constant_heading_with_units(Quantity value_w_units)
1582  { set_constant_heading(boost::units::quantity<constant_heading_unit,double >(value_w_units).value() ); };
1583 
1584  template<typename Quantity >
1586  { return Quantity(constant_heading() * constant_heading_unit()); };
1587 
1588  boost::units::quantity< constant_heading_unit,double > constant_heading_with_units() const
1589  { return constant_heading_with_units<boost::units::quantity< constant_heading_unit,double > >(); };
1590 
1591  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type constant_heading_time_dimension;
1592 
1593  typedef boost::units::unit<constant_heading_time_dimension,boost::units::si::system> constant_heading_time_unit;
1594 
1595  template<typename Quantity >
1596  void set_constant_heading_time_with_units(Quantity value_w_units)
1597  { set_constant_heading_time(boost::units::quantity<constant_heading_time_unit,google::protobuf::int32 >(value_w_units).value() ); };
1598 
1599  template<typename Quantity >
1601  { return Quantity(constant_heading_time() * constant_heading_time_unit()); };
1602 
1603  boost::units::quantity< constant_heading_time_unit,google::protobuf::int32 > constant_heading_time_with_units() const
1604  { return constant_heading_time_with_units<boost::units::quantity< constant_heading_time_unit,google::protobuf::int32 > >(); };
1605 
1606  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type constant_heading_speed_dimension;
1607 
1608  typedef boost::units::unit<constant_heading_speed_dimension,boost::units::si::system> constant_heading_speed_unit;
1609 
1610  template<typename Quantity >
1611  void set_constant_heading_speed_with_units(Quantity value_w_units)
1612  { set_constant_heading_speed(boost::units::quantity<constant_heading_speed_unit,double >(value_w_units).value() ); };
1613 
1614  template<typename Quantity >
1616  { return Quantity(constant_heading_speed() * constant_heading_speed_unit()); };
1617 
1618  boost::units::quantity< constant_heading_speed_unit,double > constant_heading_speed_with_units() const
1619  { return constant_heading_speed_with_units<boost::units::quantity< constant_heading_speed_unit,double > >(); };
1620 
1621  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTask.ConstantHeadingParameters)
1622  private:
1623  class _Internal;
1624 
1625  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1626  typedef void InternalArenaConstructable_;
1627  typedef void DestructorSkippable_;
1628  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1629  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1630  double constant_heading_;
1631  ::PROTOBUF_NAMESPACE_ID::int32 constant_heading_time_;
1632  double constant_heading_speed_;
1633  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
1634 };
1635 // -------------------------------------------------------------------
1636 
1637 class MissionTask_StationKeepParameters PROTOBUF_FINAL :
1638  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTask.StationKeepParameters) */ {
1639  public:
1640  inline MissionTask_StationKeepParameters() : MissionTask_StationKeepParameters(nullptr) {};
1642 
1643  MissionTask_StationKeepParameters(const MissionTask_StationKeepParameters& from);
1644  MissionTask_StationKeepParameters(MissionTask_StationKeepParameters&& from) noexcept
1645  : MissionTask_StationKeepParameters() {
1646  *this = ::std::move(from);
1647  }
1648 
1649  inline MissionTask_StationKeepParameters& operator=(const MissionTask_StationKeepParameters& from) {
1650  CopyFrom(from);
1651  return *this;
1652  }
1653  inline MissionTask_StationKeepParameters& operator=(MissionTask_StationKeepParameters&& from) noexcept {
1654  if (GetArena() == from.GetArena()) {
1655  if (this != &from) InternalSwap(&from);
1656  } else {
1657  CopyFrom(from);
1658  }
1659  return *this;
1660  }
1661 
1662  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1663  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1664  }
1665  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1666  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1667  }
1668 
1669  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1670  return GetDescriptor();
1671  }
1672  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1673  return GetMetadataStatic().descriptor;
1674  }
1675  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1676  return GetMetadataStatic().reflection;
1677  }
1678  static const MissionTask_StationKeepParameters& default_instance();
1679 
1680  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1681  static inline const MissionTask_StationKeepParameters* internal_default_instance() {
1682  return reinterpret_cast<const MissionTask_StationKeepParameters*>(
1684  }
1685  static constexpr int kIndexInFileMessages =
1686  6;
1687 
1688  friend void swap(MissionTask_StationKeepParameters& a, MissionTask_StationKeepParameters& b) {
1689  a.Swap(&b);
1690  }
1691  inline void Swap(MissionTask_StationKeepParameters* other) {
1692  if (other == this) return;
1693  if (GetArena() == other->GetArena()) {
1694  InternalSwap(other);
1695  } else {
1696  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1697  }
1698  }
1699  void UnsafeArenaSwap(MissionTask_StationKeepParameters* other) {
1700  if (other == this) return;
1701  GOOGLE_DCHECK(GetArena() == other->GetArena());
1702  InternalSwap(other);
1703  }
1704 
1705  // implements Message ----------------------------------------------
1706 
1707  inline MissionTask_StationKeepParameters* New() const final {
1708  return CreateMaybeMessage<MissionTask_StationKeepParameters>(nullptr);
1709  }
1710 
1711  MissionTask_StationKeepParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1712  return CreateMaybeMessage<MissionTask_StationKeepParameters>(arena);
1713  }
1714  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1715  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1716  void CopyFrom(const MissionTask_StationKeepParameters& from);
1717  void MergeFrom(const MissionTask_StationKeepParameters& from);
1718  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1719  bool IsInitialized() const final;
1720 
1721  size_t ByteSizeLong() const final;
1722  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1723  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1724  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1725  int GetCachedSize() const final { return _cached_size_.Get(); }
1726 
1727  private:
1728  inline void SharedCtor();
1729  inline void SharedDtor();
1730  void SetCachedSize(int size) const final;
1731  void InternalSwap(MissionTask_StationKeepParameters* other);
1732  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1733  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1734  return "jaiabot.protobuf.MissionTask.StationKeepParameters";
1735  }
1736  protected:
1737  explicit MissionTask_StationKeepParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1738  private:
1739  static void ArenaDtor(void* object);
1740  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1741  public:
1742 
1743  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1744  private:
1745  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1746  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
1747  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
1748  }
1749 
1750  public:
1751 
1752  // nested types ----------------------------------------------------
1753 
1754  // accessors -------------------------------------------------------
1755 
1756  enum : int {
1757  kStationKeepTimeFieldNumber = 1,
1758  };
1759  // optional int32 station_keep_time = 1 [default = 10, (.dccl.field) = {
1761  private:
1762  bool _internal_has_station_keep_time() const;
1763  public:
1765  ::PROTOBUF_NAMESPACE_ID::int32 station_keep_time() const;
1766  void set_station_keep_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1767  private:
1768  ::PROTOBUF_NAMESPACE_ID::int32 _internal_station_keep_time() const;
1769  void _internal_set_station_keep_time(::PROTOBUF_NAMESPACE_ID::int32 value);
1770  public:
1771 
1772  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type station_keep_time_dimension;
1773 
1774  typedef boost::units::unit<station_keep_time_dimension,boost::units::si::system> station_keep_time_unit;
1775 
1776  template<typename Quantity >
1777  void set_station_keep_time_with_units(Quantity value_w_units)
1778  { set_station_keep_time(boost::units::quantity<station_keep_time_unit,google::protobuf::int32 >(value_w_units).value() ); };
1779 
1780  template<typename Quantity >
1782  { return Quantity(station_keep_time() * station_keep_time_unit()); };
1783 
1784  boost::units::quantity< station_keep_time_unit,google::protobuf::int32 > station_keep_time_with_units() const
1785  { return station_keep_time_with_units<boost::units::quantity< station_keep_time_unit,google::protobuf::int32 > >(); };
1786 
1787  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTask.StationKeepParameters)
1788  private:
1789  class _Internal;
1790 
1791  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1792  typedef void InternalArenaConstructable_;
1793  typedef void DestructorSkippable_;
1794  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1795  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1796  ::PROTOBUF_NAMESPACE_ID::int32 station_keep_time_;
1797  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
1798 };
1799 // -------------------------------------------------------------------
1800 
1801 class MissionTask PROTOBUF_FINAL :
1802  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTask) */ {
1803  public:
1804  inline MissionTask() : MissionTask(nullptr) {};
1805  virtual ~MissionTask();
1806 
1807  MissionTask(const MissionTask& from);
1808  MissionTask(MissionTask&& from) noexcept
1809  : MissionTask() {
1810  *this = ::std::move(from);
1811  }
1812 
1813  inline MissionTask& operator=(const MissionTask& from) {
1814  CopyFrom(from);
1815  return *this;
1816  }
1817  inline MissionTask& operator=(MissionTask&& from) noexcept {
1818  if (GetArena() == from.GetArena()) {
1819  if (this != &from) InternalSwap(&from);
1820  } else {
1821  CopyFrom(from);
1822  }
1823  return *this;
1824  }
1825 
1826  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1827  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1828  }
1829  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1830  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1831  }
1832 
1833  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1834  return GetDescriptor();
1835  }
1836  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1837  return GetMetadataStatic().descriptor;
1838  }
1839  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1840  return GetMetadataStatic().reflection;
1841  }
1842  static const MissionTask& default_instance();
1843 
1844  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1845  static inline const MissionTask* internal_default_instance() {
1846  return reinterpret_cast<const MissionTask*>(
1848  }
1849  static constexpr int kIndexInFileMessages =
1850  7;
1851 
1852  friend void swap(MissionTask& a, MissionTask& b) {
1853  a.Swap(&b);
1854  }
1855  inline void Swap(MissionTask* other) {
1856  if (other == this) return;
1857  if (GetArena() == other->GetArena()) {
1858  InternalSwap(other);
1859  } else {
1860  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1861  }
1862  }
1863  void UnsafeArenaSwap(MissionTask* other) {
1864  if (other == this) return;
1865  GOOGLE_DCHECK(GetArena() == other->GetArena());
1866  InternalSwap(other);
1867  }
1868 
1869  // implements Message ----------------------------------------------
1870 
1871  inline MissionTask* New() const final {
1872  return CreateMaybeMessage<MissionTask>(nullptr);
1873  }
1874 
1875  MissionTask* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1876  return CreateMaybeMessage<MissionTask>(arena);
1877  }
1878  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1879  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1880  void CopyFrom(const MissionTask& from);
1881  void MergeFrom(const MissionTask& from);
1882  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1883  bool IsInitialized() const final;
1884 
1885  size_t ByteSizeLong() const final;
1886  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1887  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1888  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1889  int GetCachedSize() const final { return _cached_size_.Get(); }
1890 
1891  private:
1892  inline void SharedCtor();
1893  inline void SharedDtor();
1894  void SetCachedSize(int size) const final;
1895  void InternalSwap(MissionTask* other);
1896  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1897  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1898  return "jaiabot.protobuf.MissionTask";
1899  }
1900  protected:
1901  explicit MissionTask(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1902  private:
1903  static void ArenaDtor(void* object);
1904  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1905  public:
1906 
1907  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1908  private:
1909  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1910  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
1911  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
1912  }
1913 
1914  public:
1915 
1916  // nested types ----------------------------------------------------
1917 
1918  typedef MissionTask_DiveParameters DiveParameters;
1919  typedef MissionTask_DriftParameters DriftParameters;
1920  typedef MissionTask_ConstantHeadingParameters ConstantHeadingParameters;
1921  typedef MissionTask_StationKeepParameters StationKeepParameters;
1922 
1924  static constexpr TaskType NONE =
1926  static constexpr TaskType DIVE =
1928  static constexpr TaskType STATION_KEEP =
1930  static constexpr TaskType SURFACE_DRIFT =
1932  static constexpr TaskType CONSTANT_HEADING =
1934  static inline bool TaskType_IsValid(int value) {
1935  return MissionTask_TaskType_IsValid(value);
1936  }
1937  static constexpr TaskType TaskType_MIN =
1939  static constexpr TaskType TaskType_MAX =
1941  static constexpr int TaskType_ARRAYSIZE =
1943  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1946  }
1947  template<typename T>
1948  static inline const std::string& TaskType_Name(T enum_t_value) {
1949  static_assert(::std::is_same<T, TaskType>::value ||
1950  ::std::is_integral<T>::value,
1951  "Incorrect type passed to function TaskType_Name.");
1952  return MissionTask_TaskType_Name(enum_t_value);
1953  }
1954  static inline bool TaskType_Parse(const std::string& name,
1955  TaskType* value) {
1956  return MissionTask_TaskType_Parse(name, value);
1957  }
1958 
1959  // accessors -------------------------------------------------------
1960 
1961  enum : int {
1962  kDiveFieldNumber = 2,
1963  kSurfaceDriftFieldNumber = 3,
1964  kConstantHeadingFieldNumber = 4,
1965  kStationKeepFieldNumber = 6,
1966  kTypeFieldNumber = 1,
1967  kStartEchoFieldNumber = 5,
1968  };
1969  // optional .jaiabot.protobuf.MissionTask.DiveParameters dive = 2 [(.jaia.field) = {
1970  bool has_dive() const;
1971  private:
1972  bool _internal_has_dive() const;
1973  public:
1974  void clear_dive();
1975  const ::jaiabot::protobuf::MissionTask_DiveParameters& dive() const;
1976  ::jaiabot::protobuf::MissionTask_DiveParameters* release_dive();
1977  ::jaiabot::protobuf::MissionTask_DiveParameters* mutable_dive();
1978  void set_allocated_dive(::jaiabot::protobuf::MissionTask_DiveParameters* dive);
1979  private:
1980  const ::jaiabot::protobuf::MissionTask_DiveParameters& _internal_dive() const;
1981  ::jaiabot::protobuf::MissionTask_DiveParameters* _internal_mutable_dive();
1982  public:
1984  ::jaiabot::protobuf::MissionTask_DiveParameters* dive);
1985  ::jaiabot::protobuf::MissionTask_DiveParameters* unsafe_arena_release_dive();
1986 
1987  // optional .jaiabot.protobuf.MissionTask.DriftParameters surface_drift = 3 [(.jaia.field) = {
1988  bool has_surface_drift() const;
1989  private:
1990  bool _internal_has_surface_drift() const;
1991  public:
1993  const ::jaiabot::protobuf::MissionTask_DriftParameters& surface_drift() const;
1994  ::jaiabot::protobuf::MissionTask_DriftParameters* release_surface_drift();
1995  ::jaiabot::protobuf::MissionTask_DriftParameters* mutable_surface_drift();
1996  void set_allocated_surface_drift(::jaiabot::protobuf::MissionTask_DriftParameters* surface_drift);
1997  private:
1998  const ::jaiabot::protobuf::MissionTask_DriftParameters& _internal_surface_drift() const;
1999  ::jaiabot::protobuf::MissionTask_DriftParameters* _internal_mutable_surface_drift();
2000  public:
2002  ::jaiabot::protobuf::MissionTask_DriftParameters* surface_drift);
2003  ::jaiabot::protobuf::MissionTask_DriftParameters* unsafe_arena_release_surface_drift();
2004 
2005  // optional .jaiabot.protobuf.MissionTask.ConstantHeadingParameters constant_heading = 4 [(.jaia.field) = {
2006  bool has_constant_heading() const;
2007  private:
2008  bool _internal_has_constant_heading() const;
2009  public:
2011  const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters& constant_heading() const;
2012  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* release_constant_heading();
2013  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* mutable_constant_heading();
2014  void set_allocated_constant_heading(::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* constant_heading);
2015  private:
2016  const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters& _internal_constant_heading() const;
2017  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* _internal_mutable_constant_heading();
2018  public:
2020  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* constant_heading);
2021  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* unsafe_arena_release_constant_heading();
2022 
2023  // optional .jaiabot.protobuf.MissionTask.StationKeepParameters station_keep = 6 [(.jaia.field) = {
2024  bool has_station_keep() const;
2025  private:
2026  bool _internal_has_station_keep() const;
2027  public:
2029  const ::jaiabot::protobuf::MissionTask_StationKeepParameters& station_keep() const;
2030  ::jaiabot::protobuf::MissionTask_StationKeepParameters* release_station_keep();
2031  ::jaiabot::protobuf::MissionTask_StationKeepParameters* mutable_station_keep();
2032  void set_allocated_station_keep(::jaiabot::protobuf::MissionTask_StationKeepParameters* station_keep);
2033  private:
2034  const ::jaiabot::protobuf::MissionTask_StationKeepParameters& _internal_station_keep() const;
2035  ::jaiabot::protobuf::MissionTask_StationKeepParameters* _internal_mutable_station_keep();
2036  public:
2038  ::jaiabot::protobuf::MissionTask_StationKeepParameters* station_keep);
2039  ::jaiabot::protobuf::MissionTask_StationKeepParameters* unsafe_arena_release_station_keep();
2040 
2041  // optional .jaiabot.protobuf.MissionTask.TaskType type = 1 [default = NONE, (.jaia.field) = {
2042  bool has_type() const;
2043  private:
2044  bool _internal_has_type() const;
2045  public:
2046  void clear_type();
2049  private:
2050  ::jaiabot::protobuf::MissionTask_TaskType _internal_type() const;
2051  void _internal_set_type(::jaiabot::protobuf::MissionTask_TaskType value);
2052  public:
2053 
2054  // optional bool start_echo = 5 [default = false, (.jaia.field) = {
2055  bool has_start_echo() const;
2056  private:
2057  bool _internal_has_start_echo() const;
2058  public:
2060  bool start_echo() const;
2061  void set_start_echo(bool value);
2062  private:
2063  bool _internal_start_echo() const;
2064  void _internal_set_start_echo(bool value);
2065  public:
2066 
2067  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTask)
2068  private:
2069  class _Internal;
2070 
2071  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2072  typedef void InternalArenaConstructable_;
2073  typedef void DestructorSkippable_;
2074  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2075  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2076  ::jaiabot::protobuf::MissionTask_DiveParameters* dive_;
2077  ::jaiabot::protobuf::MissionTask_DriftParameters* surface_drift_;
2078  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* constant_heading_;
2079  ::jaiabot::protobuf::MissionTask_StationKeepParameters* station_keep_;
2080  int type_;
2081  bool start_echo_;
2082  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
2083 };
2084 // -------------------------------------------------------------------
2085 
2086 class MissionPlan_Goal PROTOBUF_FINAL :
2087  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionPlan.Goal) */ {
2088  public:
2089  inline MissionPlan_Goal() : MissionPlan_Goal(nullptr) {};
2091 
2092  MissionPlan_Goal(const MissionPlan_Goal& from);
2093  MissionPlan_Goal(MissionPlan_Goal&& from) noexcept
2094  : MissionPlan_Goal() {
2095  *this = ::std::move(from);
2096  }
2097 
2098  inline MissionPlan_Goal& operator=(const MissionPlan_Goal& from) {
2099  CopyFrom(from);
2100  return *this;
2101  }
2102  inline MissionPlan_Goal& operator=(MissionPlan_Goal&& from) noexcept {
2103  if (GetArena() == from.GetArena()) {
2104  if (this != &from) InternalSwap(&from);
2105  } else {
2106  CopyFrom(from);
2107  }
2108  return *this;
2109  }
2110 
2111  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2112  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2113  }
2114  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2115  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2116  }
2117 
2118  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2119  return GetDescriptor();
2120  }
2121  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2122  return GetMetadataStatic().descriptor;
2123  }
2124  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2125  return GetMetadataStatic().reflection;
2126  }
2127  static const MissionPlan_Goal& default_instance();
2128 
2129  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2130  static inline const MissionPlan_Goal* internal_default_instance() {
2131  return reinterpret_cast<const MissionPlan_Goal*>(
2133  }
2134  static constexpr int kIndexInFileMessages =
2135  8;
2136 
2137  friend void swap(MissionPlan_Goal& a, MissionPlan_Goal& b) {
2138  a.Swap(&b);
2139  }
2140  inline void Swap(MissionPlan_Goal* other) {
2141  if (other == this) return;
2142  if (GetArena() == other->GetArena()) {
2143  InternalSwap(other);
2144  } else {
2145  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2146  }
2147  }
2148  void UnsafeArenaSwap(MissionPlan_Goal* other) {
2149  if (other == this) return;
2150  GOOGLE_DCHECK(GetArena() == other->GetArena());
2151  InternalSwap(other);
2152  }
2153 
2154  // implements Message ----------------------------------------------
2155 
2156  inline MissionPlan_Goal* New() const final {
2157  return CreateMaybeMessage<MissionPlan_Goal>(nullptr);
2158  }
2159 
2160  MissionPlan_Goal* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2161  return CreateMaybeMessage<MissionPlan_Goal>(arena);
2162  }
2163  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2164  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2165  void CopyFrom(const MissionPlan_Goal& from);
2166  void MergeFrom(const MissionPlan_Goal& from);
2167  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2168  bool IsInitialized() const final;
2169 
2170  size_t ByteSizeLong() const final;
2171  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2172  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2173  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2174  int GetCachedSize() const final { return _cached_size_.Get(); }
2175 
2176  private:
2177  inline void SharedCtor();
2178  inline void SharedDtor();
2179  void SetCachedSize(int size) const final;
2180  void InternalSwap(MissionPlan_Goal* other);
2181  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2182  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2183  return "jaiabot.protobuf.MissionPlan.Goal";
2184  }
2185  protected:
2186  explicit MissionPlan_Goal(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2187  private:
2188  static void ArenaDtor(void* object);
2189  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2190  public:
2191 
2192  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2193  private:
2194  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2195  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
2196  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
2197  }
2198 
2199  public:
2200 
2201  // nested types ----------------------------------------------------
2202 
2203  // accessors -------------------------------------------------------
2204 
2205  enum : int {
2206  kNameFieldNumber = 1,
2207  kLocationFieldNumber = 2,
2208  kTaskFieldNumber = 3,
2209  kMoveWptModeFieldNumber = 4,
2210  };
2211  // optional string name = 1 [(.dccl.field) = {
2212  bool has_name() const;
2213  private:
2214  bool _internal_has_name() const;
2215  public:
2216  void clear_name();
2217  const std::string& name() const;
2218  void set_name(const std::string& value);
2219  void set_name(std::string&& value);
2220  void set_name(const char* value);
2221  void set_name(const char* value, size_t size);
2222  std::string* mutable_name();
2223  std::string* release_name();
2224  void set_allocated_name(std::string* name);
2225  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
2226  " string fields are deprecated and will be removed in a"
2227  " future release.")
2228  std::string* unsafe_arena_release_name();
2229  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
2230  " string fields are deprecated and will be removed in a"
2231  " future release.")
2232  void unsafe_arena_set_allocated_name(
2233  std::string* name);
2234  private:
2235  const std::string& _internal_name() const;
2236  void _internal_set_name(const std::string& value);
2237  std::string* _internal_mutable_name();
2238  public:
2239 
2240  // required .jaiabot.protobuf.GeographicCoordinate location = 2 [(.jaia.field) = {
2241  bool has_location() const;
2242  private:
2243  bool _internal_has_location() const;
2244  public:
2245  void clear_location();
2246  const ::jaiabot::protobuf::GeographicCoordinate& location() const;
2247  ::jaiabot::protobuf::GeographicCoordinate* release_location();
2248  ::jaiabot::protobuf::GeographicCoordinate* mutable_location();
2249  void set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location);
2250  private:
2251  const ::jaiabot::protobuf::GeographicCoordinate& _internal_location() const;
2252  ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_location();
2253  public:
2254  void unsafe_arena_set_allocated_location(
2255  ::jaiabot::protobuf::GeographicCoordinate* location);
2256  ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_location();
2257 
2258  // optional .jaiabot.protobuf.MissionTask task = 3 [(.jaia.field) = {
2259  bool has_task() const;
2260  private:
2261  bool _internal_has_task() const;
2262  public:
2263  void clear_task();
2264  const ::jaiabot::protobuf::MissionTask& task() const;
2265  ::jaiabot::protobuf::MissionTask* release_task();
2266  ::jaiabot::protobuf::MissionTask* mutable_task();
2267  void set_allocated_task(::jaiabot::protobuf::MissionTask* task);
2268  private:
2269  const ::jaiabot::protobuf::MissionTask& _internal_task() const;
2270  ::jaiabot::protobuf::MissionTask* _internal_mutable_task();
2271  public:
2272  void unsafe_arena_set_allocated_task(
2273  ::jaiabot::protobuf::MissionTask* task);
2274  ::jaiabot::protobuf::MissionTask* unsafe_arena_release_task();
2275 
2276  // optional bool moveWptMode = 4;
2277  bool has_movewptmode() const;
2278  private:
2279  bool _internal_has_movewptmode() const;
2280  public:
2281  void clear_movewptmode();
2282  bool movewptmode() const;
2283  void set_movewptmode(bool value);
2284  private:
2285  bool _internal_movewptmode() const;
2286  void _internal_set_movewptmode(bool value);
2287  public:
2288 
2289  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionPlan.Goal)
2290  private:
2291  class _Internal;
2292 
2293  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2294  typedef void InternalArenaConstructable_;
2295  typedef void DestructorSkippable_;
2296  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2297  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2298  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
2299  ::jaiabot::protobuf::GeographicCoordinate* location_;
2300  ::jaiabot::protobuf::MissionTask* task_;
2301  bool movewptmode_;
2303 };
2304 // -------------------------------------------------------------------
2305 
2306 class MissionPlan_Recovery PROTOBUF_FINAL :
2307  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionPlan.Recovery) */ {
2308  public:
2309  inline MissionPlan_Recovery() : MissionPlan_Recovery(nullptr) {};
2311 
2312  MissionPlan_Recovery(const MissionPlan_Recovery& from);
2313  MissionPlan_Recovery(MissionPlan_Recovery&& from) noexcept
2314  : MissionPlan_Recovery() {
2315  *this = ::std::move(from);
2316  }
2317 
2318  inline MissionPlan_Recovery& operator=(const MissionPlan_Recovery& from) {
2319  CopyFrom(from);
2320  return *this;
2321  }
2322  inline MissionPlan_Recovery& operator=(MissionPlan_Recovery&& from) noexcept {
2323  if (GetArena() == from.GetArena()) {
2324  if (this != &from) InternalSwap(&from);
2325  } else {
2326  CopyFrom(from);
2327  }
2328  return *this;
2329  }
2330 
2331  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2332  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2333  }
2334  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2335  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2336  }
2337 
2338  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2339  return GetDescriptor();
2340  }
2341  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2342  return GetMetadataStatic().descriptor;
2343  }
2344  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2345  return GetMetadataStatic().reflection;
2346  }
2347  static const MissionPlan_Recovery& default_instance();
2348 
2349  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2350  static inline const MissionPlan_Recovery* internal_default_instance() {
2351  return reinterpret_cast<const MissionPlan_Recovery*>(
2353  }
2354  static constexpr int kIndexInFileMessages =
2355  9;
2356 
2357  friend void swap(MissionPlan_Recovery& a, MissionPlan_Recovery& b) {
2358  a.Swap(&b);
2359  }
2360  inline void Swap(MissionPlan_Recovery* other) {
2361  if (other == this) return;
2362  if (GetArena() == other->GetArena()) {
2363  InternalSwap(other);
2364  } else {
2365  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2366  }
2367  }
2368  void UnsafeArenaSwap(MissionPlan_Recovery* other) {
2369  if (other == this) return;
2370  GOOGLE_DCHECK(GetArena() == other->GetArena());
2371  InternalSwap(other);
2372  }
2373 
2374  // implements Message ----------------------------------------------
2375 
2376  inline MissionPlan_Recovery* New() const final {
2377  return CreateMaybeMessage<MissionPlan_Recovery>(nullptr);
2378  }
2379 
2380  MissionPlan_Recovery* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2381  return CreateMaybeMessage<MissionPlan_Recovery>(arena);
2382  }
2383  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2384  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2385  void CopyFrom(const MissionPlan_Recovery& from);
2386  void MergeFrom(const MissionPlan_Recovery& from);
2387  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2388  bool IsInitialized() const final;
2389 
2390  size_t ByteSizeLong() const final;
2391  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2392  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2393  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2394  int GetCachedSize() const final { return _cached_size_.Get(); }
2395 
2396  private:
2397  inline void SharedCtor();
2398  inline void SharedDtor();
2399  void SetCachedSize(int size) const final;
2400  void InternalSwap(MissionPlan_Recovery* other);
2401  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2402  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2403  return "jaiabot.protobuf.MissionPlan.Recovery";
2404  }
2405  protected:
2406  explicit MissionPlan_Recovery(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2407  private:
2408  static void ArenaDtor(void* object);
2409  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2410  public:
2411 
2412  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2413  private:
2414  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2415  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
2416  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
2417  }
2418 
2419  public:
2420 
2421  // nested types ----------------------------------------------------
2422 
2423  // accessors -------------------------------------------------------
2424 
2425  enum : int {
2426  kLocationFieldNumber = 2,
2427  kRecoverAtFinalGoalFieldNumber = 1,
2428  };
2429  // optional .jaiabot.protobuf.GeographicCoordinate location = 2 [(.jaia.field) = {
2430  bool has_location() const;
2431  private:
2432  bool _internal_has_location() const;
2433  public:
2435  const ::jaiabot::protobuf::GeographicCoordinate& location() const;
2436  ::jaiabot::protobuf::GeographicCoordinate* release_location();
2437  ::jaiabot::protobuf::GeographicCoordinate* mutable_location();
2438  void set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location);
2439  private:
2440  const ::jaiabot::protobuf::GeographicCoordinate& _internal_location() const;
2441  ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_location();
2442  public:
2444  ::jaiabot::protobuf::GeographicCoordinate* location);
2445  ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_location();
2446 
2447  // optional bool recover_at_final_goal = 1 [default = true, (.jaia.field) = {
2449  private:
2450  bool _internal_has_recover_at_final_goal() const;
2451  public:
2454  void set_recover_at_final_goal(bool value);
2455  private:
2456  bool _internal_recover_at_final_goal() const;
2457  void _internal_set_recover_at_final_goal(bool value);
2458  public:
2459 
2460  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionPlan.Recovery)
2461  private:
2462  class _Internal;
2463 
2464  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2465  typedef void InternalArenaConstructable_;
2466  typedef void DestructorSkippable_;
2467  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2468  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2469  ::jaiabot::protobuf::GeographicCoordinate* location_;
2470  bool recover_at_final_goal_;
2471  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
2472 };
2473 // -------------------------------------------------------------------
2474 
2475 class MissionPlan PROTOBUF_FINAL :
2476  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionPlan) */ {
2477  public:
2478  inline MissionPlan() : MissionPlan(nullptr) {};
2479  virtual ~MissionPlan();
2480 
2481  MissionPlan(const MissionPlan& from);
2482  MissionPlan(MissionPlan&& from) noexcept
2483  : MissionPlan() {
2484  *this = ::std::move(from);
2485  }
2486 
2487  inline MissionPlan& operator=(const MissionPlan& from) {
2488  CopyFrom(from);
2489  return *this;
2490  }
2491  inline MissionPlan& operator=(MissionPlan&& from) noexcept {
2492  if (GetArena() == from.GetArena()) {
2493  if (this != &from) InternalSwap(&from);
2494  } else {
2495  CopyFrom(from);
2496  }
2497  return *this;
2498  }
2499 
2500  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2501  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2502  }
2503  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2504  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2505  }
2506 
2507  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2508  return GetDescriptor();
2509  }
2510  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2511  return GetMetadataStatic().descriptor;
2512  }
2513  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2514  return GetMetadataStatic().reflection;
2515  }
2516  static const MissionPlan& default_instance();
2517 
2518  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2519  static inline const MissionPlan* internal_default_instance() {
2520  return reinterpret_cast<const MissionPlan*>(
2522  }
2523  static constexpr int kIndexInFileMessages =
2524  10;
2525 
2526  friend void swap(MissionPlan& a, MissionPlan& b) {
2527  a.Swap(&b);
2528  }
2529  inline void Swap(MissionPlan* other) {
2530  if (other == this) return;
2531  if (GetArena() == other->GetArena()) {
2532  InternalSwap(other);
2533  } else {
2534  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2535  }
2536  }
2537  void UnsafeArenaSwap(MissionPlan* other) {
2538  if (other == this) return;
2539  GOOGLE_DCHECK(GetArena() == other->GetArena());
2540  InternalSwap(other);
2541  }
2542 
2543  // implements Message ----------------------------------------------
2544 
2545  inline MissionPlan* New() const final {
2546  return CreateMaybeMessage<MissionPlan>(nullptr);
2547  }
2548 
2549  MissionPlan* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2550  return CreateMaybeMessage<MissionPlan>(arena);
2551  }
2552  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2553  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2554  void CopyFrom(const MissionPlan& from);
2555  void MergeFrom(const MissionPlan& from);
2556  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2557  bool IsInitialized() const final;
2558 
2559  size_t ByteSizeLong() const final;
2560  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2561  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2562  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2563  int GetCachedSize() const final { return _cached_size_.Get(); }
2564 
2565  private:
2566  inline void SharedCtor();
2567  inline void SharedDtor();
2568  void SetCachedSize(int size) const final;
2569  void InternalSwap(MissionPlan* other);
2570  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2571  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2572  return "jaiabot.protobuf.MissionPlan";
2573  }
2574  protected:
2575  explicit MissionPlan(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2576  private:
2577  static void ArenaDtor(void* object);
2578  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2579  public:
2580 
2581  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2582  private:
2583  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2584  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
2585  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
2586  }
2587 
2588  public:
2589 
2590  // nested types ----------------------------------------------------
2591 
2592  typedef MissionPlan_Goal Goal;
2593  typedef MissionPlan_Recovery Recovery;
2594 
2596  static constexpr MissionStart START_IMMEDIATELY =
2598  static constexpr MissionStart START_ON_COMMAND =
2600  static inline bool MissionStart_IsValid(int value) {
2601  return MissionPlan_MissionStart_IsValid(value);
2602  }
2603  static constexpr MissionStart MissionStart_MIN =
2605  static constexpr MissionStart MissionStart_MAX =
2607  static constexpr int MissionStart_ARRAYSIZE =
2609  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
2612  }
2613  template<typename T>
2614  static inline const std::string& MissionStart_Name(T enum_t_value) {
2615  static_assert(::std::is_same<T, MissionStart>::value ||
2616  ::std::is_integral<T>::value,
2617  "Incorrect type passed to function MissionStart_Name.");
2618  return MissionPlan_MissionStart_Name(enum_t_value);
2619  }
2620  static inline bool MissionStart_Parse(const std::string& name,
2621  MissionStart* value) {
2622  return MissionPlan_MissionStart_Parse(name, value);
2623  }
2624 
2626  static constexpr MovementType TRANSIT =
2628  static constexpr MovementType REMOTE_CONTROL =
2630  static inline bool MovementType_IsValid(int value) {
2631  return MissionPlan_MovementType_IsValid(value);
2632  }
2633  static constexpr MovementType MovementType_MIN =
2635  static constexpr MovementType MovementType_MAX =
2637  static constexpr int MovementType_ARRAYSIZE =
2639  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
2642  }
2643  template<typename T>
2644  static inline const std::string& MovementType_Name(T enum_t_value) {
2645  static_assert(::std::is_same<T, MovementType>::value ||
2646  ::std::is_integral<T>::value,
2647  "Incorrect type passed to function MovementType_Name.");
2648  return MissionPlan_MovementType_Name(enum_t_value);
2649  }
2650  static inline bool MovementType_Parse(const std::string& name,
2651  MovementType* value) {
2652  return MissionPlan_MovementType_Parse(name, value);
2653  }
2654 
2655  // accessors -------------------------------------------------------
2656 
2657  enum : int {
2658  kGoalFieldNumber = 3,
2659  kRecoveryFieldNumber = 4,
2660  kSpeedsFieldNumber = 5,
2661  kBottomDepthSafetyParamsFieldNumber = 6,
2662  kFragmentIndexFieldNumber = 7,
2663  kExpectedFragmentsFieldNumber = 8,
2664  kRepeatsFieldNumber = 9,
2665  kStartFieldNumber = 1,
2666  kMovementFieldNumber = 2,
2667  };
2668  // repeated .jaiabot.protobuf.MissionPlan.Goal goal = 3 [(.dccl.field) = {
2669  int goal_size() const;
2670  private:
2671  int _internal_goal_size() const;
2672  public:
2673  void clear_goal();
2674  ::jaiabot::protobuf::MissionPlan_Goal* mutable_goal(int index);
2675  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal >*
2677  private:
2678  const ::jaiabot::protobuf::MissionPlan_Goal& _internal_goal(int index) const;
2679  ::jaiabot::protobuf::MissionPlan_Goal* _internal_add_goal();
2680  public:
2681  const ::jaiabot::protobuf::MissionPlan_Goal& goal(int index) const;
2682  ::jaiabot::protobuf::MissionPlan_Goal* add_goal();
2683  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal >&
2684  goal() const;
2685 
2686  // optional .jaiabot.protobuf.MissionPlan.Recovery recovery = 4 [(.jaia.field) = {
2687  bool has_recovery() const;
2688  private:
2689  bool _internal_has_recovery() const;
2690  public:
2692  const ::jaiabot::protobuf::MissionPlan_Recovery& recovery() const;
2693  ::jaiabot::protobuf::MissionPlan_Recovery* release_recovery();
2694  ::jaiabot::protobuf::MissionPlan_Recovery* mutable_recovery();
2695  void set_allocated_recovery(::jaiabot::protobuf::MissionPlan_Recovery* recovery);
2696  private:
2697  const ::jaiabot::protobuf::MissionPlan_Recovery& _internal_recovery() const;
2698  ::jaiabot::protobuf::MissionPlan_Recovery* _internal_mutable_recovery();
2699  public:
2701  ::jaiabot::protobuf::MissionPlan_Recovery* recovery);
2702  ::jaiabot::protobuf::MissionPlan_Recovery* unsafe_arena_release_recovery();
2703 
2704  // optional .jaiabot.protobuf.Speeds speeds = 5 [(.jaia.field) = {
2705  bool has_speeds() const;
2706  private:
2707  bool _internal_has_speeds() const;
2708  public:
2710  const ::jaiabot::protobuf::Speeds& speeds() const;
2711  ::jaiabot::protobuf::Speeds* release_speeds();
2712  ::jaiabot::protobuf::Speeds* mutable_speeds();
2713  void set_allocated_speeds(::jaiabot::protobuf::Speeds* speeds);
2714  private:
2715  const ::jaiabot::protobuf::Speeds& _internal_speeds() const;
2716  ::jaiabot::protobuf::Speeds* _internal_mutable_speeds();
2717  public:
2719  ::jaiabot::protobuf::Speeds* speeds);
2720  ::jaiabot::protobuf::Speeds* unsafe_arena_release_speeds();
2721 
2722  // optional .jaiabot.protobuf.BottomDepthSafetyParams bottom_depth_safety_params = 6 [(.jaia.field) = {
2724  private:
2725  bool _internal_has_bottom_depth_safety_params() const;
2726  public:
2728  const ::jaiabot::protobuf::BottomDepthSafetyParams& bottom_depth_safety_params() const;
2729  ::jaiabot::protobuf::BottomDepthSafetyParams* release_bottom_depth_safety_params();
2730  ::jaiabot::protobuf::BottomDepthSafetyParams* mutable_bottom_depth_safety_params();
2731  void set_allocated_bottom_depth_safety_params(::jaiabot::protobuf::BottomDepthSafetyParams* bottom_depth_safety_params);
2732  private:
2733  const ::jaiabot::protobuf::BottomDepthSafetyParams& _internal_bottom_depth_safety_params() const;
2734  ::jaiabot::protobuf::BottomDepthSafetyParams* _internal_mutable_bottom_depth_safety_params();
2735  public:
2737  ::jaiabot::protobuf::BottomDepthSafetyParams* bottom_depth_safety_params);
2738  ::jaiabot::protobuf::BottomDepthSafetyParams* unsafe_arena_release_bottom_depth_safety_params();
2739 
2740  // optional uint32 fragment_index = 7 [(.dccl.field) = {
2741  bool has_fragment_index() const;
2742  private:
2743  bool _internal_has_fragment_index() const;
2744  public:
2746  ::PROTOBUF_NAMESPACE_ID::uint32 fragment_index() const;
2747  void set_fragment_index(::PROTOBUF_NAMESPACE_ID::uint32 value);
2748  private:
2749  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_fragment_index() const;
2750  void _internal_set_fragment_index(::PROTOBUF_NAMESPACE_ID::uint32 value);
2751  public:
2752 
2753  // optional uint32 expected_fragments = 8 [(.dccl.field) = {
2755  private:
2756  bool _internal_has_expected_fragments() const;
2757  public:
2759  ::PROTOBUF_NAMESPACE_ID::uint32 expected_fragments() const;
2760  void set_expected_fragments(::PROTOBUF_NAMESPACE_ID::uint32 value);
2761  private:
2762  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_expected_fragments() const;
2763  void _internal_set_expected_fragments(::PROTOBUF_NAMESPACE_ID::uint32 value);
2764  public:
2765 
2766  // optional uint32 repeats = 9 [default = 1, (.dccl.field) = {
2767  bool has_repeats() const;
2768  private:
2769  bool _internal_has_repeats() const;
2770  public:
2772  ::PROTOBUF_NAMESPACE_ID::uint32 repeats() const;
2773  void set_repeats(::PROTOBUF_NAMESPACE_ID::uint32 value);
2774  private:
2775  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_repeats() const;
2776  void _internal_set_repeats(::PROTOBUF_NAMESPACE_ID::uint32 value);
2777  public:
2778 
2779  // optional .jaiabot.protobuf.MissionPlan.MissionStart start = 1 [default = START_ON_COMMAND, (.jaia.field) = {
2780  bool has_start() const;
2781  private:
2782  bool _internal_has_start() const;
2783  public:
2784  void clear_start();
2787  private:
2788  ::jaiabot::protobuf::MissionPlan_MissionStart _internal_start() const;
2789  void _internal_set_start(::jaiabot::protobuf::MissionPlan_MissionStart value);
2790  public:
2791 
2792  // optional .jaiabot.protobuf.MissionPlan.MovementType movement = 2 [default = TRANSIT, (.jaia.field) = {
2793  bool has_movement() const;
2794  private:
2795  bool _internal_has_movement() const;
2796  public:
2800  private:
2801  ::jaiabot::protobuf::MissionPlan_MovementType _internal_movement() const;
2802  void _internal_set_movement(::jaiabot::protobuf::MissionPlan_MovementType value);
2803  public:
2804 
2805  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionPlan)
2806  private:
2807  class _Internal;
2808 
2809  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2810  typedef void InternalArenaConstructable_;
2811  typedef void DestructorSkippable_;
2812  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2813  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2814  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal > goal_;
2815  ::jaiabot::protobuf::MissionPlan_Recovery* recovery_;
2816  ::jaiabot::protobuf::Speeds* speeds_;
2817  ::jaiabot::protobuf::BottomDepthSafetyParams* bottom_depth_safety_params_;
2818  ::PROTOBUF_NAMESPACE_ID::uint32 fragment_index_;
2819  ::PROTOBUF_NAMESPACE_ID::uint32 expected_fragments_;
2820  ::PROTOBUF_NAMESPACE_ID::uint32 repeats_;
2821  int start_;
2822  int movement_;
2823  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
2824 };
2825 // -------------------------------------------------------------------
2826 
2827 class IvPBehaviorUpdate_TransitUpdate PROTOBUF_FINAL :
2828  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate) */ {
2829  public:
2830  inline IvPBehaviorUpdate_TransitUpdate() : IvPBehaviorUpdate_TransitUpdate(nullptr) {};
2832 
2833  IvPBehaviorUpdate_TransitUpdate(const IvPBehaviorUpdate_TransitUpdate& from);
2834  IvPBehaviorUpdate_TransitUpdate(IvPBehaviorUpdate_TransitUpdate&& from) noexcept
2835  : IvPBehaviorUpdate_TransitUpdate() {
2836  *this = ::std::move(from);
2837  }
2838 
2839  inline IvPBehaviorUpdate_TransitUpdate& operator=(const IvPBehaviorUpdate_TransitUpdate& from) {
2840  CopyFrom(from);
2841  return *this;
2842  }
2843  inline IvPBehaviorUpdate_TransitUpdate& operator=(IvPBehaviorUpdate_TransitUpdate&& from) noexcept {
2844  if (GetArena() == from.GetArena()) {
2845  if (this != &from) InternalSwap(&from);
2846  } else {
2847  CopyFrom(from);
2848  }
2849  return *this;
2850  }
2851 
2852  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2853  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2854  }
2855  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2856  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2857  }
2858 
2859  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2860  return GetDescriptor();
2861  }
2862  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2863  return GetMetadataStatic().descriptor;
2864  }
2865  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2866  return GetMetadataStatic().reflection;
2867  }
2868  static const IvPBehaviorUpdate_TransitUpdate& default_instance();
2869 
2870  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2871  static inline const IvPBehaviorUpdate_TransitUpdate* internal_default_instance() {
2872  return reinterpret_cast<const IvPBehaviorUpdate_TransitUpdate*>(
2874  }
2875  static constexpr int kIndexInFileMessages =
2876  11;
2877 
2878  friend void swap(IvPBehaviorUpdate_TransitUpdate& a, IvPBehaviorUpdate_TransitUpdate& b) {
2879  a.Swap(&b);
2880  }
2881  inline void Swap(IvPBehaviorUpdate_TransitUpdate* other) {
2882  if (other == this) return;
2883  if (GetArena() == other->GetArena()) {
2884  InternalSwap(other);
2885  } else {
2886  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2887  }
2888  }
2889  void UnsafeArenaSwap(IvPBehaviorUpdate_TransitUpdate* other) {
2890  if (other == this) return;
2891  GOOGLE_DCHECK(GetArena() == other->GetArena());
2892  InternalSwap(other);
2893  }
2894 
2895  // implements Message ----------------------------------------------
2896 
2897  inline IvPBehaviorUpdate_TransitUpdate* New() const final {
2898  return CreateMaybeMessage<IvPBehaviorUpdate_TransitUpdate>(nullptr);
2899  }
2900 
2901  IvPBehaviorUpdate_TransitUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2902  return CreateMaybeMessage<IvPBehaviorUpdate_TransitUpdate>(arena);
2903  }
2904  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2905  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2906  void CopyFrom(const IvPBehaviorUpdate_TransitUpdate& from);
2907  void MergeFrom(const IvPBehaviorUpdate_TransitUpdate& from);
2908  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2909  bool IsInitialized() const final;
2910 
2911  size_t ByteSizeLong() const final;
2912  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2913  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2914  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2915  int GetCachedSize() const final { return _cached_size_.Get(); }
2916 
2917  private:
2918  inline void SharedCtor();
2919  inline void SharedDtor();
2920  void SetCachedSize(int size) const final;
2921  void InternalSwap(IvPBehaviorUpdate_TransitUpdate* other);
2922  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2923  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2924  return "jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate";
2925  }
2926  protected:
2927  explicit IvPBehaviorUpdate_TransitUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2928  private:
2929  static void ArenaDtor(void* object);
2930  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
2931  public:
2932 
2933  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2934  private:
2935  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2936  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
2937  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
2938  }
2939 
2940  public:
2941 
2942  // nested types ----------------------------------------------------
2943 
2944  // accessors -------------------------------------------------------
2945 
2946  enum : int {
2947  kXFieldNumber = 2,
2948  kYFieldNumber = 3,
2949  kActiveFieldNumber = 1,
2950  kSlipRadiusFieldNumber = 5,
2951  kSpeedFieldNumber = 4,
2952  };
2953  // optional double x = 2 [(.dccl.field) = {
2954  bool has_x() const;
2955  private:
2956  bool _internal_has_x() const;
2957  public:
2958  void clear_x();
2959  double x() const;
2960  void set_x(double value);
2961  private:
2962  double _internal_x() const;
2963  void _internal_set_x(double value);
2964  public:
2965 
2966  // optional double y = 3 [(.dccl.field) = {
2967  bool has_y() const;
2968  private:
2969  bool _internal_has_y() const;
2970  public:
2971  void clear_y();
2972  double y() const;
2973  void set_y(double value);
2974  private:
2975  double _internal_y() const;
2976  void _internal_set_y(double value);
2977  public:
2978 
2979  // required bool active = 1;
2980  bool has_active() const;
2981  private:
2982  bool _internal_has_active() const;
2983  public:
2985  bool active() const;
2986  void set_active(bool value);
2987  private:
2988  bool _internal_active() const;
2989  void _internal_set_active(bool value);
2990  public:
2991 
2992  // optional int32 slip_radius = 5;
2993  bool has_slip_radius() const;
2994  private:
2995  bool _internal_has_slip_radius() const;
2996  public:
2998  ::PROTOBUF_NAMESPACE_ID::int32 slip_radius() const;
2999  void set_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
3000  private:
3001  ::PROTOBUF_NAMESPACE_ID::int32 _internal_slip_radius() const;
3002  void _internal_set_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
3003  public:
3004 
3005  // optional double speed = 4 [(.dccl.field) = {
3006  bool has_speed() const;
3007  private:
3008  bool _internal_has_speed() const;
3009  public:
3010  void clear_speed();
3011  double speed() const;
3012  void set_speed(double value);
3013  private:
3014  double _internal_speed() const;
3015  void _internal_set_speed(double value);
3016  public:
3017 
3018  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type x_dimension;
3019 
3020  typedef boost::units::unit<x_dimension,boost::units::si::system> x_unit;
3021 
3022  template<typename Quantity >
3023  void set_x_with_units(Quantity value_w_units)
3024  { set_x(boost::units::quantity<x_unit,double >(value_w_units).value() ); };
3025 
3026  template<typename Quantity >
3027  Quantity x_with_units() const
3028  { return Quantity(x() * x_unit()); };
3029 
3030  boost::units::quantity< x_unit,double > x_with_units() const
3031  { return x_with_units<boost::units::quantity< x_unit,double > >(); };
3032 
3033  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type y_dimension;
3034 
3035  typedef boost::units::unit<y_dimension,boost::units::si::system> y_unit;
3036 
3037  template<typename Quantity >
3038  void set_y_with_units(Quantity value_w_units)
3039  { set_y(boost::units::quantity<y_unit,double >(value_w_units).value() ); };
3040 
3041  template<typename Quantity >
3042  Quantity y_with_units() const
3043  { return Quantity(y() * y_unit()); };
3044 
3045  boost::units::quantity< y_unit,double > y_with_units() const
3046  { return y_with_units<boost::units::quantity< y_unit,double > >(); };
3047 
3048  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type speed_dimension;
3049 
3050  typedef boost::units::unit<speed_dimension,boost::units::si::system> speed_unit;
3051 
3052  template<typename Quantity >
3053  void set_speed_with_units(Quantity value_w_units)
3054  { set_speed(boost::units::quantity<speed_unit,double >(value_w_units).value() ); };
3055 
3056  template<typename Quantity >
3057  Quantity speed_with_units() const
3058  { return Quantity(speed() * speed_unit()); };
3059 
3060  boost::units::quantity< speed_unit,double > speed_with_units() const
3061  { return speed_with_units<boost::units::quantity< speed_unit,double > >(); };
3062 
3063  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate)
3064  private:
3065  class _Internal;
3066 
3067  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3068  typedef void InternalArenaConstructable_;
3069  typedef void DestructorSkippable_;
3070  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3071  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3072  double x_;
3073  double y_;
3074  bool active_;
3075  ::PROTOBUF_NAMESPACE_ID::int32 slip_radius_;
3076  double speed_;
3077  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
3078 };
3079 // -------------------------------------------------------------------
3080 
3081 class IvPBehaviorUpdate_StationkeepUpdate PROTOBUF_FINAL :
3082  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate) */ {
3083  public:
3084  inline IvPBehaviorUpdate_StationkeepUpdate() : IvPBehaviorUpdate_StationkeepUpdate(nullptr) {};
3086 
3087  IvPBehaviorUpdate_StationkeepUpdate(const IvPBehaviorUpdate_StationkeepUpdate& from);
3088  IvPBehaviorUpdate_StationkeepUpdate(IvPBehaviorUpdate_StationkeepUpdate&& from) noexcept
3089  : IvPBehaviorUpdate_StationkeepUpdate() {
3090  *this = ::std::move(from);
3091  }
3092 
3093  inline IvPBehaviorUpdate_StationkeepUpdate& operator=(const IvPBehaviorUpdate_StationkeepUpdate& from) {
3094  CopyFrom(from);
3095  return *this;
3096  }
3097  inline IvPBehaviorUpdate_StationkeepUpdate& operator=(IvPBehaviorUpdate_StationkeepUpdate&& from) noexcept {
3098  if (GetArena() == from.GetArena()) {
3099  if (this != &from) InternalSwap(&from);
3100  } else {
3101  CopyFrom(from);
3102  }
3103  return *this;
3104  }
3105 
3106  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3107  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3108  }
3109  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3110  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3111  }
3112 
3113  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3114  return GetDescriptor();
3115  }
3116  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3117  return GetMetadataStatic().descriptor;
3118  }
3119  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3120  return GetMetadataStatic().reflection;
3121  }
3122  static const IvPBehaviorUpdate_StationkeepUpdate& default_instance();
3123 
3124  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3125  static inline const IvPBehaviorUpdate_StationkeepUpdate* internal_default_instance() {
3126  return reinterpret_cast<const IvPBehaviorUpdate_StationkeepUpdate*>(
3128  }
3129  static constexpr int kIndexInFileMessages =
3130  12;
3131 
3132  friend void swap(IvPBehaviorUpdate_StationkeepUpdate& a, IvPBehaviorUpdate_StationkeepUpdate& b) {
3133  a.Swap(&b);
3134  }
3135  inline void Swap(IvPBehaviorUpdate_StationkeepUpdate* other) {
3136  if (other == this) return;
3137  if (GetArena() == other->GetArena()) {
3138  InternalSwap(other);
3139  } else {
3140  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3141  }
3142  }
3143  void UnsafeArenaSwap(IvPBehaviorUpdate_StationkeepUpdate* other) {
3144  if (other == this) return;
3145  GOOGLE_DCHECK(GetArena() == other->GetArena());
3146  InternalSwap(other);
3147  }
3148 
3149  // implements Message ----------------------------------------------
3150 
3151  inline IvPBehaviorUpdate_StationkeepUpdate* New() const final {
3152  return CreateMaybeMessage<IvPBehaviorUpdate_StationkeepUpdate>(nullptr);
3153  }
3154 
3155  IvPBehaviorUpdate_StationkeepUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3156  return CreateMaybeMessage<IvPBehaviorUpdate_StationkeepUpdate>(arena);
3157  }
3158  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3159  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3160  void CopyFrom(const IvPBehaviorUpdate_StationkeepUpdate& from);
3161  void MergeFrom(const IvPBehaviorUpdate_StationkeepUpdate& from);
3162  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3163  bool IsInitialized() const final;
3164 
3165  size_t ByteSizeLong() const final;
3166  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3167  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3168  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3169  int GetCachedSize() const final { return _cached_size_.Get(); }
3170 
3171  private:
3172  inline void SharedCtor();
3173  inline void SharedDtor();
3174  void SetCachedSize(int size) const final;
3175  void InternalSwap(IvPBehaviorUpdate_StationkeepUpdate* other);
3176  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3177  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3178  return "jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate";
3179  }
3180  protected:
3181  explicit IvPBehaviorUpdate_StationkeepUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3182  private:
3183  static void ArenaDtor(void* object);
3184  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3185  public:
3186 
3187  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3188  private:
3189  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3190  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
3191  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
3192  }
3193 
3194  public:
3195 
3196  // nested types ----------------------------------------------------
3197 
3198  // accessors -------------------------------------------------------
3199 
3200  enum : int {
3201  kXFieldNumber = 2,
3202  kYFieldNumber = 3,
3203  kOuterSpeedFieldNumber = 4,
3204  kTransitSpeedFieldNumber = 5,
3205  kActiveFieldNumber = 1,
3206  kCenterActivateFieldNumber = 6,
3207  };
3208  // optional double x = 2 [(.dccl.field) = {
3209  bool has_x() const;
3210  private:
3211  bool _internal_has_x() const;
3212  public:
3213  void clear_x();
3214  double x() const;
3215  void set_x(double value);
3216  private:
3217  double _internal_x() const;
3218  void _internal_set_x(double value);
3219  public:
3220 
3221  // optional double y = 3 [(.dccl.field) = {
3222  bool has_y() const;
3223  private:
3224  bool _internal_has_y() const;
3225  public:
3226  void clear_y();
3227  double y() const;
3228  void set_y(double value);
3229  private:
3230  double _internal_y() const;
3231  void _internal_set_y(double value);
3232  public:
3233 
3234  // optional double outer_speed = 4 [(.dccl.field) = {
3235  bool has_outer_speed() const;
3236  private:
3237  bool _internal_has_outer_speed() const;
3238  public:
3240  double outer_speed() const;
3241  void set_outer_speed(double value);
3242  private:
3243  double _internal_outer_speed() const;
3244  void _internal_set_outer_speed(double value);
3245  public:
3246 
3247  // optional double transit_speed = 5 [(.dccl.field) = {
3248  bool has_transit_speed() const;
3249  private:
3250  bool _internal_has_transit_speed() const;
3251  public:
3253  double transit_speed() const;
3254  void set_transit_speed(double value);
3255  private:
3256  double _internal_transit_speed() const;
3257  void _internal_set_transit_speed(double value);
3258  public:
3259 
3260  // required bool active = 1;
3261  bool has_active() const;
3262  private:
3263  bool _internal_has_active() const;
3264  public:
3266  bool active() const;
3267  void set_active(bool value);
3268  private:
3269  bool _internal_active() const;
3270  void _internal_set_active(bool value);
3271  public:
3272 
3273  // optional bool center_activate = 6 [default = false];
3274  bool has_center_activate() const;
3275  private:
3276  bool _internal_has_center_activate() const;
3277  public:
3279  bool center_activate() const;
3280  void set_center_activate(bool value);
3281  private:
3282  bool _internal_center_activate() const;
3283  void _internal_set_center_activate(bool value);
3284  public:
3285 
3286  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type x_dimension;
3287 
3288  typedef boost::units::unit<x_dimension,boost::units::si::system> x_unit;
3289 
3290  template<typename Quantity >
3291  void set_x_with_units(Quantity value_w_units)
3292  { set_x(boost::units::quantity<x_unit,double >(value_w_units).value() ); };
3293 
3294  template<typename Quantity >
3295  Quantity x_with_units() const
3296  { return Quantity(x() * x_unit()); };
3297 
3298  boost::units::quantity< x_unit,double > x_with_units() const
3299  { return x_with_units<boost::units::quantity< x_unit,double > >(); };
3300 
3301  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type y_dimension;
3302 
3303  typedef boost::units::unit<y_dimension,boost::units::si::system> y_unit;
3304 
3305  template<typename Quantity >
3306  void set_y_with_units(Quantity value_w_units)
3307  { set_y(boost::units::quantity<y_unit,double >(value_w_units).value() ); };
3308 
3309  template<typename Quantity >
3310  Quantity y_with_units() const
3311  { return Quantity(y() * y_unit()); };
3312 
3313  boost::units::quantity< y_unit,double > y_with_units() const
3314  { return y_with_units<boost::units::quantity< y_unit,double > >(); };
3315 
3316  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type outer_speed_dimension;
3317 
3318  typedef boost::units::unit<outer_speed_dimension,boost::units::si::system> outer_speed_unit;
3319 
3320  template<typename Quantity >
3321  void set_outer_speed_with_units(Quantity value_w_units)
3322  { set_outer_speed(boost::units::quantity<outer_speed_unit,double >(value_w_units).value() ); };
3323 
3324  template<typename Quantity >
3325  Quantity outer_speed_with_units() const
3326  { return Quantity(outer_speed() * outer_speed_unit()); };
3327 
3328  boost::units::quantity< outer_speed_unit,double > outer_speed_with_units() const
3329  { return outer_speed_with_units<boost::units::quantity< outer_speed_unit,double > >(); };
3330 
3331  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type transit_speed_dimension;
3332 
3333  typedef boost::units::unit<transit_speed_dimension,boost::units::si::system> transit_speed_unit;
3334 
3335  template<typename Quantity >
3336  void set_transit_speed_with_units(Quantity value_w_units)
3337  { set_transit_speed(boost::units::quantity<transit_speed_unit,double >(value_w_units).value() ); };
3338 
3339  template<typename Quantity >
3340  Quantity transit_speed_with_units() const
3341  { return Quantity(transit_speed() * transit_speed_unit()); };
3342 
3343  boost::units::quantity< transit_speed_unit,double > transit_speed_with_units() const
3344  { return transit_speed_with_units<boost::units::quantity< transit_speed_unit,double > >(); };
3345 
3346  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate)
3347  private:
3348  class _Internal;
3349 
3350  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3351  typedef void InternalArenaConstructable_;
3352  typedef void DestructorSkippable_;
3353  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3354  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3355  double x_;
3356  double y_;
3357  double outer_speed_;
3358  double transit_speed_;
3359  bool active_;
3360  bool center_activate_;
3361  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
3362 };
3363 // -------------------------------------------------------------------
3364 
3365 class IvPBehaviorUpdate_ConstantHeadingUpdate PROTOBUF_FINAL :
3366  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate) */ {
3367  public:
3368  inline IvPBehaviorUpdate_ConstantHeadingUpdate() : IvPBehaviorUpdate_ConstantHeadingUpdate(nullptr) {};
3370 
3371  IvPBehaviorUpdate_ConstantHeadingUpdate(const IvPBehaviorUpdate_ConstantHeadingUpdate& from);
3372  IvPBehaviorUpdate_ConstantHeadingUpdate(IvPBehaviorUpdate_ConstantHeadingUpdate&& from) noexcept
3373  : IvPBehaviorUpdate_ConstantHeadingUpdate() {
3374  *this = ::std::move(from);
3375  }
3376 
3377  inline IvPBehaviorUpdate_ConstantHeadingUpdate& operator=(const IvPBehaviorUpdate_ConstantHeadingUpdate& from) {
3378  CopyFrom(from);
3379  return *this;
3380  }
3381  inline IvPBehaviorUpdate_ConstantHeadingUpdate& operator=(IvPBehaviorUpdate_ConstantHeadingUpdate&& from) noexcept {
3382  if (GetArena() == from.GetArena()) {
3383  if (this != &from) InternalSwap(&from);
3384  } else {
3385  CopyFrom(from);
3386  }
3387  return *this;
3388  }
3389 
3390  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3391  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3392  }
3393  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3394  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3395  }
3396 
3397  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3398  return GetDescriptor();
3399  }
3400  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3401  return GetMetadataStatic().descriptor;
3402  }
3403  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3404  return GetMetadataStatic().reflection;
3405  }
3406  static const IvPBehaviorUpdate_ConstantHeadingUpdate& default_instance();
3407 
3408  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3409  static inline const IvPBehaviorUpdate_ConstantHeadingUpdate* internal_default_instance() {
3410  return reinterpret_cast<const IvPBehaviorUpdate_ConstantHeadingUpdate*>(
3412  }
3413  static constexpr int kIndexInFileMessages =
3414  13;
3415 
3416  friend void swap(IvPBehaviorUpdate_ConstantHeadingUpdate& a, IvPBehaviorUpdate_ConstantHeadingUpdate& b) {
3417  a.Swap(&b);
3418  }
3419  inline void Swap(IvPBehaviorUpdate_ConstantHeadingUpdate* other) {
3420  if (other == this) return;
3421  if (GetArena() == other->GetArena()) {
3422  InternalSwap(other);
3423  } else {
3424  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3425  }
3426  }
3427  void UnsafeArenaSwap(IvPBehaviorUpdate_ConstantHeadingUpdate* other) {
3428  if (other == this) return;
3429  GOOGLE_DCHECK(GetArena() == other->GetArena());
3430  InternalSwap(other);
3431  }
3432 
3433  // implements Message ----------------------------------------------
3434 
3435  inline IvPBehaviorUpdate_ConstantHeadingUpdate* New() const final {
3436  return CreateMaybeMessage<IvPBehaviorUpdate_ConstantHeadingUpdate>(nullptr);
3437  }
3438 
3439  IvPBehaviorUpdate_ConstantHeadingUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3440  return CreateMaybeMessage<IvPBehaviorUpdate_ConstantHeadingUpdate>(arena);
3441  }
3442  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3443  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3444  void CopyFrom(const IvPBehaviorUpdate_ConstantHeadingUpdate& from);
3445  void MergeFrom(const IvPBehaviorUpdate_ConstantHeadingUpdate& from);
3446  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3447  bool IsInitialized() const final;
3448 
3449  size_t ByteSizeLong() const final;
3450  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3451  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3452  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3453  int GetCachedSize() const final { return _cached_size_.Get(); }
3454 
3455  private:
3456  inline void SharedCtor();
3457  inline void SharedDtor();
3458  void SetCachedSize(int size) const final;
3459  void InternalSwap(IvPBehaviorUpdate_ConstantHeadingUpdate* other);
3460  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3461  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3462  return "jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate";
3463  }
3464  protected:
3465  explicit IvPBehaviorUpdate_ConstantHeadingUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3466  private:
3467  static void ArenaDtor(void* object);
3468  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3469  public:
3470 
3471  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3472  private:
3473  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3474  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
3475  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
3476  }
3477 
3478  public:
3479 
3480  // nested types ----------------------------------------------------
3481 
3482  // accessors -------------------------------------------------------
3483 
3484  enum : int {
3485  kHeadingFieldNumber = 2,
3486  kActiveFieldNumber = 1,
3487  };
3488  // optional double heading = 2 [(.dccl.field) = {
3489  bool has_heading() const;
3490  private:
3491  bool _internal_has_heading() const;
3492  public:
3494  double heading() const;
3495  void set_heading(double value);
3496  private:
3497  double _internal_heading() const;
3498  void _internal_set_heading(double value);
3499  public:
3500 
3501  // required bool active = 1;
3502  bool has_active() const;
3503  private:
3504  bool _internal_has_active() const;
3505  public:
3507  bool active() const;
3508  void set_active(bool value);
3509  private:
3510  bool _internal_active() const;
3511  void _internal_set_active(bool value);
3512  public:
3513 
3514  typedef boost::units::plane_angle_dimension heading_dimension;
3515 
3516  typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
3517 
3518  template<typename Quantity >
3519  void set_heading_with_units(Quantity value_w_units)
3520  { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
3521 
3522  template<typename Quantity >
3523  Quantity heading_with_units() const
3524  { return Quantity(heading() * heading_unit()); };
3525 
3526  boost::units::quantity< heading_unit,double > heading_with_units() const
3527  { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
3528 
3529  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate)
3530  private:
3531  class _Internal;
3532 
3533  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3534  typedef void InternalArenaConstructable_;
3535  typedef void DestructorSkippable_;
3536  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3537  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3538  double heading_;
3539  bool active_;
3540  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
3541 };
3542 // -------------------------------------------------------------------
3543 
3544 class IvPBehaviorUpdate_ConstantSpeedUpdate PROTOBUF_FINAL :
3545  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate) */ {
3546  public:
3547  inline IvPBehaviorUpdate_ConstantSpeedUpdate() : IvPBehaviorUpdate_ConstantSpeedUpdate(nullptr) {};
3549 
3550  IvPBehaviorUpdate_ConstantSpeedUpdate(const IvPBehaviorUpdate_ConstantSpeedUpdate& from);
3551  IvPBehaviorUpdate_ConstantSpeedUpdate(IvPBehaviorUpdate_ConstantSpeedUpdate&& from) noexcept
3552  : IvPBehaviorUpdate_ConstantSpeedUpdate() {
3553  *this = ::std::move(from);
3554  }
3555 
3556  inline IvPBehaviorUpdate_ConstantSpeedUpdate& operator=(const IvPBehaviorUpdate_ConstantSpeedUpdate& from) {
3557  CopyFrom(from);
3558  return *this;
3559  }
3560  inline IvPBehaviorUpdate_ConstantSpeedUpdate& operator=(IvPBehaviorUpdate_ConstantSpeedUpdate&& from) noexcept {
3561  if (GetArena() == from.GetArena()) {
3562  if (this != &from) InternalSwap(&from);
3563  } else {
3564  CopyFrom(from);
3565  }
3566  return *this;
3567  }
3568 
3569  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3570  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3571  }
3572  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3573  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3574  }
3575 
3576  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3577  return GetDescriptor();
3578  }
3579  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3580  return GetMetadataStatic().descriptor;
3581  }
3582  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3583  return GetMetadataStatic().reflection;
3584  }
3585  static const IvPBehaviorUpdate_ConstantSpeedUpdate& default_instance();
3586 
3587  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3588  static inline const IvPBehaviorUpdate_ConstantSpeedUpdate* internal_default_instance() {
3589  return reinterpret_cast<const IvPBehaviorUpdate_ConstantSpeedUpdate*>(
3591  }
3592  static constexpr int kIndexInFileMessages =
3593  14;
3594 
3595  friend void swap(IvPBehaviorUpdate_ConstantSpeedUpdate& a, IvPBehaviorUpdate_ConstantSpeedUpdate& b) {
3596  a.Swap(&b);
3597  }
3598  inline void Swap(IvPBehaviorUpdate_ConstantSpeedUpdate* other) {
3599  if (other == this) return;
3600  if (GetArena() == other->GetArena()) {
3601  InternalSwap(other);
3602  } else {
3603  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3604  }
3605  }
3606  void UnsafeArenaSwap(IvPBehaviorUpdate_ConstantSpeedUpdate* other) {
3607  if (other == this) return;
3608  GOOGLE_DCHECK(GetArena() == other->GetArena());
3609  InternalSwap(other);
3610  }
3611 
3612  // implements Message ----------------------------------------------
3613 
3614  inline IvPBehaviorUpdate_ConstantSpeedUpdate* New() const final {
3615  return CreateMaybeMessage<IvPBehaviorUpdate_ConstantSpeedUpdate>(nullptr);
3616  }
3617 
3618  IvPBehaviorUpdate_ConstantSpeedUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3619  return CreateMaybeMessage<IvPBehaviorUpdate_ConstantSpeedUpdate>(arena);
3620  }
3621  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3622  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3623  void CopyFrom(const IvPBehaviorUpdate_ConstantSpeedUpdate& from);
3624  void MergeFrom(const IvPBehaviorUpdate_ConstantSpeedUpdate& from);
3625  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3626  bool IsInitialized() const final;
3627 
3628  size_t ByteSizeLong() const final;
3629  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3630  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3631  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3632  int GetCachedSize() const final { return _cached_size_.Get(); }
3633 
3634  private:
3635  inline void SharedCtor();
3636  inline void SharedDtor();
3637  void SetCachedSize(int size) const final;
3638  void InternalSwap(IvPBehaviorUpdate_ConstantSpeedUpdate* other);
3639  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3640  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3641  return "jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate";
3642  }
3643  protected:
3644  explicit IvPBehaviorUpdate_ConstantSpeedUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3645  private:
3646  static void ArenaDtor(void* object);
3647  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3648  public:
3649 
3650  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3651  private:
3652  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3653  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
3654  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
3655  }
3656 
3657  public:
3658 
3659  // nested types ----------------------------------------------------
3660 
3661  // accessors -------------------------------------------------------
3662 
3663  enum : int {
3664  kSpeedFieldNumber = 2,
3665  kActiveFieldNumber = 1,
3666  };
3667  // optional double speed = 2 [(.dccl.field) = {
3668  bool has_speed() const;
3669  private:
3670  bool _internal_has_speed() const;
3671  public:
3672  void clear_speed();
3673  double speed() const;
3674  void set_speed(double value);
3675  private:
3676  double _internal_speed() const;
3677  void _internal_set_speed(double value);
3678  public:
3679 
3680  // required bool active = 1;
3681  bool has_active() const;
3682  private:
3683  bool _internal_has_active() const;
3684  public:
3686  bool active() const;
3687  void set_active(bool value);
3688  private:
3689  bool _internal_active() const;
3690  void _internal_set_active(bool value);
3691  public:
3692 
3693  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type speed_dimension;
3694 
3695  typedef boost::units::unit<speed_dimension,boost::units::si::system> speed_unit;
3696 
3697  template<typename Quantity >
3698  void set_speed_with_units(Quantity value_w_units)
3699  { set_speed(boost::units::quantity<speed_unit,double >(value_w_units).value() ); };
3700 
3701  template<typename Quantity >
3702  Quantity speed_with_units() const
3703  { return Quantity(speed() * speed_unit()); };
3704 
3705  boost::units::quantity< speed_unit,double > speed_with_units() const
3706  { return speed_with_units<boost::units::quantity< speed_unit,double > >(); };
3707 
3708  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate)
3709  private:
3710  class _Internal;
3711 
3712  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3713  typedef void InternalArenaConstructable_;
3714  typedef void DestructorSkippable_;
3715  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3716  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3717  double speed_;
3718  bool active_;
3719  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
3720 };
3721 // -------------------------------------------------------------------
3722 
3723 class IvPBehaviorUpdate PROTOBUF_FINAL :
3724  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorUpdate) */ {
3725  public:
3726  inline IvPBehaviorUpdate() : IvPBehaviorUpdate(nullptr) {};
3728 
3729  IvPBehaviorUpdate(const IvPBehaviorUpdate& from);
3730  IvPBehaviorUpdate(IvPBehaviorUpdate&& from) noexcept
3731  : IvPBehaviorUpdate() {
3732  *this = ::std::move(from);
3733  }
3734 
3735  inline IvPBehaviorUpdate& operator=(const IvPBehaviorUpdate& from) {
3736  CopyFrom(from);
3737  return *this;
3738  }
3739  inline IvPBehaviorUpdate& operator=(IvPBehaviorUpdate&& from) noexcept {
3740  if (GetArena() == from.GetArena()) {
3741  if (this != &from) InternalSwap(&from);
3742  } else {
3743  CopyFrom(from);
3744  }
3745  return *this;
3746  }
3747 
3748  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3749  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3750  }
3751  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3752  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3753  }
3754 
3755  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3756  return GetDescriptor();
3757  }
3758  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3759  return GetMetadataStatic().descriptor;
3760  }
3761  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3762  return GetMetadataStatic().reflection;
3763  }
3764  static const IvPBehaviorUpdate& default_instance();
3765 
3767  kTransit = 1,
3768  kStationkeep = 2,
3769  kConstantHeading = 3,
3770  kConstantSpeed = 4,
3771  BEHAVIOR_NOT_SET = 0,
3772  };
3773 
3774  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3775  static inline const IvPBehaviorUpdate* internal_default_instance() {
3776  return reinterpret_cast<const IvPBehaviorUpdate*>(
3778  }
3779  static constexpr int kIndexInFileMessages =
3780  15;
3781 
3782  friend void swap(IvPBehaviorUpdate& a, IvPBehaviorUpdate& b) {
3783  a.Swap(&b);
3784  }
3785  inline void Swap(IvPBehaviorUpdate* other) {
3786  if (other == this) return;
3787  if (GetArena() == other->GetArena()) {
3788  InternalSwap(other);
3789  } else {
3790  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
3791  }
3792  }
3793  void UnsafeArenaSwap(IvPBehaviorUpdate* other) {
3794  if (other == this) return;
3795  GOOGLE_DCHECK(GetArena() == other->GetArena());
3796  InternalSwap(other);
3797  }
3798 
3799  // implements Message ----------------------------------------------
3800 
3801  inline IvPBehaviorUpdate* New() const final {
3802  return CreateMaybeMessage<IvPBehaviorUpdate>(nullptr);
3803  }
3804 
3805  IvPBehaviorUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3806  return CreateMaybeMessage<IvPBehaviorUpdate>(arena);
3807  }
3808  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3809  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3810  void CopyFrom(const IvPBehaviorUpdate& from);
3811  void MergeFrom(const IvPBehaviorUpdate& from);
3812  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3813  bool IsInitialized() const final;
3814 
3815  size_t ByteSizeLong() const final;
3816  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3817  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3818  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3819  int GetCachedSize() const final { return _cached_size_.Get(); }
3820 
3821  private:
3822  inline void SharedCtor();
3823  inline void SharedDtor();
3824  void SetCachedSize(int size) const final;
3825  void InternalSwap(IvPBehaviorUpdate* other);
3826  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3827  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3828  return "jaiabot.protobuf.IvPBehaviorUpdate";
3829  }
3830  protected:
3831  explicit IvPBehaviorUpdate(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3832  private:
3833  static void ArenaDtor(void* object);
3834  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3835  public:
3836 
3837  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3838  private:
3839  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3840  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
3841  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
3842  }
3843 
3844  public:
3845 
3846  // nested types ----------------------------------------------------
3847 
3848  typedef IvPBehaviorUpdate_TransitUpdate TransitUpdate;
3849  typedef IvPBehaviorUpdate_StationkeepUpdate StationkeepUpdate;
3850  typedef IvPBehaviorUpdate_ConstantHeadingUpdate ConstantHeadingUpdate;
3851  typedef IvPBehaviorUpdate_ConstantSpeedUpdate ConstantSpeedUpdate;
3852 
3853  // accessors -------------------------------------------------------
3854 
3855  enum : int {
3856  kTransitFieldNumber = 1,
3857  kStationkeepFieldNumber = 2,
3858  kConstantHeadingFieldNumber = 3,
3859  kConstantSpeedFieldNumber = 4,
3860  };
3861  // .jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate transit = 1;
3862  bool has_transit() const;
3863  private:
3864  bool _internal_has_transit() const;
3865  public:
3867  const ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate& transit() const;
3868  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* release_transit();
3869  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* mutable_transit();
3870  void set_allocated_transit(::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* transit);
3871  private:
3872  const ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate& _internal_transit() const;
3873  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* _internal_mutable_transit();
3874  public:
3876  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* transit);
3877  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* unsafe_arena_release_transit();
3878 
3879  // .jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate stationkeep = 2;
3880  bool has_stationkeep() const;
3881  private:
3882  bool _internal_has_stationkeep() const;
3883  public:
3885  const ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate& stationkeep() const;
3886  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* release_stationkeep();
3887  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* mutable_stationkeep();
3888  void set_allocated_stationkeep(::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* stationkeep);
3889  private:
3890  const ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate& _internal_stationkeep() const;
3891  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* _internal_mutable_stationkeep();
3892  public:
3894  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* stationkeep);
3895  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* unsafe_arena_release_stationkeep();
3896 
3897  // .jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate constantHeading = 3;
3898  bool has_constantheading() const;
3899  private:
3900  bool _internal_has_constantheading() const;
3901  public:
3903  const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate& constantheading() const;
3904  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* release_constantheading();
3905  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* mutable_constantheading();
3906  void set_allocated_constantheading(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* constantheading);
3907  private:
3908  const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate& _internal_constantheading() const;
3909  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* _internal_mutable_constantheading();
3910  public:
3912  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* constantheading);
3913  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* unsafe_arena_release_constantheading();
3914 
3915  // .jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate constantSpeed = 4;
3916  bool has_constantspeed() const;
3917  private:
3918  bool _internal_has_constantspeed() const;
3919  public:
3921  const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate& constantspeed() const;
3922  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* release_constantspeed();
3923  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* mutable_constantspeed();
3924  void set_allocated_constantspeed(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* constantspeed);
3925  private:
3926  const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate& _internal_constantspeed() const;
3927  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* _internal_mutable_constantspeed();
3928  public:
3930  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* constantspeed);
3931  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* unsafe_arena_release_constantspeed();
3932 
3935  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorUpdate)
3936  private:
3937  class _Internal;
3938  void set_has_transit();
3939  void set_has_stationkeep();
3940  void set_has_constantheading();
3941  void set_has_constantspeed();
3942 
3943  inline bool has_behavior() const;
3944  inline void clear_has_behavior();
3945 
3946  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
3947  typedef void InternalArenaConstructable_;
3948  typedef void DestructorSkippable_;
3949  union BehaviorUnion {
3950  BehaviorUnion() {}
3951  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* transit_;
3952  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* stationkeep_;
3953  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* constantheading_;
3954  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* constantspeed_;
3955  } behavior_;
3956  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3957  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
3958 
3959  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
3960 };
3961 // -------------------------------------------------------------------
3962 
3963 class IvPBehaviorReport_TransitReport PROTOBUF_FINAL :
3964  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorReport.TransitReport) */ {
3965  public:
3966  inline IvPBehaviorReport_TransitReport() : IvPBehaviorReport_TransitReport(nullptr) {};
3968 
3969  IvPBehaviorReport_TransitReport(const IvPBehaviorReport_TransitReport& from);
3970  IvPBehaviorReport_TransitReport(IvPBehaviorReport_TransitReport&& from) noexcept
3971  : IvPBehaviorReport_TransitReport() {
3972  *this = ::std::move(from);
3973  }
3974 
3975  inline IvPBehaviorReport_TransitReport& operator=(const IvPBehaviorReport_TransitReport& from) {
3976  CopyFrom(from);
3977  return *this;
3978  }
3979  inline IvPBehaviorReport_TransitReport& operator=(IvPBehaviorReport_TransitReport&& from) noexcept {
3980  if (GetArena() == from.GetArena()) {
3981  if (this != &from) InternalSwap(&from);
3982  } else {
3983  CopyFrom(from);
3984  }
3985  return *this;
3986  }
3987 
3988  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3989  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
3990  }
3991  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3992  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3993  }
3994 
3995  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3996  return GetDescriptor();
3997  }
3998  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3999  return GetMetadataStatic().descriptor;
4000  }
4001  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4002  return GetMetadataStatic().reflection;
4003  }
4004  static const IvPBehaviorReport_TransitReport& default_instance();
4005 
4006  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4007  static inline const IvPBehaviorReport_TransitReport* internal_default_instance() {
4008  return reinterpret_cast<const IvPBehaviorReport_TransitReport*>(
4010  }
4011  static constexpr int kIndexInFileMessages =
4012  16;
4013 
4014  friend void swap(IvPBehaviorReport_TransitReport& a, IvPBehaviorReport_TransitReport& b) {
4015  a.Swap(&b);
4016  }
4017  inline void Swap(IvPBehaviorReport_TransitReport* other) {
4018  if (other == this) return;
4019  if (GetArena() == other->GetArena()) {
4020  InternalSwap(other);
4021  } else {
4022  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
4023  }
4024  }
4025  void UnsafeArenaSwap(IvPBehaviorReport_TransitReport* other) {
4026  if (other == this) return;
4027  GOOGLE_DCHECK(GetArena() == other->GetArena());
4028  InternalSwap(other);
4029  }
4030 
4031  // implements Message ----------------------------------------------
4032 
4033  inline IvPBehaviorReport_TransitReport* New() const final {
4034  return CreateMaybeMessage<IvPBehaviorReport_TransitReport>(nullptr);
4035  }
4036 
4037  IvPBehaviorReport_TransitReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4038  return CreateMaybeMessage<IvPBehaviorReport_TransitReport>(arena);
4039  }
4040  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4041  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4042  void CopyFrom(const IvPBehaviorReport_TransitReport& from);
4043  void MergeFrom(const IvPBehaviorReport_TransitReport& from);
4044  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4045  bool IsInitialized() const final;
4046 
4047  size_t ByteSizeLong() const final;
4048  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4049  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4050  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4051  int GetCachedSize() const final { return _cached_size_.Get(); }
4052 
4053  private:
4054  inline void SharedCtor();
4055  inline void SharedDtor();
4056  void SetCachedSize(int size) const final;
4057  void InternalSwap(IvPBehaviorReport_TransitReport* other);
4058  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4059  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4060  return "jaiabot.protobuf.IvPBehaviorReport.TransitReport";
4061  }
4062  protected:
4063  explicit IvPBehaviorReport_TransitReport(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4064  private:
4065  static void ArenaDtor(void* object);
4066  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4067  public:
4068 
4069  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4070  private:
4071  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4072  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
4073  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
4074  }
4075 
4076  public:
4077 
4078  // nested types ----------------------------------------------------
4079 
4080  // accessors -------------------------------------------------------
4081 
4082  enum : int {
4083  kWaypointReachedFieldNumber = 1,
4084  };
4085  // optional bool waypoint_reached = 1 [default = false];
4086  bool has_waypoint_reached() const;
4087  private:
4088  bool _internal_has_waypoint_reached() const;
4089  public:
4091  bool waypoint_reached() const;
4092  void set_waypoint_reached(bool value);
4093  private:
4094  bool _internal_waypoint_reached() const;
4095  void _internal_set_waypoint_reached(bool value);
4096  public:
4097 
4098  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorReport.TransitReport)
4099  private:
4100  class _Internal;
4101 
4102  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
4103  typedef void InternalArenaConstructable_;
4104  typedef void DestructorSkippable_;
4105  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
4106  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4107  bool waypoint_reached_;
4108  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
4109 };
4110 // -------------------------------------------------------------------
4111 
4112 class IvPBehaviorReport PROTOBUF_FINAL :
4113  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IvPBehaviorReport) */ {
4114  public:
4115  inline IvPBehaviorReport() : IvPBehaviorReport(nullptr) {};
4117 
4118  IvPBehaviorReport(const IvPBehaviorReport& from);
4119  IvPBehaviorReport(IvPBehaviorReport&& from) noexcept
4120  : IvPBehaviorReport() {
4121  *this = ::std::move(from);
4122  }
4123 
4124  inline IvPBehaviorReport& operator=(const IvPBehaviorReport& from) {
4125  CopyFrom(from);
4126  return *this;
4127  }
4128  inline IvPBehaviorReport& operator=(IvPBehaviorReport&& from) noexcept {
4129  if (GetArena() == from.GetArena()) {
4130  if (this != &from) InternalSwap(&from);
4131  } else {
4132  CopyFrom(from);
4133  }
4134  return *this;
4135  }
4136 
4137  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
4138  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
4139  }
4140  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
4141  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4142  }
4143 
4144  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4145  return GetDescriptor();
4146  }
4147  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4148  return GetMetadataStatic().descriptor;
4149  }
4150  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4151  return GetMetadataStatic().reflection;
4152  }
4153  static const IvPBehaviorReport& default_instance();
4154 
4156  kTransit = 1,
4157  BEHAVIOR_NOT_SET = 0,
4158  };
4159 
4160  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4161  static inline const IvPBehaviorReport* internal_default_instance() {
4162  return reinterpret_cast<const IvPBehaviorReport*>(
4164  }
4165  static constexpr int kIndexInFileMessages =
4166  17;
4167 
4168  friend void swap(IvPBehaviorReport& a, IvPBehaviorReport& b) {
4169  a.Swap(&b);
4170  }
4171  inline void Swap(IvPBehaviorReport* other) {
4172  if (other == this) return;
4173  if (GetArena() == other->GetArena()) {
4174  InternalSwap(other);
4175  } else {
4176  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
4177  }
4178  }
4179  void UnsafeArenaSwap(IvPBehaviorReport* other) {
4180  if (other == this) return;
4181  GOOGLE_DCHECK(GetArena() == other->GetArena());
4182  InternalSwap(other);
4183  }
4184 
4185  // implements Message ----------------------------------------------
4186 
4187  inline IvPBehaviorReport* New() const final {
4188  return CreateMaybeMessage<IvPBehaviorReport>(nullptr);
4189  }
4190 
4191  IvPBehaviorReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4192  return CreateMaybeMessage<IvPBehaviorReport>(arena);
4193  }
4194  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4195  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4196  void CopyFrom(const IvPBehaviorReport& from);
4197  void MergeFrom(const IvPBehaviorReport& from);
4198  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4199  bool IsInitialized() const final;
4200 
4201  size_t ByteSizeLong() const final;
4202  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4203  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4204  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4205  int GetCachedSize() const final { return _cached_size_.Get(); }
4206 
4207  private:
4208  inline void SharedCtor();
4209  inline void SharedDtor();
4210  void SetCachedSize(int size) const final;
4211  void InternalSwap(IvPBehaviorReport* other);
4212  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4213  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4214  return "jaiabot.protobuf.IvPBehaviorReport";
4215  }
4216  protected:
4217  explicit IvPBehaviorReport(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4218  private:
4219  static void ArenaDtor(void* object);
4220  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4221  public:
4222 
4223  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4224  private:
4225  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4226  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
4227  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
4228  }
4229 
4230  public:
4231 
4232  // nested types ----------------------------------------------------
4233 
4234  typedef IvPBehaviorReport_TransitReport TransitReport;
4235 
4236  // accessors -------------------------------------------------------
4237 
4238  enum : int {
4239  kTransitFieldNumber = 1,
4240  };
4241  // .jaiabot.protobuf.IvPBehaviorReport.TransitReport transit = 1;
4242  bool has_transit() const;
4243  private:
4244  bool _internal_has_transit() const;
4245  public:
4247  const ::jaiabot::protobuf::IvPBehaviorReport_TransitReport& transit() const;
4248  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* release_transit();
4249  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* mutable_transit();
4250  void set_allocated_transit(::jaiabot::protobuf::IvPBehaviorReport_TransitReport* transit);
4251  private:
4252  const ::jaiabot::protobuf::IvPBehaviorReport_TransitReport& _internal_transit() const;
4253  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* _internal_mutable_transit();
4254  public:
4256  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* transit);
4257  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* unsafe_arena_release_transit();
4258 
4261  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IvPBehaviorReport)
4262  private:
4263  class _Internal;
4264  void set_has_transit();
4265 
4266  inline bool has_behavior() const;
4267  inline void clear_has_behavior();
4268 
4269  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
4270  typedef void InternalArenaConstructable_;
4271  typedef void DestructorSkippable_;
4272  union BehaviorUnion {
4273  BehaviorUnion() {}
4274  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* transit_;
4275  } behavior_;
4276  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4277  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
4278 
4279  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
4280 };
4281 // -------------------------------------------------------------------
4282 
4283 class MissionTpvMeetsGpsReq PROTOBUF_FINAL :
4284  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.MissionTpvMeetsGpsReq) */ {
4285  public:
4286  inline MissionTpvMeetsGpsReq() : MissionTpvMeetsGpsReq(nullptr) {};
4288 
4289  MissionTpvMeetsGpsReq(const MissionTpvMeetsGpsReq& from);
4290  MissionTpvMeetsGpsReq(MissionTpvMeetsGpsReq&& from) noexcept
4291  : MissionTpvMeetsGpsReq() {
4292  *this = ::std::move(from);
4293  }
4294 
4295  inline MissionTpvMeetsGpsReq& operator=(const MissionTpvMeetsGpsReq& from) {
4296  CopyFrom(from);
4297  return *this;
4298  }
4299  inline MissionTpvMeetsGpsReq& operator=(MissionTpvMeetsGpsReq&& from) noexcept {
4300  if (GetArena() == from.GetArena()) {
4301  if (this != &from) InternalSwap(&from);
4302  } else {
4303  CopyFrom(from);
4304  }
4305  return *this;
4306  }
4307 
4308  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
4309  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
4310  }
4311  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
4312  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4313  }
4314 
4315  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4316  return GetDescriptor();
4317  }
4318  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4319  return GetMetadataStatic().descriptor;
4320  }
4321  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4322  return GetMetadataStatic().reflection;
4323  }
4324  static const MissionTpvMeetsGpsReq& default_instance();
4325 
4326  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4327  static inline const MissionTpvMeetsGpsReq* internal_default_instance() {
4328  return reinterpret_cast<const MissionTpvMeetsGpsReq*>(
4330  }
4331  static constexpr int kIndexInFileMessages =
4332  18;
4333 
4334  friend void swap(MissionTpvMeetsGpsReq& a, MissionTpvMeetsGpsReq& b) {
4335  a.Swap(&b);
4336  }
4337  inline void Swap(MissionTpvMeetsGpsReq* other) {
4338  if (other == this) return;
4339  if (GetArena() == other->GetArena()) {
4340  InternalSwap(other);
4341  } else {
4342  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
4343  }
4344  }
4345  void UnsafeArenaSwap(MissionTpvMeetsGpsReq* other) {
4346  if (other == this) return;
4347  GOOGLE_DCHECK(GetArena() == other->GetArena());
4348  InternalSwap(other);
4349  }
4350 
4351  // implements Message ----------------------------------------------
4352 
4353  inline MissionTpvMeetsGpsReq* New() const final {
4354  return CreateMaybeMessage<MissionTpvMeetsGpsReq>(nullptr);
4355  }
4356 
4357  MissionTpvMeetsGpsReq* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4358  return CreateMaybeMessage<MissionTpvMeetsGpsReq>(arena);
4359  }
4360  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4361  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4362  void CopyFrom(const MissionTpvMeetsGpsReq& from);
4363  void MergeFrom(const MissionTpvMeetsGpsReq& from);
4364  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4365  bool IsInitialized() const final;
4366 
4367  size_t ByteSizeLong() const final;
4368  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4369  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4370  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4371  int GetCachedSize() const final { return _cached_size_.Get(); }
4372 
4373  private:
4374  inline void SharedCtor();
4375  inline void SharedDtor();
4376  void SetCachedSize(int size) const final;
4377  void InternalSwap(MissionTpvMeetsGpsReq* other);
4378  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4379  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4380  return "jaiabot.protobuf.MissionTpvMeetsGpsReq";
4381  }
4382  protected:
4383  explicit MissionTpvMeetsGpsReq(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4384  private:
4385  static void ArenaDtor(void* object);
4386  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
4387  public:
4388 
4389  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4390  private:
4391  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4392  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fmission_2eproto);
4393  return ::descriptor_table_jaiabot_2fmessages_2fmission_2eproto.file_level_metadata[kIndexInFileMessages];
4394  }
4395 
4396  public:
4397 
4398  // nested types ----------------------------------------------------
4399 
4400  // accessors -------------------------------------------------------
4401 
4402  enum : int {
4403  kTpvFieldNumber = 1,
4404  };
4405  // optional .goby.middleware.protobuf.gpsd.TimePositionVelocity tpv = 1;
4406  bool has_tpv() const;
4407  private:
4408  bool _internal_has_tpv() const;
4409  public:
4410  void clear_tpv();
4411  const ::goby::middleware::protobuf::gpsd::TimePositionVelocity& tpv() const;
4412  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* release_tpv();
4413  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* mutable_tpv();
4414  void set_allocated_tpv(::goby::middleware::protobuf::gpsd::TimePositionVelocity* tpv);
4415  private:
4416  const ::goby::middleware::protobuf::gpsd::TimePositionVelocity& _internal_tpv() const;
4417  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* _internal_mutable_tpv();
4418  public:
4420  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* tpv);
4421  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* unsafe_arena_release_tpv();
4422 
4423  // @@protoc_insertion_point(class_scope:jaiabot.protobuf.MissionTpvMeetsGpsReq)
4424  private:
4425  class _Internal;
4426 
4427  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
4428  typedef void InternalArenaConstructable_;
4429  typedef void DestructorSkippable_;
4430  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
4431  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4432  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* tpv_;
4433  friend struct ::TableStruct_jaiabot_2fmessages_2fmission_2eproto;
4434 };
4435 // ===================================================================
4436 
4437 
4438 // ===================================================================
4439 
4440 #ifdef __GNUC__
4441  #pragma GCC diagnostic push
4442  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
4443 #endif // __GNUC__
4444 // Speeds
4445 
4446 // optional double transit = 1 [default = 2, (.dccl.field) = {
4447 inline bool Speeds::_internal_has_transit() const {
4448  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4449  return value;
4450 }
4451 inline bool Speeds::has_transit() const {
4452  return _internal_has_transit();
4453 }
4454 inline void Speeds::clear_transit() {
4455  transit_ = 2;
4456  _has_bits_[0] &= ~0x00000001u;
4457 }
4458 inline double Speeds::_internal_transit() const {
4459  return transit_;
4460 }
4461 inline double Speeds::transit() const {
4462  // @@protoc_insertion_point(field_get:jaiabot.protobuf.Speeds.transit)
4463  return _internal_transit();
4464 }
4465 inline void Speeds::_internal_set_transit(double value) {
4466  _has_bits_[0] |= 0x00000001u;
4467  transit_ = value;
4468 }
4469 inline void Speeds::set_transit(double value) {
4470  _internal_set_transit(value);
4471  // @@protoc_insertion_point(field_set:jaiabot.protobuf.Speeds.transit)
4472 }
4473 
4474 // optional double stationkeep_outer = 2 [default = 0.5, (.dccl.field) = {
4475 inline bool Speeds::_internal_has_stationkeep_outer() const {
4476  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4477  return value;
4478 }
4479 inline bool Speeds::has_stationkeep_outer() const {
4480  return _internal_has_stationkeep_outer();
4481 }
4482 inline void Speeds::clear_stationkeep_outer() {
4483  stationkeep_outer_ = 0.5;
4484  _has_bits_[0] &= ~0x00000002u;
4485 }
4486 inline double Speeds::_internal_stationkeep_outer() const {
4487  return stationkeep_outer_;
4488 }
4489 inline double Speeds::stationkeep_outer() const {
4490  // @@protoc_insertion_point(field_get:jaiabot.protobuf.Speeds.stationkeep_outer)
4491  return _internal_stationkeep_outer();
4492 }
4493 inline void Speeds::_internal_set_stationkeep_outer(double value) {
4494  _has_bits_[0] |= 0x00000002u;
4495  stationkeep_outer_ = value;
4496 }
4497 inline void Speeds::set_stationkeep_outer(double value) {
4498  _internal_set_stationkeep_outer(value);
4499  // @@protoc_insertion_point(field_set:jaiabot.protobuf.Speeds.stationkeep_outer)
4500 }
4501 
4502 // -------------------------------------------------------------------
4503 
4504 // BottomDepthSafetyParams
4505 
4506 // required double constant_heading = 1 [default = 0, (.dccl.field) = {
4507 inline bool BottomDepthSafetyParams::_internal_has_constant_heading() const {
4508  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4509  return value;
4510 }
4511 inline bool BottomDepthSafetyParams::has_constant_heading() const {
4512  return _internal_has_constant_heading();
4513 }
4514 inline void BottomDepthSafetyParams::clear_constant_heading() {
4515  constant_heading_ = 0;
4516  _has_bits_[0] &= ~0x00000001u;
4517 }
4518 inline double BottomDepthSafetyParams::_internal_constant_heading() const {
4519  return constant_heading_;
4520 }
4521 inline double BottomDepthSafetyParams::constant_heading() const {
4522  // @@protoc_insertion_point(field_get:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading)
4523  return _internal_constant_heading();
4524 }
4525 inline void BottomDepthSafetyParams::_internal_set_constant_heading(double value) {
4526  _has_bits_[0] |= 0x00000001u;
4527  constant_heading_ = value;
4528 }
4529 inline void BottomDepthSafetyParams::set_constant_heading(double value) {
4530  _internal_set_constant_heading(value);
4531  // @@protoc_insertion_point(field_set:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading)
4532 }
4533 
4534 // required int32 constant_heading_time = 2 [default = 0, (.dccl.field) = {
4535 inline bool BottomDepthSafetyParams::_internal_has_constant_heading_time() const {
4536  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4537  return value;
4538 }
4539 inline bool BottomDepthSafetyParams::has_constant_heading_time() const {
4540  return _internal_has_constant_heading_time();
4541 }
4542 inline void BottomDepthSafetyParams::clear_constant_heading_time() {
4543  constant_heading_time_ = 0;
4544  _has_bits_[0] &= ~0x00000002u;
4545 }
4546 inline ::PROTOBUF_NAMESPACE_ID::int32 BottomDepthSafetyParams::_internal_constant_heading_time() const {
4547  return constant_heading_time_;
4548 }
4549 inline ::PROTOBUF_NAMESPACE_ID::int32 BottomDepthSafetyParams::constant_heading_time() const {
4550  // @@protoc_insertion_point(field_get:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading_time)
4551  return _internal_constant_heading_time();
4552 }
4553 inline void BottomDepthSafetyParams::_internal_set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
4554  _has_bits_[0] |= 0x00000002u;
4555  constant_heading_time_ = value;
4556 }
4557 inline void BottomDepthSafetyParams::set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
4558  _internal_set_constant_heading_time(value);
4559  // @@protoc_insertion_point(field_set:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading_time)
4560 }
4561 
4562 // required double constant_heading_speed = 3 [default = 2, (.dccl.field) = {
4563 inline bool BottomDepthSafetyParams::_internal_has_constant_heading_speed() const {
4564  bool value = (_has_bits_[0] & 0x00000004u) != 0;
4565  return value;
4566 }
4567 inline bool BottomDepthSafetyParams::has_constant_heading_speed() const {
4568  return _internal_has_constant_heading_speed();
4569 }
4570 inline void BottomDepthSafetyParams::clear_constant_heading_speed() {
4571  constant_heading_speed_ = 2;
4572  _has_bits_[0] &= ~0x00000004u;
4573 }
4574 inline double BottomDepthSafetyParams::_internal_constant_heading_speed() const {
4575  return constant_heading_speed_;
4576 }
4577 inline double BottomDepthSafetyParams::constant_heading_speed() const {
4578  // @@protoc_insertion_point(field_get:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading_speed)
4579  return _internal_constant_heading_speed();
4580 }
4581 inline void BottomDepthSafetyParams::_internal_set_constant_heading_speed(double value) {
4582  _has_bits_[0] |= 0x00000004u;
4583  constant_heading_speed_ = value;
4584 }
4585 inline void BottomDepthSafetyParams::set_constant_heading_speed(double value) {
4586  _internal_set_constant_heading_speed(value);
4587  // @@protoc_insertion_point(field_set:jaiabot.protobuf.BottomDepthSafetyParams.constant_heading_speed)
4588 }
4589 
4590 // required double safety_depth = 4 [default = -1, (.dccl.field) = {
4591 inline bool BottomDepthSafetyParams::_internal_has_safety_depth() const {
4592  bool value = (_has_bits_[0] & 0x00000008u) != 0;
4593  return value;
4594 }
4595 inline bool BottomDepthSafetyParams::has_safety_depth() const {
4596  return _internal_has_safety_depth();
4597 }
4598 inline void BottomDepthSafetyParams::clear_safety_depth() {
4599  safety_depth_ = -1;
4600  _has_bits_[0] &= ~0x00000008u;
4601 }
4602 inline double BottomDepthSafetyParams::_internal_safety_depth() const {
4603  return safety_depth_;
4604 }
4605 inline double BottomDepthSafetyParams::safety_depth() const {
4606  // @@protoc_insertion_point(field_get:jaiabot.protobuf.BottomDepthSafetyParams.safety_depth)
4607  return _internal_safety_depth();
4608 }
4609 inline void BottomDepthSafetyParams::_internal_set_safety_depth(double value) {
4610  _has_bits_[0] |= 0x00000008u;
4611  safety_depth_ = value;
4612 }
4613 inline void BottomDepthSafetyParams::set_safety_depth(double value) {
4614  _internal_set_safety_depth(value);
4615  // @@protoc_insertion_point(field_set:jaiabot.protobuf.BottomDepthSafetyParams.safety_depth)
4616 }
4617 
4618 // -------------------------------------------------------------------
4619 
4620 // MissionReport
4621 
4622 // required .jaiabot.protobuf.MissionState state = 10;
4623 inline bool MissionReport::_internal_has_state() const {
4624  bool value = (_has_bits_[0] & 0x00000004u) != 0;
4625  return value;
4626 }
4627 inline bool MissionReport::has_state() const {
4628  return _internal_has_state();
4629 }
4630 inline void MissionReport::clear_state() {
4631  state_ = 0;
4632  _has_bits_[0] &= ~0x00000004u;
4633 }
4634 inline ::jaiabot::protobuf::MissionState MissionReport::_internal_state() const {
4635  return static_cast< ::jaiabot::protobuf::MissionState >(state_);
4636 }
4637 inline ::jaiabot::protobuf::MissionState MissionReport::state() const {
4638  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.state)
4639  return _internal_state();
4640 }
4641 inline void MissionReport::_internal_set_state(::jaiabot::protobuf::MissionState value) {
4642  assert(::jaiabot::protobuf::MissionState_IsValid(value));
4643  _has_bits_[0] |= 0x00000004u;
4644  state_ = value;
4645 }
4646 inline void MissionReport::set_state(::jaiabot::protobuf::MissionState value) {
4647  _internal_set_state(value);
4648  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.state)
4649 }
4650 
4651 // optional int32 active_goal = 11;
4652 inline bool MissionReport::_internal_has_active_goal() const {
4653  bool value = (_has_bits_[0] & 0x00000008u) != 0;
4654  return value;
4655 }
4656 inline bool MissionReport::has_active_goal() const {
4657  return _internal_has_active_goal();
4658 }
4659 inline void MissionReport::clear_active_goal() {
4660  active_goal_ = 0;
4661  _has_bits_[0] &= ~0x00000008u;
4662 }
4663 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::_internal_active_goal() const {
4664  return active_goal_;
4665 }
4666 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::active_goal() const {
4667  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.active_goal)
4668  return _internal_active_goal();
4669 }
4670 inline void MissionReport::_internal_set_active_goal(::PROTOBUF_NAMESPACE_ID::int32 value) {
4671  _has_bits_[0] |= 0x00000008u;
4672  active_goal_ = value;
4673 }
4674 inline void MissionReport::set_active_goal(::PROTOBUF_NAMESPACE_ID::int32 value) {
4675  _internal_set_active_goal(value);
4676  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.active_goal)
4677 }
4678 
4679 // optional .jaiabot.protobuf.GeographicCoordinate active_goal_location = 12;
4680 inline bool MissionReport::_internal_has_active_goal_location() const {
4681  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4682  PROTOBUF_ASSUME(!value || active_goal_location_ != nullptr);
4683  return value;
4684 }
4685 inline bool MissionReport::has_active_goal_location() const {
4686  return _internal_has_active_goal_location();
4687 }
4688 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionReport::_internal_active_goal_location() const {
4689  const ::jaiabot::protobuf::GeographicCoordinate* p = active_goal_location_;
4690  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate*>(
4692 }
4693 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionReport::active_goal_location() const {
4694  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.active_goal_location)
4695  return _internal_active_goal_location();
4696 }
4697 inline void MissionReport::unsafe_arena_set_allocated_active_goal_location(
4698  ::jaiabot::protobuf::GeographicCoordinate* active_goal_location) {
4699  if (GetArena() == nullptr) {
4700  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(active_goal_location_);
4701  }
4702  active_goal_location_ = active_goal_location;
4703  if (active_goal_location) {
4704  _has_bits_[0] |= 0x00000001u;
4705  } else {
4706  _has_bits_[0] &= ~0x00000001u;
4707  }
4708  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionReport.active_goal_location)
4709 }
4710 inline ::jaiabot::protobuf::GeographicCoordinate* MissionReport::release_active_goal_location() {
4711  auto temp = unsafe_arena_release_active_goal_location();
4712  if (GetArena() != nullptr) {
4713  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4714  }
4715  return temp;
4716 }
4717 inline ::jaiabot::protobuf::GeographicCoordinate* MissionReport::unsafe_arena_release_active_goal_location() {
4718  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionReport.active_goal_location)
4719  _has_bits_[0] &= ~0x00000001u;
4720  ::jaiabot::protobuf::GeographicCoordinate* temp = active_goal_location_;
4721  active_goal_location_ = nullptr;
4722  return temp;
4723 }
4724 inline ::jaiabot::protobuf::GeographicCoordinate* MissionReport::_internal_mutable_active_goal_location() {
4725  _has_bits_[0] |= 0x00000001u;
4726  if (active_goal_location_ == nullptr) {
4727  auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArena());
4728  active_goal_location_ = p;
4729  }
4730  return active_goal_location_;
4731 }
4732 inline ::jaiabot::protobuf::GeographicCoordinate* MissionReport::mutable_active_goal_location() {
4733  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionReport.active_goal_location)
4734  return _internal_mutable_active_goal_location();
4735 }
4736 inline void MissionReport::set_allocated_active_goal_location(::jaiabot::protobuf::GeographicCoordinate* active_goal_location) {
4737  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
4738  if (message_arena == nullptr) {
4739  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(active_goal_location_);
4740  }
4741  if (active_goal_location) {
4742  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4743  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(active_goal_location)->GetArena();
4744  if (message_arena != submessage_arena) {
4745  active_goal_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4746  message_arena, active_goal_location, submessage_arena);
4747  }
4748  _has_bits_[0] |= 0x00000001u;
4749  } else {
4750  _has_bits_[0] &= ~0x00000001u;
4751  }
4752  active_goal_location_ = active_goal_location;
4753  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionReport.active_goal_location)
4754 }
4755 
4756 // optional double distance_to_active_goal = 13 [(.dccl.field) = {
4757 inline bool MissionReport::_internal_has_distance_to_active_goal() const {
4758  bool value = (_has_bits_[0] & 0x00000010u) != 0;
4759  return value;
4760 }
4761 inline bool MissionReport::has_distance_to_active_goal() const {
4762  return _internal_has_distance_to_active_goal();
4763 }
4764 inline void MissionReport::clear_distance_to_active_goal() {
4765  distance_to_active_goal_ = 0;
4766  _has_bits_[0] &= ~0x00000010u;
4767 }
4768 inline double MissionReport::_internal_distance_to_active_goal() const {
4769  return distance_to_active_goal_;
4770 }
4771 inline double MissionReport::distance_to_active_goal() const {
4772  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.distance_to_active_goal)
4773  return _internal_distance_to_active_goal();
4774 }
4775 inline void MissionReport::_internal_set_distance_to_active_goal(double value) {
4776  _has_bits_[0] |= 0x00000010u;
4777  distance_to_active_goal_ = value;
4778 }
4779 inline void MissionReport::set_distance_to_active_goal(double value) {
4780  _internal_set_distance_to_active_goal(value);
4781  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.distance_to_active_goal)
4782 }
4783 
4784 // optional uint32 active_goal_timeout = 14 [(.dccl.field) = {
4785 inline bool MissionReport::_internal_has_active_goal_timeout() const {
4786  bool value = (_has_bits_[0] & 0x00000020u) != 0;
4787  return value;
4788 }
4789 inline bool MissionReport::has_active_goal_timeout() const {
4790  return _internal_has_active_goal_timeout();
4791 }
4792 inline void MissionReport::clear_active_goal_timeout() {
4793  active_goal_timeout_ = 0u;
4794  _has_bits_[0] &= ~0x00000020u;
4795 }
4796 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionReport::_internal_active_goal_timeout() const {
4797  return active_goal_timeout_;
4798 }
4799 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionReport::active_goal_timeout() const {
4800  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.active_goal_timeout)
4801  return _internal_active_goal_timeout();
4802 }
4803 inline void MissionReport::_internal_set_active_goal_timeout(::PROTOBUF_NAMESPACE_ID::uint32 value) {
4804  _has_bits_[0] |= 0x00000020u;
4805  active_goal_timeout_ = value;
4806 }
4807 inline void MissionReport::set_active_goal_timeout(::PROTOBUF_NAMESPACE_ID::uint32 value) {
4808  _internal_set_active_goal_timeout(value);
4809  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.active_goal_timeout)
4810 }
4811 
4812 // optional int32 data_offload_percentage = 15 [(.dccl.field) = {
4813 inline bool MissionReport::_internal_has_data_offload_percentage() const {
4814  bool value = (_has_bits_[0] & 0x00000040u) != 0;
4815  return value;
4816 }
4817 inline bool MissionReport::has_data_offload_percentage() const {
4818  return _internal_has_data_offload_percentage();
4819 }
4820 inline void MissionReport::clear_data_offload_percentage() {
4821  data_offload_percentage_ = 0;
4822  _has_bits_[0] &= ~0x00000040u;
4823 }
4824 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::_internal_data_offload_percentage() const {
4825  return data_offload_percentage_;
4826 }
4827 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::data_offload_percentage() const {
4828  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.data_offload_percentage)
4829  return _internal_data_offload_percentage();
4830 }
4831 inline void MissionReport::_internal_set_data_offload_percentage(::PROTOBUF_NAMESPACE_ID::int32 value) {
4832  _has_bits_[0] |= 0x00000040u;
4833  data_offload_percentage_ = value;
4834 }
4835 inline void MissionReport::set_data_offload_percentage(::PROTOBUF_NAMESPACE_ID::int32 value) {
4836  _internal_set_data_offload_percentage(value);
4837  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.data_offload_percentage)
4838 }
4839 
4840 // optional int32 repeat_index = 16 [(.dccl.field) = {
4841 inline bool MissionReport::_internal_has_repeat_index() const {
4842  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4843  return value;
4844 }
4845 inline bool MissionReport::has_repeat_index() const {
4846  return _internal_has_repeat_index();
4847 }
4848 inline void MissionReport::clear_repeat_index() {
4849  repeat_index_ = 0;
4850  _has_bits_[0] &= ~0x00000002u;
4851 }
4852 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::_internal_repeat_index() const {
4853  return repeat_index_;
4854 }
4855 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionReport::repeat_index() const {
4856  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionReport.repeat_index)
4857  return _internal_repeat_index();
4858 }
4859 inline void MissionReport::_internal_set_repeat_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
4860  _has_bits_[0] |= 0x00000002u;
4861  repeat_index_ = value;
4862 }
4863 inline void MissionReport::set_repeat_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
4864  _internal_set_repeat_index(value);
4865  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionReport.repeat_index)
4866 }
4867 
4868 // -------------------------------------------------------------------
4869 
4870 // MissionTask_DiveParameters
4871 
4872 // optional double max_depth = 1 [default = 60, (.dccl.field) = {
4873 inline bool MissionTask_DiveParameters::_internal_has_max_depth() const {
4874  bool value = (_has_bits_[0] & 0x00000004u) != 0;
4875  return value;
4876 }
4877 inline bool MissionTask_DiveParameters::has_max_depth() const {
4878  return _internal_has_max_depth();
4879 }
4880 inline void MissionTask_DiveParameters::clear_max_depth() {
4881  max_depth_ = 60;
4882  _has_bits_[0] &= ~0x00000004u;
4883 }
4884 inline double MissionTask_DiveParameters::_internal_max_depth() const {
4885  return max_depth_;
4886 }
4887 inline double MissionTask_DiveParameters::max_depth() const {
4888  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.DiveParameters.max_depth)
4889  return _internal_max_depth();
4890 }
4891 inline void MissionTask_DiveParameters::_internal_set_max_depth(double value) {
4892  _has_bits_[0] |= 0x00000004u;
4893  max_depth_ = value;
4894 }
4895 inline void MissionTask_DiveParameters::set_max_depth(double value) {
4896  _internal_set_max_depth(value);
4897  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.DiveParameters.max_depth)
4898 }
4899 
4900 // optional double depth_interval = 2 [default = inf, (.dccl.field) = {
4901 inline bool MissionTask_DiveParameters::_internal_has_depth_interval() const {
4902  bool value = (_has_bits_[0] & 0x00000008u) != 0;
4903  return value;
4904 }
4905 inline bool MissionTask_DiveParameters::has_depth_interval() const {
4906  return _internal_has_depth_interval();
4907 }
4908 inline void MissionTask_DiveParameters::clear_depth_interval() {
4909  depth_interval_ = std::numeric_limits<double>::infinity();
4910  _has_bits_[0] &= ~0x00000008u;
4911 }
4912 inline double MissionTask_DiveParameters::_internal_depth_interval() const {
4913  return depth_interval_;
4914 }
4915 inline double MissionTask_DiveParameters::depth_interval() const {
4916  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.DiveParameters.depth_interval)
4917  return _internal_depth_interval();
4918 }
4919 inline void MissionTask_DiveParameters::_internal_set_depth_interval(double value) {
4920  _has_bits_[0] |= 0x00000008u;
4921  depth_interval_ = value;
4922 }
4923 inline void MissionTask_DiveParameters::set_depth_interval(double value) {
4924  _internal_set_depth_interval(value);
4925  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.DiveParameters.depth_interval)
4926 }
4927 
4928 // optional double hold_time = 3 [default = 0, (.dccl.field) = {
4929 inline bool MissionTask_DiveParameters::_internal_has_hold_time() const {
4930  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4931  return value;
4932 }
4933 inline bool MissionTask_DiveParameters::has_hold_time() const {
4934  return _internal_has_hold_time();
4935 }
4936 inline void MissionTask_DiveParameters::clear_hold_time() {
4937  hold_time_ = 0;
4938  _has_bits_[0] &= ~0x00000001u;
4939 }
4940 inline double MissionTask_DiveParameters::_internal_hold_time() const {
4941  return hold_time_;
4942 }
4943 inline double MissionTask_DiveParameters::hold_time() const {
4944  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.DiveParameters.hold_time)
4945  return _internal_hold_time();
4946 }
4947 inline void MissionTask_DiveParameters::_internal_set_hold_time(double value) {
4948  _has_bits_[0] |= 0x00000001u;
4949  hold_time_ = value;
4950 }
4951 inline void MissionTask_DiveParameters::set_hold_time(double value) {
4952  _internal_set_hold_time(value);
4953  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.DiveParameters.hold_time)
4954 }
4955 
4956 // optional bool bottom_dive = 4 [default = false, (.jaia.field) = {
4957 inline bool MissionTask_DiveParameters::_internal_has_bottom_dive() const {
4958  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4959  return value;
4960 }
4961 inline bool MissionTask_DiveParameters::has_bottom_dive() const {
4962  return _internal_has_bottom_dive();
4963 }
4964 inline void MissionTask_DiveParameters::clear_bottom_dive() {
4965  bottom_dive_ = false;
4966  _has_bits_[0] &= ~0x00000002u;
4967 }
4968 inline bool MissionTask_DiveParameters::_internal_bottom_dive() const {
4969  return bottom_dive_;
4970 }
4971 inline bool MissionTask_DiveParameters::bottom_dive() const {
4972  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.DiveParameters.bottom_dive)
4973  return _internal_bottom_dive();
4974 }
4975 inline void MissionTask_DiveParameters::_internal_set_bottom_dive(bool value) {
4976  _has_bits_[0] |= 0x00000002u;
4977  bottom_dive_ = value;
4978 }
4979 inline void MissionTask_DiveParameters::set_bottom_dive(bool value) {
4980  _internal_set_bottom_dive(value);
4981  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.DiveParameters.bottom_dive)
4982 }
4983 
4984 // -------------------------------------------------------------------
4985 
4986 // MissionTask_DriftParameters
4987 
4988 // optional int32 drift_time = 3 [default = 0, (.dccl.field) = {
4989 inline bool MissionTask_DriftParameters::_internal_has_drift_time() const {
4990  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4991  return value;
4992 }
4993 inline bool MissionTask_DriftParameters::has_drift_time() const {
4994  return _internal_has_drift_time();
4995 }
4996 inline void MissionTask_DriftParameters::clear_drift_time() {
4997  drift_time_ = 0;
4998  _has_bits_[0] &= ~0x00000001u;
4999 }
5000 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_DriftParameters::_internal_drift_time() const {
5001  return drift_time_;
5002 }
5003 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_DriftParameters::drift_time() const {
5004  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.DriftParameters.drift_time)
5005  return _internal_drift_time();
5006 }
5007 inline void MissionTask_DriftParameters::_internal_set_drift_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5008  _has_bits_[0] |= 0x00000001u;
5009  drift_time_ = value;
5010 }
5011 inline void MissionTask_DriftParameters::set_drift_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5012  _internal_set_drift_time(value);
5013  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.DriftParameters.drift_time)
5014 }
5015 
5016 // -------------------------------------------------------------------
5017 
5018 // MissionTask_ConstantHeadingParameters
5019 
5020 // optional double constant_heading = 1 [(.dccl.field) = {
5021 inline bool MissionTask_ConstantHeadingParameters::_internal_has_constant_heading() const {
5022  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5023  return value;
5024 }
5025 inline bool MissionTask_ConstantHeadingParameters::has_constant_heading() const {
5026  return _internal_has_constant_heading();
5027 }
5028 inline void MissionTask_ConstantHeadingParameters::clear_constant_heading() {
5029  constant_heading_ = 0;
5030  _has_bits_[0] &= ~0x00000001u;
5031 }
5032 inline double MissionTask_ConstantHeadingParameters::_internal_constant_heading() const {
5033  return constant_heading_;
5034 }
5035 inline double MissionTask_ConstantHeadingParameters::constant_heading() const {
5036  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading)
5037  return _internal_constant_heading();
5038 }
5039 inline void MissionTask_ConstantHeadingParameters::_internal_set_constant_heading(double value) {
5040  _has_bits_[0] |= 0x00000001u;
5041  constant_heading_ = value;
5042 }
5043 inline void MissionTask_ConstantHeadingParameters::set_constant_heading(double value) {
5044  _internal_set_constant_heading(value);
5045  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading)
5046 }
5047 
5048 // optional int32 constant_heading_time = 2 [default = 0, (.dccl.field) = {
5049 inline bool MissionTask_ConstantHeadingParameters::_internal_has_constant_heading_time() const {
5050  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5051  return value;
5052 }
5053 inline bool MissionTask_ConstantHeadingParameters::has_constant_heading_time() const {
5054  return _internal_has_constant_heading_time();
5055 }
5056 inline void MissionTask_ConstantHeadingParameters::clear_constant_heading_time() {
5057  constant_heading_time_ = 0;
5058  _has_bits_[0] &= ~0x00000002u;
5059 }
5060 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_ConstantHeadingParameters::_internal_constant_heading_time() const {
5061  return constant_heading_time_;
5062 }
5063 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_ConstantHeadingParameters::constant_heading_time() const {
5064  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading_time)
5065  return _internal_constant_heading_time();
5066 }
5067 inline void MissionTask_ConstantHeadingParameters::_internal_set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5068  _has_bits_[0] |= 0x00000002u;
5069  constant_heading_time_ = value;
5070 }
5071 inline void MissionTask_ConstantHeadingParameters::set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5072  _internal_set_constant_heading_time(value);
5073  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading_time)
5074 }
5075 
5076 // optional double constant_heading_speed = 3 [default = 2, (.dccl.field) = {
5077 inline bool MissionTask_ConstantHeadingParameters::_internal_has_constant_heading_speed() const {
5078  bool value = (_has_bits_[0] & 0x00000004u) != 0;
5079  return value;
5080 }
5081 inline bool MissionTask_ConstantHeadingParameters::has_constant_heading_speed() const {
5082  return _internal_has_constant_heading_speed();
5083 }
5084 inline void MissionTask_ConstantHeadingParameters::clear_constant_heading_speed() {
5085  constant_heading_speed_ = 2;
5086  _has_bits_[0] &= ~0x00000004u;
5087 }
5088 inline double MissionTask_ConstantHeadingParameters::_internal_constant_heading_speed() const {
5089  return constant_heading_speed_;
5090 }
5091 inline double MissionTask_ConstantHeadingParameters::constant_heading_speed() const {
5092  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading_speed)
5093  return _internal_constant_heading_speed();
5094 }
5095 inline void MissionTask_ConstantHeadingParameters::_internal_set_constant_heading_speed(double value) {
5096  _has_bits_[0] |= 0x00000004u;
5097  constant_heading_speed_ = value;
5098 }
5099 inline void MissionTask_ConstantHeadingParameters::set_constant_heading_speed(double value) {
5100  _internal_set_constant_heading_speed(value);
5101  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.ConstantHeadingParameters.constant_heading_speed)
5102 }
5103 
5104 // -------------------------------------------------------------------
5105 
5106 // MissionTask_StationKeepParameters
5107 
5108 // optional int32 station_keep_time = 1 [default = 10, (.dccl.field) = {
5109 inline bool MissionTask_StationKeepParameters::_internal_has_station_keep_time() const {
5110  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5111  return value;
5112 }
5113 inline bool MissionTask_StationKeepParameters::has_station_keep_time() const {
5114  return _internal_has_station_keep_time();
5115 }
5116 inline void MissionTask_StationKeepParameters::clear_station_keep_time() {
5117  station_keep_time_ = 10;
5118  _has_bits_[0] &= ~0x00000001u;
5119 }
5120 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_StationKeepParameters::_internal_station_keep_time() const {
5121  return station_keep_time_;
5122 }
5123 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionTask_StationKeepParameters::station_keep_time() const {
5124  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.StationKeepParameters.station_keep_time)
5125  return _internal_station_keep_time();
5126 }
5127 inline void MissionTask_StationKeepParameters::_internal_set_station_keep_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5128  _has_bits_[0] |= 0x00000001u;
5129  station_keep_time_ = value;
5130 }
5131 inline void MissionTask_StationKeepParameters::set_station_keep_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
5132  _internal_set_station_keep_time(value);
5133  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.StationKeepParameters.station_keep_time)
5134 }
5135 
5136 // -------------------------------------------------------------------
5137 
5138 // MissionTask
5139 
5140 // optional .jaiabot.protobuf.MissionTask.TaskType type = 1 [default = NONE, (.jaia.field) = {
5141 inline bool MissionTask::_internal_has_type() const {
5142  bool value = (_has_bits_[0] & 0x00000010u) != 0;
5143  return value;
5144 }
5145 inline bool MissionTask::has_type() const {
5146  return _internal_has_type();
5147 }
5148 inline void MissionTask::clear_type() {
5149  type_ = 0;
5150  _has_bits_[0] &= ~0x00000010u;
5151 }
5152 inline ::jaiabot::protobuf::MissionTask_TaskType MissionTask::_internal_type() const {
5153  return static_cast< ::jaiabot::protobuf::MissionTask_TaskType >(type_);
5154 }
5155 inline ::jaiabot::protobuf::MissionTask_TaskType MissionTask::type() const {
5156  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.type)
5157  return _internal_type();
5158 }
5159 inline void MissionTask::_internal_set_type(::jaiabot::protobuf::MissionTask_TaskType value) {
5161  _has_bits_[0] |= 0x00000010u;
5162  type_ = value;
5163 }
5164 inline void MissionTask::set_type(::jaiabot::protobuf::MissionTask_TaskType value) {
5165  _internal_set_type(value);
5166  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.type)
5167 }
5168 
5169 // optional .jaiabot.protobuf.MissionTask.DiveParameters dive = 2 [(.jaia.field) = {
5170 inline bool MissionTask::_internal_has_dive() const {
5171  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5172  PROTOBUF_ASSUME(!value || dive_ != nullptr);
5173  return value;
5174 }
5175 inline bool MissionTask::has_dive() const {
5176  return _internal_has_dive();
5177 }
5178 inline void MissionTask::clear_dive() {
5179  if (dive_ != nullptr) dive_->Clear();
5180  _has_bits_[0] &= ~0x00000001u;
5181 }
5182 inline const ::jaiabot::protobuf::MissionTask_DiveParameters& MissionTask::_internal_dive() const {
5183  const ::jaiabot::protobuf::MissionTask_DiveParameters* p = dive_;
5184  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionTask_DiveParameters*>(
5186 }
5187 inline const ::jaiabot::protobuf::MissionTask_DiveParameters& MissionTask::dive() const {
5188  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.dive)
5189  return _internal_dive();
5190 }
5191 inline void MissionTask::unsafe_arena_set_allocated_dive(
5192  ::jaiabot::protobuf::MissionTask_DiveParameters* dive) {
5193  if (GetArena() == nullptr) {
5194  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(dive_);
5195  }
5196  dive_ = dive;
5197  if (dive) {
5198  _has_bits_[0] |= 0x00000001u;
5199  } else {
5200  _has_bits_[0] &= ~0x00000001u;
5201  }
5202  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionTask.dive)
5203 }
5204 inline ::jaiabot::protobuf::MissionTask_DiveParameters* MissionTask::release_dive() {
5205  auto temp = unsafe_arena_release_dive();
5206  if (GetArena() != nullptr) {
5207  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5208  }
5209  return temp;
5210 }
5211 inline ::jaiabot::protobuf::MissionTask_DiveParameters* MissionTask::unsafe_arena_release_dive() {
5212  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionTask.dive)
5213  _has_bits_[0] &= ~0x00000001u;
5214  ::jaiabot::protobuf::MissionTask_DiveParameters* temp = dive_;
5215  dive_ = nullptr;
5216  return temp;
5217 }
5218 inline ::jaiabot::protobuf::MissionTask_DiveParameters* MissionTask::_internal_mutable_dive() {
5219  _has_bits_[0] |= 0x00000001u;
5220  if (dive_ == nullptr) {
5221  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionTask_DiveParameters>(GetArena());
5222  dive_ = p;
5223  }
5224  return dive_;
5225 }
5226 inline ::jaiabot::protobuf::MissionTask_DiveParameters* MissionTask::mutable_dive() {
5227  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionTask.dive)
5228  return _internal_mutable_dive();
5229 }
5230 inline void MissionTask::set_allocated_dive(::jaiabot::protobuf::MissionTask_DiveParameters* dive) {
5231  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5232  if (message_arena == nullptr) {
5233  delete dive_;
5234  }
5235  if (dive) {
5236  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5237  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(dive);
5238  if (message_arena != submessage_arena) {
5239  dive = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5240  message_arena, dive, submessage_arena);
5241  }
5242  _has_bits_[0] |= 0x00000001u;
5243  } else {
5244  _has_bits_[0] &= ~0x00000001u;
5245  }
5246  dive_ = dive;
5247  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionTask.dive)
5248 }
5249 
5250 // optional .jaiabot.protobuf.MissionTask.DriftParameters surface_drift = 3 [(.jaia.field) = {
5251 inline bool MissionTask::_internal_has_surface_drift() const {
5252  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5253  PROTOBUF_ASSUME(!value || surface_drift_ != nullptr);
5254  return value;
5255 }
5256 inline bool MissionTask::has_surface_drift() const {
5257  return _internal_has_surface_drift();
5258 }
5259 inline void MissionTask::clear_surface_drift() {
5260  if (surface_drift_ != nullptr) surface_drift_->Clear();
5261  _has_bits_[0] &= ~0x00000002u;
5262 }
5263 inline const ::jaiabot::protobuf::MissionTask_DriftParameters& MissionTask::_internal_surface_drift() const {
5264  const ::jaiabot::protobuf::MissionTask_DriftParameters* p = surface_drift_;
5265  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionTask_DriftParameters*>(
5267 }
5268 inline const ::jaiabot::protobuf::MissionTask_DriftParameters& MissionTask::surface_drift() const {
5269  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.surface_drift)
5270  return _internal_surface_drift();
5271 }
5272 inline void MissionTask::unsafe_arena_set_allocated_surface_drift(
5273  ::jaiabot::protobuf::MissionTask_DriftParameters* surface_drift) {
5274  if (GetArena() == nullptr) {
5275  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(surface_drift_);
5276  }
5277  surface_drift_ = surface_drift;
5278  if (surface_drift) {
5279  _has_bits_[0] |= 0x00000002u;
5280  } else {
5281  _has_bits_[0] &= ~0x00000002u;
5282  }
5283  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionTask.surface_drift)
5284 }
5285 inline ::jaiabot::protobuf::MissionTask_DriftParameters* MissionTask::release_surface_drift() {
5286  auto temp = unsafe_arena_release_surface_drift();
5287  if (GetArena() != nullptr) {
5288  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5289  }
5290  return temp;
5291 }
5292 inline ::jaiabot::protobuf::MissionTask_DriftParameters* MissionTask::unsafe_arena_release_surface_drift() {
5293  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionTask.surface_drift)
5294  _has_bits_[0] &= ~0x00000002u;
5295  ::jaiabot::protobuf::MissionTask_DriftParameters* temp = surface_drift_;
5296  surface_drift_ = nullptr;
5297  return temp;
5298 }
5299 inline ::jaiabot::protobuf::MissionTask_DriftParameters* MissionTask::_internal_mutable_surface_drift() {
5300  _has_bits_[0] |= 0x00000002u;
5301  if (surface_drift_ == nullptr) {
5302  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionTask_DriftParameters>(GetArena());
5303  surface_drift_ = p;
5304  }
5305  return surface_drift_;
5306 }
5307 inline ::jaiabot::protobuf::MissionTask_DriftParameters* MissionTask::mutable_surface_drift() {
5308  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionTask.surface_drift)
5309  return _internal_mutable_surface_drift();
5310 }
5311 inline void MissionTask::set_allocated_surface_drift(::jaiabot::protobuf::MissionTask_DriftParameters* surface_drift) {
5312  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5313  if (message_arena == nullptr) {
5314  delete surface_drift_;
5315  }
5316  if (surface_drift) {
5317  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5318  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(surface_drift);
5319  if (message_arena != submessage_arena) {
5320  surface_drift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5321  message_arena, surface_drift, submessage_arena);
5322  }
5323  _has_bits_[0] |= 0x00000002u;
5324  } else {
5325  _has_bits_[0] &= ~0x00000002u;
5326  }
5327  surface_drift_ = surface_drift;
5328  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionTask.surface_drift)
5329 }
5330 
5331 // optional .jaiabot.protobuf.MissionTask.ConstantHeadingParameters constant_heading = 4 [(.jaia.field) = {
5332 inline bool MissionTask::_internal_has_constant_heading() const {
5333  bool value = (_has_bits_[0] & 0x00000004u) != 0;
5334  PROTOBUF_ASSUME(!value || constant_heading_ != nullptr);
5335  return value;
5336 }
5337 inline bool MissionTask::has_constant_heading() const {
5338  return _internal_has_constant_heading();
5339 }
5340 inline void MissionTask::clear_constant_heading() {
5341  if (constant_heading_ != nullptr) constant_heading_->Clear();
5342  _has_bits_[0] &= ~0x00000004u;
5343 }
5344 inline const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters& MissionTask::_internal_constant_heading() const {
5345  const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* p = constant_heading_;
5346  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters*>(
5348 }
5349 inline const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters& MissionTask::constant_heading() const {
5350  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.constant_heading)
5351  return _internal_constant_heading();
5352 }
5353 inline void MissionTask::unsafe_arena_set_allocated_constant_heading(
5354  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* constant_heading) {
5355  if (GetArena() == nullptr) {
5356  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(constant_heading_);
5357  }
5358  constant_heading_ = constant_heading;
5359  if (constant_heading) {
5360  _has_bits_[0] |= 0x00000004u;
5361  } else {
5362  _has_bits_[0] &= ~0x00000004u;
5363  }
5364  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionTask.constant_heading)
5365 }
5366 inline ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* MissionTask::release_constant_heading() {
5367  auto temp = unsafe_arena_release_constant_heading();
5368  if (GetArena() != nullptr) {
5369  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5370  }
5371  return temp;
5372 }
5373 inline ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* MissionTask::unsafe_arena_release_constant_heading() {
5374  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionTask.constant_heading)
5375  _has_bits_[0] &= ~0x00000004u;
5376  ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* temp = constant_heading_;
5377  constant_heading_ = nullptr;
5378  return temp;
5379 }
5380 inline ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* MissionTask::_internal_mutable_constant_heading() {
5381  _has_bits_[0] |= 0x00000004u;
5382  if (constant_heading_ == nullptr) {
5383  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionTask_ConstantHeadingParameters>(GetArena());
5384  constant_heading_ = p;
5385  }
5386  return constant_heading_;
5387 }
5388 inline ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* MissionTask::mutable_constant_heading() {
5389  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionTask.constant_heading)
5390  return _internal_mutable_constant_heading();
5391 }
5392 inline void MissionTask::set_allocated_constant_heading(::jaiabot::protobuf::MissionTask_ConstantHeadingParameters* constant_heading) {
5393  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5394  if (message_arena == nullptr) {
5395  delete constant_heading_;
5396  }
5397  if (constant_heading) {
5398  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5399  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(constant_heading);
5400  if (message_arena != submessage_arena) {
5401  constant_heading = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5402  message_arena, constant_heading, submessage_arena);
5403  }
5404  _has_bits_[0] |= 0x00000004u;
5405  } else {
5406  _has_bits_[0] &= ~0x00000004u;
5407  }
5408  constant_heading_ = constant_heading;
5409  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionTask.constant_heading)
5410 }
5411 
5412 // optional bool start_echo = 5 [default = false, (.jaia.field) = {
5413 inline bool MissionTask::_internal_has_start_echo() const {
5414  bool value = (_has_bits_[0] & 0x00000020u) != 0;
5415  return value;
5416 }
5417 inline bool MissionTask::has_start_echo() const {
5418  return _internal_has_start_echo();
5419 }
5420 inline void MissionTask::clear_start_echo() {
5421  start_echo_ = false;
5422  _has_bits_[0] &= ~0x00000020u;
5423 }
5424 inline bool MissionTask::_internal_start_echo() const {
5425  return start_echo_;
5426 }
5427 inline bool MissionTask::start_echo() const {
5428  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.start_echo)
5429  return _internal_start_echo();
5430 }
5431 inline void MissionTask::_internal_set_start_echo(bool value) {
5432  _has_bits_[0] |= 0x00000020u;
5433  start_echo_ = value;
5434 }
5435 inline void MissionTask::set_start_echo(bool value) {
5436  _internal_set_start_echo(value);
5437  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionTask.start_echo)
5438 }
5439 
5440 // optional .jaiabot.protobuf.MissionTask.StationKeepParameters station_keep = 6 [(.jaia.field) = {
5441 inline bool MissionTask::_internal_has_station_keep() const {
5442  bool value = (_has_bits_[0] & 0x00000008u) != 0;
5443  PROTOBUF_ASSUME(!value || station_keep_ != nullptr);
5444  return value;
5445 }
5446 inline bool MissionTask::has_station_keep() const {
5447  return _internal_has_station_keep();
5448 }
5449 inline void MissionTask::clear_station_keep() {
5450  if (station_keep_ != nullptr) station_keep_->Clear();
5451  _has_bits_[0] &= ~0x00000008u;
5452 }
5453 inline const ::jaiabot::protobuf::MissionTask_StationKeepParameters& MissionTask::_internal_station_keep() const {
5454  const ::jaiabot::protobuf::MissionTask_StationKeepParameters* p = station_keep_;
5455  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionTask_StationKeepParameters*>(
5457 }
5458 inline const ::jaiabot::protobuf::MissionTask_StationKeepParameters& MissionTask::station_keep() const {
5459  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTask.station_keep)
5460  return _internal_station_keep();
5461 }
5462 inline void MissionTask::unsafe_arena_set_allocated_station_keep(
5463  ::jaiabot::protobuf::MissionTask_StationKeepParameters* station_keep) {
5464  if (GetArena() == nullptr) {
5465  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(station_keep_);
5466  }
5467  station_keep_ = station_keep;
5468  if (station_keep) {
5469  _has_bits_[0] |= 0x00000008u;
5470  } else {
5471  _has_bits_[0] &= ~0x00000008u;
5472  }
5473  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionTask.station_keep)
5474 }
5475 inline ::jaiabot::protobuf::MissionTask_StationKeepParameters* MissionTask::release_station_keep() {
5476  auto temp = unsafe_arena_release_station_keep();
5477  if (GetArena() != nullptr) {
5478  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5479  }
5480  return temp;
5481 }
5482 inline ::jaiabot::protobuf::MissionTask_StationKeepParameters* MissionTask::unsafe_arena_release_station_keep() {
5483  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionTask.station_keep)
5484  _has_bits_[0] &= ~0x00000008u;
5485  ::jaiabot::protobuf::MissionTask_StationKeepParameters* temp = station_keep_;
5486  station_keep_ = nullptr;
5487  return temp;
5488 }
5489 inline ::jaiabot::protobuf::MissionTask_StationKeepParameters* MissionTask::_internal_mutable_station_keep() {
5490  _has_bits_[0] |= 0x00000008u;
5491  if (station_keep_ == nullptr) {
5492  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionTask_StationKeepParameters>(GetArena());
5493  station_keep_ = p;
5494  }
5495  return station_keep_;
5496 }
5497 inline ::jaiabot::protobuf::MissionTask_StationKeepParameters* MissionTask::mutable_station_keep() {
5498  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionTask.station_keep)
5499  return _internal_mutable_station_keep();
5500 }
5501 inline void MissionTask::set_allocated_station_keep(::jaiabot::protobuf::MissionTask_StationKeepParameters* station_keep) {
5502  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5503  if (message_arena == nullptr) {
5504  delete station_keep_;
5505  }
5506  if (station_keep) {
5507  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5508  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(station_keep);
5509  if (message_arena != submessage_arena) {
5510  station_keep = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5511  message_arena, station_keep, submessage_arena);
5512  }
5513  _has_bits_[0] |= 0x00000008u;
5514  } else {
5515  _has_bits_[0] &= ~0x00000008u;
5516  }
5517  station_keep_ = station_keep;
5518  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionTask.station_keep)
5519 }
5520 
5521 // -------------------------------------------------------------------
5522 
5523 // MissionPlan_Goal
5524 
5525 // optional string name = 1 [(.dccl.field) = {
5526 inline bool MissionPlan_Goal::_internal_has_name() const {
5527  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5528  return value;
5529 }
5530 inline bool MissionPlan_Goal::has_name() const {
5531  return _internal_has_name();
5532 }
5533 inline void MissionPlan_Goal::clear_name() {
5534  name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
5535  _has_bits_[0] &= ~0x00000001u;
5536 }
5537 inline const std::string& MissionPlan_Goal::name() const {
5538  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Goal.name)
5539  return _internal_name();
5540 }
5541 inline void MissionPlan_Goal::set_name(const std::string& value) {
5542  _internal_set_name(value);
5543  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.Goal.name)
5544 }
5545 inline std::string* MissionPlan_Goal::mutable_name() {
5546  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.Goal.name)
5547  return _internal_mutable_name();
5548 }
5549 inline const std::string& MissionPlan_Goal::_internal_name() const {
5550  return name_.Get();
5551 }
5552 inline void MissionPlan_Goal::_internal_set_name(const std::string& value) {
5553  _has_bits_[0] |= 0x00000001u;
5554  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
5555 }
5556 inline void MissionPlan_Goal::set_name(std::string&& value) {
5557  _has_bits_[0] |= 0x00000001u;
5558  name_.Set(
5559  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
5560  // @@protoc_insertion_point(field_set_rvalue:jaiabot.protobuf.MissionPlan.Goal.name)
5561 }
5562 inline void MissionPlan_Goal::set_name(const char* value) {
5563  GOOGLE_DCHECK(value != nullptr);
5564  _has_bits_[0] |= 0x00000001u;
5565  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
5566  GetArena());
5567  // @@protoc_insertion_point(field_set_char:jaiabot.protobuf.MissionPlan.Goal.name)
5568 }
5569 inline void MissionPlan_Goal::set_name(const char* value,
5570  size_t size) {
5571  _has_bits_[0] |= 0x00000001u;
5572  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
5573  reinterpret_cast<const char*>(value), size), GetArena());
5574  // @@protoc_insertion_point(field_set_pointer:jaiabot.protobuf.MissionPlan.Goal.name)
5575 }
5576 inline std::string* MissionPlan_Goal::_internal_mutable_name() {
5577  _has_bits_[0] |= 0x00000001u;
5578  return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
5579 }
5580 inline std::string* MissionPlan_Goal::release_name() {
5581  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.Goal.name)
5582  if (!_internal_has_name()) {
5583  return nullptr;
5584  }
5585  _has_bits_[0] &= ~0x00000001u;
5586  return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
5587 }
5588 inline void MissionPlan_Goal::set_allocated_name(std::string* name) {
5589  if (name != nullptr) {
5590  _has_bits_[0] |= 0x00000001u;
5591  } else {
5592  _has_bits_[0] &= ~0x00000001u;
5593  }
5594  name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name,
5595  GetArena());
5596  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.Goal.name)
5597 }
5598 inline std::string* MissionPlan_Goal::unsafe_arena_release_name() {
5599  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.MissionPlan.Goal.name)
5600  GOOGLE_DCHECK(GetArena() != nullptr);
5601  _has_bits_[0] &= ~0x00000001u;
5602  return name_.UnsafeArenaRelease(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5603  GetArena());
5604 }
5605 inline void MissionPlan_Goal::unsafe_arena_set_allocated_name(
5606  std::string* name) {
5607  GOOGLE_DCHECK(GetArena() != nullptr);
5608  if (name != nullptr) {
5609  _has_bits_[0] |= 0x00000001u;
5610  } else {
5611  _has_bits_[0] &= ~0x00000001u;
5612  }
5613  name_.UnsafeArenaSetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5614  name, GetArena());
5615  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.Goal.name)
5616 }
5617 
5618 // required .jaiabot.protobuf.GeographicCoordinate location = 2 [(.jaia.field) = {
5619 inline bool MissionPlan_Goal::_internal_has_location() const {
5620  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5621  PROTOBUF_ASSUME(!value || location_ != nullptr);
5622  return value;
5623 }
5624 inline bool MissionPlan_Goal::has_location() const {
5625  return _internal_has_location();
5626 }
5627 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionPlan_Goal::_internal_location() const {
5628  const ::jaiabot::protobuf::GeographicCoordinate* p = location_;
5629  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate*>(
5631 }
5632 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionPlan_Goal::location() const {
5633  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Goal.location)
5634  return _internal_location();
5635 }
5636 inline void MissionPlan_Goal::unsafe_arena_set_allocated_location(
5637  ::jaiabot::protobuf::GeographicCoordinate* location) {
5638  if (GetArena() == nullptr) {
5639  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location_);
5640  }
5641  location_ = location;
5642  if (location) {
5643  _has_bits_[0] |= 0x00000002u;
5644  } else {
5645  _has_bits_[0] &= ~0x00000002u;
5646  }
5647  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.Goal.location)
5648 }
5649 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Goal::release_location() {
5650  auto temp = unsafe_arena_release_location();
5651  if (GetArena() != nullptr) {
5652  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5653  }
5654  return temp;
5655 }
5656 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Goal::unsafe_arena_release_location() {
5657  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.Goal.location)
5658  _has_bits_[0] &= ~0x00000002u;
5659  ::jaiabot::protobuf::GeographicCoordinate* temp = location_;
5660  location_ = nullptr;
5661  return temp;
5662 }
5663 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Goal::_internal_mutable_location() {
5664  _has_bits_[0] |= 0x00000002u;
5665  if (location_ == nullptr) {
5666  auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArena());
5667  location_ = p;
5668  }
5669  return location_;
5670 }
5671 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Goal::mutable_location() {
5672  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.Goal.location)
5673  return _internal_mutable_location();
5674 }
5675 inline void MissionPlan_Goal::set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location) {
5676  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5677  if (message_arena == nullptr) {
5678  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(location_);
5679  }
5680  if (location) {
5681  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5682  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location)->GetArena();
5683  if (message_arena != submessage_arena) {
5684  location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5685  message_arena, location, submessage_arena);
5686  }
5687  _has_bits_[0] |= 0x00000002u;
5688  } else {
5689  _has_bits_[0] &= ~0x00000002u;
5690  }
5691  location_ = location;
5692  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.Goal.location)
5693 }
5694 
5695 // optional .jaiabot.protobuf.MissionTask task = 3 [(.jaia.field) = {
5696 inline bool MissionPlan_Goal::_internal_has_task() const {
5697  bool value = (_has_bits_[0] & 0x00000004u) != 0;
5698  PROTOBUF_ASSUME(!value || task_ != nullptr);
5699  return value;
5700 }
5701 inline bool MissionPlan_Goal::has_task() const {
5702  return _internal_has_task();
5703 }
5704 inline void MissionPlan_Goal::clear_task() {
5705  if (task_ != nullptr) task_->Clear();
5706  _has_bits_[0] &= ~0x00000004u;
5707 }
5708 inline const ::jaiabot::protobuf::MissionTask& MissionPlan_Goal::_internal_task() const {
5709  const ::jaiabot::protobuf::MissionTask* p = task_;
5710  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionTask*>(
5712 }
5713 inline const ::jaiabot::protobuf::MissionTask& MissionPlan_Goal::task() const {
5714  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Goal.task)
5715  return _internal_task();
5716 }
5717 inline void MissionPlan_Goal::unsafe_arena_set_allocated_task(
5718  ::jaiabot::protobuf::MissionTask* task) {
5719  if (GetArena() == nullptr) {
5720  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(task_);
5721  }
5722  task_ = task;
5723  if (task) {
5724  _has_bits_[0] |= 0x00000004u;
5725  } else {
5726  _has_bits_[0] &= ~0x00000004u;
5727  }
5728  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.Goal.task)
5729 }
5730 inline ::jaiabot::protobuf::MissionTask* MissionPlan_Goal::release_task() {
5731  auto temp = unsafe_arena_release_task();
5732  if (GetArena() != nullptr) {
5733  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5734  }
5735  return temp;
5736 }
5737 inline ::jaiabot::protobuf::MissionTask* MissionPlan_Goal::unsafe_arena_release_task() {
5738  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.Goal.task)
5739  _has_bits_[0] &= ~0x00000004u;
5740  ::jaiabot::protobuf::MissionTask* temp = task_;
5741  task_ = nullptr;
5742  return temp;
5743 }
5744 inline ::jaiabot::protobuf::MissionTask* MissionPlan_Goal::_internal_mutable_task() {
5745  _has_bits_[0] |= 0x00000004u;
5746  if (task_ == nullptr) {
5747  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionTask>(GetArena());
5748  task_ = p;
5749  }
5750  return task_;
5751 }
5752 inline ::jaiabot::protobuf::MissionTask* MissionPlan_Goal::mutable_task() {
5753  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.Goal.task)
5754  return _internal_mutable_task();
5755 }
5756 inline void MissionPlan_Goal::set_allocated_task(::jaiabot::protobuf::MissionTask* task) {
5757  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5758  if (message_arena == nullptr) {
5759  delete task_;
5760  }
5761  if (task) {
5762  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5763  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(task);
5764  if (message_arena != submessage_arena) {
5765  task = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5766  message_arena, task, submessage_arena);
5767  }
5768  _has_bits_[0] |= 0x00000004u;
5769  } else {
5770  _has_bits_[0] &= ~0x00000004u;
5771  }
5772  task_ = task;
5773  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.Goal.task)
5774 }
5775 
5776 // optional bool moveWptMode = 4;
5777 inline bool MissionPlan_Goal::_internal_has_movewptmode() const {
5778  bool value = (_has_bits_[0] & 0x00000008u) != 0;
5779  return value;
5780 }
5781 inline bool MissionPlan_Goal::has_movewptmode() const {
5782  return _internal_has_movewptmode();
5783 }
5784 inline void MissionPlan_Goal::clear_movewptmode() {
5785  movewptmode_ = false;
5786  _has_bits_[0] &= ~0x00000008u;
5787 }
5788 inline bool MissionPlan_Goal::_internal_movewptmode() const {
5789  return movewptmode_;
5790 }
5791 inline bool MissionPlan_Goal::movewptmode() const {
5792  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Goal.moveWptMode)
5793  return _internal_movewptmode();
5794 }
5795 inline void MissionPlan_Goal::_internal_set_movewptmode(bool value) {
5796  _has_bits_[0] |= 0x00000008u;
5797  movewptmode_ = value;
5798 }
5799 inline void MissionPlan_Goal::set_movewptmode(bool value) {
5800  _internal_set_movewptmode(value);
5801  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.Goal.moveWptMode)
5802 }
5803 
5804 // -------------------------------------------------------------------
5805 
5806 // MissionPlan_Recovery
5807 
5808 // optional bool recover_at_final_goal = 1 [default = true, (.jaia.field) = {
5809 inline bool MissionPlan_Recovery::_internal_has_recover_at_final_goal() const {
5810  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5811  return value;
5812 }
5813 inline bool MissionPlan_Recovery::has_recover_at_final_goal() const {
5814  return _internal_has_recover_at_final_goal();
5815 }
5816 inline void MissionPlan_Recovery::clear_recover_at_final_goal() {
5817  recover_at_final_goal_ = true;
5818  _has_bits_[0] &= ~0x00000002u;
5819 }
5820 inline bool MissionPlan_Recovery::_internal_recover_at_final_goal() const {
5821  return recover_at_final_goal_;
5822 }
5823 inline bool MissionPlan_Recovery::recover_at_final_goal() const {
5824  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Recovery.recover_at_final_goal)
5825  return _internal_recover_at_final_goal();
5826 }
5827 inline void MissionPlan_Recovery::_internal_set_recover_at_final_goal(bool value) {
5828  _has_bits_[0] |= 0x00000002u;
5829  recover_at_final_goal_ = value;
5830 }
5831 inline void MissionPlan_Recovery::set_recover_at_final_goal(bool value) {
5832  _internal_set_recover_at_final_goal(value);
5833  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.Recovery.recover_at_final_goal)
5834 }
5835 
5836 // optional .jaiabot.protobuf.GeographicCoordinate location = 2 [(.jaia.field) = {
5837 inline bool MissionPlan_Recovery::_internal_has_location() const {
5838  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5839  PROTOBUF_ASSUME(!value || location_ != nullptr);
5840  return value;
5841 }
5842 inline bool MissionPlan_Recovery::has_location() const {
5843  return _internal_has_location();
5844 }
5845 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionPlan_Recovery::_internal_location() const {
5846  const ::jaiabot::protobuf::GeographicCoordinate* p = location_;
5847  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate*>(
5849 }
5850 inline const ::jaiabot::protobuf::GeographicCoordinate& MissionPlan_Recovery::location() const {
5851  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.Recovery.location)
5852  return _internal_location();
5853 }
5854 inline void MissionPlan_Recovery::unsafe_arena_set_allocated_location(
5855  ::jaiabot::protobuf::GeographicCoordinate* location) {
5856  if (GetArena() == nullptr) {
5857  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location_);
5858  }
5859  location_ = location;
5860  if (location) {
5861  _has_bits_[0] |= 0x00000001u;
5862  } else {
5863  _has_bits_[0] &= ~0x00000001u;
5864  }
5865  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.Recovery.location)
5866 }
5867 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Recovery::release_location() {
5868  auto temp = unsafe_arena_release_location();
5869  if (GetArena() != nullptr) {
5870  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
5871  }
5872  return temp;
5873 }
5874 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Recovery::unsafe_arena_release_location() {
5875  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.Recovery.location)
5876  _has_bits_[0] &= ~0x00000001u;
5877  ::jaiabot::protobuf::GeographicCoordinate* temp = location_;
5878  location_ = nullptr;
5879  return temp;
5880 }
5881 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Recovery::_internal_mutable_location() {
5882  _has_bits_[0] |= 0x00000001u;
5883  if (location_ == nullptr) {
5884  auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArena());
5885  location_ = p;
5886  }
5887  return location_;
5888 }
5889 inline ::jaiabot::protobuf::GeographicCoordinate* MissionPlan_Recovery::mutable_location() {
5890  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.Recovery.location)
5891  return _internal_mutable_location();
5892 }
5893 inline void MissionPlan_Recovery::set_allocated_location(::jaiabot::protobuf::GeographicCoordinate* location) {
5894  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
5895  if (message_arena == nullptr) {
5896  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(location_);
5897  }
5898  if (location) {
5899  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
5900  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(location)->GetArena();
5901  if (message_arena != submessage_arena) {
5902  location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5903  message_arena, location, submessage_arena);
5904  }
5905  _has_bits_[0] |= 0x00000001u;
5906  } else {
5907  _has_bits_[0] &= ~0x00000001u;
5908  }
5909  location_ = location;
5910  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.Recovery.location)
5911 }
5912 
5913 // -------------------------------------------------------------------
5914 
5915 // MissionPlan
5916 
5917 // optional .jaiabot.protobuf.MissionPlan.MissionStart start = 1 [default = START_ON_COMMAND, (.jaia.field) = {
5918 inline bool MissionPlan::_internal_has_start() const {
5919  bool value = (_has_bits_[0] & 0x00000040u) != 0;
5920  return value;
5921 }
5922 inline bool MissionPlan::has_start() const {
5923  return _internal_has_start();
5924 }
5925 inline void MissionPlan::clear_start() {
5926  start_ = 2;
5927  _has_bits_[0] &= ~0x00000040u;
5928 }
5929 inline ::jaiabot::protobuf::MissionPlan_MissionStart MissionPlan::_internal_start() const {
5930  return static_cast< ::jaiabot::protobuf::MissionPlan_MissionStart >(start_);
5931 }
5932 inline ::jaiabot::protobuf::MissionPlan_MissionStart MissionPlan::start() const {
5933  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.start)
5934  return _internal_start();
5935 }
5936 inline void MissionPlan::_internal_set_start(::jaiabot::protobuf::MissionPlan_MissionStart value) {
5938  _has_bits_[0] |= 0x00000040u;
5939  start_ = value;
5940 }
5941 inline void MissionPlan::set_start(::jaiabot::protobuf::MissionPlan_MissionStart value) {
5942  _internal_set_start(value);
5943  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.start)
5944 }
5945 
5946 // optional .jaiabot.protobuf.MissionPlan.MovementType movement = 2 [default = TRANSIT, (.jaia.field) = {
5947 inline bool MissionPlan::_internal_has_movement() const {
5948  bool value = (_has_bits_[0] & 0x00000080u) != 0;
5949  return value;
5950 }
5951 inline bool MissionPlan::has_movement() const {
5952  return _internal_has_movement();
5953 }
5954 inline void MissionPlan::clear_movement() {
5955  movement_ = 1;
5956  _has_bits_[0] &= ~0x00000080u;
5957 }
5958 inline ::jaiabot::protobuf::MissionPlan_MovementType MissionPlan::_internal_movement() const {
5959  return static_cast< ::jaiabot::protobuf::MissionPlan_MovementType >(movement_);
5960 }
5961 inline ::jaiabot::protobuf::MissionPlan_MovementType MissionPlan::movement() const {
5962  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.movement)
5963  return _internal_movement();
5964 }
5965 inline void MissionPlan::_internal_set_movement(::jaiabot::protobuf::MissionPlan_MovementType value) {
5967  _has_bits_[0] |= 0x00000080u;
5968  movement_ = value;
5969 }
5970 inline void MissionPlan::set_movement(::jaiabot::protobuf::MissionPlan_MovementType value) {
5971  _internal_set_movement(value);
5972  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.movement)
5973 }
5974 
5975 // repeated .jaiabot.protobuf.MissionPlan.Goal goal = 3 [(.dccl.field) = {
5976 inline int MissionPlan::_internal_goal_size() const {
5977  return goal_.size();
5978 }
5979 inline int MissionPlan::goal_size() const {
5980  return _internal_goal_size();
5981 }
5982 inline void MissionPlan::clear_goal() {
5983  goal_.Clear();
5984 }
5985 inline ::jaiabot::protobuf::MissionPlan_Goal* MissionPlan::mutable_goal(int index) {
5986  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.goal)
5987  return goal_.Mutable(index);
5988 }
5989 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal >*
5990 MissionPlan::mutable_goal() {
5991  // @@protoc_insertion_point(field_mutable_list:jaiabot.protobuf.MissionPlan.goal)
5992  return &goal_;
5993 }
5994 inline const ::jaiabot::protobuf::MissionPlan_Goal& MissionPlan::_internal_goal(int index) const {
5995  return goal_.Get(index);
5996 }
5997 inline const ::jaiabot::protobuf::MissionPlan_Goal& MissionPlan::goal(int index) const {
5998  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.goal)
5999  return _internal_goal(index);
6000 }
6001 inline ::jaiabot::protobuf::MissionPlan_Goal* MissionPlan::_internal_add_goal() {
6002  return goal_.Add();
6003 }
6004 inline ::jaiabot::protobuf::MissionPlan_Goal* MissionPlan::add_goal() {
6005  // @@protoc_insertion_point(field_add:jaiabot.protobuf.MissionPlan.goal)
6006  return _internal_add_goal();
6007 }
6008 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal >&
6009 MissionPlan::goal() const {
6010  // @@protoc_insertion_point(field_list:jaiabot.protobuf.MissionPlan.goal)
6011  return goal_;
6012 }
6013 
6014 // optional .jaiabot.protobuf.MissionPlan.Recovery recovery = 4 [(.jaia.field) = {
6015 inline bool MissionPlan::_internal_has_recovery() const {
6016  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6017  PROTOBUF_ASSUME(!value || recovery_ != nullptr);
6018  return value;
6019 }
6020 inline bool MissionPlan::has_recovery() const {
6021  return _internal_has_recovery();
6022 }
6023 inline void MissionPlan::clear_recovery() {
6024  if (recovery_ != nullptr) recovery_->Clear();
6025  _has_bits_[0] &= ~0x00000001u;
6026 }
6027 inline const ::jaiabot::protobuf::MissionPlan_Recovery& MissionPlan::_internal_recovery() const {
6028  const ::jaiabot::protobuf::MissionPlan_Recovery* p = recovery_;
6029  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::MissionPlan_Recovery*>(
6031 }
6032 inline const ::jaiabot::protobuf::MissionPlan_Recovery& MissionPlan::recovery() const {
6033  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.recovery)
6034  return _internal_recovery();
6035 }
6036 inline void MissionPlan::unsafe_arena_set_allocated_recovery(
6037  ::jaiabot::protobuf::MissionPlan_Recovery* recovery) {
6038  if (GetArena() == nullptr) {
6039  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(recovery_);
6040  }
6041  recovery_ = recovery;
6042  if (recovery) {
6043  _has_bits_[0] |= 0x00000001u;
6044  } else {
6045  _has_bits_[0] &= ~0x00000001u;
6046  }
6047  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.recovery)
6048 }
6049 inline ::jaiabot::protobuf::MissionPlan_Recovery* MissionPlan::release_recovery() {
6050  auto temp = unsafe_arena_release_recovery();
6051  if (GetArena() != nullptr) {
6052  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6053  }
6054  return temp;
6055 }
6056 inline ::jaiabot::protobuf::MissionPlan_Recovery* MissionPlan::unsafe_arena_release_recovery() {
6057  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.recovery)
6058  _has_bits_[0] &= ~0x00000001u;
6059  ::jaiabot::protobuf::MissionPlan_Recovery* temp = recovery_;
6060  recovery_ = nullptr;
6061  return temp;
6062 }
6063 inline ::jaiabot::protobuf::MissionPlan_Recovery* MissionPlan::_internal_mutable_recovery() {
6064  _has_bits_[0] |= 0x00000001u;
6065  if (recovery_ == nullptr) {
6066  auto* p = CreateMaybeMessage<::jaiabot::protobuf::MissionPlan_Recovery>(GetArena());
6067  recovery_ = p;
6068  }
6069  return recovery_;
6070 }
6071 inline ::jaiabot::protobuf::MissionPlan_Recovery* MissionPlan::mutable_recovery() {
6072  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.recovery)
6073  return _internal_mutable_recovery();
6074 }
6075 inline void MissionPlan::set_allocated_recovery(::jaiabot::protobuf::MissionPlan_Recovery* recovery) {
6076  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
6077  if (message_arena == nullptr) {
6078  delete recovery_;
6079  }
6080  if (recovery) {
6081  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6082  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(recovery);
6083  if (message_arena != submessage_arena) {
6084  recovery = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6085  message_arena, recovery, submessage_arena);
6086  }
6087  _has_bits_[0] |= 0x00000001u;
6088  } else {
6089  _has_bits_[0] &= ~0x00000001u;
6090  }
6091  recovery_ = recovery;
6092  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.recovery)
6093 }
6094 
6095 // optional .jaiabot.protobuf.Speeds speeds = 5 [(.jaia.field) = {
6096 inline bool MissionPlan::_internal_has_speeds() const {
6097  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6098  PROTOBUF_ASSUME(!value || speeds_ != nullptr);
6099  return value;
6100 }
6101 inline bool MissionPlan::has_speeds() const {
6102  return _internal_has_speeds();
6103 }
6104 inline void MissionPlan::clear_speeds() {
6105  if (speeds_ != nullptr) speeds_->Clear();
6106  _has_bits_[0] &= ~0x00000002u;
6107 }
6108 inline const ::jaiabot::protobuf::Speeds& MissionPlan::_internal_speeds() const {
6109  const ::jaiabot::protobuf::Speeds* p = speeds_;
6110  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::Speeds*>(
6112 }
6113 inline const ::jaiabot::protobuf::Speeds& MissionPlan::speeds() const {
6114  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.speeds)
6115  return _internal_speeds();
6116 }
6117 inline void MissionPlan::unsafe_arena_set_allocated_speeds(
6118  ::jaiabot::protobuf::Speeds* speeds) {
6119  if (GetArena() == nullptr) {
6120  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(speeds_);
6121  }
6122  speeds_ = speeds;
6123  if (speeds) {
6124  _has_bits_[0] |= 0x00000002u;
6125  } else {
6126  _has_bits_[0] &= ~0x00000002u;
6127  }
6128  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.speeds)
6129 }
6130 inline ::jaiabot::protobuf::Speeds* MissionPlan::release_speeds() {
6131  auto temp = unsafe_arena_release_speeds();
6132  if (GetArena() != nullptr) {
6133  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6134  }
6135  return temp;
6136 }
6137 inline ::jaiabot::protobuf::Speeds* MissionPlan::unsafe_arena_release_speeds() {
6138  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.speeds)
6139  _has_bits_[0] &= ~0x00000002u;
6140  ::jaiabot::protobuf::Speeds* temp = speeds_;
6141  speeds_ = nullptr;
6142  return temp;
6143 }
6144 inline ::jaiabot::protobuf::Speeds* MissionPlan::_internal_mutable_speeds() {
6145  _has_bits_[0] |= 0x00000002u;
6146  if (speeds_ == nullptr) {
6147  auto* p = CreateMaybeMessage<::jaiabot::protobuf::Speeds>(GetArena());
6148  speeds_ = p;
6149  }
6150  return speeds_;
6151 }
6152 inline ::jaiabot::protobuf::Speeds* MissionPlan::mutable_speeds() {
6153  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.speeds)
6154  return _internal_mutable_speeds();
6155 }
6156 inline void MissionPlan::set_allocated_speeds(::jaiabot::protobuf::Speeds* speeds) {
6157  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
6158  if (message_arena == nullptr) {
6159  delete speeds_;
6160  }
6161  if (speeds) {
6162  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6163  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(speeds);
6164  if (message_arena != submessage_arena) {
6165  speeds = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6166  message_arena, speeds, submessage_arena);
6167  }
6168  _has_bits_[0] |= 0x00000002u;
6169  } else {
6170  _has_bits_[0] &= ~0x00000002u;
6171  }
6172  speeds_ = speeds;
6173  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.speeds)
6174 }
6175 
6176 // optional .jaiabot.protobuf.BottomDepthSafetyParams bottom_depth_safety_params = 6 [(.jaia.field) = {
6177 inline bool MissionPlan::_internal_has_bottom_depth_safety_params() const {
6178  bool value = (_has_bits_[0] & 0x00000004u) != 0;
6179  PROTOBUF_ASSUME(!value || bottom_depth_safety_params_ != nullptr);
6180  return value;
6181 }
6182 inline bool MissionPlan::has_bottom_depth_safety_params() const {
6183  return _internal_has_bottom_depth_safety_params();
6184 }
6185 inline void MissionPlan::clear_bottom_depth_safety_params() {
6186  if (bottom_depth_safety_params_ != nullptr) bottom_depth_safety_params_->Clear();
6187  _has_bits_[0] &= ~0x00000004u;
6188 }
6189 inline const ::jaiabot::protobuf::BottomDepthSafetyParams& MissionPlan::_internal_bottom_depth_safety_params() const {
6190  const ::jaiabot::protobuf::BottomDepthSafetyParams* p = bottom_depth_safety_params_;
6191  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::BottomDepthSafetyParams*>(
6193 }
6194 inline const ::jaiabot::protobuf::BottomDepthSafetyParams& MissionPlan::bottom_depth_safety_params() const {
6195  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.bottom_depth_safety_params)
6196  return _internal_bottom_depth_safety_params();
6197 }
6198 inline void MissionPlan::unsafe_arena_set_allocated_bottom_depth_safety_params(
6199  ::jaiabot::protobuf::BottomDepthSafetyParams* bottom_depth_safety_params) {
6200  if (GetArena() == nullptr) {
6201  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(bottom_depth_safety_params_);
6202  }
6203  bottom_depth_safety_params_ = bottom_depth_safety_params;
6204  if (bottom_depth_safety_params) {
6205  _has_bits_[0] |= 0x00000004u;
6206  } else {
6207  _has_bits_[0] &= ~0x00000004u;
6208  }
6209  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionPlan.bottom_depth_safety_params)
6210 }
6211 inline ::jaiabot::protobuf::BottomDepthSafetyParams* MissionPlan::release_bottom_depth_safety_params() {
6212  auto temp = unsafe_arena_release_bottom_depth_safety_params();
6213  if (GetArena() != nullptr) {
6214  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6215  }
6216  return temp;
6217 }
6218 inline ::jaiabot::protobuf::BottomDepthSafetyParams* MissionPlan::unsafe_arena_release_bottom_depth_safety_params() {
6219  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionPlan.bottom_depth_safety_params)
6220  _has_bits_[0] &= ~0x00000004u;
6221  ::jaiabot::protobuf::BottomDepthSafetyParams* temp = bottom_depth_safety_params_;
6222  bottom_depth_safety_params_ = nullptr;
6223  return temp;
6224 }
6225 inline ::jaiabot::protobuf::BottomDepthSafetyParams* MissionPlan::_internal_mutable_bottom_depth_safety_params() {
6226  _has_bits_[0] |= 0x00000004u;
6227  if (bottom_depth_safety_params_ == nullptr) {
6228  auto* p = CreateMaybeMessage<::jaiabot::protobuf::BottomDepthSafetyParams>(GetArena());
6229  bottom_depth_safety_params_ = p;
6230  }
6231  return bottom_depth_safety_params_;
6232 }
6233 inline ::jaiabot::protobuf::BottomDepthSafetyParams* MissionPlan::mutable_bottom_depth_safety_params() {
6234  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionPlan.bottom_depth_safety_params)
6235  return _internal_mutable_bottom_depth_safety_params();
6236 }
6237 inline void MissionPlan::set_allocated_bottom_depth_safety_params(::jaiabot::protobuf::BottomDepthSafetyParams* bottom_depth_safety_params) {
6238  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
6239  if (message_arena == nullptr) {
6240  delete bottom_depth_safety_params_;
6241  }
6242  if (bottom_depth_safety_params) {
6243  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
6244  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(bottom_depth_safety_params);
6245  if (message_arena != submessage_arena) {
6246  bottom_depth_safety_params = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6247  message_arena, bottom_depth_safety_params, submessage_arena);
6248  }
6249  _has_bits_[0] |= 0x00000004u;
6250  } else {
6251  _has_bits_[0] &= ~0x00000004u;
6252  }
6253  bottom_depth_safety_params_ = bottom_depth_safety_params;
6254  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionPlan.bottom_depth_safety_params)
6255 }
6256 
6257 // optional uint32 fragment_index = 7 [(.dccl.field) = {
6258 inline bool MissionPlan::_internal_has_fragment_index() const {
6259  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6260  return value;
6261 }
6262 inline bool MissionPlan::has_fragment_index() const {
6263  return _internal_has_fragment_index();
6264 }
6265 inline void MissionPlan::clear_fragment_index() {
6266  fragment_index_ = 0u;
6267  _has_bits_[0] &= ~0x00000008u;
6268 }
6269 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::_internal_fragment_index() const {
6270  return fragment_index_;
6271 }
6272 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::fragment_index() const {
6273  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.fragment_index)
6274  return _internal_fragment_index();
6275 }
6276 inline void MissionPlan::_internal_set_fragment_index(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6277  _has_bits_[0] |= 0x00000008u;
6278  fragment_index_ = value;
6279 }
6280 inline void MissionPlan::set_fragment_index(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6281  _internal_set_fragment_index(value);
6282  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.fragment_index)
6283 }
6284 
6285 // optional uint32 expected_fragments = 8 [(.dccl.field) = {
6286 inline bool MissionPlan::_internal_has_expected_fragments() const {
6287  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6288  return value;
6289 }
6290 inline bool MissionPlan::has_expected_fragments() const {
6291  return _internal_has_expected_fragments();
6292 }
6293 inline void MissionPlan::clear_expected_fragments() {
6294  expected_fragments_ = 0u;
6295  _has_bits_[0] &= ~0x00000010u;
6296 }
6297 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::_internal_expected_fragments() const {
6298  return expected_fragments_;
6299 }
6300 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::expected_fragments() const {
6301  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.expected_fragments)
6302  return _internal_expected_fragments();
6303 }
6304 inline void MissionPlan::_internal_set_expected_fragments(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6305  _has_bits_[0] |= 0x00000010u;
6306  expected_fragments_ = value;
6307 }
6308 inline void MissionPlan::set_expected_fragments(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6309  _internal_set_expected_fragments(value);
6310  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.expected_fragments)
6311 }
6312 
6313 // optional uint32 repeats = 9 [default = 1, (.dccl.field) = {
6314 inline bool MissionPlan::_internal_has_repeats() const {
6315  bool value = (_has_bits_[0] & 0x00000020u) != 0;
6316  return value;
6317 }
6318 inline bool MissionPlan::has_repeats() const {
6319  return _internal_has_repeats();
6320 }
6321 inline void MissionPlan::clear_repeats() {
6322  repeats_ = 1u;
6323  _has_bits_[0] &= ~0x00000020u;
6324 }
6325 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::_internal_repeats() const {
6326  return repeats_;
6327 }
6328 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionPlan::repeats() const {
6329  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionPlan.repeats)
6330  return _internal_repeats();
6331 }
6332 inline void MissionPlan::_internal_set_repeats(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6333  _has_bits_[0] |= 0x00000020u;
6334  repeats_ = value;
6335 }
6336 inline void MissionPlan::set_repeats(::PROTOBUF_NAMESPACE_ID::uint32 value) {
6337  _internal_set_repeats(value);
6338  // @@protoc_insertion_point(field_set:jaiabot.protobuf.MissionPlan.repeats)
6339 }
6340 
6341 // -------------------------------------------------------------------
6342 
6343 // IvPBehaviorUpdate_TransitUpdate
6344 
6345 // required bool active = 1;
6346 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_has_active() const {
6347  bool value = (_has_bits_[0] & 0x00000004u) != 0;
6348  return value;
6349 }
6350 inline bool IvPBehaviorUpdate_TransitUpdate::has_active() const {
6351  return _internal_has_active();
6352 }
6353 inline void IvPBehaviorUpdate_TransitUpdate::clear_active() {
6354  active_ = false;
6355  _has_bits_[0] &= ~0x00000004u;
6356 }
6357 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_active() const {
6358  return active_;
6359 }
6360 inline bool IvPBehaviorUpdate_TransitUpdate::active() const {
6361  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.active)
6362  return _internal_active();
6363 }
6364 inline void IvPBehaviorUpdate_TransitUpdate::_internal_set_active(bool value) {
6365  _has_bits_[0] |= 0x00000004u;
6366  active_ = value;
6367 }
6368 inline void IvPBehaviorUpdate_TransitUpdate::set_active(bool value) {
6369  _internal_set_active(value);
6370  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.active)
6371 }
6372 
6373 // optional double x = 2 [(.dccl.field) = {
6374 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_has_x() const {
6375  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6376  return value;
6377 }
6378 inline bool IvPBehaviorUpdate_TransitUpdate::has_x() const {
6379  return _internal_has_x();
6380 }
6381 inline void IvPBehaviorUpdate_TransitUpdate::clear_x() {
6382  x_ = 0;
6383  _has_bits_[0] &= ~0x00000001u;
6384 }
6385 inline double IvPBehaviorUpdate_TransitUpdate::_internal_x() const {
6386  return x_;
6387 }
6388 inline double IvPBehaviorUpdate_TransitUpdate::x() const {
6389  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.x)
6390  return _internal_x();
6391 }
6392 inline void IvPBehaviorUpdate_TransitUpdate::_internal_set_x(double value) {
6393  _has_bits_[0] |= 0x00000001u;
6394  x_ = value;
6395 }
6396 inline void IvPBehaviorUpdate_TransitUpdate::set_x(double value) {
6397  _internal_set_x(value);
6398  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.x)
6399 }
6400 
6401 // optional double y = 3 [(.dccl.field) = {
6402 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_has_y() const {
6403  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6404  return value;
6405 }
6406 inline bool IvPBehaviorUpdate_TransitUpdate::has_y() const {
6407  return _internal_has_y();
6408 }
6409 inline void IvPBehaviorUpdate_TransitUpdate::clear_y() {
6410  y_ = 0;
6411  _has_bits_[0] &= ~0x00000002u;
6412 }
6413 inline double IvPBehaviorUpdate_TransitUpdate::_internal_y() const {
6414  return y_;
6415 }
6416 inline double IvPBehaviorUpdate_TransitUpdate::y() const {
6417  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.y)
6418  return _internal_y();
6419 }
6420 inline void IvPBehaviorUpdate_TransitUpdate::_internal_set_y(double value) {
6421  _has_bits_[0] |= 0x00000002u;
6422  y_ = value;
6423 }
6424 inline void IvPBehaviorUpdate_TransitUpdate::set_y(double value) {
6425  _internal_set_y(value);
6426  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.y)
6427 }
6428 
6429 // optional double speed = 4 [(.dccl.field) = {
6430 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_has_speed() const {
6431  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6432  return value;
6433 }
6434 inline bool IvPBehaviorUpdate_TransitUpdate::has_speed() const {
6435  return _internal_has_speed();
6436 }
6437 inline void IvPBehaviorUpdate_TransitUpdate::clear_speed() {
6438  speed_ = 0;
6439  _has_bits_[0] &= ~0x00000010u;
6440 }
6441 inline double IvPBehaviorUpdate_TransitUpdate::_internal_speed() const {
6442  return speed_;
6443 }
6444 inline double IvPBehaviorUpdate_TransitUpdate::speed() const {
6445  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.speed)
6446  return _internal_speed();
6447 }
6448 inline void IvPBehaviorUpdate_TransitUpdate::_internal_set_speed(double value) {
6449  _has_bits_[0] |= 0x00000010u;
6450  speed_ = value;
6451 }
6452 inline void IvPBehaviorUpdate_TransitUpdate::set_speed(double value) {
6453  _internal_set_speed(value);
6454  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.speed)
6455 }
6456 
6457 // optional int32 slip_radius = 5;
6458 inline bool IvPBehaviorUpdate_TransitUpdate::_internal_has_slip_radius() const {
6459  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6460  return value;
6461 }
6462 inline bool IvPBehaviorUpdate_TransitUpdate::has_slip_radius() const {
6463  return _internal_has_slip_radius();
6464 }
6465 inline void IvPBehaviorUpdate_TransitUpdate::clear_slip_radius() {
6466  slip_radius_ = 0;
6467  _has_bits_[0] &= ~0x00000008u;
6468 }
6469 inline ::PROTOBUF_NAMESPACE_ID::int32 IvPBehaviorUpdate_TransitUpdate::_internal_slip_radius() const {
6470  return slip_radius_;
6471 }
6472 inline ::PROTOBUF_NAMESPACE_ID::int32 IvPBehaviorUpdate_TransitUpdate::slip_radius() const {
6473  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.slip_radius)
6474  return _internal_slip_radius();
6475 }
6476 inline void IvPBehaviorUpdate_TransitUpdate::_internal_set_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
6477  _has_bits_[0] |= 0x00000008u;
6478  slip_radius_ = value;
6479 }
6480 inline void IvPBehaviorUpdate_TransitUpdate::set_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
6481  _internal_set_slip_radius(value);
6482  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate.slip_radius)
6483 }
6484 
6485 // -------------------------------------------------------------------
6486 
6487 // IvPBehaviorUpdate_StationkeepUpdate
6488 
6489 // required bool active = 1;
6490 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_active() const {
6491  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6492  return value;
6493 }
6494 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_active() const {
6495  return _internal_has_active();
6496 }
6497 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_active() {
6498  active_ = false;
6499  _has_bits_[0] &= ~0x00000010u;
6500 }
6501 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_active() const {
6502  return active_;
6503 }
6504 inline bool IvPBehaviorUpdate_StationkeepUpdate::active() const {
6505  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.active)
6506  return _internal_active();
6507 }
6508 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_active(bool value) {
6509  _has_bits_[0] |= 0x00000010u;
6510  active_ = value;
6511 }
6512 inline void IvPBehaviorUpdate_StationkeepUpdate::set_active(bool value) {
6513  _internal_set_active(value);
6514  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.active)
6515 }
6516 
6517 // optional double x = 2 [(.dccl.field) = {
6518 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_x() const {
6519  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6520  return value;
6521 }
6522 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_x() const {
6523  return _internal_has_x();
6524 }
6525 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_x() {
6526  x_ = 0;
6527  _has_bits_[0] &= ~0x00000001u;
6528 }
6529 inline double IvPBehaviorUpdate_StationkeepUpdate::_internal_x() const {
6530  return x_;
6531 }
6532 inline double IvPBehaviorUpdate_StationkeepUpdate::x() const {
6533  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.x)
6534  return _internal_x();
6535 }
6536 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_x(double value) {
6537  _has_bits_[0] |= 0x00000001u;
6538  x_ = value;
6539 }
6540 inline void IvPBehaviorUpdate_StationkeepUpdate::set_x(double value) {
6541  _internal_set_x(value);
6542  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.x)
6543 }
6544 
6545 // optional double y = 3 [(.dccl.field) = {
6546 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_y() const {
6547  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6548  return value;
6549 }
6550 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_y() const {
6551  return _internal_has_y();
6552 }
6553 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_y() {
6554  y_ = 0;
6555  _has_bits_[0] &= ~0x00000002u;
6556 }
6557 inline double IvPBehaviorUpdate_StationkeepUpdate::_internal_y() const {
6558  return y_;
6559 }
6560 inline double IvPBehaviorUpdate_StationkeepUpdate::y() const {
6561  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.y)
6562  return _internal_y();
6563 }
6564 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_y(double value) {
6565  _has_bits_[0] |= 0x00000002u;
6566  y_ = value;
6567 }
6568 inline void IvPBehaviorUpdate_StationkeepUpdate::set_y(double value) {
6569  _internal_set_y(value);
6570  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.y)
6571 }
6572 
6573 // optional double outer_speed = 4 [(.dccl.field) = {
6574 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_outer_speed() const {
6575  bool value = (_has_bits_[0] & 0x00000004u) != 0;
6576  return value;
6577 }
6578 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_outer_speed() const {
6579  return _internal_has_outer_speed();
6580 }
6581 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_outer_speed() {
6582  outer_speed_ = 0;
6583  _has_bits_[0] &= ~0x00000004u;
6584 }
6585 inline double IvPBehaviorUpdate_StationkeepUpdate::_internal_outer_speed() const {
6586  return outer_speed_;
6587 }
6588 inline double IvPBehaviorUpdate_StationkeepUpdate::outer_speed() const {
6589  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.outer_speed)
6590  return _internal_outer_speed();
6591 }
6592 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_outer_speed(double value) {
6593  _has_bits_[0] |= 0x00000004u;
6594  outer_speed_ = value;
6595 }
6596 inline void IvPBehaviorUpdate_StationkeepUpdate::set_outer_speed(double value) {
6597  _internal_set_outer_speed(value);
6598  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.outer_speed)
6599 }
6600 
6601 // optional double transit_speed = 5 [(.dccl.field) = {
6602 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_transit_speed() const {
6603  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6604  return value;
6605 }
6606 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_transit_speed() const {
6607  return _internal_has_transit_speed();
6608 }
6609 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_transit_speed() {
6610  transit_speed_ = 0;
6611  _has_bits_[0] &= ~0x00000008u;
6612 }
6613 inline double IvPBehaviorUpdate_StationkeepUpdate::_internal_transit_speed() const {
6614  return transit_speed_;
6615 }
6616 inline double IvPBehaviorUpdate_StationkeepUpdate::transit_speed() const {
6617  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.transit_speed)
6618  return _internal_transit_speed();
6619 }
6620 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_transit_speed(double value) {
6621  _has_bits_[0] |= 0x00000008u;
6622  transit_speed_ = value;
6623 }
6624 inline void IvPBehaviorUpdate_StationkeepUpdate::set_transit_speed(double value) {
6625  _internal_set_transit_speed(value);
6626  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.transit_speed)
6627 }
6628 
6629 // optional bool center_activate = 6 [default = false];
6630 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_has_center_activate() const {
6631  bool value = (_has_bits_[0] & 0x00000020u) != 0;
6632  return value;
6633 }
6634 inline bool IvPBehaviorUpdate_StationkeepUpdate::has_center_activate() const {
6635  return _internal_has_center_activate();
6636 }
6637 inline void IvPBehaviorUpdate_StationkeepUpdate::clear_center_activate() {
6638  center_activate_ = false;
6639  _has_bits_[0] &= ~0x00000020u;
6640 }
6641 inline bool IvPBehaviorUpdate_StationkeepUpdate::_internal_center_activate() const {
6642  return center_activate_;
6643 }
6644 inline bool IvPBehaviorUpdate_StationkeepUpdate::center_activate() const {
6645  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.center_activate)
6646  return _internal_center_activate();
6647 }
6648 inline void IvPBehaviorUpdate_StationkeepUpdate::_internal_set_center_activate(bool value) {
6649  _has_bits_[0] |= 0x00000020u;
6650  center_activate_ = value;
6651 }
6652 inline void IvPBehaviorUpdate_StationkeepUpdate::set_center_activate(bool value) {
6653  _internal_set_center_activate(value);
6654  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate.center_activate)
6655 }
6656 
6657 // -------------------------------------------------------------------
6658 
6659 // IvPBehaviorUpdate_ConstantHeadingUpdate
6660 
6661 // required bool active = 1;
6662 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_has_active() const {
6663  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6664  return value;
6665 }
6666 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::has_active() const {
6667  return _internal_has_active();
6668 }
6669 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::clear_active() {
6670  active_ = false;
6671  _has_bits_[0] &= ~0x00000002u;
6672 }
6673 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_active() const {
6674  return active_;
6675 }
6676 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::active() const {
6677  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate.active)
6678  return _internal_active();
6679 }
6680 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_set_active(bool value) {
6681  _has_bits_[0] |= 0x00000002u;
6682  active_ = value;
6683 }
6684 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::set_active(bool value) {
6685  _internal_set_active(value);
6686  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate.active)
6687 }
6688 
6689 // optional double heading = 2 [(.dccl.field) = {
6690 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_has_heading() const {
6691  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6692  return value;
6693 }
6694 inline bool IvPBehaviorUpdate_ConstantHeadingUpdate::has_heading() const {
6695  return _internal_has_heading();
6696 }
6697 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::clear_heading() {
6698  heading_ = 0;
6699  _has_bits_[0] &= ~0x00000001u;
6700 }
6701 inline double IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_heading() const {
6702  return heading_;
6703 }
6704 inline double IvPBehaviorUpdate_ConstantHeadingUpdate::heading() const {
6705  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate.heading)
6706  return _internal_heading();
6707 }
6708 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::_internal_set_heading(double value) {
6709  _has_bits_[0] |= 0x00000001u;
6710  heading_ = value;
6711 }
6712 inline void IvPBehaviorUpdate_ConstantHeadingUpdate::set_heading(double value) {
6713  _internal_set_heading(value);
6714  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate.heading)
6715 }
6716 
6717 // -------------------------------------------------------------------
6718 
6719 // IvPBehaviorUpdate_ConstantSpeedUpdate
6720 
6721 // required bool active = 1;
6722 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_has_active() const {
6723  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6724  return value;
6725 }
6726 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::has_active() const {
6727  return _internal_has_active();
6728 }
6729 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::clear_active() {
6730  active_ = false;
6731  _has_bits_[0] &= ~0x00000002u;
6732 }
6733 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_active() const {
6734  return active_;
6735 }
6736 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::active() const {
6737  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate.active)
6738  return _internal_active();
6739 }
6740 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_set_active(bool value) {
6741  _has_bits_[0] |= 0x00000002u;
6742  active_ = value;
6743 }
6744 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::set_active(bool value) {
6745  _internal_set_active(value);
6746  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate.active)
6747 }
6748 
6749 // optional double speed = 2 [(.dccl.field) = {
6750 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_has_speed() const {
6751  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6752  return value;
6753 }
6754 inline bool IvPBehaviorUpdate_ConstantSpeedUpdate::has_speed() const {
6755  return _internal_has_speed();
6756 }
6757 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::clear_speed() {
6758  speed_ = 0;
6759  _has_bits_[0] &= ~0x00000001u;
6760 }
6761 inline double IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_speed() const {
6762  return speed_;
6763 }
6764 inline double IvPBehaviorUpdate_ConstantSpeedUpdate::speed() const {
6765  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate.speed)
6766  return _internal_speed();
6767 }
6768 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::_internal_set_speed(double value) {
6769  _has_bits_[0] |= 0x00000001u;
6770  speed_ = value;
6771 }
6772 inline void IvPBehaviorUpdate_ConstantSpeedUpdate::set_speed(double value) {
6773  _internal_set_speed(value);
6774  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate.speed)
6775 }
6776 
6777 // -------------------------------------------------------------------
6778 
6779 // IvPBehaviorUpdate
6780 
6781 // .jaiabot.protobuf.IvPBehaviorUpdate.TransitUpdate transit = 1;
6782 inline bool IvPBehaviorUpdate::_internal_has_transit() const {
6783  return behavior_case() == kTransit;
6784 }
6785 inline bool IvPBehaviorUpdate::has_transit() const {
6786  return _internal_has_transit();
6787 }
6788 inline void IvPBehaviorUpdate::set_has_transit() {
6789  _oneof_case_[0] = kTransit;
6790 }
6791 inline void IvPBehaviorUpdate::clear_transit() {
6792  if (_internal_has_transit()) {
6793  if (GetArena() == nullptr) {
6794  delete behavior_.transit_;
6795  }
6796  clear_has_behavior();
6797  }
6798 }
6799 inline ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* IvPBehaviorUpdate::release_transit() {
6800  // @@protoc_insertion_point(field_release:jaiabot.protobuf.IvPBehaviorUpdate.transit)
6801  if (_internal_has_transit()) {
6802  clear_has_behavior();
6803  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* temp = behavior_.transit_;
6804  if (GetArena() != nullptr) {
6805  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6806  }
6807  behavior_.transit_ = nullptr;
6808  return temp;
6809  } else {
6810  return nullptr;
6811  }
6812 }
6813 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate& IvPBehaviorUpdate::_internal_transit() const {
6814  return _internal_has_transit()
6815  ? *behavior_.transit_
6816  : *reinterpret_cast< ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate*>(&::jaiabot::protobuf::_IvPBehaviorUpdate_TransitUpdate_default_instance_);
6817 }
6818 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate& IvPBehaviorUpdate::transit() const {
6819  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.transit)
6820  return _internal_transit();
6821 }
6822 inline ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* IvPBehaviorUpdate::unsafe_arena_release_transit() {
6823  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.IvPBehaviorUpdate.transit)
6824  if (_internal_has_transit()) {
6825  clear_has_behavior();
6826  ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* temp = behavior_.transit_;
6827  behavior_.transit_ = nullptr;
6828  return temp;
6829  } else {
6830  return nullptr;
6831  }
6832 }
6833 inline void IvPBehaviorUpdate::unsafe_arena_set_allocated_transit(::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* transit) {
6834  clear_behavior();
6835  if (transit) {
6836  set_has_transit();
6837  behavior_.transit_ = transit;
6838  }
6839  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IvPBehaviorUpdate.transit)
6840 }
6841 inline ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* IvPBehaviorUpdate::_internal_mutable_transit() {
6842  if (!_internal_has_transit()) {
6843  clear_behavior();
6844  set_has_transit();
6845  behavior_.transit_ = CreateMaybeMessage< ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate >(GetArena());
6846  }
6847  return behavior_.transit_;
6848 }
6849 inline ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate* IvPBehaviorUpdate::mutable_transit() {
6850  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IvPBehaviorUpdate.transit)
6851  return _internal_mutable_transit();
6852 }
6853 
6854 // .jaiabot.protobuf.IvPBehaviorUpdate.StationkeepUpdate stationkeep = 2;
6855 inline bool IvPBehaviorUpdate::_internal_has_stationkeep() const {
6856  return behavior_case() == kStationkeep;
6857 }
6858 inline bool IvPBehaviorUpdate::has_stationkeep() const {
6859  return _internal_has_stationkeep();
6860 }
6861 inline void IvPBehaviorUpdate::set_has_stationkeep() {
6862  _oneof_case_[0] = kStationkeep;
6863 }
6864 inline void IvPBehaviorUpdate::clear_stationkeep() {
6865  if (_internal_has_stationkeep()) {
6866  if (GetArena() == nullptr) {
6867  delete behavior_.stationkeep_;
6868  }
6869  clear_has_behavior();
6870  }
6871 }
6872 inline ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* IvPBehaviorUpdate::release_stationkeep() {
6873  // @@protoc_insertion_point(field_release:jaiabot.protobuf.IvPBehaviorUpdate.stationkeep)
6874  if (_internal_has_stationkeep()) {
6875  clear_has_behavior();
6876  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* temp = behavior_.stationkeep_;
6877  if (GetArena() != nullptr) {
6878  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6879  }
6880  behavior_.stationkeep_ = nullptr;
6881  return temp;
6882  } else {
6883  return nullptr;
6884  }
6885 }
6886 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate& IvPBehaviorUpdate::_internal_stationkeep() const {
6887  return _internal_has_stationkeep()
6888  ? *behavior_.stationkeep_
6889  : *reinterpret_cast< ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate*>(&::jaiabot::protobuf::_IvPBehaviorUpdate_StationkeepUpdate_default_instance_);
6890 }
6891 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate& IvPBehaviorUpdate::stationkeep() const {
6892  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.stationkeep)
6893  return _internal_stationkeep();
6894 }
6895 inline ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* IvPBehaviorUpdate::unsafe_arena_release_stationkeep() {
6896  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.IvPBehaviorUpdate.stationkeep)
6897  if (_internal_has_stationkeep()) {
6898  clear_has_behavior();
6899  ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* temp = behavior_.stationkeep_;
6900  behavior_.stationkeep_ = nullptr;
6901  return temp;
6902  } else {
6903  return nullptr;
6904  }
6905 }
6906 inline void IvPBehaviorUpdate::unsafe_arena_set_allocated_stationkeep(::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* stationkeep) {
6907  clear_behavior();
6908  if (stationkeep) {
6909  set_has_stationkeep();
6910  behavior_.stationkeep_ = stationkeep;
6911  }
6912  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IvPBehaviorUpdate.stationkeep)
6913 }
6914 inline ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* IvPBehaviorUpdate::_internal_mutable_stationkeep() {
6915  if (!_internal_has_stationkeep()) {
6916  clear_behavior();
6917  set_has_stationkeep();
6918  behavior_.stationkeep_ = CreateMaybeMessage< ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate >(GetArena());
6919  }
6920  return behavior_.stationkeep_;
6921 }
6922 inline ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate* IvPBehaviorUpdate::mutable_stationkeep() {
6923  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IvPBehaviorUpdate.stationkeep)
6924  return _internal_mutable_stationkeep();
6925 }
6926 
6927 // .jaiabot.protobuf.IvPBehaviorUpdate.ConstantHeadingUpdate constantHeading = 3;
6928 inline bool IvPBehaviorUpdate::_internal_has_constantheading() const {
6929  return behavior_case() == kConstantHeading;
6930 }
6931 inline bool IvPBehaviorUpdate::has_constantheading() const {
6932  return _internal_has_constantheading();
6933 }
6934 inline void IvPBehaviorUpdate::set_has_constantheading() {
6935  _oneof_case_[0] = kConstantHeading;
6936 }
6937 inline void IvPBehaviorUpdate::clear_constantheading() {
6938  if (_internal_has_constantheading()) {
6939  if (GetArena() == nullptr) {
6940  delete behavior_.constantheading_;
6941  }
6942  clear_has_behavior();
6943  }
6944 }
6945 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* IvPBehaviorUpdate::release_constantheading() {
6946  // @@protoc_insertion_point(field_release:jaiabot.protobuf.IvPBehaviorUpdate.constantHeading)
6947  if (_internal_has_constantheading()) {
6948  clear_has_behavior();
6949  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* temp = behavior_.constantheading_;
6950  if (GetArena() != nullptr) {
6951  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
6952  }
6953  behavior_.constantheading_ = nullptr;
6954  return temp;
6955  } else {
6956  return nullptr;
6957  }
6958 }
6959 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate& IvPBehaviorUpdate::_internal_constantheading() const {
6960  return _internal_has_constantheading()
6961  ? *behavior_.constantheading_
6962  : *reinterpret_cast< ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate*>(&::jaiabot::protobuf::_IvPBehaviorUpdate_ConstantHeadingUpdate_default_instance_);
6963 }
6964 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate& IvPBehaviorUpdate::constantheading() const {
6965  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.constantHeading)
6966  return _internal_constantheading();
6967 }
6968 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* IvPBehaviorUpdate::unsafe_arena_release_constantheading() {
6969  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.IvPBehaviorUpdate.constantHeading)
6970  if (_internal_has_constantheading()) {
6971  clear_has_behavior();
6972  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* temp = behavior_.constantheading_;
6973  behavior_.constantheading_ = nullptr;
6974  return temp;
6975  } else {
6976  return nullptr;
6977  }
6978 }
6979 inline void IvPBehaviorUpdate::unsafe_arena_set_allocated_constantheading(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* constantheading) {
6980  clear_behavior();
6981  if (constantheading) {
6982  set_has_constantheading();
6983  behavior_.constantheading_ = constantheading;
6984  }
6985  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IvPBehaviorUpdate.constantHeading)
6986 }
6987 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* IvPBehaviorUpdate::_internal_mutable_constantheading() {
6988  if (!_internal_has_constantheading()) {
6989  clear_behavior();
6990  set_has_constantheading();
6991  behavior_.constantheading_ = CreateMaybeMessage< ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate >(GetArena());
6992  }
6993  return behavior_.constantheading_;
6994 }
6995 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate* IvPBehaviorUpdate::mutable_constantheading() {
6996  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IvPBehaviorUpdate.constantHeading)
6997  return _internal_mutable_constantheading();
6998 }
6999 
7000 // .jaiabot.protobuf.IvPBehaviorUpdate.ConstantSpeedUpdate constantSpeed = 4;
7001 inline bool IvPBehaviorUpdate::_internal_has_constantspeed() const {
7002  return behavior_case() == kConstantSpeed;
7003 }
7004 inline bool IvPBehaviorUpdate::has_constantspeed() const {
7005  return _internal_has_constantspeed();
7006 }
7007 inline void IvPBehaviorUpdate::set_has_constantspeed() {
7008  _oneof_case_[0] = kConstantSpeed;
7009 }
7010 inline void IvPBehaviorUpdate::clear_constantspeed() {
7011  if (_internal_has_constantspeed()) {
7012  if (GetArena() == nullptr) {
7013  delete behavior_.constantspeed_;
7014  }
7015  clear_has_behavior();
7016  }
7017 }
7018 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* IvPBehaviorUpdate::release_constantspeed() {
7019  // @@protoc_insertion_point(field_release:jaiabot.protobuf.IvPBehaviorUpdate.constantSpeed)
7020  if (_internal_has_constantspeed()) {
7021  clear_has_behavior();
7022  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* temp = behavior_.constantspeed_;
7023  if (GetArena() != nullptr) {
7024  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7025  }
7026  behavior_.constantspeed_ = nullptr;
7027  return temp;
7028  } else {
7029  return nullptr;
7030  }
7031 }
7032 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate& IvPBehaviorUpdate::_internal_constantspeed() const {
7033  return _internal_has_constantspeed()
7034  ? *behavior_.constantspeed_
7035  : *reinterpret_cast< ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate*>(&::jaiabot::protobuf::_IvPBehaviorUpdate_ConstantSpeedUpdate_default_instance_);
7036 }
7037 inline const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate& IvPBehaviorUpdate::constantspeed() const {
7038  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorUpdate.constantSpeed)
7039  return _internal_constantspeed();
7040 }
7041 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* IvPBehaviorUpdate::unsafe_arena_release_constantspeed() {
7042  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.IvPBehaviorUpdate.constantSpeed)
7043  if (_internal_has_constantspeed()) {
7044  clear_has_behavior();
7045  ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* temp = behavior_.constantspeed_;
7046  behavior_.constantspeed_ = nullptr;
7047  return temp;
7048  } else {
7049  return nullptr;
7050  }
7051 }
7052 inline void IvPBehaviorUpdate::unsafe_arena_set_allocated_constantspeed(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* constantspeed) {
7053  clear_behavior();
7054  if (constantspeed) {
7055  set_has_constantspeed();
7056  behavior_.constantspeed_ = constantspeed;
7057  }
7058  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IvPBehaviorUpdate.constantSpeed)
7059 }
7060 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* IvPBehaviorUpdate::_internal_mutable_constantspeed() {
7061  if (!_internal_has_constantspeed()) {
7062  clear_behavior();
7063  set_has_constantspeed();
7064  behavior_.constantspeed_ = CreateMaybeMessage< ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate >(GetArena());
7065  }
7066  return behavior_.constantspeed_;
7067 }
7068 inline ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate* IvPBehaviorUpdate::mutable_constantspeed() {
7069  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IvPBehaviorUpdate.constantSpeed)
7070  return _internal_mutable_constantspeed();
7071 }
7072 
7073 inline bool IvPBehaviorUpdate::has_behavior() const {
7074  return behavior_case() != BEHAVIOR_NOT_SET;
7075 }
7076 inline void IvPBehaviorUpdate::clear_has_behavior() {
7077  _oneof_case_[0] = BEHAVIOR_NOT_SET;
7078 }
7079 inline IvPBehaviorUpdate::BehaviorCase IvPBehaviorUpdate::behavior_case() const {
7080  return IvPBehaviorUpdate::BehaviorCase(_oneof_case_[0]);
7081 }
7082 // -------------------------------------------------------------------
7083 
7084 // IvPBehaviorReport_TransitReport
7085 
7086 // optional bool waypoint_reached = 1 [default = false];
7087 inline bool IvPBehaviorReport_TransitReport::_internal_has_waypoint_reached() const {
7088  bool value = (_has_bits_[0] & 0x00000001u) != 0;
7089  return value;
7090 }
7091 inline bool IvPBehaviorReport_TransitReport::has_waypoint_reached() const {
7092  return _internal_has_waypoint_reached();
7093 }
7094 inline void IvPBehaviorReport_TransitReport::clear_waypoint_reached() {
7095  waypoint_reached_ = false;
7096  _has_bits_[0] &= ~0x00000001u;
7097 }
7098 inline bool IvPBehaviorReport_TransitReport::_internal_waypoint_reached() const {
7099  return waypoint_reached_;
7100 }
7101 inline bool IvPBehaviorReport_TransitReport::waypoint_reached() const {
7102  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorReport.TransitReport.waypoint_reached)
7103  return _internal_waypoint_reached();
7104 }
7105 inline void IvPBehaviorReport_TransitReport::_internal_set_waypoint_reached(bool value) {
7106  _has_bits_[0] |= 0x00000001u;
7107  waypoint_reached_ = value;
7108 }
7109 inline void IvPBehaviorReport_TransitReport::set_waypoint_reached(bool value) {
7110  _internal_set_waypoint_reached(value);
7111  // @@protoc_insertion_point(field_set:jaiabot.protobuf.IvPBehaviorReport.TransitReport.waypoint_reached)
7112 }
7113 
7114 // -------------------------------------------------------------------
7115 
7116 // IvPBehaviorReport
7117 
7118 // .jaiabot.protobuf.IvPBehaviorReport.TransitReport transit = 1;
7119 inline bool IvPBehaviorReport::_internal_has_transit() const {
7120  return behavior_case() == kTransit;
7121 }
7122 inline bool IvPBehaviorReport::has_transit() const {
7123  return _internal_has_transit();
7124 }
7125 inline void IvPBehaviorReport::set_has_transit() {
7126  _oneof_case_[0] = kTransit;
7127 }
7128 inline void IvPBehaviorReport::clear_transit() {
7129  if (_internal_has_transit()) {
7130  if (GetArena() == nullptr) {
7131  delete behavior_.transit_;
7132  }
7133  clear_has_behavior();
7134  }
7135 }
7136 inline ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* IvPBehaviorReport::release_transit() {
7137  // @@protoc_insertion_point(field_release:jaiabot.protobuf.IvPBehaviorReport.transit)
7138  if (_internal_has_transit()) {
7139  clear_has_behavior();
7140  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* temp = behavior_.transit_;
7141  if (GetArena() != nullptr) {
7142  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7143  }
7144  behavior_.transit_ = nullptr;
7145  return temp;
7146  } else {
7147  return nullptr;
7148  }
7149 }
7150 inline const ::jaiabot::protobuf::IvPBehaviorReport_TransitReport& IvPBehaviorReport::_internal_transit() const {
7151  return _internal_has_transit()
7152  ? *behavior_.transit_
7153  : *reinterpret_cast< ::jaiabot::protobuf::IvPBehaviorReport_TransitReport*>(&::jaiabot::protobuf::_IvPBehaviorReport_TransitReport_default_instance_);
7154 }
7155 inline const ::jaiabot::protobuf::IvPBehaviorReport_TransitReport& IvPBehaviorReport::transit() const {
7156  // @@protoc_insertion_point(field_get:jaiabot.protobuf.IvPBehaviorReport.transit)
7157  return _internal_transit();
7158 }
7159 inline ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* IvPBehaviorReport::unsafe_arena_release_transit() {
7160  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.protobuf.IvPBehaviorReport.transit)
7161  if (_internal_has_transit()) {
7162  clear_has_behavior();
7163  ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* temp = behavior_.transit_;
7164  behavior_.transit_ = nullptr;
7165  return temp;
7166  } else {
7167  return nullptr;
7168  }
7169 }
7170 inline void IvPBehaviorReport::unsafe_arena_set_allocated_transit(::jaiabot::protobuf::IvPBehaviorReport_TransitReport* transit) {
7171  clear_behavior();
7172  if (transit) {
7173  set_has_transit();
7174  behavior_.transit_ = transit;
7175  }
7176  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IvPBehaviorReport.transit)
7177 }
7178 inline ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* IvPBehaviorReport::_internal_mutable_transit() {
7179  if (!_internal_has_transit()) {
7180  clear_behavior();
7181  set_has_transit();
7182  behavior_.transit_ = CreateMaybeMessage< ::jaiabot::protobuf::IvPBehaviorReport_TransitReport >(GetArena());
7183  }
7184  return behavior_.transit_;
7185 }
7186 inline ::jaiabot::protobuf::IvPBehaviorReport_TransitReport* IvPBehaviorReport::mutable_transit() {
7187  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IvPBehaviorReport.transit)
7188  return _internal_mutable_transit();
7189 }
7190 
7191 inline bool IvPBehaviorReport::has_behavior() const {
7192  return behavior_case() != BEHAVIOR_NOT_SET;
7193 }
7194 inline void IvPBehaviorReport::clear_has_behavior() {
7195  _oneof_case_[0] = BEHAVIOR_NOT_SET;
7196 }
7197 inline IvPBehaviorReport::BehaviorCase IvPBehaviorReport::behavior_case() const {
7198  return IvPBehaviorReport::BehaviorCase(_oneof_case_[0]);
7199 }
7200 // -------------------------------------------------------------------
7201 
7202 // MissionTpvMeetsGpsReq
7203 
7204 // optional .goby.middleware.protobuf.gpsd.TimePositionVelocity tpv = 1;
7205 inline bool MissionTpvMeetsGpsReq::_internal_has_tpv() const {
7206  bool value = (_has_bits_[0] & 0x00000001u) != 0;
7207  PROTOBUF_ASSUME(!value || tpv_ != nullptr);
7208  return value;
7209 }
7210 inline bool MissionTpvMeetsGpsReq::has_tpv() const {
7211  return _internal_has_tpv();
7212 }
7213 inline const ::goby::middleware::protobuf::gpsd::TimePositionVelocity& MissionTpvMeetsGpsReq::_internal_tpv() const {
7214  const ::goby::middleware::protobuf::gpsd::TimePositionVelocity* p = tpv_;
7215  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::gpsd::TimePositionVelocity*>(
7216  &::goby::middleware::protobuf::gpsd::_TimePositionVelocity_default_instance_);
7217 }
7218 inline const ::goby::middleware::protobuf::gpsd::TimePositionVelocity& MissionTpvMeetsGpsReq::tpv() const {
7219  // @@protoc_insertion_point(field_get:jaiabot.protobuf.MissionTpvMeetsGpsReq.tpv)
7220  return _internal_tpv();
7221 }
7222 inline void MissionTpvMeetsGpsReq::unsafe_arena_set_allocated_tpv(
7223  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* tpv) {
7224  if (GetArena() == nullptr) {
7225  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(tpv_);
7226  }
7227  tpv_ = tpv;
7228  if (tpv) {
7229  _has_bits_[0] |= 0x00000001u;
7230  } else {
7231  _has_bits_[0] &= ~0x00000001u;
7232  }
7233  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.MissionTpvMeetsGpsReq.tpv)
7234 }
7235 inline ::goby::middleware::protobuf::gpsd::TimePositionVelocity* MissionTpvMeetsGpsReq::release_tpv() {
7236  auto temp = unsafe_arena_release_tpv();
7237  if (GetArena() != nullptr) {
7238  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
7239  }
7240  return temp;
7241 }
7242 inline ::goby::middleware::protobuf::gpsd::TimePositionVelocity* MissionTpvMeetsGpsReq::unsafe_arena_release_tpv() {
7243  // @@protoc_insertion_point(field_release:jaiabot.protobuf.MissionTpvMeetsGpsReq.tpv)
7244  _has_bits_[0] &= ~0x00000001u;
7245  ::goby::middleware::protobuf::gpsd::TimePositionVelocity* temp = tpv_;
7246  tpv_ = nullptr;
7247  return temp;
7248 }
7249 inline ::goby::middleware::protobuf::gpsd::TimePositionVelocity* MissionTpvMeetsGpsReq::_internal_mutable_tpv() {
7250  _has_bits_[0] |= 0x00000001u;
7251  if (tpv_ == nullptr) {
7252  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::gpsd::TimePositionVelocity>(GetArena());
7253  tpv_ = p;
7254  }
7255  return tpv_;
7256 }
7257 inline ::goby::middleware::protobuf::gpsd::TimePositionVelocity* MissionTpvMeetsGpsReq::mutable_tpv() {
7258  // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.MissionTpvMeetsGpsReq.tpv)
7259  return _internal_mutable_tpv();
7260 }
7261 inline void MissionTpvMeetsGpsReq::set_allocated_tpv(::goby::middleware::protobuf::gpsd::TimePositionVelocity* tpv) {
7262  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
7263  if (message_arena == nullptr) {
7264  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(tpv_);
7265  }
7266  if (tpv) {
7267  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
7268  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(tpv)->GetArena();
7269  if (message_arena != submessage_arena) {
7270  tpv = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7271  message_arena, tpv, submessage_arena);
7272  }
7273  _has_bits_[0] |= 0x00000001u;
7274  } else {
7275  _has_bits_[0] &= ~0x00000001u;
7276  }
7277  tpv_ = tpv;
7278  // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.MissionTpvMeetsGpsReq.tpv)
7279 }
7280 
7281 #ifdef __GNUC__
7282  #pragma GCC diagnostic pop
7283 #endif // __GNUC__
7284 // -------------------------------------------------------------------
7285 
7286 // -------------------------------------------------------------------
7287 
7288 // -------------------------------------------------------------------
7289 
7290 // -------------------------------------------------------------------
7291 
7292 // -------------------------------------------------------------------
7293 
7294 // -------------------------------------------------------------------
7295 
7296 // -------------------------------------------------------------------
7297 
7298 // -------------------------------------------------------------------
7299 
7300 // -------------------------------------------------------------------
7301 
7302 // -------------------------------------------------------------------
7303 
7304 // -------------------------------------------------------------------
7305 
7306 // -------------------------------------------------------------------
7307 
7308 // -------------------------------------------------------------------
7309 
7310 // -------------------------------------------------------------------
7311 
7312 // -------------------------------------------------------------------
7313 
7314 // -------------------------------------------------------------------
7315 
7316 // -------------------------------------------------------------------
7317 
7318 // -------------------------------------------------------------------
7319 
7320 
7321 // @@protoc_insertion_point(namespace_scope)
7322 
7323 } // namespace protobuf
7324 } // namespace jaiabot
7325 
7326 PROTOBUF_NAMESPACE_OPEN
7327 
7328 template <> struct is_proto_enum< ::jaiabot::protobuf::MissionTask_TaskType> : ::std::true_type {};
7329 template <>
7330 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::protobuf::MissionTask_TaskType>() {
7332 }
7333 template <> struct is_proto_enum< ::jaiabot::protobuf::MissionPlan_MissionStart> : ::std::true_type {};
7334 template <>
7335 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::protobuf::MissionPlan_MissionStart>() {
7337 }
7338 template <> struct is_proto_enum< ::jaiabot::protobuf::MissionPlan_MovementType> : ::std::true_type {};
7339 template <>
7340 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::protobuf::MissionPlan_MovementType>() {
7342 }
7343 template <> struct is_proto_enum< ::jaiabot::protobuf::MissionState> : ::std::true_type {};
7344 template <>
7345 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::protobuf::MissionState>() {
7347 }
7348 
7349 PROTOBUF_NAMESPACE_CLOSE
7350 
7351 // @@protoc_insertion_point(global_scope)
7352 
7353 #include <google/protobuf/port_undef.inc>
7354 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fmission_2eproto
boost::units::unit< depth_interval_dimension, boost::units::si::system > depth_interval_unit
Definition: mission.pb.h:1204
static const MissionPlan_Goal & default_instance()
void set_y_with_units(Quantity value_w_units)
Definition: mission.pb.h:3038
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal > * mutable_goal()
IvPBehaviorUpdate_StationkeepUpdate & operator=(const IvPBehaviorUpdate_StationkeepUpdate &from)
Definition: mission.pb.h:3093
::jaiabot::protobuf::BottomDepthSafetyParams * mutable_bottom_depth_safety_params()
MissionPlan_Goal * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:2160
void Swap(MissionReport *other)
Definition: mission.pb.h:790
void CopyFrom(const MissionPlan_Recovery &from)
void Swap(IvPBehaviorUpdate_ConstantHeadingUpdate *other)
Definition: mission.pb.h:3419
boost::units::unit< constant_heading_dimension, boost::units::degree::system > constant_heading_unit
Definition: mission.pb.h:658
static const MissionPlan_Recovery * internal_default_instance()
Definition: mission.pb.h:2350
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate * release_constantspeed()
MissionPlan_Recovery(::PROTOBUF_NAMESPACE_ID::Arena *arena)
Speeds & operator=(Speeds &&from) noexcept
Definition: mission.pb.h:301
boost::units::quantity< constant_heading_unit, double > constant_heading_with_units() const
Definition: mission.pb.h:668
IvPBehaviorUpdate_TransitUpdate * New() const final
Definition: mission.pb.h:2897
MissionTask_DiveParameters DiveParameters
Definition: mission.pb.h:1918
void CopyFrom(const MissionTask_ConstantHeadingParameters &from)
MissionTask * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:1875
void UnsafeArenaSwap(MissionTpvMeetsGpsReq *other)
Definition: mission.pb.h:4345
IvPBehaviorUpdate_ConstantHeadingUpdate(IvPBehaviorUpdate_ConstantHeadingUpdate &&from) noexcept
Definition: mission.pb.h:3372
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type stationkeep_outer_dimension
Definition: mission.pb.h:447
IvPBehaviorUpdate_StationkeepUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const std::string & MovementType_Name(T enum_t_value)
Definition: mission.pb.h:2644
::jaiabot::protobuf::MissionTask_StationKeepParameters * unsafe_arena_release_station_keep()
MissionTpvMeetsGpsReq * New() const final
Definition: mission.pb.h:4353
void set_allocated_name(std::string *name)
MissionReport(const MissionReport &from)
void set_constant_heading_speed_with_units(Quantity value_w_units)
Definition: mission.pb.h:691
MissionReport * New() const final
Definition: mission.pb.h:806
static bool MovementType_Parse(const std::string &name, MovementType *value)
Definition: mission.pb.h:2650
static const MissionReport & default_instance()
IvPBehaviorUpdate_ConstantHeadingUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena)
MissionPlan(::PROTOBUF_NAMESPACE_ID::Arena *arena)
IvPBehaviorUpdate_TransitUpdate(IvPBehaviorUpdate_TransitUpdate &&from) noexcept
Definition: mission.pb.h:2834
MissionPlan_Recovery(MissionPlan_Recovery &&from) noexcept
Definition: mission.pb.h:2313
MissionTpvMeetsGpsReq & operator=(const MissionTpvMeetsGpsReq &from)
Definition: mission.pb.h:4295
IvPBehaviorUpdate_TransitUpdate & operator=(IvPBehaviorUpdate_TransitUpdate &&from) noexcept
Definition: mission.pb.h:2843
::jaiabot::protobuf::MissionPlan_Goal * add_goal()
Quantity depth_interval_with_units() const
Definition: mission.pb.h:1211
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition: mission.pb.h:310
::PROTOBUF_NAMESPACE_ID::int32 constant_heading_time() const
boost::units::length_dimension distance_to_active_goal_dimension
Definition: mission.pb.h:960
::jaiabot::protobuf::MissionPlan_Recovery * unsafe_arena_release_recovery()
boost::units::quantity< constant_heading_time_unit, google::protobuf::int32 > constant_heading_time_with_units() const
Definition: mission.pb.h:683
boost::units::quantity< x_unit, double > x_with_units() const
Definition: mission.pb.h:3030
::jaiabot::protobuf::MissionTask_ConstantHeadingParameters * mutable_constant_heading()
Quantity station_keep_time_with_units() const
Definition: mission.pb.h:1781
static bool MissionStart_IsValid(int value)
Definition: mission.pb.h:2600
void MergeFrom(const MissionTask_ConstantHeadingParameters &from)
static const MissionPlan_Goal * internal_default_instance()
Definition: mission.pb.h:2130
void set_expected_fragments(::PROTOBUF_NAMESPACE_ID::uint32 value)
void MergeFrom(const MissionTask_StationKeepParameters &from)
void CopyFrom(const IvPBehaviorUpdate_StationkeepUpdate &from)
friend void swap(BottomDepthSafetyParams &a, BottomDepthSafetyParams &b)
Definition: mission.pb.h:530
boost::units::unit< drift_time_dimension, boost::units::si::system > drift_time_unit
Definition: mission.pb.h:1386
::jaiabot::protobuf::MissionPlan_MissionStart start() const
void set_allocated_recovery(::jaiabot::protobuf::MissionPlan_Recovery *recovery)
MissionPlan & operator=(const MissionPlan &from)
Definition: mission.pb.h:2487
::jaiabot::protobuf::GeographicCoordinate * mutable_location()
MissionTask_StationKeepParameters StationKeepParameters
Definition: mission.pb.h:1921
friend void swap(IvPBehaviorUpdate &a, IvPBehaviorUpdate &b)
Definition: mission.pb.h:3782
MissionPlan_Goal & operator=(const MissionPlan_Goal &from)
Definition: mission.pb.h:2098
void set_repeats(::PROTOBUF_NAMESPACE_ID::uint32 value)
boost::units::quantity< heading_unit, double > heading_with_units() const
Definition: mission.pb.h:3526
void set_constant_heading_with_units(Quantity value_w_units)
Definition: mission.pb.h:661
static const IvPBehaviorUpdate_ConstantSpeedUpdate & default_instance()
void MergeFrom(const Speeds &from)
::jaiabot::protobuf::MissionPlan_MovementType movement() const
void set_center_activate(bool value)
void unsafe_arena_set_allocated_station_keep(::jaiabot::protobuf::MissionTask_StationKeepParameters *station_keep)
virtual ~IvPBehaviorUpdate_ConstantHeadingUpdate()
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate * unsafe_arena_release_constantspeed()
BottomDepthSafetyParams(const BottomDepthSafetyParams &from)
MissionTask_ConstantHeadingParameters ConstantHeadingParameters
Definition: mission.pb.h:1920
void CopyFrom(const MissionTask_DiveParameters &from)
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type outer_speed_dimension
Definition: mission.pb.h:3314
Speeds(Speeds &&from) noexcept
Definition: mission.pb.h:292
Quantity constant_heading_with_units() const
Definition: mission.pb.h:665
MissionPlan_Recovery * New() const final
Definition: mission.pb.h:2376
static const MissionTask_StationKeepParameters * internal_default_instance()
Definition: mission.pb.h:1681
::PROTOBUF_NAMESPACE_ID::int32 data_offload_percentage() const
MissionTask(const MissionTask &from)
const ::jaiabot::protobuf::GeographicCoordinate & active_goal_location() const
BottomDepthSafetyParams(BottomDepthSafetyParams &&from) noexcept
Definition: mission.pb.h:486
::jaiabot::protobuf::Speeds * mutable_speeds()
MissionTask_DriftParameters(MissionTask_DriftParameters &&from) noexcept
Definition: mission.pb.h:1256
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MovementType_descriptor()
Definition: mission.pb.h:2640
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type depth_interval_dimension
Definition: mission.pb.h:1200
boost::units::unit< hold_time_dimension, boost::units::si::system > hold_time_unit
Definition: mission.pb.h:1219
void UnsafeArenaSwap(MissionTask_ConstantHeadingParameters *other)
Definition: mission.pb.h:1475
void CopyFrom(const MissionReport &from)
IvPBehaviorUpdate_ConstantHeadingUpdate ConstantHeadingUpdate
Definition: mission.pb.h:3850
MissionReport & operator=(const MissionReport &from)
Definition: mission.pb.h:748
boost::units::quantity< y_unit, double > y_with_units() const
Definition: mission.pb.h:3045
void Swap(MissionTask_DriftParameters *other)
Definition: mission.pb.h:1303
void unsafe_arena_set_allocated_bottom_depth_safety_params(::jaiabot::protobuf::BottomDepthSafetyParams *bottom_depth_safety_params)
static const MissionTask * internal_default_instance()
Definition: mission.pb.h:1845
void set_depth_interval_with_units(Quantity value_w_units)
Definition: mission.pb.h:1207
boost::units::quantity< drift_time_unit, google::protobuf::int32 > drift_time_with_units() const
Definition: mission.pb.h:1396
Quantity outer_speed_with_units() const
Definition: mission.pb.h:3325
IvPBehaviorUpdate_TransitUpdate(const IvPBehaviorUpdate_TransitUpdate &from)
void set_start(::jaiabot::protobuf::MissionPlan_MissionStart value)
void CopyFrom(const BottomDepthSafetyParams &from)
boost::units::unit< constant_heading_speed_dimension, boost::units::si::system > constant_heading_speed_unit
Definition: mission.pb.h:688
IvPBehaviorUpdate_ConstantHeadingUpdate & operator=(IvPBehaviorUpdate_ConstantHeadingUpdate &&from) noexcept
Definition: mission.pb.h:3381
::jaiabot::protobuf::MissionTask_ConstantHeadingParameters * unsafe_arena_release_constant_heading()
void set_constant_heading_time(::PROTOBUF_NAMESPACE_ID::int32 value)
::goby::middleware::protobuf::gpsd::TimePositionVelocity * release_tpv()
void set_constant_heading_speed(double value)
boost::units::unit< distance_to_active_goal_dimension, boost::units::si::system > distance_to_active_goal_unit
Definition: mission.pb.h:962
MissionPlan & operator=(MissionPlan &&from) noexcept
Definition: mission.pb.h:2491
MissionReport(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const MissionTask & default_instance()
MissionTask_DriftParameters(const MissionTask_DriftParameters &from)
IvPBehaviorReport_TransitReport TransitReport
Definition: mission.pb.h:4234
void Swap(MissionPlan *other)
Definition: mission.pb.h:2529
void Swap(IvPBehaviorUpdate_StationkeepUpdate *other)
Definition: mission.pb.h:3135
static bool MissionStart_Parse(const std::string &name, MissionStart *value)
Definition: mission.pb.h:2620
MissionTask_DiveParameters & operator=(MissionTask_DiveParameters &&from) noexcept
Definition: mission.pb.h:1026
void set_safety_depth(double value)
void UnsafeArenaSwap(Speeds *other)
Definition: mission.pb.h:347
void set_allocated_station_keep(::jaiabot::protobuf::MissionTask_StationKeepParameters *station_keep)
::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate * release_transit()
Quantity transit_with_units() const
Definition: mission.pb.h:443
IvPBehaviorUpdate_TransitUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena)
const ::goby::middleware::protobuf::gpsd::TimePositionVelocity & tpv() const
void set_allocated_bottom_depth_safety_params(::jaiabot::protobuf::BottomDepthSafetyParams *bottom_depth_safety_params)
void set_distance_to_active_goal(double value)
void unsafe_arena_set_allocated_constantheading(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate *constantheading)
const ::jaiabot::protobuf::MissionTask_DiveParameters & dive() const
::PROTOBUF_NAMESPACE_ID::int32 station_keep_time() const
MissionTask_StationKeepParameters(MissionTask_StationKeepParameters &&from) noexcept
Definition: mission.pb.h:1644
IvPBehaviorUpdate_StationkeepUpdate(IvPBehaviorUpdate_StationkeepUpdate &&from) noexcept
Definition: mission.pb.h:3088
void set_allocated_transit(::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate *transit)
void set_distance_to_active_goal_with_units(Quantity value_w_units)
Definition: mission.pb.h:965
void UnsafeArenaSwap(MissionPlan *other)
Definition: mission.pb.h:2537
void set_station_keep_time_with_units(Quantity value_w_units)
Definition: mission.pb.h:1777
static const MissionTask_DiveParameters & default_instance()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate * release_stationkeep()
void CopyFrom(const IvPBehaviorUpdate &from)
void CopyFrom(const MissionTask &from)
void set_heading_with_units(Quantity value_w_units)
Definition: mission.pb.h:3519
IvPBehaviorReport & operator=(const IvPBehaviorReport &from)
Definition: mission.pb.h:4124
static const MissionTask_ConstantHeadingParameters * internal_default_instance()
Definition: mission.pb.h:1457
const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate & constantheading() const
MissionTask_DriftParameters & operator=(const MissionTask_DriftParameters &from)
Definition: mission.pb.h:1261
void UnsafeArenaSwap(IvPBehaviorUpdate *other)
Definition: mission.pb.h:3793
const ::jaiabot::protobuf::BottomDepthSafetyParams & bottom_depth_safety_params() const
::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate * mutable_stationkeep()
Speeds & operator=(const Speeds &from)
Definition: mission.pb.h:297
boost::units::unit< y_dimension, boost::units::si::system > y_unit
Definition: mission.pb.h:3035
MissionTask_DriftParameters * New() const final
Definition: mission.pb.h:1319
IvPBehaviorReport(const IvPBehaviorReport &from)
void CopyFrom(const MissionTask_DriftParameters &from)
void set_repeat_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void MergeFrom(const IvPBehaviorUpdate &from)
MissionPlan(MissionPlan &&from) noexcept
Definition: mission.pb.h:2482
void set_allocated_constantspeed(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate *constantspeed)
void unsafe_arena_set_allocated_recovery(::jaiabot::protobuf::MissionPlan_Recovery *recovery)
void set_transit_speed(double value)
IvPBehaviorUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena)
IvPBehaviorUpdate(IvPBehaviorUpdate &&from) noexcept
Definition: mission.pb.h:3730
static const MissionTpvMeetsGpsReq & default_instance()
boost::units::quantity< hold_time_unit, double > hold_time_with_units() const
Definition: mission.pb.h:1229
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type constant_heading_speed_dimension
Definition: mission.pb.h:684
static const MissionTpvMeetsGpsReq * internal_default_instance()
Definition: mission.pb.h:4327
IvPBehaviorUpdate_ConstantSpeedUpdate & operator=(IvPBehaviorUpdate_ConstantSpeedUpdate &&from) noexcept
Definition: mission.pb.h:3560
void set_hold_time_with_units(Quantity value_w_units)
Definition: mission.pb.h:1222
void unsafe_arena_set_allocated_active_goal_location(::jaiabot::protobuf::GeographicCoordinate *active_goal_location)
::jaiabot::protobuf::GeographicCoordinate * mutable_active_goal_location()
void set_station_keep_time(::PROTOBUF_NAMESPACE_ID::int32 value)
void UnsafeArenaSwap(IvPBehaviorUpdate_ConstantSpeedUpdate *other)
Definition: mission.pb.h:3606
::jaiabot::protobuf::MissionTask_DriftParameters * release_surface_drift()
::jaiabot::protobuf::MissionState state() const
void Swap(MissionTask_StationKeepParameters *other)
Definition: mission.pb.h:1691
IvPBehaviorUpdate & operator=(const IvPBehaviorUpdate &from)
Definition: mission.pb.h:3735
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate * mutable_constantspeed()
IvPBehaviorUpdate_TransitUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:2901
Quantity safety_depth_with_units() const
Definition: mission.pb.h:710
const ::jaiabot::protobuf::Speeds & speeds() const
::jaiabot::protobuf::MissionTask_DiveParameters * release_dive()
void set_transit_speed_with_units(Quantity value_w_units)
Definition: mission.pb.h:3336
::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate * mutable_transit()
void CopyFrom(const MissionPlan_Goal &from)
boost::units::quantity< outer_speed_unit, double > outer_speed_with_units() const
Definition: mission.pb.h:3328
MissionPlan_Goal(MissionPlan_Goal &&from) noexcept
Definition: mission.pb.h:2093
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::protobuf::MissionPlan_Goal > & goal() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const IvPBehaviorUpdate_StationkeepUpdate & default_instance()
void set_waypoint_reached(bool value)
::goby::middleware::protobuf::gpsd::TimePositionVelocity * mutable_tpv()
friend void swap(IvPBehaviorReport &a, IvPBehaviorReport &b)
Definition: mission.pb.h:4168
void MergeFrom(const IvPBehaviorUpdate_TransitUpdate &from)
Quantity constant_heading_speed_with_units() const
Definition: mission.pb.h:695
::jaiabot::protobuf::BottomDepthSafetyParams * release_bottom_depth_safety_params()
MissionTask_StationKeepParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:1711
void set_max_depth_with_units(Quantity value_w_units)
Definition: mission.pb.h:1192
void CopyFrom(const IvPBehaviorReport &from)
IvPBehaviorUpdate_StationkeepUpdate StationkeepUpdate
Definition: mission.pb.h:3849
IvPBehaviorReport_TransitReport & operator=(const IvPBehaviorReport_TransitReport &from)
Definition: mission.pb.h:3975
MissionTask_ConstantHeadingParameters & operator=(MissionTask_ConstantHeadingParameters &&from) noexcept
Definition: mission.pb.h:1429
friend void swap(MissionTask_StationKeepParameters &a, MissionTask_StationKeepParameters &b)
Definition: mission.pb.h:1688
static const IvPBehaviorUpdate * internal_default_instance()
Definition: mission.pb.h:3775
void set_allocated_constantheading(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate *constantheading)
void unsafe_arena_set_allocated_stationkeep(::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate *stationkeep)
::PROTOBUF_NAMESPACE_ID::uint32 fragment_index() const
void set_active_goal_timeout(::PROTOBUF_NAMESPACE_ID::uint32 value)
static const MissionPlan & default_instance()
IvPBehaviorUpdate & operator=(IvPBehaviorUpdate &&from) noexcept
Definition: mission.pb.h:3739
const ::jaiabot::protobuf::GeographicCoordinate & location() const
void set_name(const char *value)
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate * release_constantheading()
friend void swap(MissionTask &a, MissionTask &b)
Definition: mission.pb.h:1852
boost::units::unit< x_dimension, boost::units::si::system > x_unit
Definition: mission.pb.h:3020
friend void swap(IvPBehaviorUpdate_TransitUpdate &a, IvPBehaviorUpdate_TransitUpdate &b)
Definition: mission.pb.h:2878
boost::units::plane_angle_dimension heading_dimension
Definition: mission.pb.h:3514
boost::units::quantity< transit_unit, double > transit_with_units() const
Definition: mission.pb.h:446
MissionTpvMeetsGpsReq(const MissionTpvMeetsGpsReq &from)
IvPBehaviorUpdate_StationkeepUpdate & operator=(IvPBehaviorUpdate_StationkeepUpdate &&from) noexcept
Definition: mission.pb.h:3097
static const MissionTask_DriftParameters & default_instance()
::jaiabot::protobuf::GeographicCoordinate * release_location()
boost::units::quantity< depth_interval_unit, double > depth_interval_with_units() const
Definition: mission.pb.h:1214
BottomDepthSafetyParams & operator=(const BottomDepthSafetyParams &from)
Definition: mission.pb.h:491
MissionTask * New() const final
Definition: mission.pb.h:1871
::PROTOBUF_NAMESPACE_ID::uint32 repeats() const
void Swap(MissionPlan_Recovery *other)
Definition: mission.pb.h:2360
IvPBehaviorUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:3805
MissionTask_DiveParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void UnsafeArenaSwap(MissionPlan_Recovery *other)
Definition: mission.pb.h:2368
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type transit_dimension
Definition: mission.pb.h:434
IvPBehaviorUpdate * New() const final
Definition: mission.pb.h:3801
void CopyFrom(const MissionPlan &from)
Quantity stationkeep_outer_with_units() const
Definition: mission.pb.h:458
void set_depth_interval(double value)
const ::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate & stationkeep() const
void UnsafeArenaSwap(BottomDepthSafetyParams *other)
Definition: mission.pb.h:541
MissionPlan_Goal(::PROTOBUF_NAMESPACE_ID::Arena *arena)
boost::units::quantity< distance_to_active_goal_unit, double > distance_to_active_goal_with_units() const
Definition: mission.pb.h:972
void set_allocated_constant_heading(::jaiabot::protobuf::MissionTask_ConstantHeadingParameters *constant_heading)
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type transit_speed_dimension
Definition: mission.pb.h:3329
IvPBehaviorReport_TransitReport(IvPBehaviorReport_TransitReport &&from) noexcept
Definition: mission.pb.h:3970
void UnsafeArenaSwap(MissionTask_DriftParameters *other)
Definition: mission.pb.h:1311
Quantity hold_time_with_units() const
Definition: mission.pb.h:1226
void Swap(MissionTask *other)
Definition: mission.pb.h:1855
void set_name(std::string &&value)
static const IvPBehaviorUpdate_ConstantSpeedUpdate * internal_default_instance()
Definition: mission.pb.h:3588
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition: mission.pb.h:313
void set_state(::jaiabot::protobuf::MissionState value)
Speeds * New() const final
Definition: mission.pb.h:355
::jaiabot::protobuf::MissionTask_StationKeepParameters * release_station_keep()
MissionTpvMeetsGpsReq * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:4357
static const IvPBehaviorUpdate_ConstantHeadingUpdate & default_instance()
static const Speeds & default_instance()
void set_name(const char *value, size_t size)
static const IvPBehaviorUpdate_ConstantHeadingUpdate * internal_default_instance()
Definition: mission.pb.h:3409
void unsafe_arena_set_allocated_dive(::jaiabot::protobuf::MissionTask_DiveParameters *dive)
::jaiabot::protobuf::BottomDepthSafetyParams * unsafe_arena_release_bottom_depth_safety_params()
Speeds(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const IvPBehaviorUpdate_StationkeepUpdate * internal_default_instance()
Definition: mission.pb.h:3125
void set_drift_time(::PROTOBUF_NAMESPACE_ID::int32 value)
void MergeFrom(const BottomDepthSafetyParams &from)
static const MissionPlan * internal_default_instance()
Definition: mission.pb.h:2519
Quantity distance_to_active_goal_with_units() const
Definition: mission.pb.h:969
void set_max_depth(double value)
void unsafe_arena_set_allocated_surface_drift(::jaiabot::protobuf::MissionTask_DriftParameters *surface_drift)
void unsafe_arena_set_allocated_constantspeed(::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate *constantspeed)
void MergeFrom(const MissionTpvMeetsGpsReq &from)
void unsafe_arena_set_allocated_location(::jaiabot::protobuf::GeographicCoordinate *location)
::jaiabot::protobuf::Speeds * release_speeds()
void MergeFrom(const MissionPlan_Recovery &from)
MissionTask_DriftParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
IvPBehaviorReport_TransitReport(::PROTOBUF_NAMESPACE_ID::Arena *arena)
::jaiabot::protobuf::MissionTask_StationKeepParameters * mutable_station_keep()
MissionTask_DiveParameters * New() const final
Definition: mission.pb.h:1080
friend void swap(MissionPlan_Recovery &a, MissionPlan_Recovery &b)
Definition: mission.pb.h:2357
::PROTOBUF_NAMESPACE_ID::int32 slip_radius() const
::jaiabot::protobuf::GeographicCoordinate * unsafe_arena_release_location()
IvPBehaviorReport_TransitReport * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:4037
void UnsafeArenaSwap(MissionPlan_Goal *other)
Definition: mission.pb.h:2148
static const Speeds * internal_default_instance()
Definition: mission.pb.h:329
friend void swap(MissionTask_ConstantHeadingParameters &a, MissionTask_ConstantHeadingParameters &b)
Definition: mission.pb.h:1464
static bool TaskType_IsValid(int value)
Definition: mission.pb.h:1934
::PROTOBUF_NAMESPACE_ID::uint32 active_goal_timeout() const
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type y_dimension
Definition: mission.pb.h:3031
static const IvPBehaviorUpdate_TransitUpdate & default_instance()
friend void swap(MissionTask_DiveParameters &a, MissionTask_DiveParameters &b)
Definition: mission.pb.h:1061
boost::units::unit< outer_speed_dimension, boost::units::si::system > outer_speed_unit
Definition: mission.pb.h:3318
friend void swap(IvPBehaviorReport_TransitReport &a, IvPBehaviorReport_TransitReport &b)
Definition: mission.pb.h:4014
IvPBehaviorUpdate(const IvPBehaviorUpdate &from)
void Swap(IvPBehaviorUpdate *other)
Definition: mission.pb.h:3785
BottomDepthSafetyParams & operator=(BottomDepthSafetyParams &&from) noexcept
Definition: mission.pb.h:495
MissionTask(MissionTask &&from) noexcept
Definition: mission.pb.h:1808
Quantity transit_speed_with_units() const
Definition: mission.pb.h:3340
friend void swap(IvPBehaviorUpdate_StationkeepUpdate &a, IvPBehaviorUpdate_StationkeepUpdate &b)
Definition: mission.pb.h:3132
void UnsafeArenaSwap(IvPBehaviorReport *other)
Definition: mission.pb.h:4179
const ::jaiabot::protobuf::MissionPlan_Recovery & recovery() const
MissionReport * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:810
void MergeFrom(const IvPBehaviorUpdate_ConstantSpeedUpdate &from)
Quantity active_goal_timeout_with_units() const
Definition: mission.pb.h:984
IvPBehaviorUpdate_TransitUpdate & operator=(const IvPBehaviorUpdate_TransitUpdate &from)
Definition: mission.pb.h:2839
void unsafe_arena_set_allocated_transit(::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate *transit)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type drift_time_dimension
Definition: mission.pb.h:1384
IvPBehaviorReport * New() const final
Definition: mission.pb.h:4187
::jaiabot::protobuf::MissionTask_ConstantHeadingParameters * release_constant_heading()
void set_allocated_transit(::jaiabot::protobuf::IvPBehaviorReport_TransitReport *transit)
Quantity heading_with_units() const
Definition: mission.pb.h:3523
::jaiabot::protobuf::IvPBehaviorReport_TransitReport * unsafe_arena_release_transit()
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type max_depth_dimension
Definition: mission.pb.h:1187
IvPBehaviorUpdate_ConstantSpeedUpdate(const IvPBehaviorUpdate_ConstantSpeedUpdate &from)
void Swap(IvPBehaviorUpdate_ConstantSpeedUpdate *other)
Definition: mission.pb.h:3598
IvPBehaviorUpdate_StationkeepUpdate * New() const final
Definition: mission.pb.h:3151
void MergeFrom(const IvPBehaviorUpdate_StationkeepUpdate &from)
IvPBehaviorReport(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const BottomDepthSafetyParams * internal_default_instance()
Definition: mission.pb.h:523
IvPBehaviorReport * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:4191
void MergeFrom(const IvPBehaviorReport_TransitReport &from)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type station_keep_time_dimension
Definition: mission.pb.h:1772
IvPBehaviorReport(IvPBehaviorReport &&from) noexcept
Definition: mission.pb.h:4119
static const MissionTask_StationKeepParameters & default_instance()
Speeds * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:359
static const MissionTask_DiveParameters * internal_default_instance()
Definition: mission.pb.h:1054
static bool MovementType_IsValid(int value)
Definition: mission.pb.h:2630
void unsafe_arena_set_allocated_tpv(::goby::middleware::protobuf::gpsd::TimePositionVelocity *tpv)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * TaskType_descriptor()
Definition: mission.pb.h:1944
const ::jaiabot::protobuf::MissionTask_StationKeepParameters & station_keep() const
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate * unsafe_arena_release_constantheading()
::PROTOBUF_NAMESPACE_ID::uint32 expected_fragments() const
void set_fragment_index(::PROTOBUF_NAMESPACE_ID::uint32 value)
MissionTask_ConstantHeadingParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:1487
MissionTask_StationKeepParameters(const MissionTask_StationKeepParameters &from)
MissionPlan_Recovery & operator=(MissionPlan_Recovery &&from) noexcept
Definition: mission.pb.h:2322
void CopyFrom(const Speeds &from)
friend void swap(MissionPlan &a, MissionPlan &b)
Definition: mission.pb.h:2526
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void Swap(MissionTpvMeetsGpsReq *other)
Definition: mission.pb.h:4337
MissionTask_DriftParameters DriftParameters
Definition: mission.pb.h:1919
MissionPlan_Recovery & operator=(const MissionPlan_Recovery &from)
Definition: mission.pb.h:2318
const ::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate & transit() const
::goby::middleware::protobuf::gpsd::TimePositionVelocity * unsafe_arena_release_tpv()
MissionTask_DriftParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:1323
void set_x_with_units(Quantity value_w_units)
Definition: mission.pb.h:3023
void MergeFrom(const MissionTask_DriftParameters &from)
::jaiabot::protobuf::IvPBehaviorReport_TransitReport * mutable_transit()
IvPBehaviorUpdate_ConstantHeadingUpdate & operator=(const IvPBehaviorUpdate_ConstantHeadingUpdate &from)
Definition: mission.pb.h:3377
const std::string & name() const
boost::units::quantity< active_goal_timeout_unit, google::protobuf::uint32 > active_goal_timeout_with_units() const
Definition: mission.pb.h:987
void set_drift_time_with_units(Quantity value_w_units)
Definition: mission.pb.h:1389
MissionPlan * New() const final
Definition: mission.pb.h:2545
void set_movement(::jaiabot::protobuf::MissionPlan_MovementType value)
void MergeFrom(const MissionTask_DiveParameters &from)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type constant_heading_time_dimension
Definition: mission.pb.h:669
void UnsafeArenaSwap(IvPBehaviorUpdate_TransitUpdate *other)
Definition: mission.pb.h:2889
IvPBehaviorUpdate_ConstantHeadingUpdate(const IvPBehaviorUpdate_ConstantHeadingUpdate &from)
MissionTask_DiveParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:1084
MissionTask_StationKeepParameters & operator=(const MissionTask_StationKeepParameters &from)
Definition: mission.pb.h:1649
static const MissionPlan_Recovery & default_instance()
Quantity constant_heading_time_with_units() const
Definition: mission.pb.h:680
void set_constant_heading(double value)
void set_allocated_stationkeep(::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate *stationkeep)
void UnsafeArenaSwap(IvPBehaviorUpdate_ConstantHeadingUpdate *other)
Definition: mission.pb.h:3427
void CopyFrom(const IvPBehaviorUpdate_ConstantHeadingUpdate &from)
boost::units::quantity< transit_speed_unit, double > transit_speed_with_units() const
Definition: mission.pb.h:3343
void unsafe_arena_set_allocated_transit(::jaiabot::protobuf::IvPBehaviorReport_TransitReport *transit)
void UnsafeArenaSwap(MissionTask_StationKeepParameters *other)
Definition: mission.pb.h:1699
IvPBehaviorUpdate_ConstantHeadingUpdate * New() const final
Definition: mission.pb.h:3435
MissionTask_StationKeepParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: mission.pb.h:320
boost::units::plane_angle_dimension constant_heading_dimension
Definition: mission.pb.h:656
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type speed_dimension
Definition: mission.pb.h:3046
IvPBehaviorUpdate_StationkeepUpdate(const IvPBehaviorUpdate_StationkeepUpdate &from)
static const IvPBehaviorReport_TransitReport * internal_default_instance()
Definition: mission.pb.h:4007
::PROTOBUF_NAMESPACE_ID::int32 active_goal() const
::jaiabot::protobuf::MissionPlan_Recovery * mutable_recovery()
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type active_goal_timeout_dimension
Definition: mission.pb.h:973
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type x_dimension
Definition: mission.pb.h:3018
void Swap(MissionTask_DiveParameters *other)
Definition: mission.pb.h:1064
static bool TaskType_Parse(const std::string &name, TaskType *value)
Definition: mission.pb.h:1954
Quantity drift_time_with_units() const
Definition: mission.pb.h:1393
void set_allocated_active_goal_location(::jaiabot::protobuf::GeographicCoordinate *active_goal_location)
void set_type(::jaiabot::protobuf::MissionTask_TaskType value)
::jaiabot::protobuf::MissionTask_DiveParameters * unsafe_arena_release_dive()
MissionReport & operator=(MissionReport &&from) noexcept
Definition: mission.pb.h:752
MissionPlan_Goal * New() const final
Definition: mission.pb.h:2156
boost::units::unit< safety_depth_dimension, boost::units::si::system > safety_depth_unit
Definition: mission.pb.h:703
static const IvPBehaviorUpdate_TransitUpdate * internal_default_instance()
Definition: mission.pb.h:2871
static const std::string & TaskType_Name(T enum_t_value)
Definition: mission.pb.h:1948
MissionTask_StationKeepParameters * New() const final
Definition: mission.pb.h:1707
IvPBehaviorUpdate_ConstantHeadingUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:3439
::jaiabot::protobuf::IvPBehaviorReport_TransitReport * release_transit()
::jaiabot::protobuf::MissionTask_DiveParameters * mutable_dive()
boost::units::quantity< max_depth_unit, double > max_depth_with_units() const
Definition: mission.pb.h:1199
MissionTask_DiveParameters & operator=(const MissionTask_DiveParameters &from)
Definition: mission.pb.h:1022
friend void swap(MissionReport &a, MissionReport &b)
Definition: mission.pb.h:787
boost::units::quantity< constant_heading_speed_unit, double > constant_heading_speed_with_units() const
Definition: mission.pb.h:698
static const BottomDepthSafetyParams & default_instance()
MissionTpvMeetsGpsReq(MissionTpvMeetsGpsReq &&from) noexcept
Definition: mission.pb.h:4290
IvPBehaviorUpdate_ConstantSpeedUpdate * New() const final
Definition: mission.pb.h:3614
BehaviorCase behavior_case() const
friend void swap(IvPBehaviorUpdate_ConstantHeadingUpdate &a, IvPBehaviorUpdate_ConstantHeadingUpdate &b)
Definition: mission.pb.h:3416
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(Speeds &a, Speeds &b)
Definition: mission.pb.h:336
MissionPlan_Recovery * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:2380
IvPBehaviorReport_TransitReport * New() const final
Definition: mission.pb.h:4033
void Swap(IvPBehaviorReport_TransitReport *other)
Definition: mission.pb.h:4017
void set_hold_time(double value)
MissionTask_ConstantHeadingParameters(::PROTOBUF_NAMESPACE_ID::Arena *arena)
MissionTask_DiveParameters(MissionTask_DiveParameters &&from) noexcept
Definition: mission.pb.h:1017
const ::jaiabot::protobuf::MissionTask_DriftParameters & surface_drift() const
static const IvPBehaviorReport * internal_default_instance()
Definition: mission.pb.h:4161
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
Definition: mission.pb.h:3516
MissionPlan * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:2549
IvPBehaviorUpdate_ConstantSpeedUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:3618
void set_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_data_offload_percentage(::PROTOBUF_NAMESPACE_ID::int32 value)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type hold_time_dimension
Definition: mission.pb.h:1215
void set_transit_with_units(Quantity value_w_units)
Definition: mission.pb.h:439
static const MissionTask_ConstantHeadingParameters & default_instance()
IvPBehaviorUpdate_ConstantSpeedUpdate ConstantSpeedUpdate
Definition: mission.pb.h:3851
::jaiabot::protobuf::IvPBehaviorUpdate_StationkeepUpdate * unsafe_arena_release_stationkeep()
void unsafe_arena_set_allocated_constant_heading(::jaiabot::protobuf::MissionTask_ConstantHeadingParameters *constant_heading)
void set_active_goal_timeout_with_units(Quantity value_w_units)
Definition: mission.pb.h:980
MissionTask_ConstantHeadingParameters(const MissionTask_ConstantHeadingParameters &from)
MissionTpvMeetsGpsReq & operator=(MissionTpvMeetsGpsReq &&from) noexcept
Definition: mission.pb.h:4299
MissionTask_DriftParameters & operator=(MissionTask_DriftParameters &&from) noexcept
Definition: mission.pb.h:1265
IvPBehaviorUpdate_StationkeepUpdate * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:3155
void set_outer_speed_with_units(Quantity value_w_units)
Definition: mission.pb.h:3321
friend void swap(IvPBehaviorUpdate_ConstantSpeedUpdate &a, IvPBehaviorUpdate_ConstantSpeedUpdate &b)
Definition: mission.pb.h:3595
void Swap(MissionPlan_Goal *other)
Definition: mission.pb.h:2140
IvPBehaviorUpdate_ConstantSpeedUpdate & operator=(const IvPBehaviorUpdate_ConstantSpeedUpdate &from)
Definition: mission.pb.h:3556
BottomDepthSafetyParams * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: mission.pb.h:553
void UnsafeArenaSwap(IvPBehaviorUpdate_StationkeepUpdate *other)
Definition: mission.pb.h:3143
MissionTask_DiveParameters(const MissionTask_DiveParameters &from)
void set_name(const std::string &value)
void set_allocated_surface_drift(::jaiabot::protobuf::MissionTask_DriftParameters *surface_drift)
void MergeFrom(const MissionPlan &from)
void set_allocated_tpv(::goby::middleware::protobuf::gpsd::TimePositionVelocity *tpv)
MissionTask_ConstantHeadingParameters(MissionTask_ConstantHeadingParameters &&from) noexcept
Definition: mission.pb.h:1420
boost::units::unit< transit_speed_dimension, boost::units::si::system > transit_speed_unit
Definition: mission.pb.h:3333
MissionTask(::PROTOBUF_NAMESPACE_ID::Arena *arena)
const ::jaiabot::protobuf::MissionPlan_Goal & goal(int index) const
void Swap(BottomDepthSafetyParams *other)
Definition: mission.pb.h:533
void MergeFrom(const MissionTask &from)
friend void swap(MissionTask_DriftParameters &a, MissionTask_DriftParameters &b)
Definition: mission.pb.h:1300
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: mission.pb.h:323
const ::jaiabot::protobuf::IvPBehaviorReport_TransitReport & transit() const
::jaiabot::protobuf::MissionTask_TaskType type() const
void UnsafeArenaSwap(IvPBehaviorReport_TransitReport *other)
Definition: mission.pb.h:4025
void set_constant_heading_time_with_units(Quantity value_w_units)
Definition: mission.pb.h:676
MissionTpvMeetsGpsReq(::PROTOBUF_NAMESPACE_ID::Arena *arena)
MissionPlan_Goal & operator=(MissionPlan_Goal &&from) noexcept
Definition: mission.pb.h:2102
MissionTask_StationKeepParameters & operator=(MissionTask_StationKeepParameters &&from) noexcept
Definition: mission.pb.h:1653
::jaiabot::protobuf::Speeds * unsafe_arena_release_speeds()
IvPBehaviorReport_TransitReport(const IvPBehaviorReport_TransitReport &from)
::jaiabot::protobuf::GeographicCoordinate * release_active_goal_location()
boost::units::unit< transit_dimension, boost::units::si::system > transit_unit
Definition: mission.pb.h:436
const ::jaiabot::protobuf::MissionTask_ConstantHeadingParameters & constant_heading() const
void CopyFrom(const IvPBehaviorReport_TransitReport &from)
IvPBehaviorUpdate_ConstantSpeedUpdate(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void set_active_goal(::PROTOBUF_NAMESPACE_ID::int32 value)
void CopyFrom(const IvPBehaviorUpdate_ConstantSpeedUpdate &from)
::jaiabot::protobuf::MissionPlan_Recovery * release_recovery()
void Swap(IvPBehaviorReport *other)
Definition: mission.pb.h:4171
void MergeFrom(const MissionPlan_Goal &from)
boost::units::unit< speed_dimension, boost::units::si::system > speed_unit
Definition: mission.pb.h:3050
MissionTask & operator=(const MissionTask &from)
Definition: mission.pb.h:1813
Quantity max_depth_with_units() const
Definition: mission.pb.h:1196
::jaiabot::protobuf::GeographicCoordinate * unsafe_arena_release_active_goal_location()
IvPBehaviorReport_TransitReport & operator=(IvPBehaviorReport_TransitReport &&from) noexcept
Definition: mission.pb.h:3979
IvPBehaviorUpdate_TransitUpdate TransitUpdate
Definition: mission.pb.h:3848
MissionPlan_MissionStart MissionStart
Definition: mission.pb.h:2595
void UnsafeArenaSwap(MissionReport *other)
Definition: mission.pb.h:798
boost::units::unit< station_keep_time_dimension, boost::units::si::system > station_keep_time_unit
Definition: mission.pb.h:1774
MissionReport(MissionReport &&from) noexcept
Definition: mission.pb.h:743
boost::units::unit< constant_heading_time_dimension, boost::units::si::system > constant_heading_time_unit
Definition: mission.pb.h:673
friend void swap(MissionTpvMeetsGpsReq &a, MissionTpvMeetsGpsReq &b)
Definition: mission.pb.h:4334
void set_outer_speed(double value)
MissionPlan_Goal(const MissionPlan_Goal &from)
void set_allocated_speeds(::jaiabot::protobuf::Speeds *speeds)
void set_safety_depth_with_units(Quantity value_w_units)
Definition: mission.pb.h:706
MissionTask & operator=(MissionTask &&from) noexcept
Definition: mission.pb.h:1817
IvPBehaviorReport & operator=(IvPBehaviorReport &&from) noexcept
Definition: mission.pb.h:4128
static const MissionReport * internal_default_instance()
Definition: mission.pb.h:780
void set_speed_with_units(Quantity value_w_units)
Definition: mission.pb.h:3053
void CopyFrom(const IvPBehaviorUpdate_TransitUpdate &from)
void MergeFrom(const IvPBehaviorReport &from)
::jaiabot::protobuf::MissionTask_DriftParameters * unsafe_arena_release_surface_drift()
void UnsafeArenaSwap(MissionTask *other)
Definition: mission.pb.h:1863
const ::jaiabot::protobuf::IvPBehaviorUpdate_ConstantSpeedUpdate & constantspeed() const
void MergeFrom(const IvPBehaviorUpdate_ConstantHeadingUpdate &from)
static const IvPBehaviorReport & default_instance()
boost::units::unit< active_goal_timeout_dimension, boost::units::si::system > active_goal_timeout_unit
Definition: mission.pb.h:977
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type safety_depth_dimension
Definition: mission.pb.h:699
::jaiabot::protobuf::IvPBehaviorUpdate_TransitUpdate * unsafe_arena_release_transit()
::PROTOBUF_NAMESPACE_ID::int32 drift_time() const
void set_allocated_dive(::jaiabot::protobuf::MissionTask_DiveParameters *dive)
boost::units::quantity< stationkeep_outer_unit, double > stationkeep_outer_with_units() const
Definition: mission.pb.h:461
boost::units::unit< stationkeep_outer_dimension, boost::units::si::system > stationkeep_outer_unit
Definition: mission.pb.h:451
BottomDepthSafetyParams * New() const final
Definition: mission.pb.h:549
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionStart_descriptor()
Definition: mission.pb.h:2610
static const std::string & MissionStart_Name(T enum_t_value)
Definition: mission.pb.h:2614
void CopyFrom(const MissionTask_StationKeepParameters &from)
boost::units::unit< max_depth_dimension, boost::units::si::system > max_depth_unit
Definition: mission.pb.h:1189
void Swap(IvPBehaviorUpdate_TransitUpdate *other)
Definition: mission.pb.h:2881
friend void swap(MissionPlan_Goal &a, MissionPlan_Goal &b)
Definition: mission.pb.h:2137
void set_stationkeep_outer_with_units(Quantity value_w_units)
Definition: mission.pb.h:454
MissionTask_ConstantHeadingParameters & operator=(const MissionTask_ConstantHeadingParameters &from)
Definition: mission.pb.h:1425
void MergeFrom(const MissionReport &from)
MissionPlan(const MissionPlan &from)
boost::units::quantity< station_keep_time_unit, google::protobuf::int32 > station_keep_time_with_units() const
Definition: mission.pb.h:1784
::jaiabot::protobuf::MissionTask_DriftParameters * mutable_surface_drift()
void set_allocated_location(::jaiabot::protobuf::GeographicCoordinate *location)
::PROTOBUF_NAMESPACE_ID::int32 repeat_index() const
void unsafe_arena_set_allocated_speeds(::jaiabot::protobuf::Speeds *speeds)
::jaiabot::protobuf::MissionPlan_Goal * mutable_goal(int index)
void Swap(MissionTask_ConstantHeadingParameters *other)
Definition: mission.pb.h:1467
MissionTask_ConstantHeadingParameters * New() const final
Definition: mission.pb.h:1483
BottomDepthSafetyParams(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void CopyFrom(const MissionTpvMeetsGpsReq &from)
static const IvPBehaviorUpdate & default_instance()
void UnsafeArenaSwap(MissionTask_DiveParameters *other)
Definition: mission.pb.h:1072
MissionPlan_Recovery(const MissionPlan_Recovery &from)
MissionPlan_MovementType MovementType
Definition: mission.pb.h:2625
::jaiabot::protobuf::IvPBehaviorUpdate_ConstantHeadingUpdate * mutable_constantheading()
static const IvPBehaviorReport_TransitReport & default_instance()
boost::units::quantity< speed_unit, double > speed_with_units() const
Definition: mission.pb.h:3060
static const MissionTask_DriftParameters * internal_default_instance()
Definition: mission.pb.h:1293
MissionTask_TaskType TaskType
Definition: mission.pb.h:1923
IvPBehaviorUpdate_ConstantSpeedUpdate(IvPBehaviorUpdate_ConstantSpeedUpdate &&from) noexcept
Definition: mission.pb.h:3551
MissionPlan_Recovery Recovery
Definition: mission.pb.h:2593
boost::units::quantity< safety_depth_unit, double > safety_depth_with_units() const
Definition: mission.pb.h:713
void set_stationkeep_outer(double value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: mission.pb.h:317
void set_recover_at_final_goal(bool value)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fmission_2eproto
MissionReportDefaultTypeInternal _MissionReport_default_instance_
MissionTaskDefaultTypeInternal _MissionTask_default_instance_
MissionTpvMeetsGpsReqDefaultTypeInternal _MissionTpvMeetsGpsReq_default_instance_
const std::string & MissionState_Name(T enum_t_value)
Definition: mission.pb.h:271
constexpr MissionTask_TaskType MissionTask_TaskType_TaskType_MAX
Definition: mission.pb.h:164
MissionTask_ConstantHeadingParametersDefaultTypeInternal _MissionTask_ConstantHeadingParameters_default_instance_
constexpr int MissionPlan_MissionStart_MissionStart_ARRAYSIZE
Definition: mission.pb.h:188
MissionTask_DriftParametersDefaultTypeInternal _MissionTask_DriftParameters_default_instance_
BottomDepthSafetyParamsDefaultTypeInternal _BottomDepthSafetyParams_default_instance_
MissionPlanDefaultTypeInternal _MissionPlan_default_instance_
MissionTask_DiveParametersDefaultTypeInternal _MissionTask_DiveParameters_default_instance_
constexpr MissionPlan_MissionStart MissionPlan_MissionStart_MissionStart_MIN
Definition: mission.pb.h:186
const std::string & MissionTask_TaskType_Name(T enum_t_value)
Definition: mission.pb.h:169
const std::string & MissionPlan_MissionStart_Name(T enum_t_value)
Definition: mission.pb.h:192
MissionPlan_RecoveryDefaultTypeInternal _MissionPlan_Recovery_default_instance_
bool MissionState_Parse(const std::string &name, MissionState *value)
Definition: mission.pb.h:278
constexpr MissionState MissionState_MIN
Definition: mission.pb.h:265
IvPBehaviorUpdate_StationkeepUpdateDefaultTypeInternal _IvPBehaviorUpdate_StationkeepUpdate_default_instance_
IvPBehaviorReportDefaultTypeInternal _IvPBehaviorReport_default_instance_
bool MissionTask_TaskType_Parse(const std::string &name, MissionTask_TaskType *value)
Definition: mission.pb.h:176
constexpr int MissionTask_TaskType_TaskType_ARRAYSIZE
Definition: mission.pb.h:165
constexpr MissionPlan_MissionStart MissionPlan_MissionStart_MissionStart_MAX
Definition: mission.pb.h:187
IvPBehaviorUpdate_ConstantSpeedUpdateDefaultTypeInternal _IvPBehaviorUpdate_ConstantSpeedUpdate_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionState_descriptor()
bool MissionPlan_MovementType_IsValid(int value)
IvPBehaviorUpdate_ConstantHeadingUpdateDefaultTypeInternal _IvPBehaviorUpdate_ConstantHeadingUpdate_default_instance_
constexpr MissionState MissionState_MAX
Definition: mission.pb.h:266
constexpr int MissionPlan_MovementType_MovementType_ARRAYSIZE
Definition: mission.pb.h:211
bool MissionPlan_MissionStart_IsValid(int value)
constexpr MissionPlan_MovementType MissionPlan_MovementType_MovementType_MAX
Definition: mission.pb.h:210
constexpr MissionPlan_MovementType MissionPlan_MovementType_MovementType_MIN
Definition: mission.pb.h:209
@ MissionPlan_MissionStart_START_IMMEDIATELY
Definition: mission.pb.h:182
@ MissionPlan_MissionStart_START_ON_COMMAND
Definition: mission.pb.h:183
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionPlan_MovementType_descriptor()
MissionTask_StationKeepParametersDefaultTypeInternal _MissionTask_StationKeepParameters_default_instance_
@ MissionPlan_MovementType_TRANSIT
Definition: mission.pb.h:205
@ MissionPlan_MovementType_REMOTE_CONTROL
Definition: mission.pb.h:206
IvPBehaviorUpdate_TransitUpdateDefaultTypeInternal _IvPBehaviorUpdate_TransitUpdate_default_instance_
MissionPlan_GoalDefaultTypeInternal _MissionPlan_Goal_default_instance_
bool MissionTask_TaskType_IsValid(int value)
SpeedsDefaultTypeInternal _Speeds_default_instance_
@ IN_MISSION__UNDERWAY__TASK__DIVE__POWERED_ASCENT
Definition: mission.pb.h:245
@ IN_MISSION__UNDERWAY__TASK__DIVE__SURFACE_DRIFT
Definition: mission.pb.h:247
@ IN_MISSION__PAUSE__IMU_RESTART
Definition: mission.pb.h:254
@ IN_MISSION__UNDERWAY__RECOVERY__STATION_KEEP
Definition: mission.pb.h:251
@ IN_MISSION__UNDERWAY__TASK__CONSTANT_HEADING
Definition: mission.pb.h:249
@ IN_MISSION__UNDERWAY__MOVEMENT__REMOTE_CONTROL__SURFACE_DRIFT
Definition: mission.pb.h:238
@ IN_MISSION__PAUSE__REACQUIRE_GPS
Definition: mission.pb.h:255
@ IN_MISSION__UNDERWAY__TASK__DIVE__UNPOWERED_ASCENT
Definition: mission.pb.h:244
@ IN_MISSION__UNDERWAY__REPLAN
Definition: mission.pb.h:234
@ IN_MISSION__UNDERWAY__TASK__DIVE__DIVE_PREP
Definition: mission.pb.h:241
@ IN_MISSION__UNDERWAY__TASK__SURFACE_DRIFT
Definition: mission.pb.h:240
@ POST_DEPLOYMENT__DATA_OFFLOAD
Definition: mission.pb.h:259
@ POST_DEPLOYMENT__SHUTTING_DOWN
Definition: mission.pb.h:261
@ IN_MISSION__UNDERWAY__TASK__DIVE__REACQUIRE_GPS
Definition: mission.pb.h:246
@ IN_MISSION__UNDERWAY__TASK__DIVE__CONSTANT_HEADING
Definition: mission.pb.h:248
@ PRE_DEPLOYMENT__WAIT_FOR_MISSION_PLAN
Definition: mission.pb.h:232
@ IN_MISSION__UNDERWAY__MOVEMENT__REMOTE_CONTROL__SETPOINT
Definition: mission.pb.h:236
@ IN_MISSION__UNDERWAY__MOVEMENT__TRANSIT
Definition: mission.pb.h:235
@ IN_MISSION__UNDERWAY__MOVEMENT__REMOTE_CONTROL__STATION_KEEP
Definition: mission.pb.h:237
@ IN_MISSION__UNDERWAY__TASK__STATION_KEEP
Definition: mission.pb.h:239
@ IN_MISSION__UNDERWAY__TASK__DIVE__HOLD
Definition: mission.pb.h:243
@ IN_MISSION__UNDERWAY__TASK__DIVE__POWERED_DESCENT
Definition: mission.pb.h:242
@ IN_MISSION__UNDERWAY__RECOVERY__STOPPED
Definition: mission.pb.h:252
@ IN_MISSION__PAUSE__RESOLVE_NO_FORWARD_PROGRESS
Definition: mission.pb.h:257
@ IN_MISSION__UNDERWAY__RECOVERY__TRANSIT
Definition: mission.pb.h:250
GeographicCoordinateDefaultTypeInternal _GeographicCoordinate_default_instance_
IvPBehaviorUpdateDefaultTypeInternal _IvPBehaviorUpdate_default_instance_
bool MissionPlan_MovementType_Parse(const std::string &name, MissionPlan_MovementType *value)
Definition: mission.pb.h:222
const std::string & MissionPlan_MovementType_Name(T enum_t_value)
Definition: mission.pb.h:215
@ MissionTask_TaskType_STATION_KEEP
Definition: mission.pb.h:158
@ MissionTask_TaskType_CONSTANT_HEADING
Definition: mission.pb.h:160
@ MissionTask_TaskType_SURFACE_DRIFT
Definition: mission.pb.h:159
IvPBehaviorReport_TransitReportDefaultTypeInternal _IvPBehaviorReport_TransitReport_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionPlan_MissionStart_descriptor()
bool MissionState_IsValid(int value)
bool MissionPlan_MissionStart_Parse(const std::string &name, MissionPlan_MissionStart *value)
Definition: mission.pb.h:199
constexpr MissionTask_TaskType MissionTask_TaskType_TaskType_MIN
Definition: mission.pb.h:163
constexpr int MissionState_ARRAYSIZE
Definition: mission.pb.h:267
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionTask_TaskType_descriptor()
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: mission.pb.h:66
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[19] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: mission.pb.h:67
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: mission.pb.h:65