JaiaBot  1.20.0
JaiaBot micro-AUV software
config.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: bin/mission_manager/config.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_bin_2fmission_5fmanager_2fconfig_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_bin_2fmission_5fmanager_2fconfig_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>
36 #include "goby/middleware/protobuf/app_config.pb.h"
37 #include "goby/zeromq/protobuf/interprocess_config.pb.h"
38 #include "goby/middleware/protobuf/serial_config.pb.h"
39 #include "goby/middleware/protobuf/transporter_config.pb.h"
45 #include <boost/units/quantity.hpp>
46 #include <boost/units/absolute.hpp>
47 #include <boost/units/dimensionless_type.hpp>
48 #include <boost/units/make_scaled_unit.hpp>
49 
50 #include <boost/units/systems/angle/degrees.hpp>
51 
52 #include <boost/units/systems/si.hpp>
53 // @@protoc_insertion_point(includes)
54 #include <google/protobuf/port_def.inc>
55 #define PROTOBUF_INTERNAL_EXPORT_bin_2fmission_5fmanager_2fconfig_2eproto
56 PROTOBUF_NAMESPACE_OPEN
57 namespace internal {
58 class AnyMetadata;
59 } // namespace internal
60 PROTOBUF_NAMESPACE_CLOSE
61 
62 // Internal implementation detail -- do not use these members.
64  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
65  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
66  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
67  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
68  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[2]
69  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
70  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
71  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
72  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
73 };
74 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto;
75 namespace jaiabot {
76 namespace config {
77 class MissionManager;
78 class MissionManagerDefaultTypeInternal;
79 extern MissionManagerDefaultTypeInternal _MissionManager_default_instance_;
80 class MissionManager_ResolveNoForwardProgress;
81 class MissionManager_ResolveNoForwardProgressDefaultTypeInternal;
82 extern MissionManager_ResolveNoForwardProgressDefaultTypeInternal _MissionManager_ResolveNoForwardProgress_default_instance_;
83 } // namespace config
84 } // namespace jaiabot
85 PROTOBUF_NAMESPACE_OPEN
86 template<> ::jaiabot::config::MissionManager* Arena::CreateMaybeMessage<::jaiabot::config::MissionManager>(Arena*);
87 template<> ::jaiabot::config::MissionManager_ResolveNoForwardProgress* Arena::CreateMaybeMessage<::jaiabot::config::MissionManager_ResolveNoForwardProgress>(Arena*);
88 PROTOBUF_NAMESPACE_CLOSE
89 namespace jaiabot {
90 namespace config {
91 
95 };
100 
101 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionManager_RemoteControlSetpointEnd_descriptor();
102 template<typename T>
103 inline const std::string& MissionManager_RemoteControlSetpointEnd_Name(T enum_t_value) {
104  static_assert(::std::is_same<T, MissionManager_RemoteControlSetpointEnd>::value ||
105  ::std::is_integral<T>::value,
106  "Incorrect type passed to function MissionManager_RemoteControlSetpointEnd_Name.");
107  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
109 }
111  const std::string& name, MissionManager_RemoteControlSetpointEnd* value) {
112  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionManager_RemoteControlSetpointEnd>(
114 }
119 };
124 
125 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionManager_DownloadFileTypes_descriptor();
126 template<typename T>
127 inline const std::string& MissionManager_DownloadFileTypes_Name(T enum_t_value) {
128  static_assert(::std::is_same<T, MissionManager_DownloadFileTypes>::value ||
129  ::std::is_integral<T>::value,
130  "Incorrect type passed to function MissionManager_DownloadFileTypes_Name.");
131  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
133 }
135  const std::string& name, MissionManager_DownloadFileTypes* value) {
136  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionManager_DownloadFileTypes>(
138 }
143 };
148 
149 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MissionManager_EngineeringTestMode_descriptor();
150 template<typename T>
151 inline const std::string& MissionManager_EngineeringTestMode_Name(T enum_t_value) {
152  static_assert(::std::is_same<T, MissionManager_EngineeringTestMode>::value ||
153  ::std::is_integral<T>::value,
154  "Incorrect type passed to function MissionManager_EngineeringTestMode_Name.");
155  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
157 }
159  const std::string& name, MissionManager_EngineeringTestMode* value) {
160  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MissionManager_EngineeringTestMode>(
162 }
163 // ===================================================================
164 
165 class MissionManager_ResolveNoForwardProgress PROTOBUF_FINAL :
166  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.MissionManager.ResolveNoForwardProgress) */ {
167  public:
168  inline MissionManager_ResolveNoForwardProgress() : MissionManager_ResolveNoForwardProgress(nullptr) {};
170 
171  MissionManager_ResolveNoForwardProgress(const MissionManager_ResolveNoForwardProgress& from);
172  MissionManager_ResolveNoForwardProgress(MissionManager_ResolveNoForwardProgress&& from) noexcept
173  : MissionManager_ResolveNoForwardProgress() {
174  *this = ::std::move(from);
175  }
176 
177  inline MissionManager_ResolveNoForwardProgress& operator=(const MissionManager_ResolveNoForwardProgress& from) {
178  CopyFrom(from);
179  return *this;
180  }
181  inline MissionManager_ResolveNoForwardProgress& operator=(MissionManager_ResolveNoForwardProgress&& from) noexcept {
182  if (GetArena() == from.GetArena()) {
183  if (this != &from) InternalSwap(&from);
184  } else {
185  CopyFrom(from);
186  }
187  return *this;
188  }
189 
190  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
191  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
192  }
193  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
194  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
195  }
196 
197  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
198  return GetDescriptor();
199  }
200  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
201  return GetMetadataStatic().descriptor;
202  }
203  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
204  return GetMetadataStatic().reflection;
205  }
206  static const MissionManager_ResolveNoForwardProgress& default_instance();
207 
208  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
209  static inline const MissionManager_ResolveNoForwardProgress* internal_default_instance() {
210  return reinterpret_cast<const MissionManager_ResolveNoForwardProgress*>(
212  }
213  static constexpr int kIndexInFileMessages =
214  0;
215 
216  friend void swap(MissionManager_ResolveNoForwardProgress& a, MissionManager_ResolveNoForwardProgress& b) {
217  a.Swap(&b);
218  }
219  inline void Swap(MissionManager_ResolveNoForwardProgress* other) {
220  if (other == this) return;
221  if (GetArena() == other->GetArena()) {
222  InternalSwap(other);
223  } else {
224  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
225  }
226  }
227  void UnsafeArenaSwap(MissionManager_ResolveNoForwardProgress* other) {
228  if (other == this) return;
229  GOOGLE_DCHECK(GetArena() == other->GetArena());
230  InternalSwap(other);
231  }
232 
233  // implements Message ----------------------------------------------
234 
235  inline MissionManager_ResolveNoForwardProgress* New() const final {
236  return CreateMaybeMessage<MissionManager_ResolveNoForwardProgress>(nullptr);
237  }
238 
239  MissionManager_ResolveNoForwardProgress* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
240  return CreateMaybeMessage<MissionManager_ResolveNoForwardProgress>(arena);
241  }
242  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
243  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
244  void CopyFrom(const MissionManager_ResolveNoForwardProgress& from);
245  void MergeFrom(const MissionManager_ResolveNoForwardProgress& from);
246  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
247  bool IsInitialized() const final;
248 
249  size_t ByteSizeLong() const final;
250  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
251  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
252  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
253  int GetCachedSize() const final { return _cached_size_.Get(); }
254 
255  private:
256  inline void SharedCtor();
257  inline void SharedDtor();
258  void SetCachedSize(int size) const final;
259  void InternalSwap(MissionManager_ResolveNoForwardProgress* other);
260  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
261  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
262  return "jaiabot.config.MissionManager.ResolveNoForwardProgress";
263  }
264  protected:
265  explicit MissionManager_ResolveNoForwardProgress(::PROTOBUF_NAMESPACE_ID::Arena* arena);
266  private:
267  static void ArenaDtor(void* object);
268  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
269  public:
270 
271  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
272  private:
273  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
274  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto);
275  return ::descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
276  }
277 
278  public:
279 
280  // nested types ----------------------------------------------------
281 
282  // accessors -------------------------------------------------------
283 
284  enum : int {
285  kDesiredSpeedThresholdFieldNumber = 3,
286  kTriggerTimeoutFieldNumber = 4,
287  kResumeTimeoutFieldNumber = 1,
288  kPitchThresholdFieldNumber = 2,
289  };
290  // optional int32 desired_speed_threshold = 3 [default = 0, (.dccl.field) = {
292  private:
293  bool _internal_has_desired_speed_threshold() const;
294  public:
296  ::PROTOBUF_NAMESPACE_ID::int32 desired_speed_threshold() const;
297  void set_desired_speed_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
298  private:
299  ::PROTOBUF_NAMESPACE_ID::int32 _internal_desired_speed_threshold() const;
300  void _internal_set_desired_speed_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
301  public:
302 
303  // optional int32 trigger_timeout = 4 [default = 15, (.dccl.field) = {
304  bool has_trigger_timeout() const;
305  private:
306  bool _internal_has_trigger_timeout() const;
307  public:
309  ::PROTOBUF_NAMESPACE_ID::int32 trigger_timeout() const;
310  void set_trigger_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
311  private:
312  ::PROTOBUF_NAMESPACE_ID::int32 _internal_trigger_timeout() const;
313  void _internal_set_trigger_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
314  public:
315 
316  // optional int32 resume_timeout = 1 [default = 10, (.dccl.field) = {
317  bool has_resume_timeout() const;
318  private:
319  bool _internal_has_resume_timeout() const;
320  public:
322  ::PROTOBUF_NAMESPACE_ID::int32 resume_timeout() const;
323  void set_resume_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
324  private:
325  ::PROTOBUF_NAMESPACE_ID::int32 _internal_resume_timeout() const;
326  void _internal_set_resume_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
327  public:
328 
329  // optional int32 pitch_threshold = 2 [default = 30, (.dccl.field) = {
330  bool has_pitch_threshold() const;
331  private:
332  bool _internal_has_pitch_threshold() const;
333  public:
335  ::PROTOBUF_NAMESPACE_ID::int32 pitch_threshold() const;
336  void set_pitch_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
337  private:
338  ::PROTOBUF_NAMESPACE_ID::int32 _internal_pitch_threshold() const;
339  void _internal_set_pitch_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
340  public:
341 
342  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type resume_timeout_dimension;
343 
344  typedef boost::units::unit<resume_timeout_dimension,boost::units::si::system> resume_timeout_unit;
345 
346  template<typename Quantity >
347  void set_resume_timeout_with_units(Quantity value_w_units)
348  { set_resume_timeout(boost::units::quantity<resume_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
349 
350  template<typename Quantity >
351  Quantity resume_timeout_with_units() const
352  { return Quantity(resume_timeout() * resume_timeout_unit()); };
353 
354  boost::units::quantity< resume_timeout_unit,google::protobuf::int32 > resume_timeout_with_units() const
355  { return resume_timeout_with_units<boost::units::quantity< resume_timeout_unit,google::protobuf::int32 > >(); };
356 
357  typedef boost::units::plane_angle_dimension pitch_threshold_dimension;
358 
359  typedef boost::units::unit<pitch_threshold_dimension,boost::units::degree::system> pitch_threshold_unit;
360 
361  template<typename Quantity >
362  void set_pitch_threshold_with_units(Quantity value_w_units)
363  { set_pitch_threshold(boost::units::quantity<pitch_threshold_unit,google::protobuf::int32 >(value_w_units).value() ); };
364 
365  template<typename Quantity >
366  Quantity pitch_threshold_with_units() const
367  { return Quantity(pitch_threshold() * pitch_threshold_unit()); };
368 
369  boost::units::quantity< pitch_threshold_unit,google::protobuf::int32 > pitch_threshold_with_units() const
370  { return pitch_threshold_with_units<boost::units::quantity< pitch_threshold_unit,google::protobuf::int32 > >(); };
371 
372  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1, boost::units::time_base_dimension,-1 >::type desired_speed_threshold_dimension;
373 
374  typedef boost::units::unit<desired_speed_threshold_dimension,boost::units::si::system> desired_speed_threshold_unit;
375 
376  template<typename Quantity >
377  void set_desired_speed_threshold_with_units(Quantity value_w_units)
378  { set_desired_speed_threshold(boost::units::quantity<desired_speed_threshold_unit,google::protobuf::int32 >(value_w_units).value() ); };
379 
380  template<typename Quantity >
382  { return Quantity(desired_speed_threshold() * desired_speed_threshold_unit()); };
383 
384  boost::units::quantity< desired_speed_threshold_unit,google::protobuf::int32 > desired_speed_threshold_with_units() const
385  { return desired_speed_threshold_with_units<boost::units::quantity< desired_speed_threshold_unit,google::protobuf::int32 > >(); };
386 
387  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type trigger_timeout_dimension;
388 
389  typedef boost::units::unit<trigger_timeout_dimension,boost::units::si::system> trigger_timeout_unit;
390 
391  template<typename Quantity >
392  void set_trigger_timeout_with_units(Quantity value_w_units)
393  { set_trigger_timeout(boost::units::quantity<trigger_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
394 
395  template<typename Quantity >
396  Quantity trigger_timeout_with_units() const
397  { return Quantity(trigger_timeout() * trigger_timeout_unit()); };
398 
399  boost::units::quantity< trigger_timeout_unit,google::protobuf::int32 > trigger_timeout_with_units() const
400  { return trigger_timeout_with_units<boost::units::quantity< trigger_timeout_unit,google::protobuf::int32 > >(); };
401 
402  // @@protoc_insertion_point(class_scope:jaiabot.config.MissionManager.ResolveNoForwardProgress)
403  private:
404  class _Internal;
405 
406  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
407  typedef void InternalArenaConstructable_;
408  typedef void DestructorSkippable_;
409  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
410  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
411  ::PROTOBUF_NAMESPACE_ID::int32 desired_speed_threshold_;
412  ::PROTOBUF_NAMESPACE_ID::int32 trigger_timeout_;
413  ::PROTOBUF_NAMESPACE_ID::int32 resume_timeout_;
414  ::PROTOBUF_NAMESPACE_ID::int32 pitch_threshold_;
415  friend struct ::TableStruct_bin_2fmission_5fmanager_2fconfig_2eproto;
416 };
417 // -------------------------------------------------------------------
418 
419 class MissionManager PROTOBUF_FINAL :
420  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.MissionManager) */ {
421  public:
422  inline MissionManager() : MissionManager(nullptr) {};
423  virtual ~MissionManager();
424 
425  MissionManager(const MissionManager& from);
426  MissionManager(MissionManager&& from) noexcept
427  : MissionManager() {
428  *this = ::std::move(from);
429  }
430 
431  inline MissionManager& operator=(const MissionManager& from) {
432  CopyFrom(from);
433  return *this;
434  }
435  inline MissionManager& operator=(MissionManager&& from) noexcept {
436  if (GetArena() == from.GetArena()) {
437  if (this != &from) InternalSwap(&from);
438  } else {
439  CopyFrom(from);
440  }
441  return *this;
442  }
443 
444  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
445  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
446  }
447  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
448  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
449  }
450 
451  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
452  return GetDescriptor();
453  }
454  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
455  return GetMetadataStatic().descriptor;
456  }
457  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
458  return GetMetadataStatic().reflection;
459  }
460  static const MissionManager& default_instance();
461 
462  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
463  static inline const MissionManager* internal_default_instance() {
464  return reinterpret_cast<const MissionManager*>(
466  }
467  static constexpr int kIndexInFileMessages =
468  1;
469 
470  friend void swap(MissionManager& a, MissionManager& b) {
471  a.Swap(&b);
472  }
473  inline void Swap(MissionManager* other) {
474  if (other == this) return;
475  if (GetArena() == other->GetArena()) {
476  InternalSwap(other);
477  } else {
478  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
479  }
480  }
481  void UnsafeArenaSwap(MissionManager* other) {
482  if (other == this) return;
483  GOOGLE_DCHECK(GetArena() == other->GetArena());
484  InternalSwap(other);
485  }
486 
487  // implements Message ----------------------------------------------
488 
489  inline MissionManager* New() const final {
490  return CreateMaybeMessage<MissionManager>(nullptr);
491  }
492 
493  MissionManager* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
494  return CreateMaybeMessage<MissionManager>(arena);
495  }
496  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
497  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
498  void CopyFrom(const MissionManager& from);
499  void MergeFrom(const MissionManager& from);
500  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
501  bool IsInitialized() const final;
502 
503  size_t ByteSizeLong() const final;
504  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
505  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
506  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
507  int GetCachedSize() const final { return _cached_size_.Get(); }
508 
509  private:
510  inline void SharedCtor();
511  inline void SharedDtor();
512  void SetCachedSize(int size) const final;
513  void InternalSwap(MissionManager* other);
514  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
515  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
516  return "jaiabot.config.MissionManager";
517  }
518  protected:
519  explicit MissionManager(::PROTOBUF_NAMESPACE_ID::Arena* arena);
520  private:
521  static void ArenaDtor(void* object);
522  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
523  public:
524 
525  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
526  private:
527  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
528  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto);
529  return ::descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
530  }
531 
532  public:
533 
534  // nested types ----------------------------------------------------
535 
536  typedef MissionManager_ResolveNoForwardProgress ResolveNoForwardProgress;
537 
539  static constexpr RemoteControlSetpointEnd RC_SETPOINT_ENDS_IN_STATIONKEEP =
541  static constexpr RemoteControlSetpointEnd RC_SETPOINT_ENDS_IN_SURFACE_DRIFT =
543  static inline bool RemoteControlSetpointEnd_IsValid(int value) {
545  }
546  static constexpr RemoteControlSetpointEnd RemoteControlSetpointEnd_MIN =
548  static constexpr RemoteControlSetpointEnd RemoteControlSetpointEnd_MAX =
550  static constexpr int RemoteControlSetpointEnd_ARRAYSIZE =
552  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
555  }
556  template<typename T>
557  static inline const std::string& RemoteControlSetpointEnd_Name(T enum_t_value) {
558  static_assert(::std::is_same<T, RemoteControlSetpointEnd>::value ||
559  ::std::is_integral<T>::value,
560  "Incorrect type passed to function RemoteControlSetpointEnd_Name.");
562  }
563  static inline bool RemoteControlSetpointEnd_Parse(const std::string& name,
564  RemoteControlSetpointEnd* value) {
566  }
567 
569  static constexpr DownloadFileTypes NONE =
571  static constexpr DownloadFileTypes GOBY =
573  static constexpr DownloadFileTypes TASKPACKET =
575  static inline bool DownloadFileTypes_IsValid(int value) {
577  }
578  static constexpr DownloadFileTypes DownloadFileTypes_MIN =
580  static constexpr DownloadFileTypes DownloadFileTypes_MAX =
582  static constexpr int DownloadFileTypes_ARRAYSIZE =
584  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
587  }
588  template<typename T>
589  static inline const std::string& DownloadFileTypes_Name(T enum_t_value) {
590  static_assert(::std::is_same<T, DownloadFileTypes>::value ||
591  ::std::is_integral<T>::value,
592  "Incorrect type passed to function DownloadFileTypes_Name.");
593  return MissionManager_DownloadFileTypes_Name(enum_t_value);
594  }
595  static inline bool DownloadFileTypes_Parse(const std::string& name,
596  DownloadFileTypes* value) {
597  return MissionManager_DownloadFileTypes_Parse(name, value);
598  }
599 
601  static constexpr EngineeringTestMode ENGINEERING_TEST__ALWAYS_LOG_EVEN_WHEN_IDLE =
603  static constexpr EngineeringTestMode ENGINEERING_TEST__IGNORE_SOME_ERRORS =
605  static constexpr EngineeringTestMode ENGINEERING_TEST__INDOOR_MODE__NO_GPS =
607  static inline bool EngineeringTestMode_IsValid(int value) {
609  }
610  static constexpr EngineeringTestMode EngineeringTestMode_MIN =
612  static constexpr EngineeringTestMode EngineeringTestMode_MAX =
614  static constexpr int EngineeringTestMode_ARRAYSIZE =
616  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
619  }
620  template<typename T>
621  static inline const std::string& EngineeringTestMode_Name(T enum_t_value) {
622  static_assert(::std::is_same<T, EngineeringTestMode>::value ||
623  ::std::is_integral<T>::value,
624  "Incorrect type passed to function EngineeringTestMode_Name.");
625  return MissionManager_EngineeringTestMode_Name(enum_t_value);
626  }
627  static inline bool EngineeringTestMode_Parse(const std::string& name,
628  EngineeringTestMode* value) {
629  return MissionManager_EngineeringTestMode_Parse(name, value);
630  }
631 
632  // accessors -------------------------------------------------------
633 
634  enum : int {
635  kIncludeGoalTimeoutStatesFieldNumber = 49,
636  kTestModeFieldNumber = 80,
637  kIgnoreErrorFieldNumber = 81,
638  kDataPreoffloadScriptFieldNumber = 70,
639  kDataPostoffloadScriptFieldNumber = 71,
640  kLogDirFieldNumber = 72,
641  kLogStagingDirFieldNumber = 73,
642  kLogArchiveDirFieldNumber = 74,
643  kAppFieldNumber = 1,
644  kInterprocessFieldNumber = 2,
645  kCommandSubCfgFieldNumber = 11,
646  kContactUpdateSubCfgFieldNumber = 13,
647  kSubscribeToHubOnStartFieldNumber = 83,
648  kResolveNoForwardProgressFieldNumber = 88,
649  kStartCameraCommandFieldNumber = 90,
650  kStopCameraCommandFieldNumber = 91,
651  kFleetIdFieldNumber = 9,
652  kBotIdFieldNumber = 10,
653  kUseGoalTimeoutFieldNumber = 47,
654  kSkipGoalTaskFieldNumber = 48,
655  kIsSimFieldNumber = 82,
656  kSubnetMaskFieldNumber = 89,
657  kStartupTimeoutFieldNumber = 12,
658  kPoweredAscentMotorOnTimeoutFieldNumber = 25,
659  kPoweredAscentMotorOffTimeoutFieldNumber = 26,
660  kDivePrepTimeoutFieldNumber = 27,
661  kPoweredDescentTimeoutFieldNumber = 28,
662  kDetectBottomLogicInitTimeoutFieldNumber = 29,
663  kDetectBottomLogicAfterHoldTimeoutFieldNumber = 30,
664  kDiveDepthEpsFieldNumber = 31,
665  kBottomingTimeoutFieldNumber = 32,
666  kDiveSurfaceEpsFieldNumber = 33,
667  kTotalGpsFixChecksFieldNumber = 34,
668  kTotalGpsDegradedFixChecksFieldNumber = 35,
669  kGpsHdopFixFieldNumber = 36,
670  kGpsPdopFixFieldNumber = 37,
671  kGpsAfterDiveHdopFixFieldNumber = 39,
672  kGpsAfterDivePdopFixFieldNumber = 40,
673  kMinDepthSafetyFieldNumber = 41,
674  kTotalAfterDiveGpsFixChecksFieldNumber = 38,
675  kGoalTimeoutReacquireGpsAttemptsFieldNumber = 45,
676  kGoalTimeoutBufferFactorFieldNumber = 44,
677  kTpvHistoryMaxFieldNumber = 46,
678  kRcSetpointEndFieldNumber = 50,
679  kBotNotRisingTimeoutFieldNumber = 52,
680  kImuRestartSecondsFieldNumber = 51,
681  kMotorOnTimeIncrementFieldNumber = 53,
682  kPoweredAscentThrottleFieldNumber = 55,
683  kPoweredAscentThrottleIncrementFieldNumber = 56,
684  kPoweredAscentThrottleMaxFieldNumber = 57,
685  kMotorOnTimeMaxFieldNumber = 54,
686  kPitchAngleChecksFieldNumber = 60,
687  kPitchToDeterminePoweredAscentVerticalFieldNumber = 58,
688  kPitchToDetermineDivePrepVerticalFieldNumber = 59,
689  kPitchAngleMinCheckTimeFieldNumber = 61,
690  kDiveEpsToDetermineDivingFieldNumber = 62,
691  kDataOffloadExcludeFieldNumber = 75,
692  kFailedStartupLogTimeoutFieldNumber = 85,
693  kHardBottomTypeAccelerationFieldNumber = 84,
694  kWaypointWithNoTaskSlipRadiusFieldNumber = 86,
695  kWaypointWithTaskSlipRadiusFieldNumber = 87,
696  };
697  // repeated .jaiabot.protobuf.MissionState include_goal_timeout_states = 49;
699  private:
700  int _internal_include_goal_timeout_states_size() const;
701  public:
703  private:
704  ::jaiabot::protobuf::MissionState _internal_include_goal_timeout_states(int index) const;
705  void _internal_add_include_goal_timeout_states(::jaiabot::protobuf::MissionState value);
706  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_include_goal_timeout_states();
707  public:
711  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& include_goal_timeout_states() const;
712  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_include_goal_timeout_states();
713 
714  // repeated .jaiabot.config.MissionManager.EngineeringTestMode test_mode = 80;
715  int test_mode_size() const;
716  private:
717  int _internal_test_mode_size() const;
718  public:
720  private:
721  ::jaiabot::config::MissionManager_EngineeringTestMode _internal_test_mode(int index) const;
722  void _internal_add_test_mode(::jaiabot::config::MissionManager_EngineeringTestMode value);
723  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_test_mode();
724  public:
728  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& test_mode() const;
729  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_test_mode();
730 
731  // repeated .jaiabot.protobuf.Error ignore_error = 81;
732  int ignore_error_size() const;
733  private:
734  int _internal_ignore_error_size() const;
735  public:
737  private:
738  ::jaiabot::protobuf::Error _internal_ignore_error(int index) const;
739  void _internal_add_ignore_error(::jaiabot::protobuf::Error value);
740  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_ignore_error();
741  public:
743  void set_ignore_error(int index, ::jaiabot::protobuf::Error value);
745  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& ignore_error() const;
746  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_ignore_error();
747 
748  // required string data_preoffload_script = 70;
750  private:
751  bool _internal_has_data_preoffload_script() const;
752  public:
754  const std::string& data_preoffload_script() const;
755  void set_data_preoffload_script(const std::string& value);
756  void set_data_preoffload_script(std::string&& value);
757  void set_data_preoffload_script(const char* value);
758  void set_data_preoffload_script(const char* value, size_t size);
761  void set_allocated_data_preoffload_script(std::string* data_preoffload_script);
762  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
763  " string fields are deprecated and will be removed in a"
764  " future release.")
765  std::string* unsafe_arena_release_data_preoffload_script();
766  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
767  " string fields are deprecated and will be removed in a"
768  " future release.")
769  void unsafe_arena_set_allocated_data_preoffload_script(
770  std::string* data_preoffload_script);
771  private:
772  const std::string& _internal_data_preoffload_script() const;
773  void _internal_set_data_preoffload_script(const std::string& value);
774  std::string* _internal_mutable_data_preoffload_script();
775  public:
776 
777  // required string data_postoffload_script = 71;
778  bool has_data_postoffload_script() const;
779  private:
780  bool _internal_has_data_postoffload_script() const;
781  public:
782  void clear_data_postoffload_script();
783  const std::string& data_postoffload_script() const;
784  void set_data_postoffload_script(const std::string& value);
785  void set_data_postoffload_script(std::string&& value);
786  void set_data_postoffload_script(const char* value);
787  void set_data_postoffload_script(const char* value, size_t size);
788  std::string* mutable_data_postoffload_script();
789  std::string* release_data_postoffload_script();
790  void set_allocated_data_postoffload_script(std::string* data_postoffload_script);
791  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
792  " string fields are deprecated and will be removed in a"
793  " future release.")
794  std::string* unsafe_arena_release_data_postoffload_script();
795  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
796  " string fields are deprecated and will be removed in a"
797  " future release.")
798  void unsafe_arena_set_allocated_data_postoffload_script(
799  std::string* data_postoffload_script);
800  private:
801  const std::string& _internal_data_postoffload_script() const;
802  void _internal_set_data_postoffload_script(const std::string& value);
803  std::string* _internal_mutable_data_postoffload_script();
804  public:
805 
806  // required string log_dir = 72;
807  bool has_log_dir() const;
808  private:
809  bool _internal_has_log_dir() const;
810  public:
811  void clear_log_dir();
812  const std::string& log_dir() const;
813  void set_log_dir(const std::string& value);
814  void set_log_dir(std::string&& value);
815  void set_log_dir(const char* value);
816  void set_log_dir(const char* value, size_t size);
817  std::string* mutable_log_dir();
818  std::string* release_log_dir();
819  void set_allocated_log_dir(std::string* log_dir);
820  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
821  " string fields are deprecated and will be removed in a"
822  " future release.")
823  std::string* unsafe_arena_release_log_dir();
824  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
825  " string fields are deprecated and will be removed in a"
826  " future release.")
827  void unsafe_arena_set_allocated_log_dir(
828  std::string* log_dir);
829  private:
830  const std::string& _internal_log_dir() const;
831  void _internal_set_log_dir(const std::string& value);
832  std::string* _internal_mutable_log_dir();
833  public:
834 
835  // optional string log_staging_dir = 73 [default = "/var/log/jaiabot/staging"];
836  bool has_log_staging_dir() const;
837  private:
838  bool _internal_has_log_staging_dir() const;
839  public:
840  void clear_log_staging_dir();
841  const std::string& log_staging_dir() const;
842  void set_log_staging_dir(const std::string& value);
843  void set_log_staging_dir(std::string&& value);
844  void set_log_staging_dir(const char* value);
845  void set_log_staging_dir(const char* value, size_t size);
846  std::string* mutable_log_staging_dir();
847  std::string* release_log_staging_dir();
848  void set_allocated_log_staging_dir(std::string* log_staging_dir);
849  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
850  " string fields are deprecated and will be removed in a"
851  " future release.")
852  std::string* unsafe_arena_release_log_staging_dir();
853  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
854  " string fields are deprecated and will be removed in a"
855  " future release.")
856  void unsafe_arena_set_allocated_log_staging_dir(
857  std::string* log_staging_dir);
858  private:
859  const std::string& _internal_log_staging_dir() const;
860  void _internal_set_log_staging_dir(const std::string& value);
861  std::string* _internal_mutable_log_staging_dir();
862  public:
863 
864  // optional string log_archive_dir = 74 [default = "/var/log/jaiabot/archive"];
865  bool has_log_archive_dir() const;
866  private:
867  bool _internal_has_log_archive_dir() const;
868  public:
869  void clear_log_archive_dir();
870  const std::string& log_archive_dir() const;
871  void set_log_archive_dir(const std::string& value);
872  void set_log_archive_dir(std::string&& value);
873  void set_log_archive_dir(const char* value);
874  void set_log_archive_dir(const char* value, size_t size);
875  std::string* mutable_log_archive_dir();
876  std::string* release_log_archive_dir();
877  void set_allocated_log_archive_dir(std::string* log_archive_dir);
878  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
879  " string fields are deprecated and will be removed in a"
880  " future release.")
881  std::string* unsafe_arena_release_log_archive_dir();
882  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
883  " string fields are deprecated and will be removed in a"
884  " future release.")
885  void unsafe_arena_set_allocated_log_archive_dir(
886  std::string* log_archive_dir);
887  private:
888  const std::string& _internal_log_archive_dir() const;
889  void _internal_set_log_archive_dir(const std::string& value);
890  std::string* _internal_mutable_log_archive_dir();
891  public:
892 
893  // optional .goby.middleware.protobuf.AppConfig app = 1;
894  bool has_app() const;
895  private:
896  bool _internal_has_app() const;
897  public:
898  void clear_app();
899  const ::goby::middleware::protobuf::AppConfig& app() const;
900  ::goby::middleware::protobuf::AppConfig* release_app();
901  ::goby::middleware::protobuf::AppConfig* mutable_app();
902  void set_allocated_app(::goby::middleware::protobuf::AppConfig* app);
903  private:
904  const ::goby::middleware::protobuf::AppConfig& _internal_app() const;
905  ::goby::middleware::protobuf::AppConfig* _internal_mutable_app();
906  public:
907  void unsafe_arena_set_allocated_app(
908  ::goby::middleware::protobuf::AppConfig* app);
909  ::goby::middleware::protobuf::AppConfig* unsafe_arena_release_app();
910 
911  // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
912  bool has_interprocess() const;
913  private:
914  bool _internal_has_interprocess() const;
915  public:
916  void clear_interprocess();
917  const ::goby::zeromq::protobuf::InterProcessPortalConfig& interprocess() const;
918  ::goby::zeromq::protobuf::InterProcessPortalConfig* release_interprocess();
919  ::goby::zeromq::protobuf::InterProcessPortalConfig* mutable_interprocess();
920  void set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
921  private:
922  const ::goby::zeromq::protobuf::InterProcessPortalConfig& _internal_interprocess() const;
923  ::goby::zeromq::protobuf::InterProcessPortalConfig* _internal_mutable_interprocess();
924  public:
925  void unsafe_arena_set_allocated_interprocess(
926  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
927  ::goby::zeromq::protobuf::InterProcessPortalConfig* unsafe_arena_release_interprocess();
928 
929  // required .goby.middleware.protobuf.TransporterConfig command_sub_cfg = 11;
930  bool has_command_sub_cfg() const;
931  private:
932  bool _internal_has_command_sub_cfg() const;
933  public:
934  void clear_command_sub_cfg();
935  const ::goby::middleware::protobuf::TransporterConfig& command_sub_cfg() const;
936  ::goby::middleware::protobuf::TransporterConfig* release_command_sub_cfg();
937  ::goby::middleware::protobuf::TransporterConfig* mutable_command_sub_cfg();
938  void set_allocated_command_sub_cfg(::goby::middleware::protobuf::TransporterConfig* command_sub_cfg);
939  private:
940  const ::goby::middleware::protobuf::TransporterConfig& _internal_command_sub_cfg() const;
941  ::goby::middleware::protobuf::TransporterConfig* _internal_mutable_command_sub_cfg();
942  public:
943  void unsafe_arena_set_allocated_command_sub_cfg(
944  ::goby::middleware::protobuf::TransporterConfig* command_sub_cfg);
945  ::goby::middleware::protobuf::TransporterConfig* unsafe_arena_release_command_sub_cfg();
946 
947  // optional .goby.middleware.protobuf.TransporterConfig contact_update_sub_cfg = 13;
948  bool has_contact_update_sub_cfg() const;
949  private:
950  bool _internal_has_contact_update_sub_cfg() const;
951  public:
952  void clear_contact_update_sub_cfg();
953  const ::goby::middleware::protobuf::TransporterConfig& contact_update_sub_cfg() const;
954  ::goby::middleware::protobuf::TransporterConfig* release_contact_update_sub_cfg();
955  ::goby::middleware::protobuf::TransporterConfig* mutable_contact_update_sub_cfg();
956  void set_allocated_contact_update_sub_cfg(::goby::middleware::protobuf::TransporterConfig* contact_update_sub_cfg);
957  private:
958  const ::goby::middleware::protobuf::TransporterConfig& _internal_contact_update_sub_cfg() const;
959  ::goby::middleware::protobuf::TransporterConfig* _internal_mutable_contact_update_sub_cfg();
960  public:
961  void unsafe_arena_set_allocated_contact_update_sub_cfg(
962  ::goby::middleware::protobuf::TransporterConfig* contact_update_sub_cfg);
963  ::goby::middleware::protobuf::TransporterConfig* unsafe_arena_release_contact_update_sub_cfg();
964 
965  // optional .jaiabot.protobuf.HubInfo subscribe_to_hub_on_start = 83;
966  bool has_subscribe_to_hub_on_start() const;
967  private:
968  bool _internal_has_subscribe_to_hub_on_start() const;
969  public:
970  void clear_subscribe_to_hub_on_start();
971  const ::jaiabot::protobuf::HubInfo& subscribe_to_hub_on_start() const;
972  ::jaiabot::protobuf::HubInfo* release_subscribe_to_hub_on_start();
973  ::jaiabot::protobuf::HubInfo* mutable_subscribe_to_hub_on_start();
974  void set_allocated_subscribe_to_hub_on_start(::jaiabot::protobuf::HubInfo* subscribe_to_hub_on_start);
975  private:
976  const ::jaiabot::protobuf::HubInfo& _internal_subscribe_to_hub_on_start() const;
977  ::jaiabot::protobuf::HubInfo* _internal_mutable_subscribe_to_hub_on_start();
978  public:
979  void unsafe_arena_set_allocated_subscribe_to_hub_on_start(
980  ::jaiabot::protobuf::HubInfo* subscribe_to_hub_on_start);
981  ::jaiabot::protobuf::HubInfo* unsafe_arena_release_subscribe_to_hub_on_start();
982 
983  // optional .jaiabot.config.MissionManager.ResolveNoForwardProgress resolve_no_forward_progress = 88;
984  bool has_resolve_no_forward_progress() const;
985  private:
986  bool _internal_has_resolve_no_forward_progress() const;
987  public:
988  void clear_resolve_no_forward_progress();
989  const ::jaiabot::config::MissionManager_ResolveNoForwardProgress& resolve_no_forward_progress() const;
990  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* release_resolve_no_forward_progress();
991  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* mutable_resolve_no_forward_progress();
992  void set_allocated_resolve_no_forward_progress(::jaiabot::config::MissionManager_ResolveNoForwardProgress* resolve_no_forward_progress);
993  private:
994  const ::jaiabot::config::MissionManager_ResolveNoForwardProgress& _internal_resolve_no_forward_progress() const;
995  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* _internal_mutable_resolve_no_forward_progress();
996  public:
997  void unsafe_arena_set_allocated_resolve_no_forward_progress(
998  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* resolve_no_forward_progress);
999  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* unsafe_arena_release_resolve_no_forward_progress();
1000 
1001  // optional .jaiabot.protobuf.CameraCommand start_camera_command = 90;
1002  bool has_start_camera_command() const;
1003  private:
1004  bool _internal_has_start_camera_command() const;
1005  public:
1006  void clear_start_camera_command();
1007  const ::jaiabot::protobuf::CameraCommand& start_camera_command() const;
1008  ::jaiabot::protobuf::CameraCommand* release_start_camera_command();
1009  ::jaiabot::protobuf::CameraCommand* mutable_start_camera_command();
1010  void set_allocated_start_camera_command(::jaiabot::protobuf::CameraCommand* start_camera_command);
1011  private:
1012  const ::jaiabot::protobuf::CameraCommand& _internal_start_camera_command() const;
1013  ::jaiabot::protobuf::CameraCommand* _internal_mutable_start_camera_command();
1014  public:
1015  void unsafe_arena_set_allocated_start_camera_command(
1016  ::jaiabot::protobuf::CameraCommand* start_camera_command);
1017  ::jaiabot::protobuf::CameraCommand* unsafe_arena_release_start_camera_command();
1018 
1019  // optional .jaiabot.protobuf.CameraCommand stop_camera_command = 91;
1020  bool has_stop_camera_command() const;
1021  private:
1022  bool _internal_has_stop_camera_command() const;
1023  public:
1024  void clear_stop_camera_command();
1025  const ::jaiabot::protobuf::CameraCommand& stop_camera_command() const;
1026  ::jaiabot::protobuf::CameraCommand* release_stop_camera_command();
1027  ::jaiabot::protobuf::CameraCommand* mutable_stop_camera_command();
1028  void set_allocated_stop_camera_command(::jaiabot::protobuf::CameraCommand* stop_camera_command);
1029  private:
1030  const ::jaiabot::protobuf::CameraCommand& _internal_stop_camera_command() const;
1031  ::jaiabot::protobuf::CameraCommand* _internal_mutable_stop_camera_command();
1032  public:
1033  void unsafe_arena_set_allocated_stop_camera_command(
1034  ::jaiabot::protobuf::CameraCommand* stop_camera_command);
1035  ::jaiabot::protobuf::CameraCommand* unsafe_arena_release_stop_camera_command();
1036 
1037  // required int32 fleet_id = 9;
1038  bool has_fleet_id() const;
1039  private:
1040  bool _internal_has_fleet_id() const;
1041  public:
1042  void clear_fleet_id();
1043  ::PROTOBUF_NAMESPACE_ID::int32 fleet_id() const;
1044  void set_fleet_id(::PROTOBUF_NAMESPACE_ID::int32 value);
1045  private:
1046  ::PROTOBUF_NAMESPACE_ID::int32 _internal_fleet_id() const;
1047  void _internal_set_fleet_id(::PROTOBUF_NAMESPACE_ID::int32 value);
1048  public:
1049 
1050  // required int32 bot_id = 10;
1051  bool has_bot_id() const;
1052  private:
1053  bool _internal_has_bot_id() const;
1054  public:
1055  void clear_bot_id();
1056  ::PROTOBUF_NAMESPACE_ID::int32 bot_id() const;
1057  void set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value);
1058  private:
1059  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bot_id() const;
1060  void _internal_set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value);
1061  public:
1062 
1063  // optional bool use_goal_timeout = 47 [default = false];
1064  bool has_use_goal_timeout() const;
1065  private:
1066  bool _internal_has_use_goal_timeout() const;
1067  public:
1068  void clear_use_goal_timeout();
1069  bool use_goal_timeout() const;
1070  void set_use_goal_timeout(bool value);
1071  private:
1072  bool _internal_use_goal_timeout() const;
1073  void _internal_set_use_goal_timeout(bool value);
1074  public:
1075 
1076  // optional bool skip_goal_task = 48 [default = false];
1077  bool has_skip_goal_task() const;
1078  private:
1079  bool _internal_has_skip_goal_task() const;
1080  public:
1081  void clear_skip_goal_task();
1082  bool skip_goal_task() const;
1083  void set_skip_goal_task(bool value);
1084  private:
1085  bool _internal_skip_goal_task() const;
1086  void _internal_set_skip_goal_task(bool value);
1087  public:
1088 
1089  // optional bool is_sim = 82 [default = false];
1090  bool has_is_sim() const;
1091  private:
1092  bool _internal_has_is_sim() const;
1093  public:
1094  void clear_is_sim();
1095  bool is_sim() const;
1096  void set_is_sim(bool value);
1097  private:
1098  bool _internal_is_sim() const;
1099  void _internal_set_is_sim(bool value);
1100  public:
1101 
1102  // required uint32 subnet_mask = 89;
1103  bool has_subnet_mask() const;
1104  private:
1105  bool _internal_has_subnet_mask() const;
1106  public:
1107  void clear_subnet_mask();
1108  ::PROTOBUF_NAMESPACE_ID::uint32 subnet_mask() const;
1109  void set_subnet_mask(::PROTOBUF_NAMESPACE_ID::uint32 value);
1110  private:
1111  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_subnet_mask() const;
1112  void _internal_set_subnet_mask(::PROTOBUF_NAMESPACE_ID::uint32 value);
1113  public:
1114 
1115  // optional double startup_timeout = 12 [default = 120, (.dccl.field) = {
1116  bool has_startup_timeout() const;
1117  private:
1118  bool _internal_has_startup_timeout() const;
1119  public:
1120  void clear_startup_timeout();
1121  double startup_timeout() const;
1122  void set_startup_timeout(double value);
1123  private:
1124  double _internal_startup_timeout() const;
1125  void _internal_set_startup_timeout(double value);
1126  public:
1127 
1128  // optional int32 powered_ascent_motor_on_timeout = 25 [default = 5, (.dccl.field) = {
1129  bool has_powered_ascent_motor_on_timeout() const;
1130  private:
1131  bool _internal_has_powered_ascent_motor_on_timeout() const;
1132  public:
1133  void clear_powered_ascent_motor_on_timeout();
1134  ::PROTOBUF_NAMESPACE_ID::int32 powered_ascent_motor_on_timeout() const;
1135  void set_powered_ascent_motor_on_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1136  private:
1137  ::PROTOBUF_NAMESPACE_ID::int32 _internal_powered_ascent_motor_on_timeout() const;
1138  void _internal_set_powered_ascent_motor_on_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1139  public:
1140 
1141  // optional int32 powered_ascent_motor_off_timeout = 26 [default = 2, (.dccl.field) = {
1142  bool has_powered_ascent_motor_off_timeout() const;
1143  private:
1144  bool _internal_has_powered_ascent_motor_off_timeout() const;
1145  public:
1146  void clear_powered_ascent_motor_off_timeout();
1147  ::PROTOBUF_NAMESPACE_ID::int32 powered_ascent_motor_off_timeout() const;
1148  void set_powered_ascent_motor_off_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1149  private:
1150  ::PROTOBUF_NAMESPACE_ID::int32 _internal_powered_ascent_motor_off_timeout() const;
1151  void _internal_set_powered_ascent_motor_off_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1152  public:
1153 
1154  // optional int32 dive_prep_timeout = 27 [default = 10, (.dccl.field) = {
1155  bool has_dive_prep_timeout() const;
1156  private:
1157  bool _internal_has_dive_prep_timeout() const;
1158  public:
1159  void clear_dive_prep_timeout();
1160  ::PROTOBUF_NAMESPACE_ID::int32 dive_prep_timeout() const;
1161  void set_dive_prep_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1162  private:
1163  ::PROTOBUF_NAMESPACE_ID::int32 _internal_dive_prep_timeout() const;
1164  void _internal_set_dive_prep_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1165  public:
1166 
1167  // optional int32 powered_descent_timeout = 28 [default = 100, (.dccl.field) = {
1168  bool has_powered_descent_timeout() const;
1169  private:
1170  bool _internal_has_powered_descent_timeout() const;
1171  public:
1172  void clear_powered_descent_timeout();
1173  ::PROTOBUF_NAMESPACE_ID::int32 powered_descent_timeout() const;
1174  void set_powered_descent_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1175  private:
1176  ::PROTOBUF_NAMESPACE_ID::int32 _internal_powered_descent_timeout() const;
1177  void _internal_set_powered_descent_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1178  public:
1179 
1180  // optional double detect_bottom_logic_init_timeout = 29 [default = 15, (.dccl.field) = {
1181  bool has_detect_bottom_logic_init_timeout() const;
1182  private:
1183  bool _internal_has_detect_bottom_logic_init_timeout() const;
1184  public:
1185  void clear_detect_bottom_logic_init_timeout();
1186  double detect_bottom_logic_init_timeout() const;
1187  void set_detect_bottom_logic_init_timeout(double value);
1188  private:
1189  double _internal_detect_bottom_logic_init_timeout() const;
1190  void _internal_set_detect_bottom_logic_init_timeout(double value);
1191  public:
1192 
1193  // optional double detect_bottom_logic_after_hold_timeout = 30 [default = 5, (.dccl.field) = {
1194  bool has_detect_bottom_logic_after_hold_timeout() const;
1195  private:
1196  bool _internal_has_detect_bottom_logic_after_hold_timeout() const;
1197  public:
1198  void clear_detect_bottom_logic_after_hold_timeout();
1199  double detect_bottom_logic_after_hold_timeout() const;
1200  void set_detect_bottom_logic_after_hold_timeout(double value);
1201  private:
1202  double _internal_detect_bottom_logic_after_hold_timeout() const;
1203  void _internal_set_detect_bottom_logic_after_hold_timeout(double value);
1204  public:
1205 
1206  // optional double dive_depth_eps = 31 [default = 0.1, (.dccl.field) = {
1207  bool has_dive_depth_eps() const;
1208  private:
1209  bool _internal_has_dive_depth_eps() const;
1210  public:
1211  void clear_dive_depth_eps();
1212  double dive_depth_eps() const;
1213  void set_dive_depth_eps(double value);
1214  private:
1215  double _internal_dive_depth_eps() const;
1216  void _internal_set_dive_depth_eps(double value);
1217  public:
1218 
1219  // optional double bottoming_timeout = 32 [default = 3, (.dccl.field) = {
1220  bool has_bottoming_timeout() const;
1221  private:
1222  bool _internal_has_bottoming_timeout() const;
1223  public:
1224  void clear_bottoming_timeout();
1225  double bottoming_timeout() const;
1226  void set_bottoming_timeout(double value);
1227  private:
1228  double _internal_bottoming_timeout() const;
1229  void _internal_set_bottoming_timeout(double value);
1230  public:
1231 
1232  // optional double dive_surface_eps = 33 [default = 0.75, (.dccl.field) = {
1233  bool has_dive_surface_eps() const;
1234  private:
1235  bool _internal_has_dive_surface_eps() const;
1236  public:
1237  void clear_dive_surface_eps();
1238  double dive_surface_eps() const;
1239  void set_dive_surface_eps(double value);
1240  private:
1241  double _internal_dive_surface_eps() const;
1242  void _internal_set_dive_surface_eps(double value);
1243  public:
1244 
1245  // optional uint32 total_gps_fix_checks = 34 [default = 10];
1246  bool has_total_gps_fix_checks() const;
1247  private:
1248  bool _internal_has_total_gps_fix_checks() const;
1249  public:
1250  void clear_total_gps_fix_checks();
1251  ::PROTOBUF_NAMESPACE_ID::uint32 total_gps_fix_checks() const;
1252  void set_total_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1253  private:
1254  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_total_gps_fix_checks() const;
1255  void _internal_set_total_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1256  public:
1257 
1258  // optional uint32 total_gps_degraded_fix_checks = 35 [default = 2];
1259  bool has_total_gps_degraded_fix_checks() const;
1260  private:
1261  bool _internal_has_total_gps_degraded_fix_checks() const;
1262  public:
1263  void clear_total_gps_degraded_fix_checks();
1264  ::PROTOBUF_NAMESPACE_ID::uint32 total_gps_degraded_fix_checks() const;
1265  void set_total_gps_degraded_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1266  private:
1267  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_total_gps_degraded_fix_checks() const;
1268  void _internal_set_total_gps_degraded_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1269  public:
1270 
1271  // optional double gps_hdop_fix = 36 [default = 1.3];
1272  bool has_gps_hdop_fix() const;
1273  private:
1274  bool _internal_has_gps_hdop_fix() const;
1275  public:
1276  void clear_gps_hdop_fix();
1277  double gps_hdop_fix() const;
1278  void set_gps_hdop_fix(double value);
1279  private:
1280  double _internal_gps_hdop_fix() const;
1281  void _internal_set_gps_hdop_fix(double value);
1282  public:
1283 
1284  // optional double gps_pdop_fix = 37 [default = 2.2];
1285  bool has_gps_pdop_fix() const;
1286  private:
1287  bool _internal_has_gps_pdop_fix() const;
1288  public:
1289  void clear_gps_pdop_fix();
1290  double gps_pdop_fix() const;
1291  void set_gps_pdop_fix(double value);
1292  private:
1293  double _internal_gps_pdop_fix() const;
1294  void _internal_set_gps_pdop_fix(double value);
1295  public:
1296 
1297  // optional double gps_after_dive_hdop_fix = 39 [default = 1.3];
1298  bool has_gps_after_dive_hdop_fix() const;
1299  private:
1300  bool _internal_has_gps_after_dive_hdop_fix() const;
1301  public:
1302  void clear_gps_after_dive_hdop_fix();
1303  double gps_after_dive_hdop_fix() const;
1304  void set_gps_after_dive_hdop_fix(double value);
1305  private:
1306  double _internal_gps_after_dive_hdop_fix() const;
1307  void _internal_set_gps_after_dive_hdop_fix(double value);
1308  public:
1309 
1310  // optional double gps_after_dive_pdop_fix = 40 [default = 2.2];
1311  bool has_gps_after_dive_pdop_fix() const;
1312  private:
1313  bool _internal_has_gps_after_dive_pdop_fix() const;
1314  public:
1315  void clear_gps_after_dive_pdop_fix();
1316  double gps_after_dive_pdop_fix() const;
1317  void set_gps_after_dive_pdop_fix(double value);
1318  private:
1319  double _internal_gps_after_dive_pdop_fix() const;
1320  void _internal_set_gps_after_dive_pdop_fix(double value);
1321  public:
1322 
1323  // optional double min_depth_safety = 41 [default = -1];
1324  bool has_min_depth_safety() const;
1325  private:
1326  bool _internal_has_min_depth_safety() const;
1327  public:
1328  void clear_min_depth_safety();
1329  double min_depth_safety() const;
1330  void set_min_depth_safety(double value);
1331  private:
1332  double _internal_min_depth_safety() const;
1333  void _internal_set_min_depth_safety(double value);
1334  public:
1335 
1336  // optional uint32 total_after_dive_gps_fix_checks = 38 [default = 15];
1337  bool has_total_after_dive_gps_fix_checks() const;
1338  private:
1339  bool _internal_has_total_after_dive_gps_fix_checks() const;
1340  public:
1341  void clear_total_after_dive_gps_fix_checks();
1342  ::PROTOBUF_NAMESPACE_ID::uint32 total_after_dive_gps_fix_checks() const;
1343  void set_total_after_dive_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1344  private:
1345  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_total_after_dive_gps_fix_checks() const;
1346  void _internal_set_total_after_dive_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value);
1347  public:
1348 
1349  // optional uint32 goal_timeout_reacquire_gps_attempts = 45 [default = 2];
1350  bool has_goal_timeout_reacquire_gps_attempts() const;
1351  private:
1352  bool _internal_has_goal_timeout_reacquire_gps_attempts() const;
1353  public:
1354  void clear_goal_timeout_reacquire_gps_attempts();
1355  ::PROTOBUF_NAMESPACE_ID::uint32 goal_timeout_reacquire_gps_attempts() const;
1356  void set_goal_timeout_reacquire_gps_attempts(::PROTOBUF_NAMESPACE_ID::uint32 value);
1357  private:
1358  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_goal_timeout_reacquire_gps_attempts() const;
1359  void _internal_set_goal_timeout_reacquire_gps_attempts(::PROTOBUF_NAMESPACE_ID::uint32 value);
1360  public:
1361 
1362  // optional double goal_timeout_buffer_factor = 44 [default = 1];
1363  bool has_goal_timeout_buffer_factor() const;
1364  private:
1365  bool _internal_has_goal_timeout_buffer_factor() const;
1366  public:
1367  void clear_goal_timeout_buffer_factor();
1368  double goal_timeout_buffer_factor() const;
1369  void set_goal_timeout_buffer_factor(double value);
1370  private:
1371  double _internal_goal_timeout_buffer_factor() const;
1372  void _internal_set_goal_timeout_buffer_factor(double value);
1373  public:
1374 
1375  // optional uint32 tpv_history_max = 46 [default = 15];
1376  bool has_tpv_history_max() const;
1377  private:
1378  bool _internal_has_tpv_history_max() const;
1379  public:
1380  void clear_tpv_history_max();
1381  ::PROTOBUF_NAMESPACE_ID::uint32 tpv_history_max() const;
1382  void set_tpv_history_max(::PROTOBUF_NAMESPACE_ID::uint32 value);
1383  private:
1384  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_tpv_history_max() const;
1385  void _internal_set_tpv_history_max(::PROTOBUF_NAMESPACE_ID::uint32 value);
1386  public:
1387 
1388  // optional .jaiabot.config.MissionManager.RemoteControlSetpointEnd rc_setpoint_end = 50 [default = RC_SETPOINT_ENDS_IN_STATIONKEEP];
1389  bool has_rc_setpoint_end() const;
1390  private:
1391  bool _internal_has_rc_setpoint_end() const;
1392  public:
1393  void clear_rc_setpoint_end();
1395  void set_rc_setpoint_end(::jaiabot::config::MissionManager_RemoteControlSetpointEnd value);
1396  private:
1397  ::jaiabot::config::MissionManager_RemoteControlSetpointEnd _internal_rc_setpoint_end() const;
1398  void _internal_set_rc_setpoint_end(::jaiabot::config::MissionManager_RemoteControlSetpointEnd value);
1399  public:
1400 
1401  // optional double bot_not_rising_timeout = 52 [default = 6, (.dccl.field) = {
1402  bool has_bot_not_rising_timeout() const;
1403  private:
1404  bool _internal_has_bot_not_rising_timeout() const;
1405  public:
1406  void clear_bot_not_rising_timeout();
1407  double bot_not_rising_timeout() const;
1408  void set_bot_not_rising_timeout(double value);
1409  private:
1410  double _internal_bot_not_rising_timeout() const;
1411  void _internal_set_bot_not_rising_timeout(double value);
1412  public:
1413 
1414  // optional uint32 imu_restart_seconds = 51 [default = 15];
1415  bool has_imu_restart_seconds() const;
1416  private:
1417  bool _internal_has_imu_restart_seconds() const;
1418  public:
1419  void clear_imu_restart_seconds();
1420  ::PROTOBUF_NAMESPACE_ID::uint32 imu_restart_seconds() const;
1421  void set_imu_restart_seconds(::PROTOBUF_NAMESPACE_ID::uint32 value);
1422  private:
1423  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_imu_restart_seconds() const;
1424  void _internal_set_imu_restart_seconds(::PROTOBUF_NAMESPACE_ID::uint32 value);
1425  public:
1426 
1427  // optional int32 motor_on_time_increment = 53 [default = 1, (.dccl.field) = {
1428  bool has_motor_on_time_increment() const;
1429  private:
1430  bool _internal_has_motor_on_time_increment() const;
1431  public:
1432  void clear_motor_on_time_increment();
1433  ::PROTOBUF_NAMESPACE_ID::int32 motor_on_time_increment() const;
1434  void set_motor_on_time_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
1435  private:
1436  ::PROTOBUF_NAMESPACE_ID::int32 _internal_motor_on_time_increment() const;
1437  void _internal_set_motor_on_time_increment(::PROTOBUF_NAMESPACE_ID::int32 value);
1438  public:
1439 
1440  // optional double powered_ascent_throttle = 55 [default = 25];
1441  bool has_powered_ascent_throttle() const;
1442  private:
1443  bool _internal_has_powered_ascent_throttle() const;
1444  public:
1445  void clear_powered_ascent_throttle();
1446  double powered_ascent_throttle() const;
1447  void set_powered_ascent_throttle(double value);
1448  private:
1449  double _internal_powered_ascent_throttle() const;
1450  void _internal_set_powered_ascent_throttle(double value);
1451  public:
1452 
1453  // optional double powered_ascent_throttle_increment = 56 [default = 5];
1454  bool has_powered_ascent_throttle_increment() const;
1455  private:
1456  bool _internal_has_powered_ascent_throttle_increment() const;
1457  public:
1458  void clear_powered_ascent_throttle_increment();
1459  double powered_ascent_throttle_increment() const;
1460  void set_powered_ascent_throttle_increment(double value);
1461  private:
1462  double _internal_powered_ascent_throttle_increment() const;
1463  void _internal_set_powered_ascent_throttle_increment(double value);
1464  public:
1465 
1466  // optional double powered_ascent_throttle_max = 57 [default = 60];
1467  bool has_powered_ascent_throttle_max() const;
1468  private:
1469  bool _internal_has_powered_ascent_throttle_max() const;
1470  public:
1471  void clear_powered_ascent_throttle_max();
1472  double powered_ascent_throttle_max() const;
1473  void set_powered_ascent_throttle_max(double value);
1474  private:
1475  double _internal_powered_ascent_throttle_max() const;
1476  void _internal_set_powered_ascent_throttle_max(double value);
1477  public:
1478 
1479  // optional int32 motor_on_time_max = 54 [default = 10, (.dccl.field) = {
1480  bool has_motor_on_time_max() const;
1481  private:
1482  bool _internal_has_motor_on_time_max() const;
1483  public:
1484  void clear_motor_on_time_max();
1485  ::PROTOBUF_NAMESPACE_ID::int32 motor_on_time_max() const;
1486  void set_motor_on_time_max(::PROTOBUF_NAMESPACE_ID::int32 value);
1487  private:
1488  ::PROTOBUF_NAMESPACE_ID::int32 _internal_motor_on_time_max() const;
1489  void _internal_set_motor_on_time_max(::PROTOBUF_NAMESPACE_ID::int32 value);
1490  public:
1491 
1492  // optional int32 pitch_angle_checks = 60 [default = 3];
1493  bool has_pitch_angle_checks() const;
1494  private:
1495  bool _internal_has_pitch_angle_checks() const;
1496  public:
1497  void clear_pitch_angle_checks();
1498  ::PROTOBUF_NAMESPACE_ID::int32 pitch_angle_checks() const;
1499  void set_pitch_angle_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
1500  private:
1501  ::PROTOBUF_NAMESPACE_ID::int32 _internal_pitch_angle_checks() const;
1502  void _internal_set_pitch_angle_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
1503  public:
1504 
1505  // optional double pitch_to_determine_powered_ascent_vertical = 58 [default = 30];
1506  bool has_pitch_to_determine_powered_ascent_vertical() const;
1507  private:
1508  bool _internal_has_pitch_to_determine_powered_ascent_vertical() const;
1509  public:
1510  void clear_pitch_to_determine_powered_ascent_vertical();
1511  double pitch_to_determine_powered_ascent_vertical() const;
1512  void set_pitch_to_determine_powered_ascent_vertical(double value);
1513  private:
1514  double _internal_pitch_to_determine_powered_ascent_vertical() const;
1515  void _internal_set_pitch_to_determine_powered_ascent_vertical(double value);
1516  public:
1517 
1518  // optional double pitch_to_determine_dive_prep_vertical = 59 [default = 70];
1519  bool has_pitch_to_determine_dive_prep_vertical() const;
1520  private:
1521  bool _internal_has_pitch_to_determine_dive_prep_vertical() const;
1522  public:
1523  void clear_pitch_to_determine_dive_prep_vertical();
1524  double pitch_to_determine_dive_prep_vertical() const;
1525  void set_pitch_to_determine_dive_prep_vertical(double value);
1526  private:
1527  double _internal_pitch_to_determine_dive_prep_vertical() const;
1528  void _internal_set_pitch_to_determine_dive_prep_vertical(double value);
1529  public:
1530 
1531  // optional double pitch_angle_min_check_time = 61 [default = 1, (.dccl.field) = {
1532  bool has_pitch_angle_min_check_time() const;
1533  private:
1534  bool _internal_has_pitch_angle_min_check_time() const;
1535  public:
1536  void clear_pitch_angle_min_check_time();
1537  double pitch_angle_min_check_time() const;
1538  void set_pitch_angle_min_check_time(double value);
1539  private:
1540  double _internal_pitch_angle_min_check_time() const;
1541  void _internal_set_pitch_angle_min_check_time(double value);
1542  public:
1543 
1544  // optional double dive_eps_to_determine_diving = 62 [default = 0.3, (.dccl.field) = {
1545  bool has_dive_eps_to_determine_diving() const;
1546  private:
1547  bool _internal_has_dive_eps_to_determine_diving() const;
1548  public:
1549  void clear_dive_eps_to_determine_diving();
1550  double dive_eps_to_determine_diving() const;
1551  void set_dive_eps_to_determine_diving(double value);
1552  private:
1553  double _internal_dive_eps_to_determine_diving() const;
1554  void _internal_set_dive_eps_to_determine_diving(double value);
1555  public:
1556 
1557  // optional .jaiabot.config.MissionManager.DownloadFileTypes data_offload_exclude = 75;
1558  bool has_data_offload_exclude() const;
1559  private:
1560  bool _internal_has_data_offload_exclude() const;
1561  public:
1562  void clear_data_offload_exclude();
1563  ::jaiabot::config::MissionManager_DownloadFileTypes data_offload_exclude() const;
1564  void set_data_offload_exclude(::jaiabot::config::MissionManager_DownloadFileTypes value);
1565  private:
1566  ::jaiabot::config::MissionManager_DownloadFileTypes _internal_data_offload_exclude() const;
1567  void _internal_set_data_offload_exclude(::jaiabot::config::MissionManager_DownloadFileTypes value);
1568  public:
1569 
1570  // optional int32 failed_startup_log_timeout = 85 [default = 300, (.dccl.field) = {
1571  bool has_failed_startup_log_timeout() const;
1572  private:
1573  bool _internal_has_failed_startup_log_timeout() const;
1574  public:
1575  void clear_failed_startup_log_timeout();
1576  ::PROTOBUF_NAMESPACE_ID::int32 failed_startup_log_timeout() const;
1577  void set_failed_startup_log_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1578  private:
1579  ::PROTOBUF_NAMESPACE_ID::int32 _internal_failed_startup_log_timeout() const;
1580  void _internal_set_failed_startup_log_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
1581  public:
1582 
1583  // optional double hard_bottom_type_acceleration = 84 [default = 100];
1584  bool has_hard_bottom_type_acceleration() const;
1585  private:
1586  bool _internal_has_hard_bottom_type_acceleration() const;
1587  public:
1588  void clear_hard_bottom_type_acceleration();
1589  double hard_bottom_type_acceleration() const;
1590  void set_hard_bottom_type_acceleration(double value);
1591  private:
1592  double _internal_hard_bottom_type_acceleration() const;
1593  void _internal_set_hard_bottom_type_acceleration(double value);
1594  public:
1595 
1596  // optional int32 waypoint_with_no_task_slip_radius = 86 [default = 15];
1597  bool has_waypoint_with_no_task_slip_radius() const;
1598  private:
1599  bool _internal_has_waypoint_with_no_task_slip_radius() const;
1600  public:
1601  void clear_waypoint_with_no_task_slip_radius();
1602  ::PROTOBUF_NAMESPACE_ID::int32 waypoint_with_no_task_slip_radius() const;
1603  void set_waypoint_with_no_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
1604  private:
1605  ::PROTOBUF_NAMESPACE_ID::int32 _internal_waypoint_with_no_task_slip_radius() const;
1606  void _internal_set_waypoint_with_no_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
1607  public:
1608 
1609  // optional int32 waypoint_with_task_slip_radius = 87 [default = 5];
1610  bool has_waypoint_with_task_slip_radius() const;
1611  private:
1612  bool _internal_has_waypoint_with_task_slip_radius() const;
1613  public:
1614  void clear_waypoint_with_task_slip_radius();
1615  ::PROTOBUF_NAMESPACE_ID::int32 waypoint_with_task_slip_radius() const;
1616  void set_waypoint_with_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
1617  private:
1618  ::PROTOBUF_NAMESPACE_ID::int32 _internal_waypoint_with_task_slip_radius() const;
1619  void _internal_set_waypoint_with_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value);
1620  public:
1621 
1622  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type startup_timeout_dimension;
1623 
1624  typedef boost::units::unit<startup_timeout_dimension,boost::units::si::system> startup_timeout_unit;
1625 
1626  template<typename Quantity >
1627  void set_startup_timeout_with_units(Quantity value_w_units)
1628  { set_startup_timeout(boost::units::quantity<startup_timeout_unit,double >(value_w_units).value() ); };
1629 
1630  template<typename Quantity >
1632  { return Quantity(startup_timeout() * startup_timeout_unit()); };
1633 
1634  boost::units::quantity< startup_timeout_unit,double > startup_timeout_with_units() const
1635  { return startup_timeout_with_units<boost::units::quantity< startup_timeout_unit,double > >(); };
1636 
1637  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type powered_ascent_motor_on_timeout_dimension;
1638 
1639  typedef boost::units::unit<powered_ascent_motor_on_timeout_dimension,boost::units::si::system> powered_ascent_motor_on_timeout_unit;
1640 
1641  template<typename Quantity >
1643  { set_powered_ascent_motor_on_timeout(boost::units::quantity<powered_ascent_motor_on_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
1644 
1645  template<typename Quantity >
1647  { return Quantity(powered_ascent_motor_on_timeout() * powered_ascent_motor_on_timeout_unit()); };
1648 
1649  boost::units::quantity< powered_ascent_motor_on_timeout_unit,google::protobuf::int32 > powered_ascent_motor_on_timeout_with_units() const
1650  { return powered_ascent_motor_on_timeout_with_units<boost::units::quantity< powered_ascent_motor_on_timeout_unit,google::protobuf::int32 > >(); };
1651 
1652  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type powered_ascent_motor_off_timeout_dimension;
1653 
1654  typedef boost::units::unit<powered_ascent_motor_off_timeout_dimension,boost::units::si::system> powered_ascent_motor_off_timeout_unit;
1655 
1656  template<typename Quantity >
1658  { set_powered_ascent_motor_off_timeout(boost::units::quantity<powered_ascent_motor_off_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
1659 
1660  template<typename Quantity >
1662  { return Quantity(powered_ascent_motor_off_timeout() * powered_ascent_motor_off_timeout_unit()); };
1663 
1664  boost::units::quantity< powered_ascent_motor_off_timeout_unit,google::protobuf::int32 > powered_ascent_motor_off_timeout_with_units() const
1665  { return powered_ascent_motor_off_timeout_with_units<boost::units::quantity< powered_ascent_motor_off_timeout_unit,google::protobuf::int32 > >(); };
1666 
1667  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type dive_prep_timeout_dimension;
1668 
1669  typedef boost::units::unit<dive_prep_timeout_dimension,boost::units::si::system> dive_prep_timeout_unit;
1670 
1671  template<typename Quantity >
1672  void set_dive_prep_timeout_with_units(Quantity value_w_units)
1673  { set_dive_prep_timeout(boost::units::quantity<dive_prep_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
1674 
1675  template<typename Quantity >
1677  { return Quantity(dive_prep_timeout() * dive_prep_timeout_unit()); };
1678 
1679  boost::units::quantity< dive_prep_timeout_unit,google::protobuf::int32 > dive_prep_timeout_with_units() const
1680  { return dive_prep_timeout_with_units<boost::units::quantity< dive_prep_timeout_unit,google::protobuf::int32 > >(); };
1681 
1682  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type powered_descent_timeout_dimension;
1683 
1684  typedef boost::units::unit<powered_descent_timeout_dimension,boost::units::si::system> powered_descent_timeout_unit;
1685 
1686  template<typename Quantity >
1687  void set_powered_descent_timeout_with_units(Quantity value_w_units)
1688  { set_powered_descent_timeout(boost::units::quantity<powered_descent_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
1689 
1690  template<typename Quantity >
1692  { return Quantity(powered_descent_timeout() * powered_descent_timeout_unit()); };
1693 
1694  boost::units::quantity< powered_descent_timeout_unit,google::protobuf::int32 > powered_descent_timeout_with_units() const
1695  { return powered_descent_timeout_with_units<boost::units::quantity< powered_descent_timeout_unit,google::protobuf::int32 > >(); };
1696 
1697  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type detect_bottom_logic_init_timeout_dimension;
1698 
1699  typedef boost::units::unit<detect_bottom_logic_init_timeout_dimension,boost::units::si::system> detect_bottom_logic_init_timeout_unit;
1700 
1701  template<typename Quantity >
1703  { set_detect_bottom_logic_init_timeout(boost::units::quantity<detect_bottom_logic_init_timeout_unit,double >(value_w_units).value() ); };
1704 
1705  template<typename Quantity >
1707  { return Quantity(detect_bottom_logic_init_timeout() * detect_bottom_logic_init_timeout_unit()); };
1708 
1709  boost::units::quantity< detect_bottom_logic_init_timeout_unit,double > detect_bottom_logic_init_timeout_with_units() const
1710  { return detect_bottom_logic_init_timeout_with_units<boost::units::quantity< detect_bottom_logic_init_timeout_unit,double > >(); };
1711 
1712  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type detect_bottom_logic_after_hold_timeout_dimension;
1713 
1714  typedef boost::units::unit<detect_bottom_logic_after_hold_timeout_dimension,boost::units::si::system> detect_bottom_logic_after_hold_timeout_unit;
1715 
1716  template<typename Quantity >
1718  { set_detect_bottom_logic_after_hold_timeout(boost::units::quantity<detect_bottom_logic_after_hold_timeout_unit,double >(value_w_units).value() ); };
1719 
1720  template<typename Quantity >
1722  { return Quantity(detect_bottom_logic_after_hold_timeout() * detect_bottom_logic_after_hold_timeout_unit()); };
1723 
1724  boost::units::quantity< detect_bottom_logic_after_hold_timeout_unit,double > detect_bottom_logic_after_hold_timeout_with_units() const
1725  { return detect_bottom_logic_after_hold_timeout_with_units<boost::units::quantity< detect_bottom_logic_after_hold_timeout_unit,double > >(); };
1726 
1727  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type dive_depth_eps_dimension;
1728 
1729  typedef boost::units::unit<dive_depth_eps_dimension,boost::units::si::system> dive_depth_eps_unit;
1730 
1731  template<typename Quantity >
1732  void set_dive_depth_eps_with_units(Quantity value_w_units)
1733  { set_dive_depth_eps(boost::units::quantity<dive_depth_eps_unit,double >(value_w_units).value() ); };
1734 
1735  template<typename Quantity >
1736  Quantity dive_depth_eps_with_units() const
1737  { return Quantity(dive_depth_eps() * dive_depth_eps_unit()); };
1738 
1739  boost::units::quantity< dive_depth_eps_unit,double > dive_depth_eps_with_units() const
1740  { return dive_depth_eps_with_units<boost::units::quantity< dive_depth_eps_unit,double > >(); };
1741 
1742  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type bottoming_timeout_dimension;
1743 
1744  typedef boost::units::unit<bottoming_timeout_dimension,boost::units::si::system> bottoming_timeout_unit;
1745 
1746  template<typename Quantity >
1747  void set_bottoming_timeout_with_units(Quantity value_w_units)
1748  { set_bottoming_timeout(boost::units::quantity<bottoming_timeout_unit,double >(value_w_units).value() ); };
1749 
1750  template<typename Quantity >
1752  { return Quantity(bottoming_timeout() * bottoming_timeout_unit()); };
1753 
1754  boost::units::quantity< bottoming_timeout_unit,double > bottoming_timeout_with_units() const
1755  { return bottoming_timeout_with_units<boost::units::quantity< bottoming_timeout_unit,double > >(); };
1756 
1757  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type dive_surface_eps_dimension;
1758 
1759  typedef boost::units::unit<dive_surface_eps_dimension,boost::units::si::system> dive_surface_eps_unit;
1760 
1761  template<typename Quantity >
1762  void set_dive_surface_eps_with_units(Quantity value_w_units)
1763  { set_dive_surface_eps(boost::units::quantity<dive_surface_eps_unit,double >(value_w_units).value() ); };
1764 
1765  template<typename Quantity >
1767  { return Quantity(dive_surface_eps() * dive_surface_eps_unit()); };
1768 
1769  boost::units::quantity< dive_surface_eps_unit,double > dive_surface_eps_with_units() const
1770  { return dive_surface_eps_with_units<boost::units::quantity< dive_surface_eps_unit,double > >(); };
1771 
1772  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type bot_not_rising_timeout_dimension;
1773 
1774  typedef boost::units::unit<bot_not_rising_timeout_dimension,boost::units::si::system> bot_not_rising_timeout_unit;
1775 
1776  template<typename Quantity >
1777  void set_bot_not_rising_timeout_with_units(Quantity value_w_units)
1778  { set_bot_not_rising_timeout(boost::units::quantity<bot_not_rising_timeout_unit,double >(value_w_units).value() ); };
1779 
1780  template<typename Quantity >
1782  { return Quantity(bot_not_rising_timeout() * bot_not_rising_timeout_unit()); };
1783 
1784  boost::units::quantity< bot_not_rising_timeout_unit,double > bot_not_rising_timeout_with_units() const
1785  { return bot_not_rising_timeout_with_units<boost::units::quantity< bot_not_rising_timeout_unit,double > >(); };
1786 
1787  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type motor_on_time_increment_dimension;
1788 
1789  typedef boost::units::unit<motor_on_time_increment_dimension,boost::units::si::system> motor_on_time_increment_unit;
1790 
1791  template<typename Quantity >
1792  void set_motor_on_time_increment_with_units(Quantity value_w_units)
1793  { set_motor_on_time_increment(boost::units::quantity<motor_on_time_increment_unit,google::protobuf::int32 >(value_w_units).value() ); };
1794 
1795  template<typename Quantity >
1797  { return Quantity(motor_on_time_increment() * motor_on_time_increment_unit()); };
1798 
1799  boost::units::quantity< motor_on_time_increment_unit,google::protobuf::int32 > motor_on_time_increment_with_units() const
1800  { return motor_on_time_increment_with_units<boost::units::quantity< motor_on_time_increment_unit,google::protobuf::int32 > >(); };
1801 
1802  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type motor_on_time_max_dimension;
1803 
1804  typedef boost::units::unit<motor_on_time_max_dimension,boost::units::si::system> motor_on_time_max_unit;
1805 
1806  template<typename Quantity >
1807  void set_motor_on_time_max_with_units(Quantity value_w_units)
1808  { set_motor_on_time_max(boost::units::quantity<motor_on_time_max_unit,google::protobuf::int32 >(value_w_units).value() ); };
1809 
1810  template<typename Quantity >
1812  { return Quantity(motor_on_time_max() * motor_on_time_max_unit()); };
1813 
1814  boost::units::quantity< motor_on_time_max_unit,google::protobuf::int32 > motor_on_time_max_with_units() const
1815  { return motor_on_time_max_with_units<boost::units::quantity< motor_on_time_max_unit,google::protobuf::int32 > >(); };
1816 
1817  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type pitch_angle_min_check_time_dimension;
1818 
1819  typedef boost::units::unit<pitch_angle_min_check_time_dimension,boost::units::si::system> pitch_angle_min_check_time_unit;
1820 
1821  template<typename Quantity >
1822  void set_pitch_angle_min_check_time_with_units(Quantity value_w_units)
1823  { set_pitch_angle_min_check_time(boost::units::quantity<pitch_angle_min_check_time_unit,double >(value_w_units).value() ); };
1824 
1825  template<typename Quantity >
1827  { return Quantity(pitch_angle_min_check_time() * pitch_angle_min_check_time_unit()); };
1828 
1829  boost::units::quantity< pitch_angle_min_check_time_unit,double > pitch_angle_min_check_time_with_units() const
1830  { return pitch_angle_min_check_time_with_units<boost::units::quantity< pitch_angle_min_check_time_unit,double > >(); };
1831 
1832  typedef boost::units::derived_dimension< boost::units::length_base_dimension,1 >::type dive_eps_to_determine_diving_dimension;
1833 
1834  typedef boost::units::unit<dive_eps_to_determine_diving_dimension,boost::units::si::system> dive_eps_to_determine_diving_unit;
1835 
1836  template<typename Quantity >
1837  void set_dive_eps_to_determine_diving_with_units(Quantity value_w_units)
1838  { set_dive_eps_to_determine_diving(boost::units::quantity<dive_eps_to_determine_diving_unit,double >(value_w_units).value() ); };
1839 
1840  template<typename Quantity >
1842  { return Quantity(dive_eps_to_determine_diving() * dive_eps_to_determine_diving_unit()); };
1843 
1844  boost::units::quantity< dive_eps_to_determine_diving_unit,double > dive_eps_to_determine_diving_with_units() const
1845  { return dive_eps_to_determine_diving_with_units<boost::units::quantity< dive_eps_to_determine_diving_unit,double > >(); };
1846 
1847  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type failed_startup_log_timeout_dimension;
1848 
1849  typedef boost::units::unit<failed_startup_log_timeout_dimension,boost::units::si::system> failed_startup_log_timeout_unit;
1850 
1851  template<typename Quantity >
1852  void set_failed_startup_log_timeout_with_units(Quantity value_w_units)
1853  { set_failed_startup_log_timeout(boost::units::quantity<failed_startup_log_timeout_unit,google::protobuf::int32 >(value_w_units).value() ); };
1854 
1855  template<typename Quantity >
1857  { return Quantity(failed_startup_log_timeout() * failed_startup_log_timeout_unit()); };
1858 
1859  boost::units::quantity< failed_startup_log_timeout_unit,google::protobuf::int32 > failed_startup_log_timeout_with_units() const
1860  { return failed_startup_log_timeout_with_units<boost::units::quantity< failed_startup_log_timeout_unit,google::protobuf::int32 > >(); };
1861 
1862  // @@protoc_insertion_point(class_scope:jaiabot.config.MissionManager)
1863  private:
1864  class _Internal;
1865 
1866  // helper for ByteSizeLong()
1867  size_t RequiredFieldsByteSizeFallback() const;
1868 
1869  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1870  typedef void InternalArenaConstructable_;
1871  typedef void DestructorSkippable_;
1872  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
1873  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1874  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> include_goal_timeout_states_;
1875  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> test_mode_;
1876  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> ignore_error_;
1877  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr data_preoffload_script_;
1878  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr data_postoffload_script_;
1879  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_dir_;
1880  public:
1881  static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> _i_give_permission_to_break_this_code_default_log_staging_dir_;
1882  private:
1883  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_staging_dir_;
1884  public:
1885  static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> _i_give_permission_to_break_this_code_default_log_archive_dir_;
1886  private:
1887  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr log_archive_dir_;
1888  ::goby::middleware::protobuf::AppConfig* app_;
1889  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess_;
1890  ::goby::middleware::protobuf::TransporterConfig* command_sub_cfg_;
1891  ::goby::middleware::protobuf::TransporterConfig* contact_update_sub_cfg_;
1892  ::jaiabot::protobuf::HubInfo* subscribe_to_hub_on_start_;
1893  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* resolve_no_forward_progress_;
1894  ::jaiabot::protobuf::CameraCommand* start_camera_command_;
1895  ::jaiabot::protobuf::CameraCommand* stop_camera_command_;
1896  ::PROTOBUF_NAMESPACE_ID::int32 fleet_id_;
1897  ::PROTOBUF_NAMESPACE_ID::int32 bot_id_;
1898  bool use_goal_timeout_;
1899  bool skip_goal_task_;
1900  bool is_sim_;
1901  ::PROTOBUF_NAMESPACE_ID::uint32 subnet_mask_;
1902  double startup_timeout_;
1903  ::PROTOBUF_NAMESPACE_ID::int32 powered_ascent_motor_on_timeout_;
1904  ::PROTOBUF_NAMESPACE_ID::int32 powered_ascent_motor_off_timeout_;
1905  ::PROTOBUF_NAMESPACE_ID::int32 dive_prep_timeout_;
1906  ::PROTOBUF_NAMESPACE_ID::int32 powered_descent_timeout_;
1907  double detect_bottom_logic_init_timeout_;
1908  double detect_bottom_logic_after_hold_timeout_;
1909  double dive_depth_eps_;
1910  double bottoming_timeout_;
1911  double dive_surface_eps_;
1912  ::PROTOBUF_NAMESPACE_ID::uint32 total_gps_fix_checks_;
1913  ::PROTOBUF_NAMESPACE_ID::uint32 total_gps_degraded_fix_checks_;
1914  double gps_hdop_fix_;
1915  double gps_pdop_fix_;
1916  double gps_after_dive_hdop_fix_;
1917  double gps_after_dive_pdop_fix_;
1918  double min_depth_safety_;
1919  ::PROTOBUF_NAMESPACE_ID::uint32 total_after_dive_gps_fix_checks_;
1920  ::PROTOBUF_NAMESPACE_ID::uint32 goal_timeout_reacquire_gps_attempts_;
1921  double goal_timeout_buffer_factor_;
1922  ::PROTOBUF_NAMESPACE_ID::uint32 tpv_history_max_;
1923  int rc_setpoint_end_;
1924  double bot_not_rising_timeout_;
1925  ::PROTOBUF_NAMESPACE_ID::uint32 imu_restart_seconds_;
1926  ::PROTOBUF_NAMESPACE_ID::int32 motor_on_time_increment_;
1927  double powered_ascent_throttle_;
1928  double powered_ascent_throttle_increment_;
1929  double powered_ascent_throttle_max_;
1930  ::PROTOBUF_NAMESPACE_ID::int32 motor_on_time_max_;
1931  ::PROTOBUF_NAMESPACE_ID::int32 pitch_angle_checks_;
1932  double pitch_to_determine_powered_ascent_vertical_;
1933  double pitch_to_determine_dive_prep_vertical_;
1934  double pitch_angle_min_check_time_;
1935  double dive_eps_to_determine_diving_;
1936  int data_offload_exclude_;
1937  ::PROTOBUF_NAMESPACE_ID::int32 failed_startup_log_timeout_;
1938  double hard_bottom_type_acceleration_;
1939  ::PROTOBUF_NAMESPACE_ID::int32 waypoint_with_no_task_slip_radius_;
1940  ::PROTOBUF_NAMESPACE_ID::int32 waypoint_with_task_slip_radius_;
1941  friend struct ::TableStruct_bin_2fmission_5fmanager_2fconfig_2eproto;
1942 };
1943 // ===================================================================
1944 
1945 
1946 // ===================================================================
1947 
1948 #ifdef __GNUC__
1949  #pragma GCC diagnostic push
1950  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1951 #endif // __GNUC__
1952 // MissionManager_ResolveNoForwardProgress
1953 
1954 // optional int32 resume_timeout = 1 [default = 10, (.dccl.field) = {
1955 inline bool MissionManager_ResolveNoForwardProgress::_internal_has_resume_timeout() const {
1956  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1957  return value;
1958 }
1959 inline bool MissionManager_ResolveNoForwardProgress::has_resume_timeout() const {
1960  return _internal_has_resume_timeout();
1961 }
1962 inline void MissionManager_ResolveNoForwardProgress::clear_resume_timeout() {
1963  resume_timeout_ = 10;
1964  _has_bits_[0] &= ~0x00000004u;
1965 }
1966 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::_internal_resume_timeout() const {
1967  return resume_timeout_;
1968 }
1969 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::resume_timeout() const {
1970  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.ResolveNoForwardProgress.resume_timeout)
1971  return _internal_resume_timeout();
1972 }
1973 inline void MissionManager_ResolveNoForwardProgress::_internal_set_resume_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1974  _has_bits_[0] |= 0x00000004u;
1975  resume_timeout_ = value;
1976 }
1977 inline void MissionManager_ResolveNoForwardProgress::set_resume_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1978  _internal_set_resume_timeout(value);
1979  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.ResolveNoForwardProgress.resume_timeout)
1980 }
1981 
1982 // optional int32 pitch_threshold = 2 [default = 30, (.dccl.field) = {
1983 inline bool MissionManager_ResolveNoForwardProgress::_internal_has_pitch_threshold() const {
1984  bool value = (_has_bits_[0] & 0x00000008u) != 0;
1985  return value;
1986 }
1987 inline bool MissionManager_ResolveNoForwardProgress::has_pitch_threshold() const {
1988  return _internal_has_pitch_threshold();
1989 }
1990 inline void MissionManager_ResolveNoForwardProgress::clear_pitch_threshold() {
1991  pitch_threshold_ = 30;
1992  _has_bits_[0] &= ~0x00000008u;
1993 }
1994 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::_internal_pitch_threshold() const {
1995  return pitch_threshold_;
1996 }
1997 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::pitch_threshold() const {
1998  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.ResolveNoForwardProgress.pitch_threshold)
1999  return _internal_pitch_threshold();
2000 }
2001 inline void MissionManager_ResolveNoForwardProgress::_internal_set_pitch_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
2002  _has_bits_[0] |= 0x00000008u;
2003  pitch_threshold_ = value;
2004 }
2005 inline void MissionManager_ResolveNoForwardProgress::set_pitch_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
2006  _internal_set_pitch_threshold(value);
2007  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.ResolveNoForwardProgress.pitch_threshold)
2008 }
2009 
2010 // optional int32 desired_speed_threshold = 3 [default = 0, (.dccl.field) = {
2011 inline bool MissionManager_ResolveNoForwardProgress::_internal_has_desired_speed_threshold() const {
2012  bool value = (_has_bits_[0] & 0x00000001u) != 0;
2013  return value;
2014 }
2015 inline bool MissionManager_ResolveNoForwardProgress::has_desired_speed_threshold() const {
2016  return _internal_has_desired_speed_threshold();
2017 }
2018 inline void MissionManager_ResolveNoForwardProgress::clear_desired_speed_threshold() {
2019  desired_speed_threshold_ = 0;
2020  _has_bits_[0] &= ~0x00000001u;
2021 }
2022 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::_internal_desired_speed_threshold() const {
2023  return desired_speed_threshold_;
2024 }
2025 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::desired_speed_threshold() const {
2026  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.ResolveNoForwardProgress.desired_speed_threshold)
2027  return _internal_desired_speed_threshold();
2028 }
2029 inline void MissionManager_ResolveNoForwardProgress::_internal_set_desired_speed_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
2030  _has_bits_[0] |= 0x00000001u;
2031  desired_speed_threshold_ = value;
2032 }
2033 inline void MissionManager_ResolveNoForwardProgress::set_desired_speed_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
2034  _internal_set_desired_speed_threshold(value);
2035  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.ResolveNoForwardProgress.desired_speed_threshold)
2036 }
2037 
2038 // optional int32 trigger_timeout = 4 [default = 15, (.dccl.field) = {
2039 inline bool MissionManager_ResolveNoForwardProgress::_internal_has_trigger_timeout() const {
2040  bool value = (_has_bits_[0] & 0x00000002u) != 0;
2041  return value;
2042 }
2043 inline bool MissionManager_ResolveNoForwardProgress::has_trigger_timeout() const {
2044  return _internal_has_trigger_timeout();
2045 }
2046 inline void MissionManager_ResolveNoForwardProgress::clear_trigger_timeout() {
2047  trigger_timeout_ = 15;
2048  _has_bits_[0] &= ~0x00000002u;
2049 }
2050 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::_internal_trigger_timeout() const {
2051  return trigger_timeout_;
2052 }
2053 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager_ResolveNoForwardProgress::trigger_timeout() const {
2054  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.ResolveNoForwardProgress.trigger_timeout)
2055  return _internal_trigger_timeout();
2056 }
2057 inline void MissionManager_ResolveNoForwardProgress::_internal_set_trigger_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2058  _has_bits_[0] |= 0x00000002u;
2059  trigger_timeout_ = value;
2060 }
2061 inline void MissionManager_ResolveNoForwardProgress::set_trigger_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2062  _internal_set_trigger_timeout(value);
2063  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.ResolveNoForwardProgress.trigger_timeout)
2064 }
2065 
2066 // -------------------------------------------------------------------
2067 
2068 // MissionManager
2069 
2070 // optional .goby.middleware.protobuf.AppConfig app = 1;
2071 inline bool MissionManager::_internal_has_app() const {
2072  bool value = (_has_bits_[0] & 0x00000020u) != 0;
2073  PROTOBUF_ASSUME(!value || app_ != nullptr);
2074  return value;
2075 }
2076 inline bool MissionManager::has_app() const {
2077  return _internal_has_app();
2078 }
2079 inline const ::goby::middleware::protobuf::AppConfig& MissionManager::_internal_app() const {
2080  const ::goby::middleware::protobuf::AppConfig* p = app_;
2081  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::AppConfig*>(
2082  &::goby::middleware::protobuf::_AppConfig_default_instance_);
2083 }
2084 inline const ::goby::middleware::protobuf::AppConfig& MissionManager::app() const {
2085  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.app)
2086  return _internal_app();
2087 }
2088 inline void MissionManager::unsafe_arena_set_allocated_app(
2089  ::goby::middleware::protobuf::AppConfig* app) {
2090  if (GetArena() == nullptr) {
2091  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
2092  }
2093  app_ = app;
2094  if (app) {
2095  _has_bits_[0] |= 0x00000020u;
2096  } else {
2097  _has_bits_[0] &= ~0x00000020u;
2098  }
2099  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.app)
2100 }
2101 inline ::goby::middleware::protobuf::AppConfig* MissionManager::release_app() {
2102  auto temp = unsafe_arena_release_app();
2103  if (GetArena() != nullptr) {
2104  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2105  }
2106  return temp;
2107 }
2108 inline ::goby::middleware::protobuf::AppConfig* MissionManager::unsafe_arena_release_app() {
2109  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.app)
2110  _has_bits_[0] &= ~0x00000020u;
2111  ::goby::middleware::protobuf::AppConfig* temp = app_;
2112  app_ = nullptr;
2113  return temp;
2114 }
2115 inline ::goby::middleware::protobuf::AppConfig* MissionManager::_internal_mutable_app() {
2116  _has_bits_[0] |= 0x00000020u;
2117  if (app_ == nullptr) {
2118  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::AppConfig>(GetArena());
2119  app_ = p;
2120  }
2121  return app_;
2122 }
2123 inline ::goby::middleware::protobuf::AppConfig* MissionManager::mutable_app() {
2124  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.app)
2125  return _internal_mutable_app();
2126 }
2127 inline void MissionManager::set_allocated_app(::goby::middleware::protobuf::AppConfig* app) {
2128  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2129  if (message_arena == nullptr) {
2130  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
2131  }
2132  if (app) {
2133  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2134  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app)->GetArena();
2135  if (message_arena != submessage_arena) {
2136  app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2137  message_arena, app, submessage_arena);
2138  }
2139  _has_bits_[0] |= 0x00000020u;
2140  } else {
2141  _has_bits_[0] &= ~0x00000020u;
2142  }
2143  app_ = app;
2144  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.app)
2145 }
2146 
2147 // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
2148 inline bool MissionManager::_internal_has_interprocess() const {
2149  bool value = (_has_bits_[0] & 0x00000040u) != 0;
2150  PROTOBUF_ASSUME(!value || interprocess_ != nullptr);
2151  return value;
2152 }
2153 inline bool MissionManager::has_interprocess() const {
2154  return _internal_has_interprocess();
2155 }
2156 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& MissionManager::_internal_interprocess() const {
2157  const ::goby::zeromq::protobuf::InterProcessPortalConfig* p = interprocess_;
2158  return p != nullptr ? *p : *reinterpret_cast<const ::goby::zeromq::protobuf::InterProcessPortalConfig*>(
2159  &::goby::zeromq::protobuf::_InterProcessPortalConfig_default_instance_);
2160 }
2161 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& MissionManager::interprocess() const {
2162  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.interprocess)
2163  return _internal_interprocess();
2164 }
2165 inline void MissionManager::unsafe_arena_set_allocated_interprocess(
2166  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
2167  if (GetArena() == nullptr) {
2168  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
2169  }
2170  interprocess_ = interprocess;
2171  if (interprocess) {
2172  _has_bits_[0] |= 0x00000040u;
2173  } else {
2174  _has_bits_[0] &= ~0x00000040u;
2175  }
2176  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.interprocess)
2177 }
2178 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* MissionManager::release_interprocess() {
2179  auto temp = unsafe_arena_release_interprocess();
2180  if (GetArena() != nullptr) {
2181  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2182  }
2183  return temp;
2184 }
2185 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* MissionManager::unsafe_arena_release_interprocess() {
2186  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.interprocess)
2187  _has_bits_[0] &= ~0x00000040u;
2188  ::goby::zeromq::protobuf::InterProcessPortalConfig* temp = interprocess_;
2189  interprocess_ = nullptr;
2190  return temp;
2191 }
2192 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* MissionManager::_internal_mutable_interprocess() {
2193  _has_bits_[0] |= 0x00000040u;
2194  if (interprocess_ == nullptr) {
2195  auto* p = CreateMaybeMessage<::goby::zeromq::protobuf::InterProcessPortalConfig>(GetArena());
2196  interprocess_ = p;
2197  }
2198  return interprocess_;
2199 }
2200 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* MissionManager::mutable_interprocess() {
2201  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.interprocess)
2202  return _internal_mutable_interprocess();
2203 }
2204 inline void MissionManager::set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
2205  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2206  if (message_arena == nullptr) {
2207  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
2208  }
2209  if (interprocess) {
2210  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2211  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess)->GetArena();
2212  if (message_arena != submessage_arena) {
2213  interprocess = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2214  message_arena, interprocess, submessage_arena);
2215  }
2216  _has_bits_[0] |= 0x00000040u;
2217  } else {
2218  _has_bits_[0] &= ~0x00000040u;
2219  }
2220  interprocess_ = interprocess;
2221  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.interprocess)
2222 }
2223 
2224 // required int32 fleet_id = 9;
2225 inline bool MissionManager::_internal_has_fleet_id() const {
2226  bool value = (_has_bits_[0] & 0x00002000u) != 0;
2227  return value;
2228 }
2229 inline bool MissionManager::has_fleet_id() const {
2230  return _internal_has_fleet_id();
2231 }
2232 inline void MissionManager::clear_fleet_id() {
2233  fleet_id_ = 0;
2234  _has_bits_[0] &= ~0x00002000u;
2235 }
2236 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_fleet_id() const {
2237  return fleet_id_;
2238 }
2239 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::fleet_id() const {
2240  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.fleet_id)
2241  return _internal_fleet_id();
2242 }
2243 inline void MissionManager::_internal_set_fleet_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
2244  _has_bits_[0] |= 0x00002000u;
2245  fleet_id_ = value;
2246 }
2247 inline void MissionManager::set_fleet_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
2248  _internal_set_fleet_id(value);
2249  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.fleet_id)
2250 }
2251 
2252 // required int32 bot_id = 10;
2253 inline bool MissionManager::_internal_has_bot_id() const {
2254  bool value = (_has_bits_[0] & 0x00004000u) != 0;
2255  return value;
2256 }
2257 inline bool MissionManager::has_bot_id() const {
2258  return _internal_has_bot_id();
2259 }
2260 inline void MissionManager::clear_bot_id() {
2261  bot_id_ = 0;
2262  _has_bits_[0] &= ~0x00004000u;
2263 }
2264 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_bot_id() const {
2265  return bot_id_;
2266 }
2267 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::bot_id() const {
2268  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.bot_id)
2269  return _internal_bot_id();
2270 }
2271 inline void MissionManager::_internal_set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
2272  _has_bits_[0] |= 0x00004000u;
2273  bot_id_ = value;
2274 }
2275 inline void MissionManager::set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
2276  _internal_set_bot_id(value);
2277  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.bot_id)
2278 }
2279 
2280 // required .goby.middleware.protobuf.TransporterConfig command_sub_cfg = 11;
2281 inline bool MissionManager::_internal_has_command_sub_cfg() const {
2282  bool value = (_has_bits_[0] & 0x00000080u) != 0;
2283  PROTOBUF_ASSUME(!value || command_sub_cfg_ != nullptr);
2284  return value;
2285 }
2286 inline bool MissionManager::has_command_sub_cfg() const {
2287  return _internal_has_command_sub_cfg();
2288 }
2289 inline const ::goby::middleware::protobuf::TransporterConfig& MissionManager::_internal_command_sub_cfg() const {
2290  const ::goby::middleware::protobuf::TransporterConfig* p = command_sub_cfg_;
2291  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::TransporterConfig*>(
2292  &::goby::middleware::protobuf::_TransporterConfig_default_instance_);
2293 }
2294 inline const ::goby::middleware::protobuf::TransporterConfig& MissionManager::command_sub_cfg() const {
2295  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.command_sub_cfg)
2296  return _internal_command_sub_cfg();
2297 }
2298 inline void MissionManager::unsafe_arena_set_allocated_command_sub_cfg(
2299  ::goby::middleware::protobuf::TransporterConfig* command_sub_cfg) {
2300  if (GetArena() == nullptr) {
2301  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(command_sub_cfg_);
2302  }
2303  command_sub_cfg_ = command_sub_cfg;
2304  if (command_sub_cfg) {
2305  _has_bits_[0] |= 0x00000080u;
2306  } else {
2307  _has_bits_[0] &= ~0x00000080u;
2308  }
2309  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.command_sub_cfg)
2310 }
2311 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::release_command_sub_cfg() {
2312  auto temp = unsafe_arena_release_command_sub_cfg();
2313  if (GetArena() != nullptr) {
2314  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2315  }
2316  return temp;
2317 }
2318 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::unsafe_arena_release_command_sub_cfg() {
2319  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.command_sub_cfg)
2320  _has_bits_[0] &= ~0x00000080u;
2321  ::goby::middleware::protobuf::TransporterConfig* temp = command_sub_cfg_;
2322  command_sub_cfg_ = nullptr;
2323  return temp;
2324 }
2325 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::_internal_mutable_command_sub_cfg() {
2326  _has_bits_[0] |= 0x00000080u;
2327  if (command_sub_cfg_ == nullptr) {
2328  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::TransporterConfig>(GetArena());
2329  command_sub_cfg_ = p;
2330  }
2331  return command_sub_cfg_;
2332 }
2333 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::mutable_command_sub_cfg() {
2334  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.command_sub_cfg)
2335  return _internal_mutable_command_sub_cfg();
2336 }
2337 inline void MissionManager::set_allocated_command_sub_cfg(::goby::middleware::protobuf::TransporterConfig* command_sub_cfg) {
2338  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2339  if (message_arena == nullptr) {
2340  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(command_sub_cfg_);
2341  }
2342  if (command_sub_cfg) {
2343  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2344  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(command_sub_cfg)->GetArena();
2345  if (message_arena != submessage_arena) {
2346  command_sub_cfg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2347  message_arena, command_sub_cfg, submessage_arena);
2348  }
2349  _has_bits_[0] |= 0x00000080u;
2350  } else {
2351  _has_bits_[0] &= ~0x00000080u;
2352  }
2353  command_sub_cfg_ = command_sub_cfg;
2354  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.command_sub_cfg)
2355 }
2356 
2357 // optional .goby.middleware.protobuf.TransporterConfig contact_update_sub_cfg = 13;
2358 inline bool MissionManager::_internal_has_contact_update_sub_cfg() const {
2359  bool value = (_has_bits_[0] & 0x00000100u) != 0;
2360  PROTOBUF_ASSUME(!value || contact_update_sub_cfg_ != nullptr);
2361  return value;
2362 }
2363 inline bool MissionManager::has_contact_update_sub_cfg() const {
2364  return _internal_has_contact_update_sub_cfg();
2365 }
2366 inline const ::goby::middleware::protobuf::TransporterConfig& MissionManager::_internal_contact_update_sub_cfg() const {
2367  const ::goby::middleware::protobuf::TransporterConfig* p = contact_update_sub_cfg_;
2368  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::TransporterConfig*>(
2369  &::goby::middleware::protobuf::_TransporterConfig_default_instance_);
2370 }
2371 inline const ::goby::middleware::protobuf::TransporterConfig& MissionManager::contact_update_sub_cfg() const {
2372  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.contact_update_sub_cfg)
2373  return _internal_contact_update_sub_cfg();
2374 }
2375 inline void MissionManager::unsafe_arena_set_allocated_contact_update_sub_cfg(
2376  ::goby::middleware::protobuf::TransporterConfig* contact_update_sub_cfg) {
2377  if (GetArena() == nullptr) {
2378  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(contact_update_sub_cfg_);
2379  }
2380  contact_update_sub_cfg_ = contact_update_sub_cfg;
2381  if (contact_update_sub_cfg) {
2382  _has_bits_[0] |= 0x00000100u;
2383  } else {
2384  _has_bits_[0] &= ~0x00000100u;
2385  }
2386  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.contact_update_sub_cfg)
2387 }
2388 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::release_contact_update_sub_cfg() {
2389  auto temp = unsafe_arena_release_contact_update_sub_cfg();
2390  if (GetArena() != nullptr) {
2391  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2392  }
2393  return temp;
2394 }
2395 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::unsafe_arena_release_contact_update_sub_cfg() {
2396  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.contact_update_sub_cfg)
2397  _has_bits_[0] &= ~0x00000100u;
2398  ::goby::middleware::protobuf::TransporterConfig* temp = contact_update_sub_cfg_;
2399  contact_update_sub_cfg_ = nullptr;
2400  return temp;
2401 }
2402 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::_internal_mutable_contact_update_sub_cfg() {
2403  _has_bits_[0] |= 0x00000100u;
2404  if (contact_update_sub_cfg_ == nullptr) {
2405  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::TransporterConfig>(GetArena());
2406  contact_update_sub_cfg_ = p;
2407  }
2408  return contact_update_sub_cfg_;
2409 }
2410 inline ::goby::middleware::protobuf::TransporterConfig* MissionManager::mutable_contact_update_sub_cfg() {
2411  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.contact_update_sub_cfg)
2412  return _internal_mutable_contact_update_sub_cfg();
2413 }
2414 inline void MissionManager::set_allocated_contact_update_sub_cfg(::goby::middleware::protobuf::TransporterConfig* contact_update_sub_cfg) {
2415  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2416  if (message_arena == nullptr) {
2417  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(contact_update_sub_cfg_);
2418  }
2419  if (contact_update_sub_cfg) {
2420  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2421  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(contact_update_sub_cfg)->GetArena();
2422  if (message_arena != submessage_arena) {
2423  contact_update_sub_cfg = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2424  message_arena, contact_update_sub_cfg, submessage_arena);
2425  }
2426  _has_bits_[0] |= 0x00000100u;
2427  } else {
2428  _has_bits_[0] &= ~0x00000100u;
2429  }
2430  contact_update_sub_cfg_ = contact_update_sub_cfg;
2431  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.contact_update_sub_cfg)
2432 }
2433 
2434 // optional double startup_timeout = 12 [default = 120, (.dccl.field) = {
2435 inline bool MissionManager::_internal_has_startup_timeout() const {
2436  bool value = (_has_bits_[0] & 0x00080000u) != 0;
2437  return value;
2438 }
2439 inline bool MissionManager::has_startup_timeout() const {
2440  return _internal_has_startup_timeout();
2441 }
2442 inline void MissionManager::clear_startup_timeout() {
2443  startup_timeout_ = 120;
2444  _has_bits_[0] &= ~0x00080000u;
2445 }
2446 inline double MissionManager::_internal_startup_timeout() const {
2447  return startup_timeout_;
2448 }
2449 inline double MissionManager::startup_timeout() const {
2450  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.startup_timeout)
2451  return _internal_startup_timeout();
2452 }
2453 inline void MissionManager::_internal_set_startup_timeout(double value) {
2454  _has_bits_[0] |= 0x00080000u;
2455  startup_timeout_ = value;
2456 }
2457 inline void MissionManager::set_startup_timeout(double value) {
2458  _internal_set_startup_timeout(value);
2459  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.startup_timeout)
2460 }
2461 
2462 // optional int32 powered_ascent_motor_on_timeout = 25 [default = 5, (.dccl.field) = {
2463 inline bool MissionManager::_internal_has_powered_ascent_motor_on_timeout() const {
2464  bool value = (_has_bits_[0] & 0x00100000u) != 0;
2465  return value;
2466 }
2467 inline bool MissionManager::has_powered_ascent_motor_on_timeout() const {
2468  return _internal_has_powered_ascent_motor_on_timeout();
2469 }
2470 inline void MissionManager::clear_powered_ascent_motor_on_timeout() {
2471  powered_ascent_motor_on_timeout_ = 5;
2472  _has_bits_[0] &= ~0x00100000u;
2473 }
2474 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_powered_ascent_motor_on_timeout() const {
2475  return powered_ascent_motor_on_timeout_;
2476 }
2477 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::powered_ascent_motor_on_timeout() const {
2478  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_ascent_motor_on_timeout)
2479  return _internal_powered_ascent_motor_on_timeout();
2480 }
2481 inline void MissionManager::_internal_set_powered_ascent_motor_on_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2482  _has_bits_[0] |= 0x00100000u;
2483  powered_ascent_motor_on_timeout_ = value;
2484 }
2485 inline void MissionManager::set_powered_ascent_motor_on_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2486  _internal_set_powered_ascent_motor_on_timeout(value);
2487  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_ascent_motor_on_timeout)
2488 }
2489 
2490 // optional int32 powered_ascent_motor_off_timeout = 26 [default = 2, (.dccl.field) = {
2491 inline bool MissionManager::_internal_has_powered_ascent_motor_off_timeout() const {
2492  bool value = (_has_bits_[0] & 0x00200000u) != 0;
2493  return value;
2494 }
2495 inline bool MissionManager::has_powered_ascent_motor_off_timeout() const {
2496  return _internal_has_powered_ascent_motor_off_timeout();
2497 }
2498 inline void MissionManager::clear_powered_ascent_motor_off_timeout() {
2499  powered_ascent_motor_off_timeout_ = 2;
2500  _has_bits_[0] &= ~0x00200000u;
2501 }
2502 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_powered_ascent_motor_off_timeout() const {
2503  return powered_ascent_motor_off_timeout_;
2504 }
2505 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::powered_ascent_motor_off_timeout() const {
2506  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_ascent_motor_off_timeout)
2507  return _internal_powered_ascent_motor_off_timeout();
2508 }
2509 inline void MissionManager::_internal_set_powered_ascent_motor_off_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2510  _has_bits_[0] |= 0x00200000u;
2511  powered_ascent_motor_off_timeout_ = value;
2512 }
2513 inline void MissionManager::set_powered_ascent_motor_off_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2514  _internal_set_powered_ascent_motor_off_timeout(value);
2515  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_ascent_motor_off_timeout)
2516 }
2517 
2518 // optional int32 dive_prep_timeout = 27 [default = 10, (.dccl.field) = {
2519 inline bool MissionManager::_internal_has_dive_prep_timeout() const {
2520  bool value = (_has_bits_[0] & 0x00400000u) != 0;
2521  return value;
2522 }
2523 inline bool MissionManager::has_dive_prep_timeout() const {
2524  return _internal_has_dive_prep_timeout();
2525 }
2526 inline void MissionManager::clear_dive_prep_timeout() {
2527  dive_prep_timeout_ = 10;
2528  _has_bits_[0] &= ~0x00400000u;
2529 }
2530 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_dive_prep_timeout() const {
2531  return dive_prep_timeout_;
2532 }
2533 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::dive_prep_timeout() const {
2534  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.dive_prep_timeout)
2535  return _internal_dive_prep_timeout();
2536 }
2537 inline void MissionManager::_internal_set_dive_prep_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2538  _has_bits_[0] |= 0x00400000u;
2539  dive_prep_timeout_ = value;
2540 }
2541 inline void MissionManager::set_dive_prep_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2542  _internal_set_dive_prep_timeout(value);
2543  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.dive_prep_timeout)
2544 }
2545 
2546 // optional int32 powered_descent_timeout = 28 [default = 100, (.dccl.field) = {
2547 inline bool MissionManager::_internal_has_powered_descent_timeout() const {
2548  bool value = (_has_bits_[0] & 0x00800000u) != 0;
2549  return value;
2550 }
2551 inline bool MissionManager::has_powered_descent_timeout() const {
2552  return _internal_has_powered_descent_timeout();
2553 }
2554 inline void MissionManager::clear_powered_descent_timeout() {
2555  powered_descent_timeout_ = 100;
2556  _has_bits_[0] &= ~0x00800000u;
2557 }
2558 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_powered_descent_timeout() const {
2559  return powered_descent_timeout_;
2560 }
2561 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::powered_descent_timeout() const {
2562  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_descent_timeout)
2563  return _internal_powered_descent_timeout();
2564 }
2565 inline void MissionManager::_internal_set_powered_descent_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2566  _has_bits_[0] |= 0x00800000u;
2567  powered_descent_timeout_ = value;
2568 }
2569 inline void MissionManager::set_powered_descent_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
2570  _internal_set_powered_descent_timeout(value);
2571  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_descent_timeout)
2572 }
2573 
2574 // optional double detect_bottom_logic_init_timeout = 29 [default = 15, (.dccl.field) = {
2575 inline bool MissionManager::_internal_has_detect_bottom_logic_init_timeout() const {
2576  bool value = (_has_bits_[0] & 0x01000000u) != 0;
2577  return value;
2578 }
2579 inline bool MissionManager::has_detect_bottom_logic_init_timeout() const {
2580  return _internal_has_detect_bottom_logic_init_timeout();
2581 }
2582 inline void MissionManager::clear_detect_bottom_logic_init_timeout() {
2583  detect_bottom_logic_init_timeout_ = 15;
2584  _has_bits_[0] &= ~0x01000000u;
2585 }
2586 inline double MissionManager::_internal_detect_bottom_logic_init_timeout() const {
2587  return detect_bottom_logic_init_timeout_;
2588 }
2589 inline double MissionManager::detect_bottom_logic_init_timeout() const {
2590  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.detect_bottom_logic_init_timeout)
2591  return _internal_detect_bottom_logic_init_timeout();
2592 }
2593 inline void MissionManager::_internal_set_detect_bottom_logic_init_timeout(double value) {
2594  _has_bits_[0] |= 0x01000000u;
2595  detect_bottom_logic_init_timeout_ = value;
2596 }
2597 inline void MissionManager::set_detect_bottom_logic_init_timeout(double value) {
2598  _internal_set_detect_bottom_logic_init_timeout(value);
2599  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.detect_bottom_logic_init_timeout)
2600 }
2601 
2602 // optional double detect_bottom_logic_after_hold_timeout = 30 [default = 5, (.dccl.field) = {
2603 inline bool MissionManager::_internal_has_detect_bottom_logic_after_hold_timeout() const {
2604  bool value = (_has_bits_[0] & 0x02000000u) != 0;
2605  return value;
2606 }
2607 inline bool MissionManager::has_detect_bottom_logic_after_hold_timeout() const {
2608  return _internal_has_detect_bottom_logic_after_hold_timeout();
2609 }
2610 inline void MissionManager::clear_detect_bottom_logic_after_hold_timeout() {
2611  detect_bottom_logic_after_hold_timeout_ = 5;
2612  _has_bits_[0] &= ~0x02000000u;
2613 }
2614 inline double MissionManager::_internal_detect_bottom_logic_after_hold_timeout() const {
2615  return detect_bottom_logic_after_hold_timeout_;
2616 }
2617 inline double MissionManager::detect_bottom_logic_after_hold_timeout() const {
2618  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.detect_bottom_logic_after_hold_timeout)
2619  return _internal_detect_bottom_logic_after_hold_timeout();
2620 }
2621 inline void MissionManager::_internal_set_detect_bottom_logic_after_hold_timeout(double value) {
2622  _has_bits_[0] |= 0x02000000u;
2623  detect_bottom_logic_after_hold_timeout_ = value;
2624 }
2625 inline void MissionManager::set_detect_bottom_logic_after_hold_timeout(double value) {
2626  _internal_set_detect_bottom_logic_after_hold_timeout(value);
2627  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.detect_bottom_logic_after_hold_timeout)
2628 }
2629 
2630 // optional double dive_depth_eps = 31 [default = 0.1, (.dccl.field) = {
2631 inline bool MissionManager::_internal_has_dive_depth_eps() const {
2632  bool value = (_has_bits_[0] & 0x04000000u) != 0;
2633  return value;
2634 }
2635 inline bool MissionManager::has_dive_depth_eps() const {
2636  return _internal_has_dive_depth_eps();
2637 }
2638 inline void MissionManager::clear_dive_depth_eps() {
2639  dive_depth_eps_ = 0.1;
2640  _has_bits_[0] &= ~0x04000000u;
2641 }
2642 inline double MissionManager::_internal_dive_depth_eps() const {
2643  return dive_depth_eps_;
2644 }
2645 inline double MissionManager::dive_depth_eps() const {
2646  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.dive_depth_eps)
2647  return _internal_dive_depth_eps();
2648 }
2649 inline void MissionManager::_internal_set_dive_depth_eps(double value) {
2650  _has_bits_[0] |= 0x04000000u;
2651  dive_depth_eps_ = value;
2652 }
2653 inline void MissionManager::set_dive_depth_eps(double value) {
2654  _internal_set_dive_depth_eps(value);
2655  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.dive_depth_eps)
2656 }
2657 
2658 // optional double bottoming_timeout = 32 [default = 3, (.dccl.field) = {
2659 inline bool MissionManager::_internal_has_bottoming_timeout() const {
2660  bool value = (_has_bits_[0] & 0x08000000u) != 0;
2661  return value;
2662 }
2663 inline bool MissionManager::has_bottoming_timeout() const {
2664  return _internal_has_bottoming_timeout();
2665 }
2666 inline void MissionManager::clear_bottoming_timeout() {
2667  bottoming_timeout_ = 3;
2668  _has_bits_[0] &= ~0x08000000u;
2669 }
2670 inline double MissionManager::_internal_bottoming_timeout() const {
2671  return bottoming_timeout_;
2672 }
2673 inline double MissionManager::bottoming_timeout() const {
2674  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.bottoming_timeout)
2675  return _internal_bottoming_timeout();
2676 }
2677 inline void MissionManager::_internal_set_bottoming_timeout(double value) {
2678  _has_bits_[0] |= 0x08000000u;
2679  bottoming_timeout_ = value;
2680 }
2681 inline void MissionManager::set_bottoming_timeout(double value) {
2682  _internal_set_bottoming_timeout(value);
2683  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.bottoming_timeout)
2684 }
2685 
2686 // optional double dive_surface_eps = 33 [default = 0.75, (.dccl.field) = {
2687 inline bool MissionManager::_internal_has_dive_surface_eps() const {
2688  bool value = (_has_bits_[0] & 0x10000000u) != 0;
2689  return value;
2690 }
2691 inline bool MissionManager::has_dive_surface_eps() const {
2692  return _internal_has_dive_surface_eps();
2693 }
2694 inline void MissionManager::clear_dive_surface_eps() {
2695  dive_surface_eps_ = 0.75;
2696  _has_bits_[0] &= ~0x10000000u;
2697 }
2698 inline double MissionManager::_internal_dive_surface_eps() const {
2699  return dive_surface_eps_;
2700 }
2701 inline double MissionManager::dive_surface_eps() const {
2702  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.dive_surface_eps)
2703  return _internal_dive_surface_eps();
2704 }
2705 inline void MissionManager::_internal_set_dive_surface_eps(double value) {
2706  _has_bits_[0] |= 0x10000000u;
2707  dive_surface_eps_ = value;
2708 }
2709 inline void MissionManager::set_dive_surface_eps(double value) {
2710  _internal_set_dive_surface_eps(value);
2711  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.dive_surface_eps)
2712 }
2713 
2714 // optional uint32 total_gps_fix_checks = 34 [default = 10];
2715 inline bool MissionManager::_internal_has_total_gps_fix_checks() const {
2716  bool value = (_has_bits_[0] & 0x20000000u) != 0;
2717  return value;
2718 }
2719 inline bool MissionManager::has_total_gps_fix_checks() const {
2720  return _internal_has_total_gps_fix_checks();
2721 }
2722 inline void MissionManager::clear_total_gps_fix_checks() {
2723  total_gps_fix_checks_ = 10u;
2724  _has_bits_[0] &= ~0x20000000u;
2725 }
2726 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_total_gps_fix_checks() const {
2727  return total_gps_fix_checks_;
2728 }
2729 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::total_gps_fix_checks() const {
2730  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.total_gps_fix_checks)
2731  return _internal_total_gps_fix_checks();
2732 }
2733 inline void MissionManager::_internal_set_total_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2734  _has_bits_[0] |= 0x20000000u;
2735  total_gps_fix_checks_ = value;
2736 }
2737 inline void MissionManager::set_total_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2738  _internal_set_total_gps_fix_checks(value);
2739  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.total_gps_fix_checks)
2740 }
2741 
2742 // optional uint32 total_gps_degraded_fix_checks = 35 [default = 2];
2743 inline bool MissionManager::_internal_has_total_gps_degraded_fix_checks() const {
2744  bool value = (_has_bits_[0] & 0x40000000u) != 0;
2745  return value;
2746 }
2747 inline bool MissionManager::has_total_gps_degraded_fix_checks() const {
2748  return _internal_has_total_gps_degraded_fix_checks();
2749 }
2750 inline void MissionManager::clear_total_gps_degraded_fix_checks() {
2751  total_gps_degraded_fix_checks_ = 2u;
2752  _has_bits_[0] &= ~0x40000000u;
2753 }
2754 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_total_gps_degraded_fix_checks() const {
2755  return total_gps_degraded_fix_checks_;
2756 }
2757 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::total_gps_degraded_fix_checks() const {
2758  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.total_gps_degraded_fix_checks)
2759  return _internal_total_gps_degraded_fix_checks();
2760 }
2761 inline void MissionManager::_internal_set_total_gps_degraded_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2762  _has_bits_[0] |= 0x40000000u;
2763  total_gps_degraded_fix_checks_ = value;
2764 }
2765 inline void MissionManager::set_total_gps_degraded_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2766  _internal_set_total_gps_degraded_fix_checks(value);
2767  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.total_gps_degraded_fix_checks)
2768 }
2769 
2770 // optional double gps_hdop_fix = 36 [default = 1.3];
2771 inline bool MissionManager::_internal_has_gps_hdop_fix() const {
2772  bool value = (_has_bits_[0] & 0x80000000u) != 0;
2773  return value;
2774 }
2775 inline bool MissionManager::has_gps_hdop_fix() const {
2776  return _internal_has_gps_hdop_fix();
2777 }
2778 inline void MissionManager::clear_gps_hdop_fix() {
2779  gps_hdop_fix_ = 1.3;
2780  _has_bits_[0] &= ~0x80000000u;
2781 }
2782 inline double MissionManager::_internal_gps_hdop_fix() const {
2783  return gps_hdop_fix_;
2784 }
2785 inline double MissionManager::gps_hdop_fix() const {
2786  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.gps_hdop_fix)
2787  return _internal_gps_hdop_fix();
2788 }
2789 inline void MissionManager::_internal_set_gps_hdop_fix(double value) {
2790  _has_bits_[0] |= 0x80000000u;
2791  gps_hdop_fix_ = value;
2792 }
2793 inline void MissionManager::set_gps_hdop_fix(double value) {
2794  _internal_set_gps_hdop_fix(value);
2795  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.gps_hdop_fix)
2796 }
2797 
2798 // optional double gps_pdop_fix = 37 [default = 2.2];
2799 inline bool MissionManager::_internal_has_gps_pdop_fix() const {
2800  bool value = (_has_bits_[1] & 0x00000001u) != 0;
2801  return value;
2802 }
2803 inline bool MissionManager::has_gps_pdop_fix() const {
2804  return _internal_has_gps_pdop_fix();
2805 }
2806 inline void MissionManager::clear_gps_pdop_fix() {
2807  gps_pdop_fix_ = 2.2;
2808  _has_bits_[1] &= ~0x00000001u;
2809 }
2810 inline double MissionManager::_internal_gps_pdop_fix() const {
2811  return gps_pdop_fix_;
2812 }
2813 inline double MissionManager::gps_pdop_fix() const {
2814  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.gps_pdop_fix)
2815  return _internal_gps_pdop_fix();
2816 }
2817 inline void MissionManager::_internal_set_gps_pdop_fix(double value) {
2818  _has_bits_[1] |= 0x00000001u;
2819  gps_pdop_fix_ = value;
2820 }
2821 inline void MissionManager::set_gps_pdop_fix(double value) {
2822  _internal_set_gps_pdop_fix(value);
2823  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.gps_pdop_fix)
2824 }
2825 
2826 // optional uint32 total_after_dive_gps_fix_checks = 38 [default = 15];
2827 inline bool MissionManager::_internal_has_total_after_dive_gps_fix_checks() const {
2828  bool value = (_has_bits_[1] & 0x00000010u) != 0;
2829  return value;
2830 }
2831 inline bool MissionManager::has_total_after_dive_gps_fix_checks() const {
2832  return _internal_has_total_after_dive_gps_fix_checks();
2833 }
2834 inline void MissionManager::clear_total_after_dive_gps_fix_checks() {
2835  total_after_dive_gps_fix_checks_ = 15u;
2836  _has_bits_[1] &= ~0x00000010u;
2837 }
2838 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_total_after_dive_gps_fix_checks() const {
2839  return total_after_dive_gps_fix_checks_;
2840 }
2841 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::total_after_dive_gps_fix_checks() const {
2842  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.total_after_dive_gps_fix_checks)
2843  return _internal_total_after_dive_gps_fix_checks();
2844 }
2845 inline void MissionManager::_internal_set_total_after_dive_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2846  _has_bits_[1] |= 0x00000010u;
2847  total_after_dive_gps_fix_checks_ = value;
2848 }
2849 inline void MissionManager::set_total_after_dive_gps_fix_checks(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2850  _internal_set_total_after_dive_gps_fix_checks(value);
2851  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.total_after_dive_gps_fix_checks)
2852 }
2853 
2854 // optional double gps_after_dive_hdop_fix = 39 [default = 1.3];
2855 inline bool MissionManager::_internal_has_gps_after_dive_hdop_fix() const {
2856  bool value = (_has_bits_[1] & 0x00000002u) != 0;
2857  return value;
2858 }
2859 inline bool MissionManager::has_gps_after_dive_hdop_fix() const {
2860  return _internal_has_gps_after_dive_hdop_fix();
2861 }
2862 inline void MissionManager::clear_gps_after_dive_hdop_fix() {
2863  gps_after_dive_hdop_fix_ = 1.3;
2864  _has_bits_[1] &= ~0x00000002u;
2865 }
2866 inline double MissionManager::_internal_gps_after_dive_hdop_fix() const {
2867  return gps_after_dive_hdop_fix_;
2868 }
2869 inline double MissionManager::gps_after_dive_hdop_fix() const {
2870  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.gps_after_dive_hdop_fix)
2871  return _internal_gps_after_dive_hdop_fix();
2872 }
2873 inline void MissionManager::_internal_set_gps_after_dive_hdop_fix(double value) {
2874  _has_bits_[1] |= 0x00000002u;
2875  gps_after_dive_hdop_fix_ = value;
2876 }
2877 inline void MissionManager::set_gps_after_dive_hdop_fix(double value) {
2878  _internal_set_gps_after_dive_hdop_fix(value);
2879  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.gps_after_dive_hdop_fix)
2880 }
2881 
2882 // optional double gps_after_dive_pdop_fix = 40 [default = 2.2];
2883 inline bool MissionManager::_internal_has_gps_after_dive_pdop_fix() const {
2884  bool value = (_has_bits_[1] & 0x00000004u) != 0;
2885  return value;
2886 }
2887 inline bool MissionManager::has_gps_after_dive_pdop_fix() const {
2888  return _internal_has_gps_after_dive_pdop_fix();
2889 }
2890 inline void MissionManager::clear_gps_after_dive_pdop_fix() {
2891  gps_after_dive_pdop_fix_ = 2.2;
2892  _has_bits_[1] &= ~0x00000004u;
2893 }
2894 inline double MissionManager::_internal_gps_after_dive_pdop_fix() const {
2895  return gps_after_dive_pdop_fix_;
2896 }
2897 inline double MissionManager::gps_after_dive_pdop_fix() const {
2898  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.gps_after_dive_pdop_fix)
2899  return _internal_gps_after_dive_pdop_fix();
2900 }
2901 inline void MissionManager::_internal_set_gps_after_dive_pdop_fix(double value) {
2902  _has_bits_[1] |= 0x00000004u;
2903  gps_after_dive_pdop_fix_ = value;
2904 }
2905 inline void MissionManager::set_gps_after_dive_pdop_fix(double value) {
2906  _internal_set_gps_after_dive_pdop_fix(value);
2907  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.gps_after_dive_pdop_fix)
2908 }
2909 
2910 // optional double min_depth_safety = 41 [default = -1];
2911 inline bool MissionManager::_internal_has_min_depth_safety() const {
2912  bool value = (_has_bits_[1] & 0x00000008u) != 0;
2913  return value;
2914 }
2915 inline bool MissionManager::has_min_depth_safety() const {
2916  return _internal_has_min_depth_safety();
2917 }
2918 inline void MissionManager::clear_min_depth_safety() {
2919  min_depth_safety_ = -1;
2920  _has_bits_[1] &= ~0x00000008u;
2921 }
2922 inline double MissionManager::_internal_min_depth_safety() const {
2923  return min_depth_safety_;
2924 }
2925 inline double MissionManager::min_depth_safety() const {
2926  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.min_depth_safety)
2927  return _internal_min_depth_safety();
2928 }
2929 inline void MissionManager::_internal_set_min_depth_safety(double value) {
2930  _has_bits_[1] |= 0x00000008u;
2931  min_depth_safety_ = value;
2932 }
2933 inline void MissionManager::set_min_depth_safety(double value) {
2934  _internal_set_min_depth_safety(value);
2935  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.min_depth_safety)
2936 }
2937 
2938 // optional double goal_timeout_buffer_factor = 44 [default = 1];
2939 inline bool MissionManager::_internal_has_goal_timeout_buffer_factor() const {
2940  bool value = (_has_bits_[1] & 0x00000040u) != 0;
2941  return value;
2942 }
2943 inline bool MissionManager::has_goal_timeout_buffer_factor() const {
2944  return _internal_has_goal_timeout_buffer_factor();
2945 }
2946 inline void MissionManager::clear_goal_timeout_buffer_factor() {
2947  goal_timeout_buffer_factor_ = 1;
2948  _has_bits_[1] &= ~0x00000040u;
2949 }
2950 inline double MissionManager::_internal_goal_timeout_buffer_factor() const {
2951  return goal_timeout_buffer_factor_;
2952 }
2953 inline double MissionManager::goal_timeout_buffer_factor() const {
2954  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.goal_timeout_buffer_factor)
2955  return _internal_goal_timeout_buffer_factor();
2956 }
2957 inline void MissionManager::_internal_set_goal_timeout_buffer_factor(double value) {
2958  _has_bits_[1] |= 0x00000040u;
2959  goal_timeout_buffer_factor_ = value;
2960 }
2961 inline void MissionManager::set_goal_timeout_buffer_factor(double value) {
2962  _internal_set_goal_timeout_buffer_factor(value);
2963  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.goal_timeout_buffer_factor)
2964 }
2965 
2966 // optional uint32 goal_timeout_reacquire_gps_attempts = 45 [default = 2];
2967 inline bool MissionManager::_internal_has_goal_timeout_reacquire_gps_attempts() const {
2968  bool value = (_has_bits_[1] & 0x00000020u) != 0;
2969  return value;
2970 }
2971 inline bool MissionManager::has_goal_timeout_reacquire_gps_attempts() const {
2972  return _internal_has_goal_timeout_reacquire_gps_attempts();
2973 }
2974 inline void MissionManager::clear_goal_timeout_reacquire_gps_attempts() {
2975  goal_timeout_reacquire_gps_attempts_ = 2u;
2976  _has_bits_[1] &= ~0x00000020u;
2977 }
2978 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_goal_timeout_reacquire_gps_attempts() const {
2979  return goal_timeout_reacquire_gps_attempts_;
2980 }
2981 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::goal_timeout_reacquire_gps_attempts() const {
2982  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.goal_timeout_reacquire_gps_attempts)
2983  return _internal_goal_timeout_reacquire_gps_attempts();
2984 }
2985 inline void MissionManager::_internal_set_goal_timeout_reacquire_gps_attempts(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2986  _has_bits_[1] |= 0x00000020u;
2987  goal_timeout_reacquire_gps_attempts_ = value;
2988 }
2989 inline void MissionManager::set_goal_timeout_reacquire_gps_attempts(::PROTOBUF_NAMESPACE_ID::uint32 value) {
2990  _internal_set_goal_timeout_reacquire_gps_attempts(value);
2991  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.goal_timeout_reacquire_gps_attempts)
2992 }
2993 
2994 // optional uint32 tpv_history_max = 46 [default = 15];
2995 inline bool MissionManager::_internal_has_tpv_history_max() const {
2996  bool value = (_has_bits_[1] & 0x00000080u) != 0;
2997  return value;
2998 }
2999 inline bool MissionManager::has_tpv_history_max() const {
3000  return _internal_has_tpv_history_max();
3001 }
3002 inline void MissionManager::clear_tpv_history_max() {
3003  tpv_history_max_ = 15u;
3004  _has_bits_[1] &= ~0x00000080u;
3005 }
3006 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_tpv_history_max() const {
3007  return tpv_history_max_;
3008 }
3009 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::tpv_history_max() const {
3010  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.tpv_history_max)
3011  return _internal_tpv_history_max();
3012 }
3013 inline void MissionManager::_internal_set_tpv_history_max(::PROTOBUF_NAMESPACE_ID::uint32 value) {
3014  _has_bits_[1] |= 0x00000080u;
3015  tpv_history_max_ = value;
3016 }
3017 inline void MissionManager::set_tpv_history_max(::PROTOBUF_NAMESPACE_ID::uint32 value) {
3018  _internal_set_tpv_history_max(value);
3019  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.tpv_history_max)
3020 }
3021 
3022 // optional bool use_goal_timeout = 47 [default = false];
3023 inline bool MissionManager::_internal_has_use_goal_timeout() const {
3024  bool value = (_has_bits_[0] & 0x00008000u) != 0;
3025  return value;
3026 }
3027 inline bool MissionManager::has_use_goal_timeout() const {
3028  return _internal_has_use_goal_timeout();
3029 }
3030 inline void MissionManager::clear_use_goal_timeout() {
3031  use_goal_timeout_ = false;
3032  _has_bits_[0] &= ~0x00008000u;
3033 }
3034 inline bool MissionManager::_internal_use_goal_timeout() const {
3035  return use_goal_timeout_;
3036 }
3037 inline bool MissionManager::use_goal_timeout() const {
3038  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.use_goal_timeout)
3039  return _internal_use_goal_timeout();
3040 }
3041 inline void MissionManager::_internal_set_use_goal_timeout(bool value) {
3042  _has_bits_[0] |= 0x00008000u;
3043  use_goal_timeout_ = value;
3044 }
3045 inline void MissionManager::set_use_goal_timeout(bool value) {
3046  _internal_set_use_goal_timeout(value);
3047  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.use_goal_timeout)
3048 }
3049 
3050 // optional bool skip_goal_task = 48 [default = false];
3051 inline bool MissionManager::_internal_has_skip_goal_task() const {
3052  bool value = (_has_bits_[0] & 0x00010000u) != 0;
3053  return value;
3054 }
3055 inline bool MissionManager::has_skip_goal_task() const {
3056  return _internal_has_skip_goal_task();
3057 }
3058 inline void MissionManager::clear_skip_goal_task() {
3059  skip_goal_task_ = false;
3060  _has_bits_[0] &= ~0x00010000u;
3061 }
3062 inline bool MissionManager::_internal_skip_goal_task() const {
3063  return skip_goal_task_;
3064 }
3065 inline bool MissionManager::skip_goal_task() const {
3066  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.skip_goal_task)
3067  return _internal_skip_goal_task();
3068 }
3069 inline void MissionManager::_internal_set_skip_goal_task(bool value) {
3070  _has_bits_[0] |= 0x00010000u;
3071  skip_goal_task_ = value;
3072 }
3073 inline void MissionManager::set_skip_goal_task(bool value) {
3074  _internal_set_skip_goal_task(value);
3075  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.skip_goal_task)
3076 }
3077 
3078 // repeated .jaiabot.protobuf.MissionState include_goal_timeout_states = 49;
3079 inline int MissionManager::_internal_include_goal_timeout_states_size() const {
3080  return include_goal_timeout_states_.size();
3081 }
3082 inline int MissionManager::include_goal_timeout_states_size() const {
3083  return _internal_include_goal_timeout_states_size();
3084 }
3085 inline void MissionManager::clear_include_goal_timeout_states() {
3086  include_goal_timeout_states_.Clear();
3087 }
3088 inline ::jaiabot::protobuf::MissionState MissionManager::_internal_include_goal_timeout_states(int index) const {
3089  return static_cast< ::jaiabot::protobuf::MissionState >(include_goal_timeout_states_.Get(index));
3090 }
3091 inline ::jaiabot::protobuf::MissionState MissionManager::include_goal_timeout_states(int index) const {
3092  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.include_goal_timeout_states)
3093  return _internal_include_goal_timeout_states(index);
3094 }
3095 inline void MissionManager::set_include_goal_timeout_states(int index, ::jaiabot::protobuf::MissionState value) {
3096  assert(::jaiabot::protobuf::MissionState_IsValid(value));
3097  include_goal_timeout_states_.Set(index, value);
3098  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.include_goal_timeout_states)
3099 }
3100 inline void MissionManager::_internal_add_include_goal_timeout_states(::jaiabot::protobuf::MissionState value) {
3101  assert(::jaiabot::protobuf::MissionState_IsValid(value));
3102  include_goal_timeout_states_.Add(value);
3103 }
3104 inline void MissionManager::add_include_goal_timeout_states(::jaiabot::protobuf::MissionState value) {
3105  // @@protoc_insertion_point(field_add:jaiabot.config.MissionManager.include_goal_timeout_states)
3106  _internal_add_include_goal_timeout_states(value);
3107 }
3108 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
3109 MissionManager::include_goal_timeout_states() const {
3110  // @@protoc_insertion_point(field_list:jaiabot.config.MissionManager.include_goal_timeout_states)
3111  return include_goal_timeout_states_;
3112 }
3113 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
3114 MissionManager::_internal_mutable_include_goal_timeout_states() {
3115  return &include_goal_timeout_states_;
3116 }
3117 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
3118 MissionManager::mutable_include_goal_timeout_states() {
3119  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.MissionManager.include_goal_timeout_states)
3120  return _internal_mutable_include_goal_timeout_states();
3121 }
3122 
3123 // optional .jaiabot.config.MissionManager.RemoteControlSetpointEnd rc_setpoint_end = 50 [default = RC_SETPOINT_ENDS_IN_STATIONKEEP];
3124 inline bool MissionManager::_internal_has_rc_setpoint_end() const {
3125  bool value = (_has_bits_[1] & 0x00000100u) != 0;
3126  return value;
3127 }
3128 inline bool MissionManager::has_rc_setpoint_end() const {
3129  return _internal_has_rc_setpoint_end();
3130 }
3131 inline void MissionManager::clear_rc_setpoint_end() {
3132  rc_setpoint_end_ = 1;
3133  _has_bits_[1] &= ~0x00000100u;
3134 }
3135 inline ::jaiabot::config::MissionManager_RemoteControlSetpointEnd MissionManager::_internal_rc_setpoint_end() const {
3136  return static_cast< ::jaiabot::config::MissionManager_RemoteControlSetpointEnd >(rc_setpoint_end_);
3137 }
3138 inline ::jaiabot::config::MissionManager_RemoteControlSetpointEnd MissionManager::rc_setpoint_end() const {
3139  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.rc_setpoint_end)
3140  return _internal_rc_setpoint_end();
3141 }
3142 inline void MissionManager::_internal_set_rc_setpoint_end(::jaiabot::config::MissionManager_RemoteControlSetpointEnd value) {
3144  _has_bits_[1] |= 0x00000100u;
3145  rc_setpoint_end_ = value;
3146 }
3147 inline void MissionManager::set_rc_setpoint_end(::jaiabot::config::MissionManager_RemoteControlSetpointEnd value) {
3148  _internal_set_rc_setpoint_end(value);
3149  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.rc_setpoint_end)
3150 }
3151 
3152 // optional uint32 imu_restart_seconds = 51 [default = 15];
3153 inline bool MissionManager::_internal_has_imu_restart_seconds() const {
3154  bool value = (_has_bits_[1] & 0x00000400u) != 0;
3155  return value;
3156 }
3157 inline bool MissionManager::has_imu_restart_seconds() const {
3158  return _internal_has_imu_restart_seconds();
3159 }
3160 inline void MissionManager::clear_imu_restart_seconds() {
3161  imu_restart_seconds_ = 15u;
3162  _has_bits_[1] &= ~0x00000400u;
3163 }
3164 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_imu_restart_seconds() const {
3165  return imu_restart_seconds_;
3166 }
3167 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::imu_restart_seconds() const {
3168  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.imu_restart_seconds)
3169  return _internal_imu_restart_seconds();
3170 }
3171 inline void MissionManager::_internal_set_imu_restart_seconds(::PROTOBUF_NAMESPACE_ID::uint32 value) {
3172  _has_bits_[1] |= 0x00000400u;
3173  imu_restart_seconds_ = value;
3174 }
3175 inline void MissionManager::set_imu_restart_seconds(::PROTOBUF_NAMESPACE_ID::uint32 value) {
3176  _internal_set_imu_restart_seconds(value);
3177  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.imu_restart_seconds)
3178 }
3179 
3180 // optional double bot_not_rising_timeout = 52 [default = 6, (.dccl.field) = {
3181 inline bool MissionManager::_internal_has_bot_not_rising_timeout() const {
3182  bool value = (_has_bits_[1] & 0x00000200u) != 0;
3183  return value;
3184 }
3185 inline bool MissionManager::has_bot_not_rising_timeout() const {
3186  return _internal_has_bot_not_rising_timeout();
3187 }
3188 inline void MissionManager::clear_bot_not_rising_timeout() {
3189  bot_not_rising_timeout_ = 6;
3190  _has_bits_[1] &= ~0x00000200u;
3191 }
3192 inline double MissionManager::_internal_bot_not_rising_timeout() const {
3193  return bot_not_rising_timeout_;
3194 }
3195 inline double MissionManager::bot_not_rising_timeout() const {
3196  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.bot_not_rising_timeout)
3197  return _internal_bot_not_rising_timeout();
3198 }
3199 inline void MissionManager::_internal_set_bot_not_rising_timeout(double value) {
3200  _has_bits_[1] |= 0x00000200u;
3201  bot_not_rising_timeout_ = value;
3202 }
3203 inline void MissionManager::set_bot_not_rising_timeout(double value) {
3204  _internal_set_bot_not_rising_timeout(value);
3205  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.bot_not_rising_timeout)
3206 }
3207 
3208 // optional int32 motor_on_time_increment = 53 [default = 1, (.dccl.field) = {
3209 inline bool MissionManager::_internal_has_motor_on_time_increment() const {
3210  bool value = (_has_bits_[1] & 0x00000800u) != 0;
3211  return value;
3212 }
3213 inline bool MissionManager::has_motor_on_time_increment() const {
3214  return _internal_has_motor_on_time_increment();
3215 }
3216 inline void MissionManager::clear_motor_on_time_increment() {
3217  motor_on_time_increment_ = 1;
3218  _has_bits_[1] &= ~0x00000800u;
3219 }
3220 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_motor_on_time_increment() const {
3221  return motor_on_time_increment_;
3222 }
3223 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::motor_on_time_increment() const {
3224  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.motor_on_time_increment)
3225  return _internal_motor_on_time_increment();
3226 }
3227 inline void MissionManager::_internal_set_motor_on_time_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
3228  _has_bits_[1] |= 0x00000800u;
3229  motor_on_time_increment_ = value;
3230 }
3231 inline void MissionManager::set_motor_on_time_increment(::PROTOBUF_NAMESPACE_ID::int32 value) {
3232  _internal_set_motor_on_time_increment(value);
3233  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.motor_on_time_increment)
3234 }
3235 
3236 // optional int32 motor_on_time_max = 54 [default = 10, (.dccl.field) = {
3237 inline bool MissionManager::_internal_has_motor_on_time_max() const {
3238  bool value = (_has_bits_[1] & 0x00008000u) != 0;
3239  return value;
3240 }
3241 inline bool MissionManager::has_motor_on_time_max() const {
3242  return _internal_has_motor_on_time_max();
3243 }
3244 inline void MissionManager::clear_motor_on_time_max() {
3245  motor_on_time_max_ = 10;
3246  _has_bits_[1] &= ~0x00008000u;
3247 }
3248 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_motor_on_time_max() const {
3249  return motor_on_time_max_;
3250 }
3251 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::motor_on_time_max() const {
3252  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.motor_on_time_max)
3253  return _internal_motor_on_time_max();
3254 }
3255 inline void MissionManager::_internal_set_motor_on_time_max(::PROTOBUF_NAMESPACE_ID::int32 value) {
3256  _has_bits_[1] |= 0x00008000u;
3257  motor_on_time_max_ = value;
3258 }
3259 inline void MissionManager::set_motor_on_time_max(::PROTOBUF_NAMESPACE_ID::int32 value) {
3260  _internal_set_motor_on_time_max(value);
3261  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.motor_on_time_max)
3262 }
3263 
3264 // optional double powered_ascent_throttle = 55 [default = 25];
3265 inline bool MissionManager::_internal_has_powered_ascent_throttle() const {
3266  bool value = (_has_bits_[1] & 0x00001000u) != 0;
3267  return value;
3268 }
3269 inline bool MissionManager::has_powered_ascent_throttle() const {
3270  return _internal_has_powered_ascent_throttle();
3271 }
3272 inline void MissionManager::clear_powered_ascent_throttle() {
3273  powered_ascent_throttle_ = 25;
3274  _has_bits_[1] &= ~0x00001000u;
3275 }
3276 inline double MissionManager::_internal_powered_ascent_throttle() const {
3277  return powered_ascent_throttle_;
3278 }
3279 inline double MissionManager::powered_ascent_throttle() const {
3280  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_ascent_throttle)
3281  return _internal_powered_ascent_throttle();
3282 }
3283 inline void MissionManager::_internal_set_powered_ascent_throttle(double value) {
3284  _has_bits_[1] |= 0x00001000u;
3285  powered_ascent_throttle_ = value;
3286 }
3287 inline void MissionManager::set_powered_ascent_throttle(double value) {
3288  _internal_set_powered_ascent_throttle(value);
3289  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_ascent_throttle)
3290 }
3291 
3292 // optional double powered_ascent_throttle_increment = 56 [default = 5];
3293 inline bool MissionManager::_internal_has_powered_ascent_throttle_increment() const {
3294  bool value = (_has_bits_[1] & 0x00002000u) != 0;
3295  return value;
3296 }
3297 inline bool MissionManager::has_powered_ascent_throttle_increment() const {
3298  return _internal_has_powered_ascent_throttle_increment();
3299 }
3300 inline void MissionManager::clear_powered_ascent_throttle_increment() {
3301  powered_ascent_throttle_increment_ = 5;
3302  _has_bits_[1] &= ~0x00002000u;
3303 }
3304 inline double MissionManager::_internal_powered_ascent_throttle_increment() const {
3305  return powered_ascent_throttle_increment_;
3306 }
3307 inline double MissionManager::powered_ascent_throttle_increment() const {
3308  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_ascent_throttle_increment)
3309  return _internal_powered_ascent_throttle_increment();
3310 }
3311 inline void MissionManager::_internal_set_powered_ascent_throttle_increment(double value) {
3312  _has_bits_[1] |= 0x00002000u;
3313  powered_ascent_throttle_increment_ = value;
3314 }
3315 inline void MissionManager::set_powered_ascent_throttle_increment(double value) {
3316  _internal_set_powered_ascent_throttle_increment(value);
3317  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_ascent_throttle_increment)
3318 }
3319 
3320 // optional double powered_ascent_throttle_max = 57 [default = 60];
3321 inline bool MissionManager::_internal_has_powered_ascent_throttle_max() const {
3322  bool value = (_has_bits_[1] & 0x00004000u) != 0;
3323  return value;
3324 }
3325 inline bool MissionManager::has_powered_ascent_throttle_max() const {
3326  return _internal_has_powered_ascent_throttle_max();
3327 }
3328 inline void MissionManager::clear_powered_ascent_throttle_max() {
3329  powered_ascent_throttle_max_ = 60;
3330  _has_bits_[1] &= ~0x00004000u;
3331 }
3332 inline double MissionManager::_internal_powered_ascent_throttle_max() const {
3333  return powered_ascent_throttle_max_;
3334 }
3335 inline double MissionManager::powered_ascent_throttle_max() const {
3336  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.powered_ascent_throttle_max)
3337  return _internal_powered_ascent_throttle_max();
3338 }
3339 inline void MissionManager::_internal_set_powered_ascent_throttle_max(double value) {
3340  _has_bits_[1] |= 0x00004000u;
3341  powered_ascent_throttle_max_ = value;
3342 }
3343 inline void MissionManager::set_powered_ascent_throttle_max(double value) {
3344  _internal_set_powered_ascent_throttle_max(value);
3345  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.powered_ascent_throttle_max)
3346 }
3347 
3348 // optional double pitch_to_determine_powered_ascent_vertical = 58 [default = 30];
3349 inline bool MissionManager::_internal_has_pitch_to_determine_powered_ascent_vertical() const {
3350  bool value = (_has_bits_[1] & 0x00020000u) != 0;
3351  return value;
3352 }
3353 inline bool MissionManager::has_pitch_to_determine_powered_ascent_vertical() const {
3354  return _internal_has_pitch_to_determine_powered_ascent_vertical();
3355 }
3356 inline void MissionManager::clear_pitch_to_determine_powered_ascent_vertical() {
3357  pitch_to_determine_powered_ascent_vertical_ = 30;
3358  _has_bits_[1] &= ~0x00020000u;
3359 }
3360 inline double MissionManager::_internal_pitch_to_determine_powered_ascent_vertical() const {
3361  return pitch_to_determine_powered_ascent_vertical_;
3362 }
3363 inline double MissionManager::pitch_to_determine_powered_ascent_vertical() const {
3364  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.pitch_to_determine_powered_ascent_vertical)
3365  return _internal_pitch_to_determine_powered_ascent_vertical();
3366 }
3367 inline void MissionManager::_internal_set_pitch_to_determine_powered_ascent_vertical(double value) {
3368  _has_bits_[1] |= 0x00020000u;
3369  pitch_to_determine_powered_ascent_vertical_ = value;
3370 }
3371 inline void MissionManager::set_pitch_to_determine_powered_ascent_vertical(double value) {
3372  _internal_set_pitch_to_determine_powered_ascent_vertical(value);
3373  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.pitch_to_determine_powered_ascent_vertical)
3374 }
3375 
3376 // optional double pitch_to_determine_dive_prep_vertical = 59 [default = 70];
3377 inline bool MissionManager::_internal_has_pitch_to_determine_dive_prep_vertical() const {
3378  bool value = (_has_bits_[1] & 0x00040000u) != 0;
3379  return value;
3380 }
3381 inline bool MissionManager::has_pitch_to_determine_dive_prep_vertical() const {
3382  return _internal_has_pitch_to_determine_dive_prep_vertical();
3383 }
3384 inline void MissionManager::clear_pitch_to_determine_dive_prep_vertical() {
3385  pitch_to_determine_dive_prep_vertical_ = 70;
3386  _has_bits_[1] &= ~0x00040000u;
3387 }
3388 inline double MissionManager::_internal_pitch_to_determine_dive_prep_vertical() const {
3389  return pitch_to_determine_dive_prep_vertical_;
3390 }
3391 inline double MissionManager::pitch_to_determine_dive_prep_vertical() const {
3392  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.pitch_to_determine_dive_prep_vertical)
3393  return _internal_pitch_to_determine_dive_prep_vertical();
3394 }
3395 inline void MissionManager::_internal_set_pitch_to_determine_dive_prep_vertical(double value) {
3396  _has_bits_[1] |= 0x00040000u;
3397  pitch_to_determine_dive_prep_vertical_ = value;
3398 }
3399 inline void MissionManager::set_pitch_to_determine_dive_prep_vertical(double value) {
3400  _internal_set_pitch_to_determine_dive_prep_vertical(value);
3401  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.pitch_to_determine_dive_prep_vertical)
3402 }
3403 
3404 // optional int32 pitch_angle_checks = 60 [default = 3];
3405 inline bool MissionManager::_internal_has_pitch_angle_checks() const {
3406  bool value = (_has_bits_[1] & 0x00010000u) != 0;
3407  return value;
3408 }
3409 inline bool MissionManager::has_pitch_angle_checks() const {
3410  return _internal_has_pitch_angle_checks();
3411 }
3412 inline void MissionManager::clear_pitch_angle_checks() {
3413  pitch_angle_checks_ = 3;
3414  _has_bits_[1] &= ~0x00010000u;
3415 }
3416 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_pitch_angle_checks() const {
3417  return pitch_angle_checks_;
3418 }
3419 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::pitch_angle_checks() const {
3420  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.pitch_angle_checks)
3421  return _internal_pitch_angle_checks();
3422 }
3423 inline void MissionManager::_internal_set_pitch_angle_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
3424  _has_bits_[1] |= 0x00010000u;
3425  pitch_angle_checks_ = value;
3426 }
3427 inline void MissionManager::set_pitch_angle_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
3428  _internal_set_pitch_angle_checks(value);
3429  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.pitch_angle_checks)
3430 }
3431 
3432 // optional double pitch_angle_min_check_time = 61 [default = 1, (.dccl.field) = {
3433 inline bool MissionManager::_internal_has_pitch_angle_min_check_time() const {
3434  bool value = (_has_bits_[1] & 0x00080000u) != 0;
3435  return value;
3436 }
3437 inline bool MissionManager::has_pitch_angle_min_check_time() const {
3438  return _internal_has_pitch_angle_min_check_time();
3439 }
3440 inline void MissionManager::clear_pitch_angle_min_check_time() {
3441  pitch_angle_min_check_time_ = 1;
3442  _has_bits_[1] &= ~0x00080000u;
3443 }
3444 inline double MissionManager::_internal_pitch_angle_min_check_time() const {
3445  return pitch_angle_min_check_time_;
3446 }
3447 inline double MissionManager::pitch_angle_min_check_time() const {
3448  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.pitch_angle_min_check_time)
3449  return _internal_pitch_angle_min_check_time();
3450 }
3451 inline void MissionManager::_internal_set_pitch_angle_min_check_time(double value) {
3452  _has_bits_[1] |= 0x00080000u;
3453  pitch_angle_min_check_time_ = value;
3454 }
3455 inline void MissionManager::set_pitch_angle_min_check_time(double value) {
3456  _internal_set_pitch_angle_min_check_time(value);
3457  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.pitch_angle_min_check_time)
3458 }
3459 
3460 // optional double dive_eps_to_determine_diving = 62 [default = 0.3, (.dccl.field) = {
3461 inline bool MissionManager::_internal_has_dive_eps_to_determine_diving() const {
3462  bool value = (_has_bits_[1] & 0x00100000u) != 0;
3463  return value;
3464 }
3465 inline bool MissionManager::has_dive_eps_to_determine_diving() const {
3466  return _internal_has_dive_eps_to_determine_diving();
3467 }
3468 inline void MissionManager::clear_dive_eps_to_determine_diving() {
3469  dive_eps_to_determine_diving_ = 0.3;
3470  _has_bits_[1] &= ~0x00100000u;
3471 }
3472 inline double MissionManager::_internal_dive_eps_to_determine_diving() const {
3473  return dive_eps_to_determine_diving_;
3474 }
3475 inline double MissionManager::dive_eps_to_determine_diving() const {
3476  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.dive_eps_to_determine_diving)
3477  return _internal_dive_eps_to_determine_diving();
3478 }
3479 inline void MissionManager::_internal_set_dive_eps_to_determine_diving(double value) {
3480  _has_bits_[1] |= 0x00100000u;
3481  dive_eps_to_determine_diving_ = value;
3482 }
3483 inline void MissionManager::set_dive_eps_to_determine_diving(double value) {
3484  _internal_set_dive_eps_to_determine_diving(value);
3485  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.dive_eps_to_determine_diving)
3486 }
3487 
3488 // required string data_preoffload_script = 70;
3489 inline bool MissionManager::_internal_has_data_preoffload_script() const {
3490  bool value = (_has_bits_[0] & 0x00000001u) != 0;
3491  return value;
3492 }
3493 inline bool MissionManager::has_data_preoffload_script() const {
3494  return _internal_has_data_preoffload_script();
3495 }
3496 inline void MissionManager::clear_data_preoffload_script() {
3497  data_preoffload_script_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3498  _has_bits_[0] &= ~0x00000001u;
3499 }
3500 inline const std::string& MissionManager::data_preoffload_script() const {
3501  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.data_preoffload_script)
3502  return _internal_data_preoffload_script();
3503 }
3504 inline void MissionManager::set_data_preoffload_script(const std::string& value) {
3505  _internal_set_data_preoffload_script(value);
3506  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.data_preoffload_script)
3507 }
3508 inline std::string* MissionManager::mutable_data_preoffload_script() {
3509  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.data_preoffload_script)
3510  return _internal_mutable_data_preoffload_script();
3511 }
3512 inline const std::string& MissionManager::_internal_data_preoffload_script() const {
3513  return data_preoffload_script_.Get();
3514 }
3515 inline void MissionManager::_internal_set_data_preoffload_script(const std::string& value) {
3516  _has_bits_[0] |= 0x00000001u;
3517  data_preoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
3518 }
3519 inline void MissionManager::set_data_preoffload_script(std::string&& value) {
3520  _has_bits_[0] |= 0x00000001u;
3521  data_preoffload_script_.Set(
3522  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
3523  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.MissionManager.data_preoffload_script)
3524 }
3525 inline void MissionManager::set_data_preoffload_script(const char* value) {
3526  GOOGLE_DCHECK(value != nullptr);
3527  _has_bits_[0] |= 0x00000001u;
3528  data_preoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
3529  GetArena());
3530  // @@protoc_insertion_point(field_set_char:jaiabot.config.MissionManager.data_preoffload_script)
3531 }
3532 inline void MissionManager::set_data_preoffload_script(const char* value,
3533  size_t size) {
3534  _has_bits_[0] |= 0x00000001u;
3535  data_preoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
3536  reinterpret_cast<const char*>(value), size), GetArena());
3537  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.MissionManager.data_preoffload_script)
3538 }
3539 inline std::string* MissionManager::_internal_mutable_data_preoffload_script() {
3540  _has_bits_[0] |= 0x00000001u;
3541  return data_preoffload_script_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3542 }
3543 inline std::string* MissionManager::release_data_preoffload_script() {
3544  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.data_preoffload_script)
3545  if (!_internal_has_data_preoffload_script()) {
3546  return nullptr;
3547  }
3548  _has_bits_[0] &= ~0x00000001u;
3549  return data_preoffload_script_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3550 }
3551 inline void MissionManager::set_allocated_data_preoffload_script(std::string* data_preoffload_script) {
3552  if (data_preoffload_script != nullptr) {
3553  _has_bits_[0] |= 0x00000001u;
3554  } else {
3555  _has_bits_[0] &= ~0x00000001u;
3556  }
3557  data_preoffload_script_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), data_preoffload_script,
3558  GetArena());
3559  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.data_preoffload_script)
3560 }
3561 inline std::string* MissionManager::unsafe_arena_release_data_preoffload_script() {
3562  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.MissionManager.data_preoffload_script)
3563  GOOGLE_DCHECK(GetArena() != nullptr);
3564  _has_bits_[0] &= ~0x00000001u;
3565  return data_preoffload_script_.UnsafeArenaRelease(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3566  GetArena());
3567 }
3568 inline void MissionManager::unsafe_arena_set_allocated_data_preoffload_script(
3569  std::string* data_preoffload_script) {
3570  GOOGLE_DCHECK(GetArena() != nullptr);
3571  if (data_preoffload_script != nullptr) {
3572  _has_bits_[0] |= 0x00000001u;
3573  } else {
3574  _has_bits_[0] &= ~0x00000001u;
3575  }
3576  data_preoffload_script_.UnsafeArenaSetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3577  data_preoffload_script, GetArena());
3578  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.data_preoffload_script)
3579 }
3580 
3581 // required string data_postoffload_script = 71;
3582 inline bool MissionManager::_internal_has_data_postoffload_script() const {
3583  bool value = (_has_bits_[0] & 0x00000002u) != 0;
3584  return value;
3585 }
3586 inline bool MissionManager::has_data_postoffload_script() const {
3587  return _internal_has_data_postoffload_script();
3588 }
3589 inline void MissionManager::clear_data_postoffload_script() {
3590  data_postoffload_script_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3591  _has_bits_[0] &= ~0x00000002u;
3592 }
3593 inline const std::string& MissionManager::data_postoffload_script() const {
3594  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.data_postoffload_script)
3595  return _internal_data_postoffload_script();
3596 }
3597 inline void MissionManager::set_data_postoffload_script(const std::string& value) {
3598  _internal_set_data_postoffload_script(value);
3599  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.data_postoffload_script)
3600 }
3601 inline std::string* MissionManager::mutable_data_postoffload_script() {
3602  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.data_postoffload_script)
3603  return _internal_mutable_data_postoffload_script();
3604 }
3605 inline const std::string& MissionManager::_internal_data_postoffload_script() const {
3606  return data_postoffload_script_.Get();
3607 }
3608 inline void MissionManager::_internal_set_data_postoffload_script(const std::string& value) {
3609  _has_bits_[0] |= 0x00000002u;
3610  data_postoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
3611 }
3612 inline void MissionManager::set_data_postoffload_script(std::string&& value) {
3613  _has_bits_[0] |= 0x00000002u;
3614  data_postoffload_script_.Set(
3615  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
3616  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.MissionManager.data_postoffload_script)
3617 }
3618 inline void MissionManager::set_data_postoffload_script(const char* value) {
3619  GOOGLE_DCHECK(value != nullptr);
3620  _has_bits_[0] |= 0x00000002u;
3621  data_postoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
3622  GetArena());
3623  // @@protoc_insertion_point(field_set_char:jaiabot.config.MissionManager.data_postoffload_script)
3624 }
3625 inline void MissionManager::set_data_postoffload_script(const char* value,
3626  size_t size) {
3627  _has_bits_[0] |= 0x00000002u;
3628  data_postoffload_script_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
3629  reinterpret_cast<const char*>(value), size), GetArena());
3630  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.MissionManager.data_postoffload_script)
3631 }
3632 inline std::string* MissionManager::_internal_mutable_data_postoffload_script() {
3633  _has_bits_[0] |= 0x00000002u;
3634  return data_postoffload_script_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3635 }
3636 inline std::string* MissionManager::release_data_postoffload_script() {
3637  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.data_postoffload_script)
3638  if (!_internal_has_data_postoffload_script()) {
3639  return nullptr;
3640  }
3641  _has_bits_[0] &= ~0x00000002u;
3642  return data_postoffload_script_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3643 }
3644 inline void MissionManager::set_allocated_data_postoffload_script(std::string* data_postoffload_script) {
3645  if (data_postoffload_script != nullptr) {
3646  _has_bits_[0] |= 0x00000002u;
3647  } else {
3648  _has_bits_[0] &= ~0x00000002u;
3649  }
3650  data_postoffload_script_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), data_postoffload_script,
3651  GetArena());
3652  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.data_postoffload_script)
3653 }
3654 inline std::string* MissionManager::unsafe_arena_release_data_postoffload_script() {
3655  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.MissionManager.data_postoffload_script)
3656  GOOGLE_DCHECK(GetArena() != nullptr);
3657  _has_bits_[0] &= ~0x00000002u;
3658  return data_postoffload_script_.UnsafeArenaRelease(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3659  GetArena());
3660 }
3661 inline void MissionManager::unsafe_arena_set_allocated_data_postoffload_script(
3662  std::string* data_postoffload_script) {
3663  GOOGLE_DCHECK(GetArena() != nullptr);
3664  if (data_postoffload_script != nullptr) {
3665  _has_bits_[0] |= 0x00000002u;
3666  } else {
3667  _has_bits_[0] &= ~0x00000002u;
3668  }
3669  data_postoffload_script_.UnsafeArenaSetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3670  data_postoffload_script, GetArena());
3671  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.data_postoffload_script)
3672 }
3673 
3674 // required string log_dir = 72;
3675 inline bool MissionManager::_internal_has_log_dir() const {
3676  bool value = (_has_bits_[0] & 0x00000004u) != 0;
3677  return value;
3678 }
3679 inline bool MissionManager::has_log_dir() const {
3680  return _internal_has_log_dir();
3681 }
3682 inline void MissionManager::clear_log_dir() {
3683  log_dir_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3684  _has_bits_[0] &= ~0x00000004u;
3685 }
3686 inline const std::string& MissionManager::log_dir() const {
3687  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.log_dir)
3688  return _internal_log_dir();
3689 }
3690 inline void MissionManager::set_log_dir(const std::string& value) {
3691  _internal_set_log_dir(value);
3692  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.log_dir)
3693 }
3694 inline std::string* MissionManager::mutable_log_dir() {
3695  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.log_dir)
3696  return _internal_mutable_log_dir();
3697 }
3698 inline const std::string& MissionManager::_internal_log_dir() const {
3699  return log_dir_.Get();
3700 }
3701 inline void MissionManager::_internal_set_log_dir(const std::string& value) {
3702  _has_bits_[0] |= 0x00000004u;
3703  log_dir_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
3704 }
3705 inline void MissionManager::set_log_dir(std::string&& value) {
3706  _has_bits_[0] |= 0x00000004u;
3707  log_dir_.Set(
3708  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
3709  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.MissionManager.log_dir)
3710 }
3711 inline void MissionManager::set_log_dir(const char* value) {
3712  GOOGLE_DCHECK(value != nullptr);
3713  _has_bits_[0] |= 0x00000004u;
3714  log_dir_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
3715  GetArena());
3716  // @@protoc_insertion_point(field_set_char:jaiabot.config.MissionManager.log_dir)
3717 }
3718 inline void MissionManager::set_log_dir(const char* value,
3719  size_t size) {
3720  _has_bits_[0] |= 0x00000004u;
3721  log_dir_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
3722  reinterpret_cast<const char*>(value), size), GetArena());
3723  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.MissionManager.log_dir)
3724 }
3725 inline std::string* MissionManager::_internal_mutable_log_dir() {
3726  _has_bits_[0] |= 0x00000004u;
3727  return log_dir_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3728 }
3729 inline std::string* MissionManager::release_log_dir() {
3730  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.log_dir)
3731  if (!_internal_has_log_dir()) {
3732  return nullptr;
3733  }
3734  _has_bits_[0] &= ~0x00000004u;
3735  return log_dir_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
3736 }
3737 inline void MissionManager::set_allocated_log_dir(std::string* log_dir) {
3738  if (log_dir != nullptr) {
3739  _has_bits_[0] |= 0x00000004u;
3740  } else {
3741  _has_bits_[0] &= ~0x00000004u;
3742  }
3743  log_dir_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), log_dir,
3744  GetArena());
3745  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.log_dir)
3746 }
3747 inline std::string* MissionManager::unsafe_arena_release_log_dir() {
3748  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.MissionManager.log_dir)
3749  GOOGLE_DCHECK(GetArena() != nullptr);
3750  _has_bits_[0] &= ~0x00000004u;
3751  return log_dir_.UnsafeArenaRelease(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3752  GetArena());
3753 }
3754 inline void MissionManager::unsafe_arena_set_allocated_log_dir(
3755  std::string* log_dir) {
3756  GOOGLE_DCHECK(GetArena() != nullptr);
3757  if (log_dir != nullptr) {
3758  _has_bits_[0] |= 0x00000004u;
3759  } else {
3760  _has_bits_[0] &= ~0x00000004u;
3761  }
3762  log_dir_.UnsafeArenaSetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3763  log_dir, GetArena());
3764  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.log_dir)
3765 }
3766 
3767 // optional string log_staging_dir = 73 [default = "/var/log/jaiabot/staging"];
3768 inline bool MissionManager::_internal_has_log_staging_dir() const {
3769  bool value = (_has_bits_[0] & 0x00000008u) != 0;
3770  return value;
3771 }
3772 inline bool MissionManager::has_log_staging_dir() const {
3773  return _internal_has_log_staging_dir();
3774 }
3775 inline void MissionManager::clear_log_staging_dir() {
3776  log_staging_dir_.ClearToDefault(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), GetArena());
3777  _has_bits_[0] &= ~0x00000008u;
3778 }
3779 inline const std::string& MissionManager::log_staging_dir() const {
3780  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.log_staging_dir)
3781  return _internal_log_staging_dir();
3782 }
3783 inline void MissionManager::set_log_staging_dir(const std::string& value) {
3784  _internal_set_log_staging_dir(value);
3785  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.log_staging_dir)
3786 }
3787 inline std::string* MissionManager::mutable_log_staging_dir() {
3788  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.log_staging_dir)
3789  return _internal_mutable_log_staging_dir();
3790 }
3791 inline const std::string& MissionManager::_internal_log_staging_dir() const {
3792  return log_staging_dir_.Get();
3793 }
3794 inline void MissionManager::_internal_set_log_staging_dir(const std::string& value) {
3795  _has_bits_[0] |= 0x00000008u;
3796  log_staging_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), value, GetArena());
3797 }
3798 inline void MissionManager::set_log_staging_dir(std::string&& value) {
3799  _has_bits_[0] |= 0x00000008u;
3800  log_staging_dir_.Set(
3801  &::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), ::std::move(value), GetArena());
3802  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.MissionManager.log_staging_dir)
3803 }
3804 inline void MissionManager::set_log_staging_dir(const char* value) {
3805  GOOGLE_DCHECK(value != nullptr);
3806  _has_bits_[0] |= 0x00000008u;
3807  log_staging_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), ::std::string(value),
3808  GetArena());
3809  // @@protoc_insertion_point(field_set_char:jaiabot.config.MissionManager.log_staging_dir)
3810 }
3811 inline void MissionManager::set_log_staging_dir(const char* value,
3812  size_t size) {
3813  _has_bits_[0] |= 0x00000008u;
3814  log_staging_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), ::std::string(
3815  reinterpret_cast<const char*>(value), size), GetArena());
3816  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.MissionManager.log_staging_dir)
3817 }
3818 inline std::string* MissionManager::_internal_mutable_log_staging_dir() {
3819  _has_bits_[0] |= 0x00000008u;
3820  return log_staging_dir_.Mutable(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), GetArena());
3821 }
3822 inline std::string* MissionManager::release_log_staging_dir() {
3823  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.log_staging_dir)
3824  if (!_internal_has_log_staging_dir()) {
3825  return nullptr;
3826  }
3827  _has_bits_[0] &= ~0x00000008u;
3828  return log_staging_dir_.ReleaseNonDefault(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), GetArena());
3829 }
3830 inline void MissionManager::set_allocated_log_staging_dir(std::string* log_staging_dir) {
3831  if (log_staging_dir != nullptr) {
3832  _has_bits_[0] |= 0x00000008u;
3833  } else {
3834  _has_bits_[0] &= ~0x00000008u;
3835  }
3836  log_staging_dir_.SetAllocated(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(), log_staging_dir,
3837  GetArena());
3838  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.log_staging_dir)
3839 }
3840 inline std::string* MissionManager::unsafe_arena_release_log_staging_dir() {
3841  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.MissionManager.log_staging_dir)
3842  GOOGLE_DCHECK(GetArena() != nullptr);
3843  _has_bits_[0] &= ~0x00000008u;
3844  return log_staging_dir_.UnsafeArenaRelease(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(),
3845  GetArena());
3846 }
3847 inline void MissionManager::unsafe_arena_set_allocated_log_staging_dir(
3848  std::string* log_staging_dir) {
3849  GOOGLE_DCHECK(GetArena() != nullptr);
3850  if (log_staging_dir != nullptr) {
3851  _has_bits_[0] |= 0x00000008u;
3852  } else {
3853  _has_bits_[0] &= ~0x00000008u;
3854  }
3855  log_staging_dir_.UnsafeArenaSetAllocated(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_staging_dir_.get(),
3856  log_staging_dir, GetArena());
3857  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.log_staging_dir)
3858 }
3859 
3860 // optional string log_archive_dir = 74 [default = "/var/log/jaiabot/archive"];
3861 inline bool MissionManager::_internal_has_log_archive_dir() const {
3862  bool value = (_has_bits_[0] & 0x00000010u) != 0;
3863  return value;
3864 }
3865 inline bool MissionManager::has_log_archive_dir() const {
3866  return _internal_has_log_archive_dir();
3867 }
3868 inline void MissionManager::clear_log_archive_dir() {
3869  log_archive_dir_.ClearToDefault(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), GetArena());
3870  _has_bits_[0] &= ~0x00000010u;
3871 }
3872 inline const std::string& MissionManager::log_archive_dir() const {
3873  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.log_archive_dir)
3874  return _internal_log_archive_dir();
3875 }
3876 inline void MissionManager::set_log_archive_dir(const std::string& value) {
3877  _internal_set_log_archive_dir(value);
3878  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.log_archive_dir)
3879 }
3880 inline std::string* MissionManager::mutable_log_archive_dir() {
3881  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.log_archive_dir)
3882  return _internal_mutable_log_archive_dir();
3883 }
3884 inline const std::string& MissionManager::_internal_log_archive_dir() const {
3885  return log_archive_dir_.Get();
3886 }
3887 inline void MissionManager::_internal_set_log_archive_dir(const std::string& value) {
3888  _has_bits_[0] |= 0x00000010u;
3889  log_archive_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), value, GetArena());
3890 }
3891 inline void MissionManager::set_log_archive_dir(std::string&& value) {
3892  _has_bits_[0] |= 0x00000010u;
3893  log_archive_dir_.Set(
3894  &::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), ::std::move(value), GetArena());
3895  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.MissionManager.log_archive_dir)
3896 }
3897 inline void MissionManager::set_log_archive_dir(const char* value) {
3898  GOOGLE_DCHECK(value != nullptr);
3899  _has_bits_[0] |= 0x00000010u;
3900  log_archive_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), ::std::string(value),
3901  GetArena());
3902  // @@protoc_insertion_point(field_set_char:jaiabot.config.MissionManager.log_archive_dir)
3903 }
3904 inline void MissionManager::set_log_archive_dir(const char* value,
3905  size_t size) {
3906  _has_bits_[0] |= 0x00000010u;
3907  log_archive_dir_.Set(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), ::std::string(
3908  reinterpret_cast<const char*>(value), size), GetArena());
3909  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.MissionManager.log_archive_dir)
3910 }
3911 inline std::string* MissionManager::_internal_mutable_log_archive_dir() {
3912  _has_bits_[0] |= 0x00000010u;
3913  return log_archive_dir_.Mutable(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), GetArena());
3914 }
3915 inline std::string* MissionManager::release_log_archive_dir() {
3916  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.log_archive_dir)
3917  if (!_internal_has_log_archive_dir()) {
3918  return nullptr;
3919  }
3920  _has_bits_[0] &= ~0x00000010u;
3921  return log_archive_dir_.ReleaseNonDefault(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), GetArena());
3922 }
3923 inline void MissionManager::set_allocated_log_archive_dir(std::string* log_archive_dir) {
3924  if (log_archive_dir != nullptr) {
3925  _has_bits_[0] |= 0x00000010u;
3926  } else {
3927  _has_bits_[0] &= ~0x00000010u;
3928  }
3929  log_archive_dir_.SetAllocated(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(), log_archive_dir,
3930  GetArena());
3931  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.log_archive_dir)
3932 }
3933 inline std::string* MissionManager::unsafe_arena_release_log_archive_dir() {
3934  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.MissionManager.log_archive_dir)
3935  GOOGLE_DCHECK(GetArena() != nullptr);
3936  _has_bits_[0] &= ~0x00000010u;
3937  return log_archive_dir_.UnsafeArenaRelease(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(),
3938  GetArena());
3939 }
3940 inline void MissionManager::unsafe_arena_set_allocated_log_archive_dir(
3941  std::string* log_archive_dir) {
3942  GOOGLE_DCHECK(GetArena() != nullptr);
3943  if (log_archive_dir != nullptr) {
3944  _has_bits_[0] |= 0x00000010u;
3945  } else {
3946  _has_bits_[0] &= ~0x00000010u;
3947  }
3948  log_archive_dir_.UnsafeArenaSetAllocated(&::jaiabot::config::MissionManager::_i_give_permission_to_break_this_code_default_log_archive_dir_.get(),
3949  log_archive_dir, GetArena());
3950  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.log_archive_dir)
3951 }
3952 
3953 // optional .jaiabot.config.MissionManager.DownloadFileTypes data_offload_exclude = 75;
3954 inline bool MissionManager::_internal_has_data_offload_exclude() const {
3955  bool value = (_has_bits_[1] & 0x00200000u) != 0;
3956  return value;
3957 }
3958 inline bool MissionManager::has_data_offload_exclude() const {
3959  return _internal_has_data_offload_exclude();
3960 }
3961 inline void MissionManager::clear_data_offload_exclude() {
3962  data_offload_exclude_ = 1;
3963  _has_bits_[1] &= ~0x00200000u;
3964 }
3965 inline ::jaiabot::config::MissionManager_DownloadFileTypes MissionManager::_internal_data_offload_exclude() const {
3966  return static_cast< ::jaiabot::config::MissionManager_DownloadFileTypes >(data_offload_exclude_);
3967 }
3968 inline ::jaiabot::config::MissionManager_DownloadFileTypes MissionManager::data_offload_exclude() const {
3969  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.data_offload_exclude)
3970  return _internal_data_offload_exclude();
3971 }
3972 inline void MissionManager::_internal_set_data_offload_exclude(::jaiabot::config::MissionManager_DownloadFileTypes value) {
3974  _has_bits_[1] |= 0x00200000u;
3975  data_offload_exclude_ = value;
3976 }
3977 inline void MissionManager::set_data_offload_exclude(::jaiabot::config::MissionManager_DownloadFileTypes value) {
3978  _internal_set_data_offload_exclude(value);
3979  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.data_offload_exclude)
3980 }
3981 
3982 // repeated .jaiabot.config.MissionManager.EngineeringTestMode test_mode = 80;
3983 inline int MissionManager::_internal_test_mode_size() const {
3984  return test_mode_.size();
3985 }
3986 inline int MissionManager::test_mode_size() const {
3987  return _internal_test_mode_size();
3988 }
3989 inline void MissionManager::clear_test_mode() {
3990  test_mode_.Clear();
3991 }
3992 inline ::jaiabot::config::MissionManager_EngineeringTestMode MissionManager::_internal_test_mode(int index) const {
3993  return static_cast< ::jaiabot::config::MissionManager_EngineeringTestMode >(test_mode_.Get(index));
3994 }
3995 inline ::jaiabot::config::MissionManager_EngineeringTestMode MissionManager::test_mode(int index) const {
3996  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.test_mode)
3997  return _internal_test_mode(index);
3998 }
3999 inline void MissionManager::set_test_mode(int index, ::jaiabot::config::MissionManager_EngineeringTestMode value) {
4001  test_mode_.Set(index, value);
4002  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.test_mode)
4003 }
4004 inline void MissionManager::_internal_add_test_mode(::jaiabot::config::MissionManager_EngineeringTestMode value) {
4006  test_mode_.Add(value);
4007 }
4008 inline void MissionManager::add_test_mode(::jaiabot::config::MissionManager_EngineeringTestMode value) {
4009  // @@protoc_insertion_point(field_add:jaiabot.config.MissionManager.test_mode)
4010  _internal_add_test_mode(value);
4011 }
4012 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
4013 MissionManager::test_mode() const {
4014  // @@protoc_insertion_point(field_list:jaiabot.config.MissionManager.test_mode)
4015  return test_mode_;
4016 }
4017 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4018 MissionManager::_internal_mutable_test_mode() {
4019  return &test_mode_;
4020 }
4021 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4022 MissionManager::mutable_test_mode() {
4023  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.MissionManager.test_mode)
4024  return _internal_mutable_test_mode();
4025 }
4026 
4027 // repeated .jaiabot.protobuf.Error ignore_error = 81;
4028 inline int MissionManager::_internal_ignore_error_size() const {
4029  return ignore_error_.size();
4030 }
4031 inline int MissionManager::ignore_error_size() const {
4032  return _internal_ignore_error_size();
4033 }
4034 inline void MissionManager::clear_ignore_error() {
4035  ignore_error_.Clear();
4036 }
4037 inline ::jaiabot::protobuf::Error MissionManager::_internal_ignore_error(int index) const {
4038  return static_cast< ::jaiabot::protobuf::Error >(ignore_error_.Get(index));
4039 }
4040 inline ::jaiabot::protobuf::Error MissionManager::ignore_error(int index) const {
4041  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.ignore_error)
4042  return _internal_ignore_error(index);
4043 }
4044 inline void MissionManager::set_ignore_error(int index, ::jaiabot::protobuf::Error value) {
4045  assert(::jaiabot::protobuf::Error_IsValid(value));
4046  ignore_error_.Set(index, value);
4047  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.ignore_error)
4048 }
4049 inline void MissionManager::_internal_add_ignore_error(::jaiabot::protobuf::Error value) {
4050  assert(::jaiabot::protobuf::Error_IsValid(value));
4051  ignore_error_.Add(value);
4052 }
4053 inline void MissionManager::add_ignore_error(::jaiabot::protobuf::Error value) {
4054  // @@protoc_insertion_point(field_add:jaiabot.config.MissionManager.ignore_error)
4055  _internal_add_ignore_error(value);
4056 }
4057 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
4058 MissionManager::ignore_error() const {
4059  // @@protoc_insertion_point(field_list:jaiabot.config.MissionManager.ignore_error)
4060  return ignore_error_;
4061 }
4062 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4063 MissionManager::_internal_mutable_ignore_error() {
4064  return &ignore_error_;
4065 }
4066 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
4067 MissionManager::mutable_ignore_error() {
4068  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.MissionManager.ignore_error)
4069  return _internal_mutable_ignore_error();
4070 }
4071 
4072 // optional bool is_sim = 82 [default = false];
4073 inline bool MissionManager::_internal_has_is_sim() const {
4074  bool value = (_has_bits_[0] & 0x00020000u) != 0;
4075  return value;
4076 }
4077 inline bool MissionManager::has_is_sim() const {
4078  return _internal_has_is_sim();
4079 }
4080 inline void MissionManager::clear_is_sim() {
4081  is_sim_ = false;
4082  _has_bits_[0] &= ~0x00020000u;
4083 }
4084 inline bool MissionManager::_internal_is_sim() const {
4085  return is_sim_;
4086 }
4087 inline bool MissionManager::is_sim() const {
4088  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.is_sim)
4089  return _internal_is_sim();
4090 }
4091 inline void MissionManager::_internal_set_is_sim(bool value) {
4092  _has_bits_[0] |= 0x00020000u;
4093  is_sim_ = value;
4094 }
4095 inline void MissionManager::set_is_sim(bool value) {
4096  _internal_set_is_sim(value);
4097  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.is_sim)
4098 }
4099 
4100 // optional .jaiabot.protobuf.HubInfo subscribe_to_hub_on_start = 83;
4101 inline bool MissionManager::_internal_has_subscribe_to_hub_on_start() const {
4102  bool value = (_has_bits_[0] & 0x00000200u) != 0;
4103  PROTOBUF_ASSUME(!value || subscribe_to_hub_on_start_ != nullptr);
4104  return value;
4105 }
4106 inline bool MissionManager::has_subscribe_to_hub_on_start() const {
4107  return _internal_has_subscribe_to_hub_on_start();
4108 }
4109 inline const ::jaiabot::protobuf::HubInfo& MissionManager::_internal_subscribe_to_hub_on_start() const {
4110  const ::jaiabot::protobuf::HubInfo* p = subscribe_to_hub_on_start_;
4111  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::HubInfo*>(
4113 }
4114 inline const ::jaiabot::protobuf::HubInfo& MissionManager::subscribe_to_hub_on_start() const {
4115  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.subscribe_to_hub_on_start)
4116  return _internal_subscribe_to_hub_on_start();
4117 }
4118 inline void MissionManager::unsafe_arena_set_allocated_subscribe_to_hub_on_start(
4119  ::jaiabot::protobuf::HubInfo* subscribe_to_hub_on_start) {
4120  if (GetArena() == nullptr) {
4121  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(subscribe_to_hub_on_start_);
4122  }
4123  subscribe_to_hub_on_start_ = subscribe_to_hub_on_start;
4124  if (subscribe_to_hub_on_start) {
4125  _has_bits_[0] |= 0x00000200u;
4126  } else {
4127  _has_bits_[0] &= ~0x00000200u;
4128  }
4129  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.subscribe_to_hub_on_start)
4130 }
4131 inline ::jaiabot::protobuf::HubInfo* MissionManager::release_subscribe_to_hub_on_start() {
4132  auto temp = unsafe_arena_release_subscribe_to_hub_on_start();
4133  if (GetArena() != nullptr) {
4134  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4135  }
4136  return temp;
4137 }
4138 inline ::jaiabot::protobuf::HubInfo* MissionManager::unsafe_arena_release_subscribe_to_hub_on_start() {
4139  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.subscribe_to_hub_on_start)
4140  _has_bits_[0] &= ~0x00000200u;
4141  ::jaiabot::protobuf::HubInfo* temp = subscribe_to_hub_on_start_;
4142  subscribe_to_hub_on_start_ = nullptr;
4143  return temp;
4144 }
4145 inline ::jaiabot::protobuf::HubInfo* MissionManager::_internal_mutable_subscribe_to_hub_on_start() {
4146  _has_bits_[0] |= 0x00000200u;
4147  if (subscribe_to_hub_on_start_ == nullptr) {
4148  auto* p = CreateMaybeMessage<::jaiabot::protobuf::HubInfo>(GetArena());
4149  subscribe_to_hub_on_start_ = p;
4150  }
4151  return subscribe_to_hub_on_start_;
4152 }
4153 inline ::jaiabot::protobuf::HubInfo* MissionManager::mutable_subscribe_to_hub_on_start() {
4154  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.subscribe_to_hub_on_start)
4155  return _internal_mutable_subscribe_to_hub_on_start();
4156 }
4157 inline void MissionManager::set_allocated_subscribe_to_hub_on_start(::jaiabot::protobuf::HubInfo* subscribe_to_hub_on_start) {
4158  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
4159  if (message_arena == nullptr) {
4160  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(subscribe_to_hub_on_start_);
4161  }
4162  if (subscribe_to_hub_on_start) {
4163  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4164  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(subscribe_to_hub_on_start)->GetArena();
4165  if (message_arena != submessage_arena) {
4166  subscribe_to_hub_on_start = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4167  message_arena, subscribe_to_hub_on_start, submessage_arena);
4168  }
4169  _has_bits_[0] |= 0x00000200u;
4170  } else {
4171  _has_bits_[0] &= ~0x00000200u;
4172  }
4173  subscribe_to_hub_on_start_ = subscribe_to_hub_on_start;
4174  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.subscribe_to_hub_on_start)
4175 }
4176 
4177 // optional double hard_bottom_type_acceleration = 84 [default = 100];
4178 inline bool MissionManager::_internal_has_hard_bottom_type_acceleration() const {
4179  bool value = (_has_bits_[1] & 0x00800000u) != 0;
4180  return value;
4181 }
4182 inline bool MissionManager::has_hard_bottom_type_acceleration() const {
4183  return _internal_has_hard_bottom_type_acceleration();
4184 }
4185 inline void MissionManager::clear_hard_bottom_type_acceleration() {
4186  hard_bottom_type_acceleration_ = 100;
4187  _has_bits_[1] &= ~0x00800000u;
4188 }
4189 inline double MissionManager::_internal_hard_bottom_type_acceleration() const {
4190  return hard_bottom_type_acceleration_;
4191 }
4192 inline double MissionManager::hard_bottom_type_acceleration() const {
4193  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.hard_bottom_type_acceleration)
4194  return _internal_hard_bottom_type_acceleration();
4195 }
4196 inline void MissionManager::_internal_set_hard_bottom_type_acceleration(double value) {
4197  _has_bits_[1] |= 0x00800000u;
4198  hard_bottom_type_acceleration_ = value;
4199 }
4200 inline void MissionManager::set_hard_bottom_type_acceleration(double value) {
4201  _internal_set_hard_bottom_type_acceleration(value);
4202  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.hard_bottom_type_acceleration)
4203 }
4204 
4205 // optional int32 failed_startup_log_timeout = 85 [default = 300, (.dccl.field) = {
4206 inline bool MissionManager::_internal_has_failed_startup_log_timeout() const {
4207  bool value = (_has_bits_[1] & 0x00400000u) != 0;
4208  return value;
4209 }
4210 inline bool MissionManager::has_failed_startup_log_timeout() const {
4211  return _internal_has_failed_startup_log_timeout();
4212 }
4213 inline void MissionManager::clear_failed_startup_log_timeout() {
4214  failed_startup_log_timeout_ = 300;
4215  _has_bits_[1] &= ~0x00400000u;
4216 }
4217 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_failed_startup_log_timeout() const {
4218  return failed_startup_log_timeout_;
4219 }
4220 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::failed_startup_log_timeout() const {
4221  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.failed_startup_log_timeout)
4222  return _internal_failed_startup_log_timeout();
4223 }
4224 inline void MissionManager::_internal_set_failed_startup_log_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
4225  _has_bits_[1] |= 0x00400000u;
4226  failed_startup_log_timeout_ = value;
4227 }
4228 inline void MissionManager::set_failed_startup_log_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
4229  _internal_set_failed_startup_log_timeout(value);
4230  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.failed_startup_log_timeout)
4231 }
4232 
4233 // optional int32 waypoint_with_no_task_slip_radius = 86 [default = 15];
4234 inline bool MissionManager::_internal_has_waypoint_with_no_task_slip_radius() const {
4235  bool value = (_has_bits_[1] & 0x01000000u) != 0;
4236  return value;
4237 }
4238 inline bool MissionManager::has_waypoint_with_no_task_slip_radius() const {
4239  return _internal_has_waypoint_with_no_task_slip_radius();
4240 }
4241 inline void MissionManager::clear_waypoint_with_no_task_slip_radius() {
4242  waypoint_with_no_task_slip_radius_ = 15;
4243  _has_bits_[1] &= ~0x01000000u;
4244 }
4245 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_waypoint_with_no_task_slip_radius() const {
4246  return waypoint_with_no_task_slip_radius_;
4247 }
4248 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::waypoint_with_no_task_slip_radius() const {
4249  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.waypoint_with_no_task_slip_radius)
4250  return _internal_waypoint_with_no_task_slip_radius();
4251 }
4252 inline void MissionManager::_internal_set_waypoint_with_no_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
4253  _has_bits_[1] |= 0x01000000u;
4254  waypoint_with_no_task_slip_radius_ = value;
4255 }
4256 inline void MissionManager::set_waypoint_with_no_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
4257  _internal_set_waypoint_with_no_task_slip_radius(value);
4258  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.waypoint_with_no_task_slip_radius)
4259 }
4260 
4261 // optional int32 waypoint_with_task_slip_radius = 87 [default = 5];
4262 inline bool MissionManager::_internal_has_waypoint_with_task_slip_radius() const {
4263  bool value = (_has_bits_[1] & 0x02000000u) != 0;
4264  return value;
4265 }
4266 inline bool MissionManager::has_waypoint_with_task_slip_radius() const {
4267  return _internal_has_waypoint_with_task_slip_radius();
4268 }
4269 inline void MissionManager::clear_waypoint_with_task_slip_radius() {
4270  waypoint_with_task_slip_radius_ = 5;
4271  _has_bits_[1] &= ~0x02000000u;
4272 }
4273 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::_internal_waypoint_with_task_slip_radius() const {
4274  return waypoint_with_task_slip_radius_;
4275 }
4276 inline ::PROTOBUF_NAMESPACE_ID::int32 MissionManager::waypoint_with_task_slip_radius() const {
4277  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.waypoint_with_task_slip_radius)
4278  return _internal_waypoint_with_task_slip_radius();
4279 }
4280 inline void MissionManager::_internal_set_waypoint_with_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
4281  _has_bits_[1] |= 0x02000000u;
4282  waypoint_with_task_slip_radius_ = value;
4283 }
4284 inline void MissionManager::set_waypoint_with_task_slip_radius(::PROTOBUF_NAMESPACE_ID::int32 value) {
4285  _internal_set_waypoint_with_task_slip_radius(value);
4286  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.waypoint_with_task_slip_radius)
4287 }
4288 
4289 // optional .jaiabot.config.MissionManager.ResolveNoForwardProgress resolve_no_forward_progress = 88;
4290 inline bool MissionManager::_internal_has_resolve_no_forward_progress() const {
4291  bool value = (_has_bits_[0] & 0x00000400u) != 0;
4292  PROTOBUF_ASSUME(!value || resolve_no_forward_progress_ != nullptr);
4293  return value;
4294 }
4295 inline bool MissionManager::has_resolve_no_forward_progress() const {
4296  return _internal_has_resolve_no_forward_progress();
4297 }
4298 inline void MissionManager::clear_resolve_no_forward_progress() {
4299  if (resolve_no_forward_progress_ != nullptr) resolve_no_forward_progress_->Clear();
4300  _has_bits_[0] &= ~0x00000400u;
4301 }
4302 inline const ::jaiabot::config::MissionManager_ResolveNoForwardProgress& MissionManager::_internal_resolve_no_forward_progress() const {
4303  const ::jaiabot::config::MissionManager_ResolveNoForwardProgress* p = resolve_no_forward_progress_;
4304  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::config::MissionManager_ResolveNoForwardProgress*>(
4306 }
4307 inline const ::jaiabot::config::MissionManager_ResolveNoForwardProgress& MissionManager::resolve_no_forward_progress() const {
4308  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.resolve_no_forward_progress)
4309  return _internal_resolve_no_forward_progress();
4310 }
4311 inline void MissionManager::unsafe_arena_set_allocated_resolve_no_forward_progress(
4312  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* resolve_no_forward_progress) {
4313  if (GetArena() == nullptr) {
4314  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(resolve_no_forward_progress_);
4315  }
4316  resolve_no_forward_progress_ = resolve_no_forward_progress;
4317  if (resolve_no_forward_progress) {
4318  _has_bits_[0] |= 0x00000400u;
4319  } else {
4320  _has_bits_[0] &= ~0x00000400u;
4321  }
4322  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.resolve_no_forward_progress)
4323 }
4324 inline ::jaiabot::config::MissionManager_ResolveNoForwardProgress* MissionManager::release_resolve_no_forward_progress() {
4325  auto temp = unsafe_arena_release_resolve_no_forward_progress();
4326  if (GetArena() != nullptr) {
4327  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4328  }
4329  return temp;
4330 }
4331 inline ::jaiabot::config::MissionManager_ResolveNoForwardProgress* MissionManager::unsafe_arena_release_resolve_no_forward_progress() {
4332  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.resolve_no_forward_progress)
4333  _has_bits_[0] &= ~0x00000400u;
4334  ::jaiabot::config::MissionManager_ResolveNoForwardProgress* temp = resolve_no_forward_progress_;
4335  resolve_no_forward_progress_ = nullptr;
4336  return temp;
4337 }
4338 inline ::jaiabot::config::MissionManager_ResolveNoForwardProgress* MissionManager::_internal_mutable_resolve_no_forward_progress() {
4339  _has_bits_[0] |= 0x00000400u;
4340  if (resolve_no_forward_progress_ == nullptr) {
4341  auto* p = CreateMaybeMessage<::jaiabot::config::MissionManager_ResolveNoForwardProgress>(GetArena());
4342  resolve_no_forward_progress_ = p;
4343  }
4344  return resolve_no_forward_progress_;
4345 }
4346 inline ::jaiabot::config::MissionManager_ResolveNoForwardProgress* MissionManager::mutable_resolve_no_forward_progress() {
4347  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.resolve_no_forward_progress)
4348  return _internal_mutable_resolve_no_forward_progress();
4349 }
4350 inline void MissionManager::set_allocated_resolve_no_forward_progress(::jaiabot::config::MissionManager_ResolveNoForwardProgress* resolve_no_forward_progress) {
4351  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
4352  if (message_arena == nullptr) {
4353  delete resolve_no_forward_progress_;
4354  }
4355  if (resolve_no_forward_progress) {
4356  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4357  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(resolve_no_forward_progress);
4358  if (message_arena != submessage_arena) {
4359  resolve_no_forward_progress = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4360  message_arena, resolve_no_forward_progress, submessage_arena);
4361  }
4362  _has_bits_[0] |= 0x00000400u;
4363  } else {
4364  _has_bits_[0] &= ~0x00000400u;
4365  }
4366  resolve_no_forward_progress_ = resolve_no_forward_progress;
4367  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.resolve_no_forward_progress)
4368 }
4369 
4370 // required uint32 subnet_mask = 89;
4371 inline bool MissionManager::_internal_has_subnet_mask() const {
4372  bool value = (_has_bits_[0] & 0x00040000u) != 0;
4373  return value;
4374 }
4375 inline bool MissionManager::has_subnet_mask() const {
4376  return _internal_has_subnet_mask();
4377 }
4378 inline void MissionManager::clear_subnet_mask() {
4379  subnet_mask_ = 0u;
4380  _has_bits_[0] &= ~0x00040000u;
4381 }
4382 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::_internal_subnet_mask() const {
4383  return subnet_mask_;
4384 }
4385 inline ::PROTOBUF_NAMESPACE_ID::uint32 MissionManager::subnet_mask() const {
4386  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.subnet_mask)
4387  return _internal_subnet_mask();
4388 }
4389 inline void MissionManager::_internal_set_subnet_mask(::PROTOBUF_NAMESPACE_ID::uint32 value) {
4390  _has_bits_[0] |= 0x00040000u;
4391  subnet_mask_ = value;
4392 }
4393 inline void MissionManager::set_subnet_mask(::PROTOBUF_NAMESPACE_ID::uint32 value) {
4394  _internal_set_subnet_mask(value);
4395  // @@protoc_insertion_point(field_set:jaiabot.config.MissionManager.subnet_mask)
4396 }
4397 
4398 // optional .jaiabot.protobuf.CameraCommand start_camera_command = 90;
4399 inline bool MissionManager::_internal_has_start_camera_command() const {
4400  bool value = (_has_bits_[0] & 0x00000800u) != 0;
4401  PROTOBUF_ASSUME(!value || start_camera_command_ != nullptr);
4402  return value;
4403 }
4404 inline bool MissionManager::has_start_camera_command() const {
4405  return _internal_has_start_camera_command();
4406 }
4407 inline const ::jaiabot::protobuf::CameraCommand& MissionManager::_internal_start_camera_command() const {
4408  const ::jaiabot::protobuf::CameraCommand* p = start_camera_command_;
4409  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::CameraCommand*>(
4411 }
4412 inline const ::jaiabot::protobuf::CameraCommand& MissionManager::start_camera_command() const {
4413  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.start_camera_command)
4414  return _internal_start_camera_command();
4415 }
4416 inline void MissionManager::unsafe_arena_set_allocated_start_camera_command(
4417  ::jaiabot::protobuf::CameraCommand* start_camera_command) {
4418  if (GetArena() == nullptr) {
4419  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_camera_command_);
4420  }
4421  start_camera_command_ = start_camera_command;
4422  if (start_camera_command) {
4423  _has_bits_[0] |= 0x00000800u;
4424  } else {
4425  _has_bits_[0] &= ~0x00000800u;
4426  }
4427  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.start_camera_command)
4428 }
4429 inline ::jaiabot::protobuf::CameraCommand* MissionManager::release_start_camera_command() {
4430  auto temp = unsafe_arena_release_start_camera_command();
4431  if (GetArena() != nullptr) {
4432  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4433  }
4434  return temp;
4435 }
4436 inline ::jaiabot::protobuf::CameraCommand* MissionManager::unsafe_arena_release_start_camera_command() {
4437  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.start_camera_command)
4438  _has_bits_[0] &= ~0x00000800u;
4439  ::jaiabot::protobuf::CameraCommand* temp = start_camera_command_;
4440  start_camera_command_ = nullptr;
4441  return temp;
4442 }
4443 inline ::jaiabot::protobuf::CameraCommand* MissionManager::_internal_mutable_start_camera_command() {
4444  _has_bits_[0] |= 0x00000800u;
4445  if (start_camera_command_ == nullptr) {
4446  auto* p = CreateMaybeMessage<::jaiabot::protobuf::CameraCommand>(GetArena());
4447  start_camera_command_ = p;
4448  }
4449  return start_camera_command_;
4450 }
4451 inline ::jaiabot::protobuf::CameraCommand* MissionManager::mutable_start_camera_command() {
4452  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.start_camera_command)
4453  return _internal_mutable_start_camera_command();
4454 }
4455 inline void MissionManager::set_allocated_start_camera_command(::jaiabot::protobuf::CameraCommand* start_camera_command) {
4456  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
4457  if (message_arena == nullptr) {
4458  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_camera_command_);
4459  }
4460  if (start_camera_command) {
4461  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4462  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_camera_command)->GetArena();
4463  if (message_arena != submessage_arena) {
4464  start_camera_command = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4465  message_arena, start_camera_command, submessage_arena);
4466  }
4467  _has_bits_[0] |= 0x00000800u;
4468  } else {
4469  _has_bits_[0] &= ~0x00000800u;
4470  }
4471  start_camera_command_ = start_camera_command;
4472  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.start_camera_command)
4473 }
4474 
4475 // optional .jaiabot.protobuf.CameraCommand stop_camera_command = 91;
4476 inline bool MissionManager::_internal_has_stop_camera_command() const {
4477  bool value = (_has_bits_[0] & 0x00001000u) != 0;
4478  PROTOBUF_ASSUME(!value || stop_camera_command_ != nullptr);
4479  return value;
4480 }
4481 inline bool MissionManager::has_stop_camera_command() const {
4482  return _internal_has_stop_camera_command();
4483 }
4484 inline const ::jaiabot::protobuf::CameraCommand& MissionManager::_internal_stop_camera_command() const {
4485  const ::jaiabot::protobuf::CameraCommand* p = stop_camera_command_;
4486  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::CameraCommand*>(
4488 }
4489 inline const ::jaiabot::protobuf::CameraCommand& MissionManager::stop_camera_command() const {
4490  // @@protoc_insertion_point(field_get:jaiabot.config.MissionManager.stop_camera_command)
4491  return _internal_stop_camera_command();
4492 }
4493 inline void MissionManager::unsafe_arena_set_allocated_stop_camera_command(
4494  ::jaiabot::protobuf::CameraCommand* stop_camera_command) {
4495  if (GetArena() == nullptr) {
4496  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(stop_camera_command_);
4497  }
4498  stop_camera_command_ = stop_camera_command;
4499  if (stop_camera_command) {
4500  _has_bits_[0] |= 0x00001000u;
4501  } else {
4502  _has_bits_[0] &= ~0x00001000u;
4503  }
4504  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.MissionManager.stop_camera_command)
4505 }
4506 inline ::jaiabot::protobuf::CameraCommand* MissionManager::release_stop_camera_command() {
4507  auto temp = unsafe_arena_release_stop_camera_command();
4508  if (GetArena() != nullptr) {
4509  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4510  }
4511  return temp;
4512 }
4513 inline ::jaiabot::protobuf::CameraCommand* MissionManager::unsafe_arena_release_stop_camera_command() {
4514  // @@protoc_insertion_point(field_release:jaiabot.config.MissionManager.stop_camera_command)
4515  _has_bits_[0] &= ~0x00001000u;
4516  ::jaiabot::protobuf::CameraCommand* temp = stop_camera_command_;
4517  stop_camera_command_ = nullptr;
4518  return temp;
4519 }
4520 inline ::jaiabot::protobuf::CameraCommand* MissionManager::_internal_mutable_stop_camera_command() {
4521  _has_bits_[0] |= 0x00001000u;
4522  if (stop_camera_command_ == nullptr) {
4523  auto* p = CreateMaybeMessage<::jaiabot::protobuf::CameraCommand>(GetArena());
4524  stop_camera_command_ = p;
4525  }
4526  return stop_camera_command_;
4527 }
4528 inline ::jaiabot::protobuf::CameraCommand* MissionManager::mutable_stop_camera_command() {
4529  // @@protoc_insertion_point(field_mutable:jaiabot.config.MissionManager.stop_camera_command)
4530  return _internal_mutable_stop_camera_command();
4531 }
4532 inline void MissionManager::set_allocated_stop_camera_command(::jaiabot::protobuf::CameraCommand* stop_camera_command) {
4533  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
4534  if (message_arena == nullptr) {
4535  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(stop_camera_command_);
4536  }
4537  if (stop_camera_command) {
4538  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4539  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(stop_camera_command)->GetArena();
4540  if (message_arena != submessage_arena) {
4541  stop_camera_command = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4542  message_arena, stop_camera_command, submessage_arena);
4543  }
4544  _has_bits_[0] |= 0x00001000u;
4545  } else {
4546  _has_bits_[0] &= ~0x00001000u;
4547  }
4548  stop_camera_command_ = stop_camera_command;
4549  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.MissionManager.stop_camera_command)
4550 }
4551 
4552 #ifdef __GNUC__
4553  #pragma GCC diagnostic pop
4554 #endif // __GNUC__
4555 // -------------------------------------------------------------------
4556 
4557 
4558 // @@protoc_insertion_point(namespace_scope)
4559 
4560 } // namespace config
4561 } // namespace jaiabot
4562 
4563 PROTOBUF_NAMESPACE_OPEN
4564 
4565 template <> struct is_proto_enum< ::jaiabot::config::MissionManager_RemoteControlSetpointEnd> : ::std::true_type {};
4566 template <>
4567 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::config::MissionManager_RemoteControlSetpointEnd>() {
4569 }
4570 template <> struct is_proto_enum< ::jaiabot::config::MissionManager_DownloadFileTypes> : ::std::true_type {};
4571 template <>
4572 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::config::MissionManager_DownloadFileTypes>() {
4574 }
4575 template <> struct is_proto_enum< ::jaiabot::config::MissionManager_EngineeringTestMode> : ::std::true_type {};
4576 template <>
4577 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::config::MissionManager_EngineeringTestMode>() {
4579 }
4580 
4581 PROTOBUF_NAMESPACE_CLOSE
4582 
4583 // @@protoc_insertion_point(global_scope)
4584 
4585 #include <google/protobuf/port_undef.inc>
4586 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_bin_2fmission_5fmanager_2fconfig_2eproto
static const MissionManager_ResolveNoForwardProgress * internal_default_instance()
Definition: config.pb.h:209
void MergeFrom(const MissionManager_ResolveNoForwardProgress &from)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type pitch_angle_min_check_time_dimension
Definition: config.pb.h:1815
void set_data_preoffload_script(const char *value, size_t size)
void set_trigger_timeout(::PROTOBUF_NAMESPACE_ID::int32 value)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition: config.pb.h:193
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * RemoteControlSetpointEnd_descriptor()
Definition: config.pb.h:553
void set_dive_eps_to_determine_diving_with_units(Quantity value_w_units)
Definition: config.pb.h:1837
Quantity startup_timeout_with_units() const
Definition: config.pb.h:1631
Quantity motor_on_time_max_with_units() const
Definition: config.pb.h:1811
void set_resume_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:347
Quantity powered_descent_timeout_with_units() const
Definition: config.pb.h:1691
void set_allocated_data_preoffload_script(std::string *data_preoffload_script)
Quantity trigger_timeout_with_units() const
Definition: config.pb.h:396
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_include_goal_timeout_states()
void set_bot_not_rising_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1777
MissionManager_ResolveNoForwardProgress * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:239
boost::units::unit< motor_on_time_increment_dimension, boost::units::si::system > motor_on_time_increment_unit
Definition: config.pb.h:1789
boost::units::quantity< motor_on_time_increment_unit, google::protobuf::int32 > motor_on_time_increment_with_units() const
Definition: config.pb.h:1799
static bool DownloadFileTypes_IsValid(int value)
Definition: config.pb.h:575
boost::units::unit< dive_depth_eps_dimension, boost::units::si::system > dive_depth_eps_unit
Definition: config.pb.h:1729
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type dive_depth_eps_dimension
Definition: config.pb.h:1725
MissionManager * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:493
void Swap(MissionManager_ResolveNoForwardProgress *other)
Definition: config.pb.h:219
void add_ignore_error(::jaiabot::protobuf::Error value)
static bool RemoteControlSetpointEnd_Parse(const std::string &name, RemoteControlSetpointEnd *value)
Definition: config.pb.h:563
void set_detect_bottom_logic_init_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1702
boost::units::quantity< detect_bottom_logic_init_timeout_unit, double > detect_bottom_logic_init_timeout_with_units() const
Definition: config.pb.h:1709
::PROTOBUF_NAMESPACE_ID::int32 desired_speed_threshold() const
boost::units::quantity< startup_timeout_unit, double > startup_timeout_with_units() const
Definition: config.pb.h:1634
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MissionManager & operator=(const MissionManager &from)
Definition: config.pb.h:431
boost::units::unit< powered_ascent_motor_off_timeout_dimension, boost::units::si::system > powered_ascent_motor_off_timeout_unit
Definition: config.pb.h:1654
MissionManager & operator=(MissionManager &&from) noexcept
Definition: config.pb.h:435
Quantity dive_surface_eps_with_units() const
Definition: config.pb.h:1766
boost::units::unit< trigger_timeout_dimension, boost::units::si::system > trigger_timeout_unit
Definition: config.pb.h:389
int include_goal_timeout_states_size() const
Quantity bottoming_timeout_with_units() const
Definition: config.pb.h:1751
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * EngineeringTestMode_descriptor()
Definition: config.pb.h:617
virtual ~MissionManager_ResolveNoForwardProgress()
void UnsafeArenaSwap(MissionManager_ResolveNoForwardProgress *other)
Definition: config.pb.h:227
void set_desired_speed_threshold(::PROTOBUF_NAMESPACE_ID::int32 value)
Quantity pitch_threshold_with_units() const
Definition: config.pb.h:366
friend void swap(MissionManager_ResolveNoForwardProgress &a, MissionManager_ResolveNoForwardProgress &b)
Definition: config.pb.h:216
boost::units::quantity< powered_ascent_motor_off_timeout_unit, google::protobuf::int32 > powered_ascent_motor_off_timeout_with_units() const
Definition: config.pb.h:1664
boost::units::unit< motor_on_time_max_dimension, boost::units::si::system > motor_on_time_max_unit
Definition: config.pb.h:1804
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type dive_surface_eps_dimension
Definition: config.pb.h:1755
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type detect_bottom_logic_init_timeout_dimension
Definition: config.pb.h:1695
Quantity bot_not_rising_timeout_with_units() const
Definition: config.pb.h:1781
static const std::string & RemoteControlSetpointEnd_Name(T enum_t_value)
Definition: config.pb.h:557
std::string * mutable_data_preoffload_script()
boost::units::plane_angle_dimension pitch_threshold_dimension
Definition: config.pb.h:355
void set_pitch_threshold_with_units(Quantity value_w_units)
Definition: config.pb.h:362
boost::units::unit< powered_descent_timeout_dimension, boost::units::si::system > powered_descent_timeout_unit
Definition: config.pb.h:1684
void set_include_goal_timeout_states(int index, ::jaiabot::protobuf::MissionState value)
Quantity pitch_angle_min_check_time_with_units() const
Definition: config.pb.h:1826
boost::units::unit< powered_ascent_motor_on_timeout_dimension, boost::units::si::system > powered_ascent_motor_on_timeout_unit
Definition: config.pb.h:1639
boost::units::quantity< pitch_angle_min_check_time_unit, double > pitch_angle_min_check_time_with_units() const
Definition: config.pb.h:1829
static const std::string & DownloadFileTypes_Name(T enum_t_value)
Definition: config.pb.h:589
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: config.pb.h:203
Quantity powered_ascent_motor_on_timeout_with_units() const
Definition: config.pb.h:1646
void add_test_mode(::jaiabot::config::MissionManager_EngineeringTestMode value)
boost::units::unit< pitch_angle_min_check_time_dimension, boost::units::si::system > pitch_angle_min_check_time_unit
Definition: config.pb.h:1819
boost::units::quantity< detect_bottom_logic_after_hold_timeout_unit, double > detect_bottom_logic_after_hold_timeout_with_units() const
Definition: config.pb.h:1724
boost::units::unit< dive_prep_timeout_dimension, boost::units::si::system > dive_prep_timeout_unit
Definition: config.pb.h:1669
boost::units::quantity< dive_prep_timeout_unit, google::protobuf::int32 > dive_prep_timeout_with_units() const
Definition: config.pb.h:1679
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MissionManager_ResolveNoForwardProgress(MissionManager_ResolveNoForwardProgress &&from) noexcept
Definition: config.pb.h:172
boost::units::quantity< dive_depth_eps_unit, double > dive_depth_eps_with_units() const
Definition: config.pb.h:1739
void set_pitch_angle_min_check_time_with_units(Quantity value_w_units)
Definition: config.pb.h:1822
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type bottoming_timeout_dimension
Definition: config.pb.h:1740
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: config.pb.h:200
Quantity dive_prep_timeout_with_units() const
Definition: config.pb.h:1676
boost::units::derived_dimension< boost::units::length_base_dimension, 1 >::type dive_eps_to_determine_diving_dimension
Definition: config.pb.h:1830
void set_dive_depth_eps_with_units(Quantity value_w_units)
Definition: config.pb.h:1732
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition: config.pb.h:190
void set_detect_bottom_logic_after_hold_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1717
void set_data_preoffload_script(std::string &&value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MissionManager * internal_default_instance()
Definition: config.pb.h:463
boost::units::quantity< powered_ascent_motor_on_timeout_unit, google::protobuf::int32 > powered_ascent_motor_on_timeout_with_units() const
Definition: config.pb.h:1649
Quantity dive_eps_to_determine_diving_with_units() const
Definition: config.pb.h:1841
boost::units::unit< bottoming_timeout_dimension, boost::units::si::system > bottoming_timeout_unit
Definition: config.pb.h:1744
void CopyFrom(const MissionManager &from)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type bot_not_rising_timeout_dimension
Definition: config.pb.h:1770
MissionManager_EngineeringTestMode EngineeringTestMode
Definition: config.pb.h:600
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type powered_descent_timeout_dimension
Definition: config.pb.h:1680
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type motor_on_time_increment_dimension
Definition: config.pb.h:1785
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type resume_timeout_dimension
Definition: config.pb.h:342
void UnsafeArenaSwap(MissionManager *other)
Definition: config.pb.h:481
boost::units::unit< dive_eps_to_determine_diving_dimension, boost::units::si::system > dive_eps_to_determine_diving_unit
Definition: config.pb.h:1834
::PROTOBUF_NAMESPACE_ID::int32 trigger_timeout() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & test_mode() const
MissionManager(MissionManager &&from) noexcept
Definition: config.pb.h:426
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DownloadFileTypes_descriptor()
Definition: config.pb.h:585
static const MissionManager_ResolveNoForwardProgress & default_instance()
Quantity resume_timeout_with_units() const
Definition: config.pb.h:351
boost::units::unit< resume_timeout_dimension, boost::units::si::system > resume_timeout_unit
Definition: config.pb.h:344
boost::units::unit< detect_bottom_logic_init_timeout_dimension, boost::units::si::system > detect_bottom_logic_init_timeout_unit
Definition: config.pb.h:1699
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type failed_startup_log_timeout_dimension
Definition: config.pb.h:1845
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type detect_bottom_logic_after_hold_timeout_dimension
Definition: config.pb.h:1710
void set_bottoming_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1747
boost::units::quantity< bottoming_timeout_unit, double > bottoming_timeout_with_units() const
Definition: config.pb.h:1754
void set_failed_startup_log_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1852
::jaiabot::config::MissionManager_EngineeringTestMode test_mode(int index) const
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type motor_on_time_max_dimension
Definition: config.pb.h:1800
MissionManager * New() const final
Definition: config.pb.h:489
const std::string & data_preoffload_script() const
static bool DownloadFileTypes_Parse(const std::string &name, DownloadFileTypes *value)
Definition: config.pb.h:595
void set_desired_speed_threshold_with_units(Quantity value_w_units)
Definition: config.pb.h:377
boost::units::quantity< dive_surface_eps_unit, double > dive_surface_eps_with_units() const
Definition: config.pb.h:1769
Quantity desired_speed_threshold_with_units() const
Definition: config.pb.h:381
boost::units::unit< failed_startup_log_timeout_dimension, boost::units::si::system > failed_startup_log_timeout_unit
Definition: config.pb.h:1849
Quantity detect_bottom_logic_after_hold_timeout_with_units() const
Definition: config.pb.h:1721
boost::units::quantity< resume_timeout_unit, google::protobuf::int32 > resume_timeout_with_units() const
Definition: config.pb.h:354
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & include_goal_timeout_states() const
boost::units::quantity< dive_eps_to_determine_diving_unit, double > dive_eps_to_determine_diving_with_units() const
Definition: config.pb.h:1844
::PROTOBUF_NAMESPACE_ID::int32 pitch_threshold() const
::PROTOBUF_NAMESPACE_ID::int32 resume_timeout() const
bool has_desired_speed_threshold() const
boost::units::quantity< trigger_timeout_unit, google::protobuf::int32 > trigger_timeout_with_units() const
Definition: config.pb.h:399
void set_motor_on_time_max_with_units(Quantity value_w_units)
Definition: config.pb.h:1807
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type startup_timeout_dimension
Definition: config.pb.h:1622
boost::units::quantity< failed_startup_log_timeout_unit, google::protobuf::int32 > failed_startup_log_timeout_with_units() const
Definition: config.pb.h:1859
MissionManager(const MissionManager &from)
void set_pitch_threshold(::PROTOBUF_NAMESPACE_ID::int32 value)
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type dive_prep_timeout_dimension
Definition: config.pb.h:1665
void set_data_preoffload_script(const std::string &value)
boost::units::unit< bot_not_rising_timeout_dimension, boost::units::si::system > bot_not_rising_timeout_unit
Definition: config.pb.h:1774
boost::units::quantity< pitch_threshold_unit, google::protobuf::int32 > pitch_threshold_with_units() const
Definition: config.pb.h:369
::jaiabot::protobuf::MissionState include_goal_timeout_states(int index) const
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type powered_ascent_motor_off_timeout_dimension
Definition: config.pb.h:1650
boost::units::quantity< motor_on_time_max_unit, google::protobuf::int32 > motor_on_time_max_with_units() const
Definition: config.pb.h:1814
boost::units::unit< pitch_threshold_dimension, boost::units::degree::system > pitch_threshold_unit
Definition: config.pb.h:359
MissionManager_RemoteControlSetpointEnd RemoteControlSetpointEnd
Definition: config.pb.h:538
void set_powered_ascent_motor_off_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1657
MissionManager_DownloadFileTypes DownloadFileTypes
Definition: config.pb.h:568
void set_trigger_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:392
boost::units::derived_dimension< boost::units::length_base_dimension, 1, boost::units::time_base_dimension,-1 >::type desired_speed_threshold_dimension
Definition: config.pb.h:370
void CopyFrom(const MissionManager_ResolveNoForwardProgress &from)
Quantity failed_startup_log_timeout_with_units() const
Definition: config.pb.h:1856
MissionManager_ResolveNoForwardProgress(::PROTOBUF_NAMESPACE_ID::Arena *arena)
Quantity motor_on_time_increment_with_units() const
Definition: config.pb.h:1796
::jaiabot::protobuf::Error ignore_error(int index) const
void set_motor_on_time_increment_with_units(Quantity value_w_units)
Definition: config.pb.h:1792
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_ignore_error()
Quantity dive_depth_eps_with_units() const
Definition: config.pb.h:1736
boost::units::quantity< bot_not_rising_timeout_unit, double > bot_not_rising_timeout_with_units() const
Definition: config.pb.h:1784
void add_include_goal_timeout_states(::jaiabot::protobuf::MissionState value)
void set_powered_ascent_motor_on_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1642
std::string * release_data_preoffload_script()
boost::units::unit< desired_speed_threshold_dimension, boost::units::si::system > desired_speed_threshold_unit
Definition: config.pb.h:374
MissionManager_ResolveNoForwardProgress & operator=(const MissionManager_ResolveNoForwardProgress &from)
Definition: config.pb.h:177
friend void swap(MissionManager &a, MissionManager &b)
Definition: config.pb.h:470
void Swap(MissionManager *other)
Definition: config.pb.h:473
MissionManager_ResolveNoForwardProgress(const MissionManager_ResolveNoForwardProgress &from)
void set_data_preoffload_script(const char *value)
void set_resume_timeout(::PROTOBUF_NAMESPACE_ID::int32 value)
void MergeFrom(const MissionManager &from)
static const std::string & EngineeringTestMode_Name(T enum_t_value)
Definition: config.pb.h:621
static const MissionManager & default_instance()
Quantity powered_ascent_motor_off_timeout_with_units() const
Definition: config.pb.h:1661
static bool EngineeringTestMode_Parse(const std::string &name, EngineeringTestMode *value)
Definition: config.pb.h:627
boost::units::quantity< desired_speed_threshold_unit, google::protobuf::int32 > desired_speed_threshold_with_units() const
Definition: config.pb.h:384
static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed< std::string > _i_give_permission_to_break_this_code_default_log_archive_dir_
Definition: config.pb.h:1885
MissionManager_ResolveNoForwardProgress * New() const final
Definition: config.pb.h:235
boost::units::unit< startup_timeout_dimension, boost::units::si::system > startup_timeout_unit
Definition: config.pb.h:1624
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type trigger_timeout_dimension
Definition: config.pb.h:385
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & ignore_error() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: config.pb.h:197
static bool EngineeringTestMode_IsValid(int value)
Definition: config.pb.h:607
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type powered_ascent_motor_on_timeout_dimension
Definition: config.pb.h:1635
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_ignore_error(int index, ::jaiabot::protobuf::Error value)
void set_test_mode(int index, ::jaiabot::config::MissionManager_EngineeringTestMode value)
MissionManager_ResolveNoForwardProgress & operator=(MissionManager_ResolveNoForwardProgress &&from) noexcept
Definition: config.pb.h:181
void set_powered_descent_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1687
MissionManager_ResolveNoForwardProgress ResolveNoForwardProgress
Definition: config.pb.h:536
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_test_mode()
boost::units::unit< detect_bottom_logic_after_hold_timeout_dimension, boost::units::si::system > detect_bottom_logic_after_hold_timeout_unit
Definition: config.pb.h:1714
void set_dive_surface_eps_with_units(Quantity value_w_units)
Definition: config.pb.h:1762
MissionManager(::PROTOBUF_NAMESPACE_ID::Arena *arena)
boost::units::unit< dive_surface_eps_dimension, boost::units::si::system > dive_surface_eps_unit
Definition: config.pb.h:1759
boost::units::quantity< powered_descent_timeout_unit, google::protobuf::int32 > powered_descent_timeout_with_units() const
Definition: config.pb.h:1694
Quantity detect_bottom_logic_init_timeout_with_units() const
Definition: config.pb.h:1706
void set_dive_prep_timeout_with_units(Quantity value_w_units)
Definition: config.pb.h:1672
static bool RemoteControlSetpointEnd_IsValid(int value)
Definition: config.pb.h:543
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bin_2fmission_5fmanager_2fconfig_2eproto
constexpr MissionManager_RemoteControlSetpointEnd MissionManager_RemoteControlSetpointEnd_RemoteControlSetpointEnd_MIN
Definition: config.pb.h:97
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionManager_RemoteControlSetpointEnd_descriptor()
constexpr MissionManager_DownloadFileTypes MissionManager_DownloadFileTypes_DownloadFileTypes_MIN
Definition: config.pb.h:121
constexpr int MissionManager_EngineeringTestMode_EngineeringTestMode_ARRAYSIZE
Definition: config.pb.h:147
const std::string & MissionManager_RemoteControlSetpointEnd_Name(T enum_t_value)
Definition: config.pb.h:103
bool MissionManager_EngineeringTestMode_IsValid(int value)
MissionManagerDefaultTypeInternal _MissionManager_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionManager_EngineeringTestMode_descriptor()
bool MissionManager_EngineeringTestMode_Parse(const std::string &name, MissionManager_EngineeringTestMode *value)
Definition: config.pb.h:158
constexpr MissionManager_DownloadFileTypes MissionManager_DownloadFileTypes_DownloadFileTypes_MAX
Definition: config.pb.h:122
MissionManager_ResolveNoForwardProgressDefaultTypeInternal _MissionManager_ResolveNoForwardProgress_default_instance_
MissionManager_DownloadFileTypes
Definition: config.pb.h:115
@ MissionManager_DownloadFileTypes_NONE
Definition: config.pb.h:116
@ MissionManager_DownloadFileTypes_GOBY
Definition: config.pb.h:117
@ MissionManager_DownloadFileTypes_TASKPACKET
Definition: config.pb.h:118
MissionManager_RemoteControlSetpointEnd
Definition: config.pb.h:92
@ MissionManager_RemoteControlSetpointEnd_RC_SETPOINT_ENDS_IN_STATIONKEEP
Definition: config.pb.h:93
@ MissionManager_RemoteControlSetpointEnd_RC_SETPOINT_ENDS_IN_SURFACE_DRIFT
Definition: config.pb.h:94
constexpr MissionManager_RemoteControlSetpointEnd MissionManager_RemoteControlSetpointEnd_RemoteControlSetpointEnd_MAX
Definition: config.pb.h:98
bool MissionManager_DownloadFileTypes_IsValid(int value)
constexpr MissionManager_EngineeringTestMode MissionManager_EngineeringTestMode_EngineeringTestMode_MIN
Definition: config.pb.h:145
MissionManager_EngineeringTestMode
Definition: config.pb.h:139
@ MissionManager_EngineeringTestMode_ENGINEERING_TEST__ALWAYS_LOG_EVEN_WHEN_IDLE
Definition: config.pb.h:140
@ MissionManager_EngineeringTestMode_ENGINEERING_TEST__INDOOR_MODE__NO_GPS
Definition: config.pb.h:142
@ MissionManager_EngineeringTestMode_ENGINEERING_TEST__IGNORE_SOME_ERRORS
Definition: config.pb.h:141
constexpr MissionManager_EngineeringTestMode MissionManager_EngineeringTestMode_EngineeringTestMode_MAX
Definition: config.pb.h:146
bool MissionManager_RemoteControlSetpointEnd_Parse(const std::string &name, MissionManager_RemoteControlSetpointEnd *value)
Definition: config.pb.h:110
constexpr int MissionManager_RemoteControlSetpointEnd_RemoteControlSetpointEnd_ARRAYSIZE
Definition: config.pb.h:99
constexpr int MissionManager_DownloadFileTypes_DownloadFileTypes_ARRAYSIZE
Definition: config.pb.h:123
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MissionManager_DownloadFileTypes_descriptor()
bool MissionManager_DownloadFileTypes_Parse(const std::string &name, MissionManager_DownloadFileTypes *value)
Definition: config.pb.h:134
bool MissionManager_RemoteControlSetpointEnd_IsValid(int value)
const std::string & MissionManager_EngineeringTestMode_Name(T enum_t_value)
Definition: config.pb.h:151
const std::string & MissionManager_DownloadFileTypes_Name(T enum_t_value)
Definition: config.pb.h:127
bool Error_IsValid(int value)
HubInfoDefaultTypeInternal _HubInfo_default_instance_
CameraCommandDefaultTypeInternal _CameraCommand_default_instance_
bool MissionState_IsValid(int value)
extern ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< ::goby::acomms::protobuf::DriverConfig, ::PROTOBUF_NAMESPACE_ID::internal::MessageTypeTraits< ::jaiabot::udp::protobuf::Config >, 11, false > config
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[2] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: config.pb.h:71
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: config.pb.h:72
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: config.pb.h:70