JaiaBot  1.19.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/fusion/config.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_bin_2ffusion_2fconfig_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_bin_2ffusion_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/unknown_field_set.h>
35 #include "goby/middleware/protobuf/app_config.pb.h"
36 #include "goby/zeromq/protobuf/interprocess_config.pb.h"
40 #include "dccl/option_extensions.pb.h"
41 #include <boost/units/quantity.hpp>
42 #include <boost/units/absolute.hpp>
43 #include <boost/units/dimensionless_type.hpp>
44 #include <boost/units/make_scaled_unit.hpp>
45 
46 #include <boost/units/systems/si.hpp>
47 // @@protoc_insertion_point(includes)
48 #include <google/protobuf/port_def.inc>
49 #define PROTOBUF_INTERNAL_EXPORT_bin_2ffusion_2fconfig_2eproto
50 PROTOBUF_NAMESPACE_OPEN
51 namespace internal {
52 class AnyMetadata;
53 } // namespace internal
54 PROTOBUF_NAMESPACE_CLOSE
55 
56 // Internal implementation detail -- do not use these members.
58  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
59  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
60  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
61  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
62  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
63  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
64  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
65  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
66  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
67 };
68 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bin_2ffusion_2fconfig_2eproto;
69 namespace jaiabot {
70 namespace config {
71 class Fusion;
72 class FusionDefaultTypeInternal;
73 extern FusionDefaultTypeInternal _Fusion_default_instance_;
74 } // namespace config
75 } // namespace jaiabot
76 PROTOBUF_NAMESPACE_OPEN
77 template<> ::jaiabot::config::Fusion* Arena::CreateMaybeMessage<::jaiabot::config::Fusion>(Arena*);
78 PROTOBUF_NAMESPACE_CLOSE
79 namespace jaiabot {
80 namespace config {
81 
82 // ===================================================================
83 
84 class Fusion PROTOBUF_FINAL :
85  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.Fusion) */ {
86  public:
87  inline Fusion() : Fusion(nullptr) {};
88  virtual ~Fusion();
89 
90  Fusion(const Fusion& from);
91  Fusion(Fusion&& from) noexcept
92  : Fusion() {
93  *this = ::std::move(from);
94  }
95 
96  inline Fusion& operator=(const Fusion& from) {
97  CopyFrom(from);
98  return *this;
99  }
100  inline Fusion& operator=(Fusion&& from) noexcept {
101  if (GetArena() == from.GetArena()) {
102  if (this != &from) InternalSwap(&from);
103  } else {
104  CopyFrom(from);
105  }
106  return *this;
107  }
108 
109  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
110  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
111  }
112  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
113  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
114  }
115 
116  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
117  return GetDescriptor();
118  }
119  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
120  return GetMetadataStatic().descriptor;
121  }
122  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
123  return GetMetadataStatic().reflection;
124  }
125  static const Fusion& default_instance();
126 
127  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
128  static inline const Fusion* internal_default_instance() {
129  return reinterpret_cast<const Fusion*>(
131  }
132  static constexpr int kIndexInFileMessages =
133  0;
134 
135  friend void swap(Fusion& a, Fusion& b) {
136  a.Swap(&b);
137  }
138  inline void Swap(Fusion* other) {
139  if (other == this) return;
140  if (GetArena() == other->GetArena()) {
141  InternalSwap(other);
142  } else {
143  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
144  }
145  }
146  void UnsafeArenaSwap(Fusion* other) {
147  if (other == this) return;
148  GOOGLE_DCHECK(GetArena() == other->GetArena());
149  InternalSwap(other);
150  }
151 
152  // implements Message ----------------------------------------------
153 
154  inline Fusion* New() const final {
155  return CreateMaybeMessage<Fusion>(nullptr);
156  }
157 
158  Fusion* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
159  return CreateMaybeMessage<Fusion>(arena);
160  }
161  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
162  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
163  void CopyFrom(const Fusion& from);
164  void MergeFrom(const Fusion& from);
165  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
166  bool IsInitialized() const final;
167 
168  size_t ByteSizeLong() const final;
169  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
170  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
171  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
172  int GetCachedSize() const final { return _cached_size_.Get(); }
173 
174  private:
175  inline void SharedCtor();
176  inline void SharedDtor();
177  void SetCachedSize(int size) const final;
178  void InternalSwap(Fusion* other);
179  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
180  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
181  return "jaiabot.config.Fusion";
182  }
183  protected:
184  explicit Fusion(::PROTOBUF_NAMESPACE_ID::Arena* arena);
185  private:
186  static void ArenaDtor(void* object);
187  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
188  public:
189 
190  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
191  private:
192  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
193  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2ffusion_2fconfig_2eproto);
194  return ::descriptor_table_bin_2ffusion_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
195  }
196 
197  public:
198 
199  // nested types ----------------------------------------------------
200 
201  // accessors -------------------------------------------------------
202 
203  enum : int {
204  kDiscardLocationStatesFieldNumber = 30,
205  kIncludeCourseErrorDetectionStatesFieldNumber = 38,
206  kIncludeImuDetectionStatesFieldNumber = 39,
207  kDivingStatesFieldNumber = 49,
208  kBotGpsdDeviceFieldNumber = 50,
209  kAppFieldNumber = 1,
210  kInterprocessFieldNumber = 2,
211  kBotIdFieldNumber = 10,
212  kIsSimFieldNumber = 34,
213  kBotTypeFieldNumber = 11,
214  kHealthReportTimeoutSecondsFieldNumber = 12,
215  kInitDataHealthTimeoutSecondsFieldNumber = 15,
216  kDataTimeoutSecondsFieldNumber = 20,
217  kHeadingTimeoutSecondsFieldNumber = 21,
218  kCourseOverGroundTimeoutFieldNumber = 32,
219  kImuHeadingCourseMaxDiffFieldNumber = 31,
220  kImuIssueSolutionFieldNumber = 33,
221  kTotalImuIssueChecksFieldNumber = 35,
222  kImuDetectTimeoutFieldNumber = 36,
223  kBotStatusPeriodMsFieldNumber = 37,
224  kWatchBatteryPercentageFieldNumber = 40,
225  kBatteryPercentageLowLevelFieldNumber = 41,
226  kBatteryPercentageVeryLowLevelFieldNumber = 42,
227  kBatteryPercentageCriticallyLowLevelFieldNumber = 43,
228  kImuDetectPeriodFieldNumber = 44,
229  kImuIssueDetectHorizontalPitchChecksFieldNumber = 45,
230  kImuIssueDetectHorizontalPitchMinTimeFieldNumber = 46,
231  kImuDetectHorizontalPitchFieldNumber = 47,
232  kImuDetectDesiredHeadingVsCurrentMaxDiffFieldNumber = 48,
233  };
234  // repeated .jaiabot.protobuf.MissionState discard_location_states = 30;
236  private:
237  int _internal_discard_location_states_size() const;
238  public:
240  private:
241  ::jaiabot::protobuf::MissionState _internal_discard_location_states(int index) const;
242  void _internal_add_discard_location_states(::jaiabot::protobuf::MissionState value);
243  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_discard_location_states();
244  public:
248  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& discard_location_states() const;
249  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_discard_location_states();
250 
251  // repeated .jaiabot.protobuf.MissionState include_course_error_detection_states = 38;
253  private:
254  int _internal_include_course_error_detection_states_size() const;
255  public:
257  private:
258  ::jaiabot::protobuf::MissionState _internal_include_course_error_detection_states(int index) const;
259  void _internal_add_include_course_error_detection_states(::jaiabot::protobuf::MissionState value);
260  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_include_course_error_detection_states();
261  public:
265  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& include_course_error_detection_states() const;
266  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_include_course_error_detection_states();
267 
268  // repeated .jaiabot.protobuf.MissionState include_imu_detection_states = 39;
270  private:
271  int _internal_include_imu_detection_states_size() const;
272  public:
274  private:
275  ::jaiabot::protobuf::MissionState _internal_include_imu_detection_states(int index) const;
276  void _internal_add_include_imu_detection_states(::jaiabot::protobuf::MissionState value);
277  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_include_imu_detection_states();
278  public:
282  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& include_imu_detection_states() const;
283  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_include_imu_detection_states();
284 
285  // repeated .jaiabot.protobuf.MissionState diving_states = 49;
286  int diving_states_size() const;
287  private:
288  int _internal_diving_states_size() const;
289  public:
291  private:
292  ::jaiabot::protobuf::MissionState _internal_diving_states(int index) const;
293  void _internal_add_diving_states(::jaiabot::protobuf::MissionState value);
294  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_diving_states();
295  public:
299  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& diving_states() const;
300  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_diving_states();
301 
302  // required string bot_gpsd_device = 50;
303  bool has_bot_gpsd_device() const;
304  private:
305  bool _internal_has_bot_gpsd_device() const;
306  public:
308  const std::string& bot_gpsd_device() const;
309  void set_bot_gpsd_device(const std::string& value);
310  void set_bot_gpsd_device(std::string&& value);
311  void set_bot_gpsd_device(const char* value);
312  void set_bot_gpsd_device(const char* value, size_t size);
313  std::string* mutable_bot_gpsd_device();
314  std::string* release_bot_gpsd_device();
315  void set_allocated_bot_gpsd_device(std::string* bot_gpsd_device);
316  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
317  " string fields are deprecated and will be removed in a"
318  " future release.")
319  std::string* unsafe_arena_release_bot_gpsd_device();
320  GOOGLE_PROTOBUF_RUNTIME_DEPRECATED("The unsafe_arena_ accessors for"
321  " string fields are deprecated and will be removed in a"
322  " future release.")
323  void unsafe_arena_set_allocated_bot_gpsd_device(
324  std::string* bot_gpsd_device);
325  private:
326  const std::string& _internal_bot_gpsd_device() const;
327  void _internal_set_bot_gpsd_device(const std::string& value);
328  std::string* _internal_mutable_bot_gpsd_device();
329  public:
330 
331  // optional .goby.middleware.protobuf.AppConfig app = 1;
332  bool has_app() const;
333  private:
334  bool _internal_has_app() const;
335  public:
336  void clear_app();
337  const ::goby::middleware::protobuf::AppConfig& app() const;
338  ::goby::middleware::protobuf::AppConfig* release_app();
339  ::goby::middleware::protobuf::AppConfig* mutable_app();
340  void set_allocated_app(::goby::middleware::protobuf::AppConfig* app);
341  private:
342  const ::goby::middleware::protobuf::AppConfig& _internal_app() const;
343  ::goby::middleware::protobuf::AppConfig* _internal_mutable_app();
344  public:
345  void unsafe_arena_set_allocated_app(
346  ::goby::middleware::protobuf::AppConfig* app);
347  ::goby::middleware::protobuf::AppConfig* unsafe_arena_release_app();
348 
349  // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
350  bool has_interprocess() const;
351  private:
352  bool _internal_has_interprocess() const;
353  public:
354  void clear_interprocess();
355  const ::goby::zeromq::protobuf::InterProcessPortalConfig& interprocess() const;
356  ::goby::zeromq::protobuf::InterProcessPortalConfig* release_interprocess();
357  ::goby::zeromq::protobuf::InterProcessPortalConfig* mutable_interprocess();
358  void set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
359  private:
360  const ::goby::zeromq::protobuf::InterProcessPortalConfig& _internal_interprocess() const;
361  ::goby::zeromq::protobuf::InterProcessPortalConfig* _internal_mutable_interprocess();
362  public:
363  void unsafe_arena_set_allocated_interprocess(
364  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
365  ::goby::zeromq::protobuf::InterProcessPortalConfig* unsafe_arena_release_interprocess();
366 
367  // required int32 bot_id = 10;
368  bool has_bot_id() const;
369  private:
370  bool _internal_has_bot_id() const;
371  public:
372  void clear_bot_id();
373  ::PROTOBUF_NAMESPACE_ID::int32 bot_id() const;
374  void set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value);
375  private:
376  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bot_id() const;
377  void _internal_set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value);
378  public:
379 
380  // optional bool is_sim = 34 [default = false];
381  bool has_is_sim() const;
382  private:
383  bool _internal_has_is_sim() const;
384  public:
385  void clear_is_sim();
386  bool is_sim() const;
387  void set_is_sim(bool value);
388  private:
389  bool _internal_is_sim() const;
390  void _internal_set_is_sim(bool value);
391  public:
392 
393  // required .jaiabot.protobuf.BotStatus.BotType bot_type = 11;
394  bool has_bot_type() const;
395  private:
396  bool _internal_has_bot_type() const;
397  public:
398  void clear_bot_type();
399  ::jaiabot::protobuf::BotStatus_BotType bot_type() const;
400  void set_bot_type(::jaiabot::protobuf::BotStatus_BotType value);
401  private:
402  ::jaiabot::protobuf::BotStatus_BotType _internal_bot_type() const;
403  void _internal_set_bot_type(::jaiabot::protobuf::BotStatus_BotType value);
404  public:
405 
406  // optional int32 health_report_timeout_seconds = 12 [default = 20];
407  bool has_health_report_timeout_seconds() const;
408  private:
409  bool _internal_has_health_report_timeout_seconds() const;
410  public:
411  void clear_health_report_timeout_seconds();
412  ::PROTOBUF_NAMESPACE_ID::int32 health_report_timeout_seconds() const;
413  void set_health_report_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
414  private:
415  ::PROTOBUF_NAMESPACE_ID::int32 _internal_health_report_timeout_seconds() const;
416  void _internal_set_health_report_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
417  public:
418 
419  // optional int32 init_data_health_timeout_seconds = 15 [default = 20];
420  bool has_init_data_health_timeout_seconds() const;
421  private:
422  bool _internal_has_init_data_health_timeout_seconds() const;
423  public:
424  void clear_init_data_health_timeout_seconds();
425  ::PROTOBUF_NAMESPACE_ID::int32 init_data_health_timeout_seconds() const;
426  void set_init_data_health_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
427  private:
428  ::PROTOBUF_NAMESPACE_ID::int32 _internal_init_data_health_timeout_seconds() const;
429  void _internal_set_init_data_health_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
430  public:
431 
432  // optional int32 data_timeout_seconds = 20 [default = 20];
433  bool has_data_timeout_seconds() const;
434  private:
435  bool _internal_has_data_timeout_seconds() const;
436  public:
437  void clear_data_timeout_seconds();
438  ::PROTOBUF_NAMESPACE_ID::int32 data_timeout_seconds() const;
439  void set_data_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
440  private:
441  ::PROTOBUF_NAMESPACE_ID::int32 _internal_data_timeout_seconds() const;
442  void _internal_set_data_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
443  public:
444 
445  // optional int32 heading_timeout_seconds = 21 [default = 15];
446  bool has_heading_timeout_seconds() const;
447  private:
448  bool _internal_has_heading_timeout_seconds() const;
449  public:
450  void clear_heading_timeout_seconds();
451  ::PROTOBUF_NAMESPACE_ID::int32 heading_timeout_seconds() const;
452  void set_heading_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
453  private:
454  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heading_timeout_seconds() const;
455  void _internal_set_heading_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value);
456  public:
457 
458  // optional int32 course_over_ground_timeout = 32 [default = 3];
459  bool has_course_over_ground_timeout() const;
460  private:
461  bool _internal_has_course_over_ground_timeout() const;
462  public:
463  void clear_course_over_ground_timeout();
464  ::PROTOBUF_NAMESPACE_ID::int32 course_over_ground_timeout() const;
465  void set_course_over_ground_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
466  private:
467  ::PROTOBUF_NAMESPACE_ID::int32 _internal_course_over_ground_timeout() const;
468  void _internal_set_course_over_ground_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
469  public:
470 
471  // optional double imu_heading_course_max_diff = 31 [default = 45];
472  bool has_imu_heading_course_max_diff() const;
473  private:
474  bool _internal_has_imu_heading_course_max_diff() const;
475  public:
476  void clear_imu_heading_course_max_diff();
477  double imu_heading_course_max_diff() const;
478  void set_imu_heading_course_max_diff(double value);
479  private:
480  double _internal_imu_heading_course_max_diff() const;
481  void _internal_set_imu_heading_course_max_diff(double value);
482  public:
483 
484  // optional .jaiabot.protobuf.IMUIssue.SolutionType imu_issue_solution = 33 [default = REPORT_IMU];
485  bool has_imu_issue_solution() const;
486  private:
487  bool _internal_has_imu_issue_solution() const;
488  public:
489  void clear_imu_issue_solution();
490  ::jaiabot::protobuf::IMUIssue_SolutionType imu_issue_solution() const;
491  void set_imu_issue_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
492  private:
493  ::jaiabot::protobuf::IMUIssue_SolutionType _internal_imu_issue_solution() const;
494  void _internal_set_imu_issue_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
495  public:
496 
497  // optional int32 total_imu_issue_checks = 35 [default = 4];
498  bool has_total_imu_issue_checks() const;
499  private:
500  bool _internal_has_total_imu_issue_checks() const;
501  public:
502  void clear_total_imu_issue_checks();
503  ::PROTOBUF_NAMESPACE_ID::int32 total_imu_issue_checks() const;
504  void set_total_imu_issue_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
505  private:
506  ::PROTOBUF_NAMESPACE_ID::int32 _internal_total_imu_issue_checks() const;
507  void _internal_set_total_imu_issue_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
508  public:
509 
510  // optional int32 imu_detect_timeout = 36 [default = 20];
511  bool has_imu_detect_timeout() const;
512  private:
513  bool _internal_has_imu_detect_timeout() const;
514  public:
515  void clear_imu_detect_timeout();
516  ::PROTOBUF_NAMESPACE_ID::int32 imu_detect_timeout() const;
517  void set_imu_detect_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
518  private:
519  ::PROTOBUF_NAMESPACE_ID::int32 _internal_imu_detect_timeout() const;
520  void _internal_set_imu_detect_timeout(::PROTOBUF_NAMESPACE_ID::int32 value);
521  public:
522 
523  // optional int32 bot_status_period_ms = 37 [default = 1000];
524  bool has_bot_status_period_ms() const;
525  private:
526  bool _internal_has_bot_status_period_ms() const;
527  public:
528  void clear_bot_status_period_ms();
529  ::PROTOBUF_NAMESPACE_ID::int32 bot_status_period_ms() const;
530  void set_bot_status_period_ms(::PROTOBUF_NAMESPACE_ID::int32 value);
531  private:
532  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bot_status_period_ms() const;
533  void _internal_set_bot_status_period_ms(::PROTOBUF_NAMESPACE_ID::int32 value);
534  public:
535 
536  // optional bool watch_battery_percentage = 40 [default = true];
537  bool has_watch_battery_percentage() const;
538  private:
539  bool _internal_has_watch_battery_percentage() const;
540  public:
541  void clear_watch_battery_percentage();
542  bool watch_battery_percentage() const;
543  void set_watch_battery_percentage(bool value);
544  private:
545  bool _internal_watch_battery_percentage() const;
546  void _internal_set_watch_battery_percentage(bool value);
547  public:
548 
549  // optional float battery_percentage_low_level = 41 [default = 50];
550  bool has_battery_percentage_low_level() const;
551  private:
552  bool _internal_has_battery_percentage_low_level() const;
553  public:
554  void clear_battery_percentage_low_level();
555  float battery_percentage_low_level() const;
556  void set_battery_percentage_low_level(float value);
557  private:
558  float _internal_battery_percentage_low_level() const;
559  void _internal_set_battery_percentage_low_level(float value);
560  public:
561 
562  // optional float battery_percentage_very_low_level = 42 [default = 20];
563  bool has_battery_percentage_very_low_level() const;
564  private:
565  bool _internal_has_battery_percentage_very_low_level() const;
566  public:
567  void clear_battery_percentage_very_low_level();
568  float battery_percentage_very_low_level() const;
569  void set_battery_percentage_very_low_level(float value);
570  private:
571  float _internal_battery_percentage_very_low_level() const;
572  void _internal_set_battery_percentage_very_low_level(float value);
573  public:
574 
575  // optional float battery_percentage_critically_low_level = 43 [default = 10];
576  bool has_battery_percentage_critically_low_level() const;
577  private:
578  bool _internal_has_battery_percentage_critically_low_level() const;
579  public:
580  void clear_battery_percentage_critically_low_level();
581  float battery_percentage_critically_low_level() const;
582  void set_battery_percentage_critically_low_level(float value);
583  private:
584  float _internal_battery_percentage_critically_low_level() const;
585  void _internal_set_battery_percentage_critically_low_level(float value);
586  public:
587 
588  // optional int32 imu_detect_period = 44 [default = 1];
589  bool has_imu_detect_period() const;
590  private:
591  bool _internal_has_imu_detect_period() const;
592  public:
593  void clear_imu_detect_period();
594  ::PROTOBUF_NAMESPACE_ID::int32 imu_detect_period() const;
595  void set_imu_detect_period(::PROTOBUF_NAMESPACE_ID::int32 value);
596  private:
597  ::PROTOBUF_NAMESPACE_ID::int32 _internal_imu_detect_period() const;
598  void _internal_set_imu_detect_period(::PROTOBUF_NAMESPACE_ID::int32 value);
599  public:
600 
601  // optional int32 imu_issue_detect_horizontal_pitch_checks = 45 [default = 3];
602  bool has_imu_issue_detect_horizontal_pitch_checks() const;
603  private:
604  bool _internal_has_imu_issue_detect_horizontal_pitch_checks() const;
605  public:
606  void clear_imu_issue_detect_horizontal_pitch_checks();
607  ::PROTOBUF_NAMESPACE_ID::int32 imu_issue_detect_horizontal_pitch_checks() const;
608  void set_imu_issue_detect_horizontal_pitch_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
609  private:
610  ::PROTOBUF_NAMESPACE_ID::int32 _internal_imu_issue_detect_horizontal_pitch_checks() const;
611  void _internal_set_imu_issue_detect_horizontal_pitch_checks(::PROTOBUF_NAMESPACE_ID::int32 value);
612  public:
613 
614  // optional double imu_issue_detect_horizontal_pitch_min_time = 46 [default = 1, (.dccl.field) = {
615  bool has_imu_issue_detect_horizontal_pitch_min_time() const;
616  private:
617  bool _internal_has_imu_issue_detect_horizontal_pitch_min_time() const;
618  public:
619  void clear_imu_issue_detect_horizontal_pitch_min_time();
620  double imu_issue_detect_horizontal_pitch_min_time() const;
621  void set_imu_issue_detect_horizontal_pitch_min_time(double value);
622  private:
623  double _internal_imu_issue_detect_horizontal_pitch_min_time() const;
624  void _internal_set_imu_issue_detect_horizontal_pitch_min_time(double value);
625  public:
626 
627  // optional double imu_detect_horizontal_pitch = 47 [default = 45];
628  bool has_imu_detect_horizontal_pitch() const;
629  private:
630  bool _internal_has_imu_detect_horizontal_pitch() const;
631  public:
632  void clear_imu_detect_horizontal_pitch();
633  double imu_detect_horizontal_pitch() const;
634  void set_imu_detect_horizontal_pitch(double value);
635  private:
636  double _internal_imu_detect_horizontal_pitch() const;
637  void _internal_set_imu_detect_horizontal_pitch(double value);
638  public:
639 
640  // optional double imu_detect_desired_heading_vs_current_max_diff = 48 [default = 45];
641  bool has_imu_detect_desired_heading_vs_current_max_diff() const;
642  private:
643  bool _internal_has_imu_detect_desired_heading_vs_current_max_diff() const;
644  public:
645  void clear_imu_detect_desired_heading_vs_current_max_diff();
646  double imu_detect_desired_heading_vs_current_max_diff() const;
647  void set_imu_detect_desired_heading_vs_current_max_diff(double value);
648  private:
649  double _internal_imu_detect_desired_heading_vs_current_max_diff() const;
650  void _internal_set_imu_detect_desired_heading_vs_current_max_diff(double value);
651  public:
652 
653  typedef boost::units::derived_dimension< boost::units::time_base_dimension,1 >::type imu_issue_detect_horizontal_pitch_min_time_dimension;
654 
656 
657  template<typename Quantity >
658  void set_imu_issue_detect_horizontal_pitch_min_time_with_units(Quantity value_w_units)
659  { set_imu_issue_detect_horizontal_pitch_min_time(boost::units::quantity<imu_issue_detect_horizontal_pitch_min_time_unit,double >(value_w_units).value() ); };
660 
661  template<typename Quantity >
663  { return Quantity(imu_issue_detect_horizontal_pitch_min_time() * imu_issue_detect_horizontal_pitch_min_time_unit()); };
664 
665  boost::units::quantity< imu_issue_detect_horizontal_pitch_min_time_unit,double > imu_issue_detect_horizontal_pitch_min_time_with_units() const
666  { return imu_issue_detect_horizontal_pitch_min_time_with_units<boost::units::quantity< imu_issue_detect_horizontal_pitch_min_time_unit,double > >(); };
667 
668  // @@protoc_insertion_point(class_scope:jaiabot.config.Fusion)
669  private:
670  class _Internal;
671 
672  // helper for ByteSizeLong()
673  size_t RequiredFieldsByteSizeFallback() const;
674 
675  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
676  typedef void InternalArenaConstructable_;
677  typedef void DestructorSkippable_;
678  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
679  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
680  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> discard_location_states_;
681  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> include_course_error_detection_states_;
682  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> include_imu_detection_states_;
683  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> diving_states_;
684  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr bot_gpsd_device_;
685  ::goby::middleware::protobuf::AppConfig* app_;
686  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess_;
687  ::PROTOBUF_NAMESPACE_ID::int32 bot_id_;
688  bool is_sim_;
689  int bot_type_;
690  ::PROTOBUF_NAMESPACE_ID::int32 health_report_timeout_seconds_;
691  ::PROTOBUF_NAMESPACE_ID::int32 init_data_health_timeout_seconds_;
692  ::PROTOBUF_NAMESPACE_ID::int32 data_timeout_seconds_;
693  ::PROTOBUF_NAMESPACE_ID::int32 heading_timeout_seconds_;
694  ::PROTOBUF_NAMESPACE_ID::int32 course_over_ground_timeout_;
695  double imu_heading_course_max_diff_;
696  int imu_issue_solution_;
697  ::PROTOBUF_NAMESPACE_ID::int32 total_imu_issue_checks_;
698  ::PROTOBUF_NAMESPACE_ID::int32 imu_detect_timeout_;
699  ::PROTOBUF_NAMESPACE_ID::int32 bot_status_period_ms_;
700  bool watch_battery_percentage_;
701  float battery_percentage_low_level_;
702  float battery_percentage_very_low_level_;
703  float battery_percentage_critically_low_level_;
704  ::PROTOBUF_NAMESPACE_ID::int32 imu_detect_period_;
705  ::PROTOBUF_NAMESPACE_ID::int32 imu_issue_detect_horizontal_pitch_checks_;
706  double imu_issue_detect_horizontal_pitch_min_time_;
707  double imu_detect_horizontal_pitch_;
708  double imu_detect_desired_heading_vs_current_max_diff_;
709  friend struct ::TableStruct_bin_2ffusion_2fconfig_2eproto;
710 };
711 // ===================================================================
712 
713 
714 // ===================================================================
715 
716 #ifdef __GNUC__
717  #pragma GCC diagnostic push
718  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
719 #endif // __GNUC__
720 // Fusion
721 
722 // optional .goby.middleware.protobuf.AppConfig app = 1;
723 inline bool Fusion::_internal_has_app() const {
724  bool value = (_has_bits_[0] & 0x00000002u) != 0;
725  PROTOBUF_ASSUME(!value || app_ != nullptr);
726  return value;
727 }
728 inline bool Fusion::has_app() const {
729  return _internal_has_app();
730 }
731 inline const ::goby::middleware::protobuf::AppConfig& Fusion::_internal_app() const {
732  const ::goby::middleware::protobuf::AppConfig* p = app_;
733  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::AppConfig*>(
734  &::goby::middleware::protobuf::_AppConfig_default_instance_);
735 }
736 inline const ::goby::middleware::protobuf::AppConfig& Fusion::app() const {
737  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.app)
738  return _internal_app();
739 }
740 inline void Fusion::unsafe_arena_set_allocated_app(
741  ::goby::middleware::protobuf::AppConfig* app) {
742  if (GetArena() == nullptr) {
743  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
744  }
745  app_ = app;
746  if (app) {
747  _has_bits_[0] |= 0x00000002u;
748  } else {
749  _has_bits_[0] &= ~0x00000002u;
750  }
751  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Fusion.app)
752 }
753 inline ::goby::middleware::protobuf::AppConfig* Fusion::release_app() {
754  auto temp = unsafe_arena_release_app();
755  if (GetArena() != nullptr) {
756  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
757  }
758  return temp;
759 }
760 inline ::goby::middleware::protobuf::AppConfig* Fusion::unsafe_arena_release_app() {
761  // @@protoc_insertion_point(field_release:jaiabot.config.Fusion.app)
762  _has_bits_[0] &= ~0x00000002u;
763  ::goby::middleware::protobuf::AppConfig* temp = app_;
764  app_ = nullptr;
765  return temp;
766 }
767 inline ::goby::middleware::protobuf::AppConfig* Fusion::_internal_mutable_app() {
768  _has_bits_[0] |= 0x00000002u;
769  if (app_ == nullptr) {
770  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::AppConfig>(GetArena());
771  app_ = p;
772  }
773  return app_;
774 }
775 inline ::goby::middleware::protobuf::AppConfig* Fusion::mutable_app() {
776  // @@protoc_insertion_point(field_mutable:jaiabot.config.Fusion.app)
777  return _internal_mutable_app();
778 }
779 inline void Fusion::set_allocated_app(::goby::middleware::protobuf::AppConfig* app) {
780  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
781  if (message_arena == nullptr) {
782  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
783  }
784  if (app) {
785  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
786  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app)->GetArena();
787  if (message_arena != submessage_arena) {
788  app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
789  message_arena, app, submessage_arena);
790  }
791  _has_bits_[0] |= 0x00000002u;
792  } else {
793  _has_bits_[0] &= ~0x00000002u;
794  }
795  app_ = app;
796  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Fusion.app)
797 }
798 
799 // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
800 inline bool Fusion::_internal_has_interprocess() const {
801  bool value = (_has_bits_[0] & 0x00000004u) != 0;
802  PROTOBUF_ASSUME(!value || interprocess_ != nullptr);
803  return value;
804 }
805 inline bool Fusion::has_interprocess() const {
806  return _internal_has_interprocess();
807 }
808 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& Fusion::_internal_interprocess() const {
809  const ::goby::zeromq::protobuf::InterProcessPortalConfig* p = interprocess_;
810  return p != nullptr ? *p : *reinterpret_cast<const ::goby::zeromq::protobuf::InterProcessPortalConfig*>(
811  &::goby::zeromq::protobuf::_InterProcessPortalConfig_default_instance_);
812 }
813 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& Fusion::interprocess() const {
814  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.interprocess)
815  return _internal_interprocess();
816 }
817 inline void Fusion::unsafe_arena_set_allocated_interprocess(
818  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
819  if (GetArena() == nullptr) {
820  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
821  }
822  interprocess_ = interprocess;
823  if (interprocess) {
824  _has_bits_[0] |= 0x00000004u;
825  } else {
826  _has_bits_[0] &= ~0x00000004u;
827  }
828  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Fusion.interprocess)
829 }
830 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Fusion::release_interprocess() {
831  auto temp = unsafe_arena_release_interprocess();
832  if (GetArena() != nullptr) {
833  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
834  }
835  return temp;
836 }
837 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Fusion::unsafe_arena_release_interprocess() {
838  // @@protoc_insertion_point(field_release:jaiabot.config.Fusion.interprocess)
839  _has_bits_[0] &= ~0x00000004u;
840  ::goby::zeromq::protobuf::InterProcessPortalConfig* temp = interprocess_;
841  interprocess_ = nullptr;
842  return temp;
843 }
844 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Fusion::_internal_mutable_interprocess() {
845  _has_bits_[0] |= 0x00000004u;
846  if (interprocess_ == nullptr) {
847  auto* p = CreateMaybeMessage<::goby::zeromq::protobuf::InterProcessPortalConfig>(GetArena());
848  interprocess_ = p;
849  }
850  return interprocess_;
851 }
852 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Fusion::mutable_interprocess() {
853  // @@protoc_insertion_point(field_mutable:jaiabot.config.Fusion.interprocess)
854  return _internal_mutable_interprocess();
855 }
856 inline void Fusion::set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
857  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
858  if (message_arena == nullptr) {
859  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
860  }
861  if (interprocess) {
862  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
863  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess)->GetArena();
864  if (message_arena != submessage_arena) {
865  interprocess = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
866  message_arena, interprocess, submessage_arena);
867  }
868  _has_bits_[0] |= 0x00000004u;
869  } else {
870  _has_bits_[0] &= ~0x00000004u;
871  }
872  interprocess_ = interprocess;
873  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Fusion.interprocess)
874 }
875 
876 // required int32 bot_id = 10;
877 inline bool Fusion::_internal_has_bot_id() const {
878  bool value = (_has_bits_[0] & 0x00000008u) != 0;
879  return value;
880 }
881 inline bool Fusion::has_bot_id() const {
882  return _internal_has_bot_id();
883 }
884 inline void Fusion::clear_bot_id() {
885  bot_id_ = 0;
886  _has_bits_[0] &= ~0x00000008u;
887 }
888 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_bot_id() const {
889  return bot_id_;
890 }
891 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::bot_id() const {
892  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.bot_id)
893  return _internal_bot_id();
894 }
895 inline void Fusion::_internal_set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
896  _has_bits_[0] |= 0x00000008u;
897  bot_id_ = value;
898 }
899 inline void Fusion::set_bot_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
900  _internal_set_bot_id(value);
901  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.bot_id)
902 }
903 
904 // required .jaiabot.protobuf.BotStatus.BotType bot_type = 11;
905 inline bool Fusion::_internal_has_bot_type() const {
906  bool value = (_has_bits_[0] & 0x00000020u) != 0;
907  return value;
908 }
909 inline bool Fusion::has_bot_type() const {
910  return _internal_has_bot_type();
911 }
912 inline void Fusion::clear_bot_type() {
913  bot_type_ = 1;
914  _has_bits_[0] &= ~0x00000020u;
915 }
916 inline ::jaiabot::protobuf::BotStatus_BotType Fusion::_internal_bot_type() const {
917  return static_cast< ::jaiabot::protobuf::BotStatus_BotType >(bot_type_);
918 }
919 inline ::jaiabot::protobuf::BotStatus_BotType Fusion::bot_type() const {
920  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.bot_type)
921  return _internal_bot_type();
922 }
923 inline void Fusion::_internal_set_bot_type(::jaiabot::protobuf::BotStatus_BotType value) {
925  _has_bits_[0] |= 0x00000020u;
926  bot_type_ = value;
927 }
928 inline void Fusion::set_bot_type(::jaiabot::protobuf::BotStatus_BotType value) {
929  _internal_set_bot_type(value);
930  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.bot_type)
931 }
932 
933 // optional int32 health_report_timeout_seconds = 12 [default = 20];
934 inline bool Fusion::_internal_has_health_report_timeout_seconds() const {
935  bool value = (_has_bits_[0] & 0x00000040u) != 0;
936  return value;
937 }
938 inline bool Fusion::has_health_report_timeout_seconds() const {
939  return _internal_has_health_report_timeout_seconds();
940 }
941 inline void Fusion::clear_health_report_timeout_seconds() {
942  health_report_timeout_seconds_ = 20;
943  _has_bits_[0] &= ~0x00000040u;
944 }
945 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_health_report_timeout_seconds() const {
946  return health_report_timeout_seconds_;
947 }
948 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::health_report_timeout_seconds() const {
949  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.health_report_timeout_seconds)
950  return _internal_health_report_timeout_seconds();
951 }
952 inline void Fusion::_internal_set_health_report_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
953  _has_bits_[0] |= 0x00000040u;
954  health_report_timeout_seconds_ = value;
955 }
956 inline void Fusion::set_health_report_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
957  _internal_set_health_report_timeout_seconds(value);
958  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.health_report_timeout_seconds)
959 }
960 
961 // optional int32 init_data_health_timeout_seconds = 15 [default = 20];
962 inline bool Fusion::_internal_has_init_data_health_timeout_seconds() const {
963  bool value = (_has_bits_[0] & 0x00000080u) != 0;
964  return value;
965 }
966 inline bool Fusion::has_init_data_health_timeout_seconds() const {
967  return _internal_has_init_data_health_timeout_seconds();
968 }
969 inline void Fusion::clear_init_data_health_timeout_seconds() {
970  init_data_health_timeout_seconds_ = 20;
971  _has_bits_[0] &= ~0x00000080u;
972 }
973 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_init_data_health_timeout_seconds() const {
974  return init_data_health_timeout_seconds_;
975 }
976 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::init_data_health_timeout_seconds() const {
977  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.init_data_health_timeout_seconds)
978  return _internal_init_data_health_timeout_seconds();
979 }
980 inline void Fusion::_internal_set_init_data_health_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
981  _has_bits_[0] |= 0x00000080u;
982  init_data_health_timeout_seconds_ = value;
983 }
984 inline void Fusion::set_init_data_health_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
985  _internal_set_init_data_health_timeout_seconds(value);
986  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.init_data_health_timeout_seconds)
987 }
988 
989 // optional int32 data_timeout_seconds = 20 [default = 20];
990 inline bool Fusion::_internal_has_data_timeout_seconds() const {
991  bool value = (_has_bits_[0] & 0x00000100u) != 0;
992  return value;
993 }
994 inline bool Fusion::has_data_timeout_seconds() const {
995  return _internal_has_data_timeout_seconds();
996 }
997 inline void Fusion::clear_data_timeout_seconds() {
998  data_timeout_seconds_ = 20;
999  _has_bits_[0] &= ~0x00000100u;
1000 }
1001 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_data_timeout_seconds() const {
1002  return data_timeout_seconds_;
1003 }
1004 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::data_timeout_seconds() const {
1005  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.data_timeout_seconds)
1006  return _internal_data_timeout_seconds();
1007 }
1008 inline void Fusion::_internal_set_data_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
1009  _has_bits_[0] |= 0x00000100u;
1010  data_timeout_seconds_ = value;
1011 }
1012 inline void Fusion::set_data_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
1013  _internal_set_data_timeout_seconds(value);
1014  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.data_timeout_seconds)
1015 }
1016 
1017 // optional int32 heading_timeout_seconds = 21 [default = 15];
1018 inline bool Fusion::_internal_has_heading_timeout_seconds() const {
1019  bool value = (_has_bits_[0] & 0x00000200u) != 0;
1020  return value;
1021 }
1022 inline bool Fusion::has_heading_timeout_seconds() const {
1023  return _internal_has_heading_timeout_seconds();
1024 }
1025 inline void Fusion::clear_heading_timeout_seconds() {
1026  heading_timeout_seconds_ = 15;
1027  _has_bits_[0] &= ~0x00000200u;
1028 }
1029 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_heading_timeout_seconds() const {
1030  return heading_timeout_seconds_;
1031 }
1032 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::heading_timeout_seconds() const {
1033  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.heading_timeout_seconds)
1034  return _internal_heading_timeout_seconds();
1035 }
1036 inline void Fusion::_internal_set_heading_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
1037  _has_bits_[0] |= 0x00000200u;
1038  heading_timeout_seconds_ = value;
1039 }
1040 inline void Fusion::set_heading_timeout_seconds(::PROTOBUF_NAMESPACE_ID::int32 value) {
1041  _internal_set_heading_timeout_seconds(value);
1042  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.heading_timeout_seconds)
1043 }
1044 
1045 // repeated .jaiabot.protobuf.MissionState discard_location_states = 30;
1046 inline int Fusion::_internal_discard_location_states_size() const {
1047  return discard_location_states_.size();
1048 }
1049 inline int Fusion::discard_location_states_size() const {
1050  return _internal_discard_location_states_size();
1051 }
1052 inline void Fusion::clear_discard_location_states() {
1053  discard_location_states_.Clear();
1054 }
1055 inline ::jaiabot::protobuf::MissionState Fusion::_internal_discard_location_states(int index) const {
1056  return static_cast< ::jaiabot::protobuf::MissionState >(discard_location_states_.Get(index));
1057 }
1058 inline ::jaiabot::protobuf::MissionState Fusion::discard_location_states(int index) const {
1059  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.discard_location_states)
1060  return _internal_discard_location_states(index);
1061 }
1062 inline void Fusion::set_discard_location_states(int index, ::jaiabot::protobuf::MissionState value) {
1063  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1064  discard_location_states_.Set(index, value);
1065  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.discard_location_states)
1066 }
1067 inline void Fusion::_internal_add_discard_location_states(::jaiabot::protobuf::MissionState value) {
1068  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1069  discard_location_states_.Add(value);
1070 }
1071 inline void Fusion::add_discard_location_states(::jaiabot::protobuf::MissionState value) {
1072  // @@protoc_insertion_point(field_add:jaiabot.config.Fusion.discard_location_states)
1073  _internal_add_discard_location_states(value);
1074 }
1075 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
1076 Fusion::discard_location_states() const {
1077  // @@protoc_insertion_point(field_list:jaiabot.config.Fusion.discard_location_states)
1078  return discard_location_states_;
1079 }
1080 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1081 Fusion::_internal_mutable_discard_location_states() {
1082  return &discard_location_states_;
1083 }
1084 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1085 Fusion::mutable_discard_location_states() {
1086  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.Fusion.discard_location_states)
1087  return _internal_mutable_discard_location_states();
1088 }
1089 
1090 // optional double imu_heading_course_max_diff = 31 [default = 45];
1091 inline bool Fusion::_internal_has_imu_heading_course_max_diff() const {
1092  bool value = (_has_bits_[0] & 0x00000800u) != 0;
1093  return value;
1094 }
1095 inline bool Fusion::has_imu_heading_course_max_diff() const {
1096  return _internal_has_imu_heading_course_max_diff();
1097 }
1098 inline void Fusion::clear_imu_heading_course_max_diff() {
1099  imu_heading_course_max_diff_ = 45;
1100  _has_bits_[0] &= ~0x00000800u;
1101 }
1102 inline double Fusion::_internal_imu_heading_course_max_diff() const {
1103  return imu_heading_course_max_diff_;
1104 }
1105 inline double Fusion::imu_heading_course_max_diff() const {
1106  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_heading_course_max_diff)
1107  return _internal_imu_heading_course_max_diff();
1108 }
1109 inline void Fusion::_internal_set_imu_heading_course_max_diff(double value) {
1110  _has_bits_[0] |= 0x00000800u;
1111  imu_heading_course_max_diff_ = value;
1112 }
1113 inline void Fusion::set_imu_heading_course_max_diff(double value) {
1114  _internal_set_imu_heading_course_max_diff(value);
1115  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_heading_course_max_diff)
1116 }
1117 
1118 // optional int32 course_over_ground_timeout = 32 [default = 3];
1119 inline bool Fusion::_internal_has_course_over_ground_timeout() const {
1120  bool value = (_has_bits_[0] & 0x00000400u) != 0;
1121  return value;
1122 }
1123 inline bool Fusion::has_course_over_ground_timeout() const {
1124  return _internal_has_course_over_ground_timeout();
1125 }
1126 inline void Fusion::clear_course_over_ground_timeout() {
1127  course_over_ground_timeout_ = 3;
1128  _has_bits_[0] &= ~0x00000400u;
1129 }
1130 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_course_over_ground_timeout() const {
1131  return course_over_ground_timeout_;
1132 }
1133 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::course_over_ground_timeout() const {
1134  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.course_over_ground_timeout)
1135  return _internal_course_over_ground_timeout();
1136 }
1137 inline void Fusion::_internal_set_course_over_ground_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1138  _has_bits_[0] |= 0x00000400u;
1139  course_over_ground_timeout_ = value;
1140 }
1141 inline void Fusion::set_course_over_ground_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1142  _internal_set_course_over_ground_timeout(value);
1143  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.course_over_ground_timeout)
1144 }
1145 
1146 // optional .jaiabot.protobuf.IMUIssue.SolutionType imu_issue_solution = 33 [default = REPORT_IMU];
1147 inline bool Fusion::_internal_has_imu_issue_solution() const {
1148  bool value = (_has_bits_[0] & 0x00001000u) != 0;
1149  return value;
1150 }
1151 inline bool Fusion::has_imu_issue_solution() const {
1152  return _internal_has_imu_issue_solution();
1153 }
1154 inline void Fusion::clear_imu_issue_solution() {
1155  imu_issue_solution_ = 5;
1156  _has_bits_[0] &= ~0x00001000u;
1157 }
1158 inline ::jaiabot::protobuf::IMUIssue_SolutionType Fusion::_internal_imu_issue_solution() const {
1159  return static_cast< ::jaiabot::protobuf::IMUIssue_SolutionType >(imu_issue_solution_);
1160 }
1161 inline ::jaiabot::protobuf::IMUIssue_SolutionType Fusion::imu_issue_solution() const {
1162  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_issue_solution)
1163  return _internal_imu_issue_solution();
1164 }
1165 inline void Fusion::_internal_set_imu_issue_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
1167  _has_bits_[0] |= 0x00001000u;
1168  imu_issue_solution_ = value;
1169 }
1170 inline void Fusion::set_imu_issue_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
1171  _internal_set_imu_issue_solution(value);
1172  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_issue_solution)
1173 }
1174 
1175 // optional bool is_sim = 34 [default = false];
1176 inline bool Fusion::_internal_has_is_sim() const {
1177  bool value = (_has_bits_[0] & 0x00000010u) != 0;
1178  return value;
1179 }
1180 inline bool Fusion::has_is_sim() const {
1181  return _internal_has_is_sim();
1182 }
1183 inline void Fusion::clear_is_sim() {
1184  is_sim_ = false;
1185  _has_bits_[0] &= ~0x00000010u;
1186 }
1187 inline bool Fusion::_internal_is_sim() const {
1188  return is_sim_;
1189 }
1190 inline bool Fusion::is_sim() const {
1191  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.is_sim)
1192  return _internal_is_sim();
1193 }
1194 inline void Fusion::_internal_set_is_sim(bool value) {
1195  _has_bits_[0] |= 0x00000010u;
1196  is_sim_ = value;
1197 }
1198 inline void Fusion::set_is_sim(bool value) {
1199  _internal_set_is_sim(value);
1200  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.is_sim)
1201 }
1202 
1203 // optional int32 total_imu_issue_checks = 35 [default = 4];
1204 inline bool Fusion::_internal_has_total_imu_issue_checks() const {
1205  bool value = (_has_bits_[0] & 0x00002000u) != 0;
1206  return value;
1207 }
1208 inline bool Fusion::has_total_imu_issue_checks() const {
1209  return _internal_has_total_imu_issue_checks();
1210 }
1211 inline void Fusion::clear_total_imu_issue_checks() {
1212  total_imu_issue_checks_ = 4;
1213  _has_bits_[0] &= ~0x00002000u;
1214 }
1215 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_total_imu_issue_checks() const {
1216  return total_imu_issue_checks_;
1217 }
1218 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::total_imu_issue_checks() const {
1219  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.total_imu_issue_checks)
1220  return _internal_total_imu_issue_checks();
1221 }
1222 inline void Fusion::_internal_set_total_imu_issue_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
1223  _has_bits_[0] |= 0x00002000u;
1224  total_imu_issue_checks_ = value;
1225 }
1226 inline void Fusion::set_total_imu_issue_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
1227  _internal_set_total_imu_issue_checks(value);
1228  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.total_imu_issue_checks)
1229 }
1230 
1231 // optional int32 imu_detect_timeout = 36 [default = 20];
1232 inline bool Fusion::_internal_has_imu_detect_timeout() const {
1233  bool value = (_has_bits_[0] & 0x00004000u) != 0;
1234  return value;
1235 }
1236 inline bool Fusion::has_imu_detect_timeout() const {
1237  return _internal_has_imu_detect_timeout();
1238 }
1239 inline void Fusion::clear_imu_detect_timeout() {
1240  imu_detect_timeout_ = 20;
1241  _has_bits_[0] &= ~0x00004000u;
1242 }
1243 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_imu_detect_timeout() const {
1244  return imu_detect_timeout_;
1245 }
1246 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::imu_detect_timeout() const {
1247  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_detect_timeout)
1248  return _internal_imu_detect_timeout();
1249 }
1250 inline void Fusion::_internal_set_imu_detect_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1251  _has_bits_[0] |= 0x00004000u;
1252  imu_detect_timeout_ = value;
1253 }
1254 inline void Fusion::set_imu_detect_timeout(::PROTOBUF_NAMESPACE_ID::int32 value) {
1255  _internal_set_imu_detect_timeout(value);
1256  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_detect_timeout)
1257 }
1258 
1259 // optional int32 bot_status_period_ms = 37 [default = 1000];
1260 inline bool Fusion::_internal_has_bot_status_period_ms() const {
1261  bool value = (_has_bits_[0] & 0x00008000u) != 0;
1262  return value;
1263 }
1264 inline bool Fusion::has_bot_status_period_ms() const {
1265  return _internal_has_bot_status_period_ms();
1266 }
1267 inline void Fusion::clear_bot_status_period_ms() {
1268  bot_status_period_ms_ = 1000;
1269  _has_bits_[0] &= ~0x00008000u;
1270 }
1271 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_bot_status_period_ms() const {
1272  return bot_status_period_ms_;
1273 }
1274 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::bot_status_period_ms() const {
1275  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.bot_status_period_ms)
1276  return _internal_bot_status_period_ms();
1277 }
1278 inline void Fusion::_internal_set_bot_status_period_ms(::PROTOBUF_NAMESPACE_ID::int32 value) {
1279  _has_bits_[0] |= 0x00008000u;
1280  bot_status_period_ms_ = value;
1281 }
1282 inline void Fusion::set_bot_status_period_ms(::PROTOBUF_NAMESPACE_ID::int32 value) {
1283  _internal_set_bot_status_period_ms(value);
1284  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.bot_status_period_ms)
1285 }
1286 
1287 // repeated .jaiabot.protobuf.MissionState include_course_error_detection_states = 38;
1288 inline int Fusion::_internal_include_course_error_detection_states_size() const {
1289  return include_course_error_detection_states_.size();
1290 }
1291 inline int Fusion::include_course_error_detection_states_size() const {
1292  return _internal_include_course_error_detection_states_size();
1293 }
1294 inline void Fusion::clear_include_course_error_detection_states() {
1295  include_course_error_detection_states_.Clear();
1296 }
1297 inline ::jaiabot::protobuf::MissionState Fusion::_internal_include_course_error_detection_states(int index) const {
1298  return static_cast< ::jaiabot::protobuf::MissionState >(include_course_error_detection_states_.Get(index));
1299 }
1300 inline ::jaiabot::protobuf::MissionState Fusion::include_course_error_detection_states(int index) const {
1301  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.include_course_error_detection_states)
1302  return _internal_include_course_error_detection_states(index);
1303 }
1304 inline void Fusion::set_include_course_error_detection_states(int index, ::jaiabot::protobuf::MissionState value) {
1305  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1306  include_course_error_detection_states_.Set(index, value);
1307  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.include_course_error_detection_states)
1308 }
1309 inline void Fusion::_internal_add_include_course_error_detection_states(::jaiabot::protobuf::MissionState value) {
1310  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1311  include_course_error_detection_states_.Add(value);
1312 }
1313 inline void Fusion::add_include_course_error_detection_states(::jaiabot::protobuf::MissionState value) {
1314  // @@protoc_insertion_point(field_add:jaiabot.config.Fusion.include_course_error_detection_states)
1315  _internal_add_include_course_error_detection_states(value);
1316 }
1317 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
1318 Fusion::include_course_error_detection_states() const {
1319  // @@protoc_insertion_point(field_list:jaiabot.config.Fusion.include_course_error_detection_states)
1320  return include_course_error_detection_states_;
1321 }
1322 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1323 Fusion::_internal_mutable_include_course_error_detection_states() {
1324  return &include_course_error_detection_states_;
1325 }
1326 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1327 Fusion::mutable_include_course_error_detection_states() {
1328  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.Fusion.include_course_error_detection_states)
1329  return _internal_mutable_include_course_error_detection_states();
1330 }
1331 
1332 // repeated .jaiabot.protobuf.MissionState include_imu_detection_states = 39;
1333 inline int Fusion::_internal_include_imu_detection_states_size() const {
1334  return include_imu_detection_states_.size();
1335 }
1336 inline int Fusion::include_imu_detection_states_size() const {
1337  return _internal_include_imu_detection_states_size();
1338 }
1339 inline void Fusion::clear_include_imu_detection_states() {
1340  include_imu_detection_states_.Clear();
1341 }
1342 inline ::jaiabot::protobuf::MissionState Fusion::_internal_include_imu_detection_states(int index) const {
1343  return static_cast< ::jaiabot::protobuf::MissionState >(include_imu_detection_states_.Get(index));
1344 }
1345 inline ::jaiabot::protobuf::MissionState Fusion::include_imu_detection_states(int index) const {
1346  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.include_imu_detection_states)
1347  return _internal_include_imu_detection_states(index);
1348 }
1349 inline void Fusion::set_include_imu_detection_states(int index, ::jaiabot::protobuf::MissionState value) {
1350  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1351  include_imu_detection_states_.Set(index, value);
1352  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.include_imu_detection_states)
1353 }
1354 inline void Fusion::_internal_add_include_imu_detection_states(::jaiabot::protobuf::MissionState value) {
1355  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1356  include_imu_detection_states_.Add(value);
1357 }
1358 inline void Fusion::add_include_imu_detection_states(::jaiabot::protobuf::MissionState value) {
1359  // @@protoc_insertion_point(field_add:jaiabot.config.Fusion.include_imu_detection_states)
1360  _internal_add_include_imu_detection_states(value);
1361 }
1362 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
1363 Fusion::include_imu_detection_states() const {
1364  // @@protoc_insertion_point(field_list:jaiabot.config.Fusion.include_imu_detection_states)
1365  return include_imu_detection_states_;
1366 }
1367 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1368 Fusion::_internal_mutable_include_imu_detection_states() {
1369  return &include_imu_detection_states_;
1370 }
1371 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1372 Fusion::mutable_include_imu_detection_states() {
1373  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.Fusion.include_imu_detection_states)
1374  return _internal_mutable_include_imu_detection_states();
1375 }
1376 
1377 // optional bool watch_battery_percentage = 40 [default = true];
1378 inline bool Fusion::_internal_has_watch_battery_percentage() const {
1379  bool value = (_has_bits_[0] & 0x00010000u) != 0;
1380  return value;
1381 }
1382 inline bool Fusion::has_watch_battery_percentage() const {
1383  return _internal_has_watch_battery_percentage();
1384 }
1385 inline void Fusion::clear_watch_battery_percentage() {
1386  watch_battery_percentage_ = true;
1387  _has_bits_[0] &= ~0x00010000u;
1388 }
1389 inline bool Fusion::_internal_watch_battery_percentage() const {
1390  return watch_battery_percentage_;
1391 }
1392 inline bool Fusion::watch_battery_percentage() const {
1393  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.watch_battery_percentage)
1394  return _internal_watch_battery_percentage();
1395 }
1396 inline void Fusion::_internal_set_watch_battery_percentage(bool value) {
1397  _has_bits_[0] |= 0x00010000u;
1398  watch_battery_percentage_ = value;
1399 }
1400 inline void Fusion::set_watch_battery_percentage(bool value) {
1401  _internal_set_watch_battery_percentage(value);
1402  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.watch_battery_percentage)
1403 }
1404 
1405 // optional float battery_percentage_low_level = 41 [default = 50];
1406 inline bool Fusion::_internal_has_battery_percentage_low_level() const {
1407  bool value = (_has_bits_[0] & 0x00020000u) != 0;
1408  return value;
1409 }
1410 inline bool Fusion::has_battery_percentage_low_level() const {
1411  return _internal_has_battery_percentage_low_level();
1412 }
1413 inline void Fusion::clear_battery_percentage_low_level() {
1414  battery_percentage_low_level_ = 50;
1415  _has_bits_[0] &= ~0x00020000u;
1416 }
1417 inline float Fusion::_internal_battery_percentage_low_level() const {
1418  return battery_percentage_low_level_;
1419 }
1420 inline float Fusion::battery_percentage_low_level() const {
1421  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.battery_percentage_low_level)
1422  return _internal_battery_percentage_low_level();
1423 }
1424 inline void Fusion::_internal_set_battery_percentage_low_level(float value) {
1425  _has_bits_[0] |= 0x00020000u;
1426  battery_percentage_low_level_ = value;
1427 }
1428 inline void Fusion::set_battery_percentage_low_level(float value) {
1429  _internal_set_battery_percentage_low_level(value);
1430  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.battery_percentage_low_level)
1431 }
1432 
1433 // optional float battery_percentage_very_low_level = 42 [default = 20];
1434 inline bool Fusion::_internal_has_battery_percentage_very_low_level() const {
1435  bool value = (_has_bits_[0] & 0x00040000u) != 0;
1436  return value;
1437 }
1438 inline bool Fusion::has_battery_percentage_very_low_level() const {
1439  return _internal_has_battery_percentage_very_low_level();
1440 }
1441 inline void Fusion::clear_battery_percentage_very_low_level() {
1442  battery_percentage_very_low_level_ = 20;
1443  _has_bits_[0] &= ~0x00040000u;
1444 }
1445 inline float Fusion::_internal_battery_percentage_very_low_level() const {
1446  return battery_percentage_very_low_level_;
1447 }
1448 inline float Fusion::battery_percentage_very_low_level() const {
1449  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.battery_percentage_very_low_level)
1450  return _internal_battery_percentage_very_low_level();
1451 }
1452 inline void Fusion::_internal_set_battery_percentage_very_low_level(float value) {
1453  _has_bits_[0] |= 0x00040000u;
1454  battery_percentage_very_low_level_ = value;
1455 }
1456 inline void Fusion::set_battery_percentage_very_low_level(float value) {
1457  _internal_set_battery_percentage_very_low_level(value);
1458  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.battery_percentage_very_low_level)
1459 }
1460 
1461 // optional float battery_percentage_critically_low_level = 43 [default = 10];
1462 inline bool Fusion::_internal_has_battery_percentage_critically_low_level() const {
1463  bool value = (_has_bits_[0] & 0x00080000u) != 0;
1464  return value;
1465 }
1466 inline bool Fusion::has_battery_percentage_critically_low_level() const {
1467  return _internal_has_battery_percentage_critically_low_level();
1468 }
1469 inline void Fusion::clear_battery_percentage_critically_low_level() {
1470  battery_percentage_critically_low_level_ = 10;
1471  _has_bits_[0] &= ~0x00080000u;
1472 }
1473 inline float Fusion::_internal_battery_percentage_critically_low_level() const {
1474  return battery_percentage_critically_low_level_;
1475 }
1476 inline float Fusion::battery_percentage_critically_low_level() const {
1477  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.battery_percentage_critically_low_level)
1478  return _internal_battery_percentage_critically_low_level();
1479 }
1480 inline void Fusion::_internal_set_battery_percentage_critically_low_level(float value) {
1481  _has_bits_[0] |= 0x00080000u;
1482  battery_percentage_critically_low_level_ = value;
1483 }
1484 inline void Fusion::set_battery_percentage_critically_low_level(float value) {
1485  _internal_set_battery_percentage_critically_low_level(value);
1486  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.battery_percentage_critically_low_level)
1487 }
1488 
1489 // optional int32 imu_detect_period = 44 [default = 1];
1490 inline bool Fusion::_internal_has_imu_detect_period() const {
1491  bool value = (_has_bits_[0] & 0x00100000u) != 0;
1492  return value;
1493 }
1494 inline bool Fusion::has_imu_detect_period() const {
1495  return _internal_has_imu_detect_period();
1496 }
1497 inline void Fusion::clear_imu_detect_period() {
1498  imu_detect_period_ = 1;
1499  _has_bits_[0] &= ~0x00100000u;
1500 }
1501 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_imu_detect_period() const {
1502  return imu_detect_period_;
1503 }
1504 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::imu_detect_period() const {
1505  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_detect_period)
1506  return _internal_imu_detect_period();
1507 }
1508 inline void Fusion::_internal_set_imu_detect_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
1509  _has_bits_[0] |= 0x00100000u;
1510  imu_detect_period_ = value;
1511 }
1512 inline void Fusion::set_imu_detect_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
1513  _internal_set_imu_detect_period(value);
1514  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_detect_period)
1515 }
1516 
1517 // optional int32 imu_issue_detect_horizontal_pitch_checks = 45 [default = 3];
1518 inline bool Fusion::_internal_has_imu_issue_detect_horizontal_pitch_checks() const {
1519  bool value = (_has_bits_[0] & 0x00200000u) != 0;
1520  return value;
1521 }
1522 inline bool Fusion::has_imu_issue_detect_horizontal_pitch_checks() const {
1523  return _internal_has_imu_issue_detect_horizontal_pitch_checks();
1524 }
1525 inline void Fusion::clear_imu_issue_detect_horizontal_pitch_checks() {
1526  imu_issue_detect_horizontal_pitch_checks_ = 3;
1527  _has_bits_[0] &= ~0x00200000u;
1528 }
1529 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::_internal_imu_issue_detect_horizontal_pitch_checks() const {
1530  return imu_issue_detect_horizontal_pitch_checks_;
1531 }
1532 inline ::PROTOBUF_NAMESPACE_ID::int32 Fusion::imu_issue_detect_horizontal_pitch_checks() const {
1533  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_issue_detect_horizontal_pitch_checks)
1534  return _internal_imu_issue_detect_horizontal_pitch_checks();
1535 }
1536 inline void Fusion::_internal_set_imu_issue_detect_horizontal_pitch_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
1537  _has_bits_[0] |= 0x00200000u;
1538  imu_issue_detect_horizontal_pitch_checks_ = value;
1539 }
1540 inline void Fusion::set_imu_issue_detect_horizontal_pitch_checks(::PROTOBUF_NAMESPACE_ID::int32 value) {
1541  _internal_set_imu_issue_detect_horizontal_pitch_checks(value);
1542  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_issue_detect_horizontal_pitch_checks)
1543 }
1544 
1545 // optional double imu_issue_detect_horizontal_pitch_min_time = 46 [default = 1, (.dccl.field) = {
1546 inline bool Fusion::_internal_has_imu_issue_detect_horizontal_pitch_min_time() const {
1547  bool value = (_has_bits_[0] & 0x00400000u) != 0;
1548  return value;
1549 }
1550 inline bool Fusion::has_imu_issue_detect_horizontal_pitch_min_time() const {
1551  return _internal_has_imu_issue_detect_horizontal_pitch_min_time();
1552 }
1553 inline void Fusion::clear_imu_issue_detect_horizontal_pitch_min_time() {
1554  imu_issue_detect_horizontal_pitch_min_time_ = 1;
1555  _has_bits_[0] &= ~0x00400000u;
1556 }
1557 inline double Fusion::_internal_imu_issue_detect_horizontal_pitch_min_time() const {
1558  return imu_issue_detect_horizontal_pitch_min_time_;
1559 }
1560 inline double Fusion::imu_issue_detect_horizontal_pitch_min_time() const {
1561  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_issue_detect_horizontal_pitch_min_time)
1562  return _internal_imu_issue_detect_horizontal_pitch_min_time();
1563 }
1564 inline void Fusion::_internal_set_imu_issue_detect_horizontal_pitch_min_time(double value) {
1565  _has_bits_[0] |= 0x00400000u;
1566  imu_issue_detect_horizontal_pitch_min_time_ = value;
1567 }
1568 inline void Fusion::set_imu_issue_detect_horizontal_pitch_min_time(double value) {
1569  _internal_set_imu_issue_detect_horizontal_pitch_min_time(value);
1570  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_issue_detect_horizontal_pitch_min_time)
1571 }
1572 
1573 // optional double imu_detect_horizontal_pitch = 47 [default = 45];
1574 inline bool Fusion::_internal_has_imu_detect_horizontal_pitch() const {
1575  bool value = (_has_bits_[0] & 0x00800000u) != 0;
1576  return value;
1577 }
1578 inline bool Fusion::has_imu_detect_horizontal_pitch() const {
1579  return _internal_has_imu_detect_horizontal_pitch();
1580 }
1581 inline void Fusion::clear_imu_detect_horizontal_pitch() {
1582  imu_detect_horizontal_pitch_ = 45;
1583  _has_bits_[0] &= ~0x00800000u;
1584 }
1585 inline double Fusion::_internal_imu_detect_horizontal_pitch() const {
1586  return imu_detect_horizontal_pitch_;
1587 }
1588 inline double Fusion::imu_detect_horizontal_pitch() const {
1589  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_detect_horizontal_pitch)
1590  return _internal_imu_detect_horizontal_pitch();
1591 }
1592 inline void Fusion::_internal_set_imu_detect_horizontal_pitch(double value) {
1593  _has_bits_[0] |= 0x00800000u;
1594  imu_detect_horizontal_pitch_ = value;
1595 }
1596 inline void Fusion::set_imu_detect_horizontal_pitch(double value) {
1597  _internal_set_imu_detect_horizontal_pitch(value);
1598  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_detect_horizontal_pitch)
1599 }
1600 
1601 // optional double imu_detect_desired_heading_vs_current_max_diff = 48 [default = 45];
1602 inline bool Fusion::_internal_has_imu_detect_desired_heading_vs_current_max_diff() const {
1603  bool value = (_has_bits_[0] & 0x01000000u) != 0;
1604  return value;
1605 }
1606 inline bool Fusion::has_imu_detect_desired_heading_vs_current_max_diff() const {
1607  return _internal_has_imu_detect_desired_heading_vs_current_max_diff();
1608 }
1609 inline void Fusion::clear_imu_detect_desired_heading_vs_current_max_diff() {
1610  imu_detect_desired_heading_vs_current_max_diff_ = 45;
1611  _has_bits_[0] &= ~0x01000000u;
1612 }
1613 inline double Fusion::_internal_imu_detect_desired_heading_vs_current_max_diff() const {
1614  return imu_detect_desired_heading_vs_current_max_diff_;
1615 }
1616 inline double Fusion::imu_detect_desired_heading_vs_current_max_diff() const {
1617  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.imu_detect_desired_heading_vs_current_max_diff)
1618  return _internal_imu_detect_desired_heading_vs_current_max_diff();
1619 }
1620 inline void Fusion::_internal_set_imu_detect_desired_heading_vs_current_max_diff(double value) {
1621  _has_bits_[0] |= 0x01000000u;
1622  imu_detect_desired_heading_vs_current_max_diff_ = value;
1623 }
1624 inline void Fusion::set_imu_detect_desired_heading_vs_current_max_diff(double value) {
1625  _internal_set_imu_detect_desired_heading_vs_current_max_diff(value);
1626  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.imu_detect_desired_heading_vs_current_max_diff)
1627 }
1628 
1629 // repeated .jaiabot.protobuf.MissionState diving_states = 49;
1630 inline int Fusion::_internal_diving_states_size() const {
1631  return diving_states_.size();
1632 }
1633 inline int Fusion::diving_states_size() const {
1634  return _internal_diving_states_size();
1635 }
1636 inline void Fusion::clear_diving_states() {
1637  diving_states_.Clear();
1638 }
1639 inline ::jaiabot::protobuf::MissionState Fusion::_internal_diving_states(int index) const {
1640  return static_cast< ::jaiabot::protobuf::MissionState >(diving_states_.Get(index));
1641 }
1642 inline ::jaiabot::protobuf::MissionState Fusion::diving_states(int index) const {
1643  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.diving_states)
1644  return _internal_diving_states(index);
1645 }
1646 inline void Fusion::set_diving_states(int index, ::jaiabot::protobuf::MissionState value) {
1647  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1648  diving_states_.Set(index, value);
1649  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.diving_states)
1650 }
1651 inline void Fusion::_internal_add_diving_states(::jaiabot::protobuf::MissionState value) {
1652  assert(::jaiabot::protobuf::MissionState_IsValid(value));
1653  diving_states_.Add(value);
1654 }
1655 inline void Fusion::add_diving_states(::jaiabot::protobuf::MissionState value) {
1656  // @@protoc_insertion_point(field_add:jaiabot.config.Fusion.diving_states)
1657  _internal_add_diving_states(value);
1658 }
1659 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
1660 Fusion::diving_states() const {
1661  // @@protoc_insertion_point(field_list:jaiabot.config.Fusion.diving_states)
1662  return diving_states_;
1663 }
1664 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1665 Fusion::_internal_mutable_diving_states() {
1666  return &diving_states_;
1667 }
1668 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
1669 Fusion::mutable_diving_states() {
1670  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.Fusion.diving_states)
1671  return _internal_mutable_diving_states();
1672 }
1673 
1674 // required string bot_gpsd_device = 50;
1675 inline bool Fusion::_internal_has_bot_gpsd_device() const {
1676  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1677  return value;
1678 }
1679 inline bool Fusion::has_bot_gpsd_device() const {
1680  return _internal_has_bot_gpsd_device();
1681 }
1682 inline void Fusion::clear_bot_gpsd_device() {
1683  bot_gpsd_device_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1684  _has_bits_[0] &= ~0x00000001u;
1685 }
1686 inline const std::string& Fusion::bot_gpsd_device() const {
1687  // @@protoc_insertion_point(field_get:jaiabot.config.Fusion.bot_gpsd_device)
1688  return _internal_bot_gpsd_device();
1689 }
1690 inline void Fusion::set_bot_gpsd_device(const std::string& value) {
1691  _internal_set_bot_gpsd_device(value);
1692  // @@protoc_insertion_point(field_set:jaiabot.config.Fusion.bot_gpsd_device)
1693 }
1694 inline std::string* Fusion::mutable_bot_gpsd_device() {
1695  // @@protoc_insertion_point(field_mutable:jaiabot.config.Fusion.bot_gpsd_device)
1696  return _internal_mutable_bot_gpsd_device();
1697 }
1698 inline const std::string& Fusion::_internal_bot_gpsd_device() const {
1699  return bot_gpsd_device_.Get();
1700 }
1701 inline void Fusion::_internal_set_bot_gpsd_device(const std::string& value) {
1702  _has_bits_[0] |= 0x00000001u;
1703  bot_gpsd_device_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
1704 }
1705 inline void Fusion::set_bot_gpsd_device(std::string&& value) {
1706  _has_bits_[0] |= 0x00000001u;
1707  bot_gpsd_device_.Set(
1708  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
1709  // @@protoc_insertion_point(field_set_rvalue:jaiabot.config.Fusion.bot_gpsd_device)
1710 }
1711 inline void Fusion::set_bot_gpsd_device(const char* value) {
1712  GOOGLE_DCHECK(value != nullptr);
1713  _has_bits_[0] |= 0x00000001u;
1714  bot_gpsd_device_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
1715  GetArena());
1716  // @@protoc_insertion_point(field_set_char:jaiabot.config.Fusion.bot_gpsd_device)
1717 }
1718 inline void Fusion::set_bot_gpsd_device(const char* value,
1719  size_t size) {
1720  _has_bits_[0] |= 0x00000001u;
1721  bot_gpsd_device_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
1722  reinterpret_cast<const char*>(value), size), GetArena());
1723  // @@protoc_insertion_point(field_set_pointer:jaiabot.config.Fusion.bot_gpsd_device)
1724 }
1725 inline std::string* Fusion::_internal_mutable_bot_gpsd_device() {
1726  _has_bits_[0] |= 0x00000001u;
1727  return bot_gpsd_device_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1728 }
1729 inline std::string* Fusion::release_bot_gpsd_device() {
1730  // @@protoc_insertion_point(field_release:jaiabot.config.Fusion.bot_gpsd_device)
1731  if (!_internal_has_bot_gpsd_device()) {
1732  return nullptr;
1733  }
1734  _has_bits_[0] &= ~0x00000001u;
1735  return bot_gpsd_device_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1736 }
1737 inline void Fusion::set_allocated_bot_gpsd_device(std::string* bot_gpsd_device) {
1738  if (bot_gpsd_device != nullptr) {
1739  _has_bits_[0] |= 0x00000001u;
1740  } else {
1741  _has_bits_[0] &= ~0x00000001u;
1742  }
1743  bot_gpsd_device_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), bot_gpsd_device,
1744  GetArena());
1745  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Fusion.bot_gpsd_device)
1746 }
1747 inline std::string* Fusion::unsafe_arena_release_bot_gpsd_device() {
1748  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.config.Fusion.bot_gpsd_device)
1749  GOOGLE_DCHECK(GetArena() != nullptr);
1750  _has_bits_[0] &= ~0x00000001u;
1751  return bot_gpsd_device_.UnsafeArenaRelease(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1752  GetArena());
1753 }
1754 inline void Fusion::unsafe_arena_set_allocated_bot_gpsd_device(
1755  std::string* bot_gpsd_device) {
1756  GOOGLE_DCHECK(GetArena() != nullptr);
1757  if (bot_gpsd_device != nullptr) {
1758  _has_bits_[0] |= 0x00000001u;
1759  } else {
1760  _has_bits_[0] &= ~0x00000001u;
1761  }
1762  bot_gpsd_device_.UnsafeArenaSetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1763  bot_gpsd_device, GetArena());
1764  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Fusion.bot_gpsd_device)
1765 }
1766 
1767 #ifdef __GNUC__
1768  #pragma GCC diagnostic pop
1769 #endif // __GNUC__
1770 
1771 // @@protoc_insertion_point(namespace_scope)
1772 
1773 } // namespace config
1774 } // namespace jaiabot
1775 
1776 // @@protoc_insertion_point(global_scope)
1777 
1778 #include <google/protobuf/port_undef.inc>
1779 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_bin_2ffusion_2fconfig_2eproto
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition: config.pb.h:112
void set_discard_location_states(int index, ::jaiabot::protobuf::MissionState value)
void MergeFrom(const Fusion &from)
friend void swap(Fusion &a, Fusion &b)
Definition: config.pb.h:135
::jaiabot::protobuf::MissionState discard_location_states(int index) const
void set_bot_gpsd_device(const char *value)
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_include_course_error_detection_states()
Fusion & operator=(Fusion &&from) noexcept
Definition: config.pb.h:100
Fusion & operator=(const Fusion &from)
Definition: config.pb.h:96
void set_allocated_bot_gpsd_device(std::string *bot_gpsd_device)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & include_course_error_detection_states() const
void set_bot_gpsd_device(const char *value, size_t size)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_bot_gpsd_device(const std::string &value)
void set_bot_gpsd_device(std::string &&value)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & diving_states() const
Fusion * New() const final
Definition: config.pb.h:154
static const Fusion & default_instance()
int include_imu_detection_states_size() const
void add_include_course_error_detection_states(::jaiabot::protobuf::MissionState value)
Fusion(::PROTOBUF_NAMESPACE_ID::Arena *arena)
::jaiabot::protobuf::MissionState include_course_error_detection_states(int index) const
void add_diving_states(::jaiabot::protobuf::MissionState value)
void add_discard_location_states(::jaiabot::protobuf::MissionState value)
void set_include_imu_detection_states(int index, ::jaiabot::protobuf::MissionState value)
void CopyFrom(const Fusion &from)
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_diving_states()
Fusion(Fusion &&from) noexcept
Definition: config.pb.h:91
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: config.pb.h:122
std::string * mutable_bot_gpsd_device()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: config.pb.h:119
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition: config.pb.h:109
void set_include_course_error_detection_states(int index, ::jaiabot::protobuf::MissionState value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
boost::units::quantity< imu_issue_detect_horizontal_pitch_min_time_unit, double > imu_issue_detect_horizontal_pitch_min_time_with_units() const
Definition: config.pb.h:665
void set_diving_states(int index, ::jaiabot::protobuf::MissionState value)
boost::units::unit< imu_issue_detect_horizontal_pitch_min_time_dimension, boost::units::si::system > imu_issue_detect_horizontal_pitch_min_time_unit
Definition: config.pb.h:655
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & include_imu_detection_states() const
void add_include_imu_detection_states(::jaiabot::protobuf::MissionState value)
::jaiabot::protobuf::MissionState diving_states(int index) const
static const Fusion * internal_default_instance()
Definition: config.pb.h:128
boost::units::derived_dimension< boost::units::time_base_dimension, 1 >::type imu_issue_detect_horizontal_pitch_min_time_dimension
Definition: config.pb.h:653
void UnsafeArenaSwap(Fusion *other)
Definition: config.pb.h:146
std::string * release_bot_gpsd_device()
Quantity imu_issue_detect_horizontal_pitch_min_time_with_units() const
Definition: config.pb.h:662
Fusion * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:158
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< int > & discard_location_states() const
void Swap(Fusion *other)
Definition: config.pb.h:138
const std::string & bot_gpsd_device() const
::jaiabot::protobuf::MissionState include_imu_detection_states(int index) const
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_discard_location_states()
int include_course_error_detection_states_size() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: config.pb.h:116
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< int > * mutable_include_imu_detection_states()
Fusion(const Fusion &from)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bin_2ffusion_2fconfig_2eproto
FusionDefaultTypeInternal _Fusion_default_instance_
bool BotStatus_BotType_IsValid(int value)
bool IMUIssue_SolutionType_IsValid(int value)
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::FieldMetadata field_metadata[]
Definition: config.pb.h:64
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: config.pb.h:65
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: config.pb.h:66