JaiaBot 2.0.0
JaiaBot micro-AUV software
 
Loading...
Searching...
No Matches
imu.pb.h
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: jaiabot/messages/imu.proto
3
4#ifndef GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fimu_2eproto
5#define GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fimu_2eproto
6
7#include <limits>
8#include <string>
9
10#include <google/protobuf/port_def.inc>
11#if PROTOBUF_VERSION < 3021000
12#error This file was generated by a newer version of protoc which is
13#error incompatible with your Protocol Buffer headers. Please update
14#error your headers.
15#endif
16#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION
17#error This file was generated by an older version of protoc which is
18#error incompatible with your Protocol Buffer headers. Please
19#error regenerate this file with a newer version of protoc.
20#endif
21
22#include <google/protobuf/port_undef.inc>
23#include <google/protobuf/io/coded_stream.h>
24#include <google/protobuf/arena.h>
25#include <google/protobuf/arenastring.h>
26#include <google/protobuf/generated_message_util.h>
27#include <google/protobuf/metadata_lite.h>
28#include <google/protobuf/generated_message_reflection.h>
29#include <google/protobuf/message.h>
30#include <google/protobuf/repeated_field.h> // IWYU pragma: export
31#include <google/protobuf/extension_set.h> // IWYU pragma: export
32#include <google/protobuf/generated_enum_reflection.h>
33#include <google/protobuf/unknown_field_set.h>
36#include <boost/units/quantity.hpp>
37#include <boost/units/absolute.hpp>
38#include <boost/units/dimensionless_type.hpp>
39#include <boost/units/make_scaled_unit.hpp>
40
41#include <boost/units/systems/angle/degrees.hpp>
42
43#include <boost/units/systems/si.hpp>
44// @@protoc_insertion_point(includes)
45#include <google/protobuf/port_def.inc>
46#define PROTOBUF_INTERNAL_EXPORT_jaiabot_2fmessages_2fimu_2eproto
47PROTOBUF_NAMESPACE_OPEN
48namespace internal {
49class AnyMetadata;
50} // namespace internal
51PROTOBUF_NAMESPACE_CLOSE
52
53// Internal implementation detail -- do not use these members.
55 static const uint32_t offsets[];
56};
57extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fimu_2eproto;
58namespace jaiabot {
59namespace protobuf {
60class IMUCommand;
61struct IMUCommandDefaultTypeInternal;
62extern IMUCommandDefaultTypeInternal _IMUCommand_default_instance_;
63class IMUData;
64struct IMUDataDefaultTypeInternal;
65extern IMUDataDefaultTypeInternal _IMUData_default_instance_;
66class IMUData_Acceleration;
67struct IMUData_AccelerationDefaultTypeInternal;
68extern IMUData_AccelerationDefaultTypeInternal _IMUData_Acceleration_default_instance_;
69class IMUData_Accuracies;
70struct IMUData_AccuraciesDefaultTypeInternal;
71extern IMUData_AccuraciesDefaultTypeInternal _IMUData_Accuracies_default_instance_;
72class IMUData_AngularVelocity;
73struct IMUData_AngularVelocityDefaultTypeInternal;
74extern IMUData_AngularVelocityDefaultTypeInternal _IMUData_AngularVelocity_default_instance_;
75class IMUData_EulerAngles;
76struct IMUData_EulerAnglesDefaultTypeInternal;
77extern IMUData_EulerAnglesDefaultTypeInternal _IMUData_EulerAngles_default_instance_;
78class IMUData_Quaternion;
79struct IMUData_QuaternionDefaultTypeInternal;
80extern IMUData_QuaternionDefaultTypeInternal _IMUData_Quaternion_default_instance_;
81class IMUIssue;
82struct IMUIssueDefaultTypeInternal;
83extern IMUIssueDefaultTypeInternal _IMUIssue_default_instance_;
84} // namespace protobuf
85} // namespace jaiabot
86PROTOBUF_NAMESPACE_OPEN
87template<> ::jaiabot::protobuf::IMUCommand* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUCommand>(Arena*);
88template<> ::jaiabot::protobuf::IMUData* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData>(Arena*);
89template<> ::jaiabot::protobuf::IMUData_Acceleration* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(Arena*);
90template<> ::jaiabot::protobuf::IMUData_Accuracies* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Accuracies>(Arena*);
91template<> ::jaiabot::protobuf::IMUData_AngularVelocity* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_AngularVelocity>(Arena*);
92template<> ::jaiabot::protobuf::IMUData_EulerAngles* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles>(Arena*);
93template<> ::jaiabot::protobuf::IMUData_Quaternion* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Quaternion>(Arena*);
94template<> ::jaiabot::protobuf::IMUIssue* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUIssue>(Arena*);
95PROTOBUF_NAMESPACE_CLOSE
96namespace jaiabot {
97namespace protobuf {
98
111
112const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUCommand_IMUCommandType_descriptor();
113template<typename T>
114inline const std::string& IMUCommand_IMUCommandType_Name(T enum_t_value) {
115 static_assert(::std::is_same<T, IMUCommand_IMUCommandType>::value ||
116 ::std::is_integral<T>::value,
117 "Incorrect type passed to function IMUCommand_IMUCommandType_Name.");
118 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
120}
122 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommand_IMUCommandType* value) {
123 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUCommand_IMUCommandType>(
125}
141
142const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUIssue_SolutionType_descriptor();
143template<typename T>
144inline const std::string& IMUIssue_SolutionType_Name(T enum_t_value) {
145 static_assert(::std::is_same<T, IMUIssue_SolutionType>::value ||
146 ::std::is_integral<T>::value,
147 "Incorrect type passed to function IMUIssue_SolutionType_Name.");
148 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
149 IMUIssue_SolutionType_descriptor(), enum_t_value);
150}
152 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_SolutionType* value) {
153 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUIssue_SolutionType>(
154 IMUIssue_SolutionType_descriptor(), name, value);
155}
163
164const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUIssue_IssueType_descriptor();
165template<typename T>
166inline const std::string& IMUIssue_IssueType_Name(T enum_t_value) {
167 static_assert(::std::is_same<T, IMUIssue_IssueType>::value ||
168 ::std::is_integral<T>::value,
169 "Incorrect type passed to function IMUIssue_IssueType_Name.");
170 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
171 IMUIssue_IssueType_descriptor(), enum_t_value);
172}
174 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_IssueType* value) {
175 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUIssue_IssueType>(
176 IMUIssue_IssueType_descriptor(), name, value);
177}
186
187const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUCalibrationState_descriptor();
188template<typename T>
189inline const std::string& IMUCalibrationState_Name(T enum_t_value) {
190 static_assert(::std::is_same<T, IMUCalibrationState>::value ||
191 ::std::is_integral<T>::value,
192 "Incorrect type passed to function IMUCalibrationState_Name.");
193 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
194 IMUCalibrationState_descriptor(), enum_t_value);
195}
197 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCalibrationState* value) {
198 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUCalibrationState>(
199 IMUCalibrationState_descriptor(), name, value);
200}
201// ===================================================================
202
203class IMUCommand final :
204 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUCommand) */ {
205 public:
206 inline IMUCommand() : IMUCommand(nullptr) {}
207 ~IMUCommand() override;
208 explicit PROTOBUF_CONSTEXPR IMUCommand(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
209
210 IMUCommand(const IMUCommand& from);
211 IMUCommand(IMUCommand&& from) noexcept
212 : IMUCommand() {
213 *this = ::std::move(from);
214 }
215
216 inline IMUCommand& operator=(const IMUCommand& from) {
217 CopyFrom(from);
218 return *this;
219 }
220 inline IMUCommand& operator=(IMUCommand&& from) noexcept {
221 if (this == &from) return *this;
222 if (GetOwningArena() == from.GetOwningArena()
223 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
224 && GetOwningArena() != nullptr
225 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
226 ) {
227 InternalSwap(&from);
228 } else {
229 CopyFrom(from);
230 }
231 return *this;
232 }
233
234 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
235 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
236 }
237 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
238 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
239 }
240
241 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
242 return GetDescriptor();
243 }
244 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
245 return default_instance().GetMetadata().descriptor;
246 }
247 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
248 return default_instance().GetMetadata().reflection;
249 }
250 static const IMUCommand& default_instance() {
252 }
253 static inline const IMUCommand* internal_default_instance() {
254 return reinterpret_cast<const IMUCommand*>(
256 }
257 static constexpr int kIndexInFileMessages =
258 0;
259
260 friend void swap(IMUCommand& a, IMUCommand& b) {
261 a.Swap(&b);
262 }
263 inline void Swap(IMUCommand* other) {
264 if (other == this) return;
265 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
266 if (GetOwningArena() != nullptr &&
267 GetOwningArena() == other->GetOwningArena()) {
268 #else // PROTOBUF_FORCE_COPY_IN_SWAP
269 if (GetOwningArena() == other->GetOwningArena()) {
270 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
271 InternalSwap(other);
272 } else {
273 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
274 }
275 }
277 if (other == this) return;
278 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
279 InternalSwap(other);
280 }
281
282 // implements Message ----------------------------------------------
283
284 IMUCommand* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
285 return CreateMaybeMessage<IMUCommand>(arena);
286 }
287 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
288 void CopyFrom(const IMUCommand& from);
289 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
290 void MergeFrom( const IMUCommand& from) {
291 IMUCommand::MergeImpl(*this, from);
292 }
293 private:
294 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
295 public:
296 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
297 bool IsInitialized() const final;
298
299 size_t ByteSizeLong() const final;
300 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
302 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
303 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
304
305 private:
306 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
307 void SharedDtor();
308 void SetCachedSize(int size) const final;
309 void InternalSwap(IMUCommand* other);
310
311 private:
312 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
313 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
314 return "jaiabot.protobuf.IMUCommand";
315 }
316 protected:
317 explicit IMUCommand(::PROTOBUF_NAMESPACE_ID::Arena* arena,
318 bool is_message_owned = false);
319 public:
320
321 static const ClassData _class_data_;
322 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
323
324 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
325
326 // nested types ----------------------------------------------------
327
329 static constexpr IMUCommandType TAKE_READING =
341 static inline bool IMUCommandType_IsValid(int value) {
343 }
348 static constexpr int IMUCommandType_ARRAYSIZE =
350 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
354 template<typename T>
355 static inline const std::string& IMUCommandType_Name(T enum_t_value) {
356 static_assert(::std::is_same<T, IMUCommandType>::value ||
357 ::std::is_integral<T>::value,
358 "Incorrect type passed to function IMUCommandType_Name.");
359 return IMUCommand_IMUCommandType_Name(enum_t_value);
360 }
361 static inline bool IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
362 IMUCommandType* value) {
363 return IMUCommand_IMUCommandType_Parse(name, value);
364 }
365
366 // accessors -------------------------------------------------------
367
368 enum : int {
370 };
371 // required .jaiabot.protobuf.IMUCommand.IMUCommandType type = 1;
372 bool has_type() const;
373 private:
374 bool _internal_has_type() const;
375 public:
376 void clear_type();
379 private:
381 void _internal_set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value);
382 public:
383
384 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUCommand)
385 private:
386 class _Internal;
387
388 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
389 typedef void InternalArenaConstructable_;
390 typedef void DestructorSkippable_;
391 struct Impl_ {
392 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
393 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
394 int type_;
395 };
396 union { Impl_ _impl_; };
397 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
398};
399// -------------------------------------------------------------------
400
402 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.EulerAngles) */ {
403 public:
406 explicit PROTOBUF_CONSTEXPR IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
407
411 *this = ::std::move(from);
412 }
413
415 CopyFrom(from);
416 return *this;
417 }
419 if (this == &from) return *this;
420 if (GetOwningArena() == from.GetOwningArena()
421 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
422 && GetOwningArena() != nullptr
423 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
424 ) {
425 InternalSwap(&from);
426 } else {
427 CopyFrom(from);
428 }
429 return *this;
430 }
431
432 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
433 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
434 }
435 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
436 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
437 }
438
439 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
440 return GetDescriptor();
441 }
442 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
443 return default_instance().GetMetadata().descriptor;
444 }
445 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
446 return default_instance().GetMetadata().reflection;
447 }
449 return *internal_default_instance();
450 }
452 return reinterpret_cast<const IMUData_EulerAngles*>(
454 }
455 static constexpr int kIndexInFileMessages =
456 1;
457
459 a.Swap(&b);
460 }
461 inline void Swap(IMUData_EulerAngles* other) {
462 if (other == this) return;
463 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
464 if (GetOwningArena() != nullptr &&
465 GetOwningArena() == other->GetOwningArena()) {
466 #else // PROTOBUF_FORCE_COPY_IN_SWAP
467 if (GetOwningArena() == other->GetOwningArena()) {
468 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
469 InternalSwap(other);
470 } else {
471 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
472 }
473 }
475 if (other == this) return;
476 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
477 InternalSwap(other);
478 }
479
480 // implements Message ----------------------------------------------
481
482 IMUData_EulerAngles* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
483 return CreateMaybeMessage<IMUData_EulerAngles>(arena);
484 }
485 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
486 void CopyFrom(const IMUData_EulerAngles& from);
487 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
488 void MergeFrom( const IMUData_EulerAngles& from) {
489 IMUData_EulerAngles::MergeImpl(*this, from);
490 }
491 private:
492 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
493 public:
494 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
495 bool IsInitialized() const final;
496
497 size_t ByteSizeLong() const final;
498 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
499 uint8_t* _InternalSerialize(
500 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
501 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
502
503 private:
504 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
505 void SharedDtor();
506 void SetCachedSize(int size) const final;
507 void InternalSwap(IMUData_EulerAngles* other);
508
509 private:
510 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
511 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
512 return "jaiabot.protobuf.IMUData.EulerAngles";
513 }
514 protected:
515 explicit IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::Arena* arena,
516 bool is_message_owned = false);
517 public:
518
519 static const ClassData _class_data_;
520 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
521
522 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
523
524 // nested types ----------------------------------------------------
525
526 // accessors -------------------------------------------------------
527
528 enum : int {
529 kHeadingFieldNumber = 1,
530 kPitchFieldNumber = 2,
531 kRollFieldNumber = 3,
532 };
533 // optional double heading = 1 [(.dccl.field) = {
534 bool has_heading() const;
535 private:
536 bool _internal_has_heading() const;
537 public:
538 void clear_heading();
539 double heading() const;
540 void set_heading(double value);
541 private:
542 double _internal_heading() const;
543 void _internal_set_heading(double value);
544 public:
545
546 // optional double pitch = 2 [(.dccl.field) = {
547 bool has_pitch() const;
548 private:
549 bool _internal_has_pitch() const;
550 public:
551 void clear_pitch();
552 double pitch() const;
553 void set_pitch(double value);
554 private:
555 double _internal_pitch() const;
556 void _internal_set_pitch(double value);
557 public:
558
559 // optional double roll = 3 [(.dccl.field) = {
560 bool has_roll() const;
561 private:
562 bool _internal_has_roll() const;
563 public:
564 void clear_roll();
565 double roll() const;
566 void set_roll(double value);
567 private:
568 double _internal_roll() const;
569 void _internal_set_roll(double value);
570 public:
571
572 typedef boost::units::plane_angle_dimension heading_dimension;
573
574 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
575
576 template<typename Quantity >
577 void set_heading_with_units(Quantity value_w_units)
578 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
579
580 template<typename Quantity >
581 Quantity heading_with_units() const
582 { return Quantity(heading() * heading_unit()); };
583
584 boost::units::quantity< heading_unit,double > heading_with_units() const
585 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
586
587 typedef boost::units::plane_angle_dimension pitch_dimension;
588
589 typedef boost::units::unit<pitch_dimension,boost::units::degree::system> pitch_unit;
590
591 template<typename Quantity >
592 void set_pitch_with_units(Quantity value_w_units)
593 { set_pitch(boost::units::quantity<pitch_unit,double >(value_w_units).value() ); };
594
595 template<typename Quantity >
596 Quantity pitch_with_units() const
597 { return Quantity(pitch() * pitch_unit()); };
598
599 boost::units::quantity< pitch_unit,double > pitch_with_units() const
600 { return pitch_with_units<boost::units::quantity< pitch_unit,double > >(); };
601
602 typedef boost::units::plane_angle_dimension roll_dimension;
603
604 typedef boost::units::unit<roll_dimension,boost::units::degree::system> roll_unit;
605
606 template<typename Quantity >
607 void set_roll_with_units(Quantity value_w_units)
608 { set_roll(boost::units::quantity<roll_unit,double >(value_w_units).value() ); };
609
610 template<typename Quantity >
611 Quantity roll_with_units() const
612 { return Quantity(roll() * roll_unit()); };
613
614 boost::units::quantity< roll_unit,double > roll_with_units() const
615 { return roll_with_units<boost::units::quantity< roll_unit,double > >(); };
616
617 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.EulerAngles)
618 private:
619 class _Internal;
620
621 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
622 typedef void InternalArenaConstructable_;
623 typedef void DestructorSkippable_;
624 struct Impl_ {
625 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
626 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
627 double heading_;
628 double pitch_;
629 double roll_;
630 };
631 union { Impl_ _impl_; };
632 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
633};
634// -------------------------------------------------------------------
635
637 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Acceleration) */ {
638 public:
641 explicit PROTOBUF_CONSTEXPR IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
642
646 *this = ::std::move(from);
647 }
648
650 CopyFrom(from);
651 return *this;
652 }
654 if (this == &from) return *this;
655 if (GetOwningArena() == from.GetOwningArena()
656 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
657 && GetOwningArena() != nullptr
658 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
659 ) {
660 InternalSwap(&from);
661 } else {
662 CopyFrom(from);
663 }
664 return *this;
665 }
666
667 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
668 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
669 }
670 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
671 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
672 }
673
674 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
675 return GetDescriptor();
676 }
677 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
678 return default_instance().GetMetadata().descriptor;
679 }
680 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
681 return default_instance().GetMetadata().reflection;
682 }
684 return *internal_default_instance();
685 }
687 return reinterpret_cast<const IMUData_Acceleration*>(
689 }
690 static constexpr int kIndexInFileMessages =
691 2;
692
694 a.Swap(&b);
695 }
696 inline void Swap(IMUData_Acceleration* other) {
697 if (other == this) return;
698 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
699 if (GetOwningArena() != nullptr &&
700 GetOwningArena() == other->GetOwningArena()) {
701 #else // PROTOBUF_FORCE_COPY_IN_SWAP
702 if (GetOwningArena() == other->GetOwningArena()) {
703 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
704 InternalSwap(other);
705 } else {
706 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
707 }
708 }
710 if (other == this) return;
711 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
712 InternalSwap(other);
713 }
714
715 // implements Message ----------------------------------------------
716
717 IMUData_Acceleration* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
718 return CreateMaybeMessage<IMUData_Acceleration>(arena);
719 }
720 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
722 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
723 void MergeFrom( const IMUData_Acceleration& from) {
724 IMUData_Acceleration::MergeImpl(*this, from);
725 }
726 private:
727 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
728 public:
729 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
730 bool IsInitialized() const final;
731
732 size_t ByteSizeLong() const final;
733 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
734 uint8_t* _InternalSerialize(
735 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
736 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
737
738 private:
739 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
740 void SharedDtor();
741 void SetCachedSize(int size) const final;
742 void InternalSwap(IMUData_Acceleration* other);
743
744 private:
745 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
746 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
747 return "jaiabot.protobuf.IMUData.Acceleration";
748 }
749 protected:
750 explicit IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::Arena* arena,
751 bool is_message_owned = false);
752 public:
753
754 static const ClassData _class_data_;
755 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
756
757 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
758
759 // nested types ----------------------------------------------------
760
761 // accessors -------------------------------------------------------
762
763 enum : int {
764 kXFieldNumber = 1,
765 kYFieldNumber = 2,
766 kZFieldNumber = 3,
767 };
768 // optional double x = 1;
769 bool has_x() const;
770 private:
771 bool _internal_has_x() const;
772 public:
773 void clear_x();
774 double x() const;
775 void set_x(double value);
776 private:
777 double _internal_x() const;
778 void _internal_set_x(double value);
779 public:
780
781 // optional double y = 2;
782 bool has_y() const;
783 private:
784 bool _internal_has_y() const;
785 public:
786 void clear_y();
787 double y() const;
788 void set_y(double value);
789 private:
790 double _internal_y() const;
791 void _internal_set_y(double value);
792 public:
793
794 // optional double z = 3;
795 bool has_z() const;
796 private:
797 bool _internal_has_z() const;
798 public:
799 void clear_z();
800 double z() const;
801 void set_z(double value);
802 private:
803 double _internal_z() const;
804 void _internal_set_z(double value);
805 public:
806
807 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Acceleration)
808 private:
809 class _Internal;
810
811 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
812 typedef void InternalArenaConstructable_;
813 typedef void DestructorSkippable_;
814 struct Impl_ {
815 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
816 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
817 double x_;
818 double y_;
819 double z_;
820 };
821 union { Impl_ _impl_; };
822 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
823};
824// -------------------------------------------------------------------
825
827 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Accuracies) */ {
828 public:
831 explicit PROTOBUF_CONSTEXPR IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
832
836 *this = ::std::move(from);
837 }
838
840 CopyFrom(from);
841 return *this;
842 }
844 if (this == &from) return *this;
845 if (GetOwningArena() == from.GetOwningArena()
846 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
847 && GetOwningArena() != nullptr
848 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
849 ) {
850 InternalSwap(&from);
851 } else {
852 CopyFrom(from);
853 }
854 return *this;
855 }
856
857 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
858 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
859 }
860 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
861 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
862 }
863
864 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
865 return GetDescriptor();
866 }
867 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
868 return default_instance().GetMetadata().descriptor;
869 }
870 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
871 return default_instance().GetMetadata().reflection;
872 }
874 return *internal_default_instance();
875 }
877 return reinterpret_cast<const IMUData_Accuracies*>(
879 }
880 static constexpr int kIndexInFileMessages =
881 3;
882
884 a.Swap(&b);
885 }
886 inline void Swap(IMUData_Accuracies* other) {
887 if (other == this) return;
888 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
889 if (GetOwningArena() != nullptr &&
890 GetOwningArena() == other->GetOwningArena()) {
891 #else // PROTOBUF_FORCE_COPY_IN_SWAP
892 if (GetOwningArena() == other->GetOwningArena()) {
893 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
894 InternalSwap(other);
895 } else {
896 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
897 }
898 }
900 if (other == this) return;
901 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
902 InternalSwap(other);
903 }
904
905 // implements Message ----------------------------------------------
906
907 IMUData_Accuracies* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
908 return CreateMaybeMessage<IMUData_Accuracies>(arena);
909 }
910 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
911 void CopyFrom(const IMUData_Accuracies& from);
912 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
913 void MergeFrom( const IMUData_Accuracies& from) {
914 IMUData_Accuracies::MergeImpl(*this, from);
915 }
916 private:
917 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
918 public:
919 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
920 bool IsInitialized() const final;
921
922 size_t ByteSizeLong() const final;
923 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
924 uint8_t* _InternalSerialize(
925 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
926 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
927
928 private:
929 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
930 void SharedDtor();
931 void SetCachedSize(int size) const final;
932 void InternalSwap(IMUData_Accuracies* other);
933
934 private:
935 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
936 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
937 return "jaiabot.protobuf.IMUData.Accuracies";
938 }
939 protected:
940 explicit IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::Arena* arena,
941 bool is_message_owned = false);
942 public:
943
944 static const ClassData _class_data_;
945 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
946
947 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
948
949 // nested types ----------------------------------------------------
950
951 // accessors -------------------------------------------------------
952
953 enum : int {
954 kAccelerometerFieldNumber = 1,
955 kGyroscopeFieldNumber = 2,
956 kMagnetometerFieldNumber = 3,
957 };
958 // optional int32 accelerometer = 1 [(.dccl.field) = {
959 bool has_accelerometer() const;
960 private:
961 bool _internal_has_accelerometer() const;
962 public:
963 void clear_accelerometer();
964 int32_t accelerometer() const;
965 void set_accelerometer(int32_t value);
966 private:
967 int32_t _internal_accelerometer() const;
968 void _internal_set_accelerometer(int32_t value);
969 public:
970
971 // optional int32 gyroscope = 2 [(.dccl.field) = {
972 bool has_gyroscope() const;
973 private:
974 bool _internal_has_gyroscope() const;
975 public:
976 void clear_gyroscope();
977 int32_t gyroscope() const;
978 void set_gyroscope(int32_t value);
979 private:
980 int32_t _internal_gyroscope() const;
981 void _internal_set_gyroscope(int32_t value);
982 public:
983
984 // optional int32 magnetometer = 3 [(.dccl.field) = {
985 bool has_magnetometer() const;
986 private:
987 bool _internal_has_magnetometer() const;
988 public:
989 void clear_magnetometer();
990 int32_t magnetometer() const;
991 void set_magnetometer(int32_t value);
992 private:
993 int32_t _internal_magnetometer() const;
994 void _internal_set_magnetometer(int32_t value);
995 public:
996
997 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Accuracies)
998 private:
999 class _Internal;
1000
1001 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1002 typedef void InternalArenaConstructable_;
1003 typedef void DestructorSkippable_;
1004 struct Impl_ {
1005 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1006 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1007 int32_t accelerometer_;
1008 int32_t gyroscope_;
1009 int32_t magnetometer_;
1010 };
1011 union { Impl_ _impl_; };
1012 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1013};
1014// -------------------------------------------------------------------
1015
1017 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.AngularVelocity) */ {
1018 public:
1021 explicit PROTOBUF_CONSTEXPR IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1022
1026 *this = ::std::move(from);
1027 }
1028
1030 CopyFrom(from);
1031 return *this;
1032 }
1034 if (this == &from) return *this;
1035 if (GetOwningArena() == from.GetOwningArena()
1036 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1037 && GetOwningArena() != nullptr
1038 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1039 ) {
1040 InternalSwap(&from);
1041 } else {
1042 CopyFrom(from);
1043 }
1044 return *this;
1045 }
1046
1047 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1048 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1049 }
1050 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1051 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1052 }
1053
1054 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1055 return GetDescriptor();
1056 }
1057 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1058 return default_instance().GetMetadata().descriptor;
1059 }
1060 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1061 return default_instance().GetMetadata().reflection;
1062 }
1064 return *internal_default_instance();
1065 }
1067 return reinterpret_cast<const IMUData_AngularVelocity*>(
1069 }
1070 static constexpr int kIndexInFileMessages =
1071 4;
1072
1074 a.Swap(&b);
1075 }
1076 inline void Swap(IMUData_AngularVelocity* other) {
1077 if (other == this) return;
1078 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1079 if (GetOwningArena() != nullptr &&
1080 GetOwningArena() == other->GetOwningArena()) {
1081 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1082 if (GetOwningArena() == other->GetOwningArena()) {
1083 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1084 InternalSwap(other);
1085 } else {
1086 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1087 }
1088 }
1090 if (other == this) return;
1091 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1092 InternalSwap(other);
1093 }
1094
1095 // implements Message ----------------------------------------------
1096
1097 IMUData_AngularVelocity* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1098 return CreateMaybeMessage<IMUData_AngularVelocity>(arena);
1099 }
1100 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1102 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1104 IMUData_AngularVelocity::MergeImpl(*this, from);
1105 }
1106 private:
1107 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1108 public:
1109 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1110 bool IsInitialized() const final;
1111
1112 size_t ByteSizeLong() const final;
1113 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1114 uint8_t* _InternalSerialize(
1115 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1116 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1117
1118 private:
1119 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1120 void SharedDtor();
1121 void SetCachedSize(int size) const final;
1122 void InternalSwap(IMUData_AngularVelocity* other);
1123
1124 private:
1125 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1126 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1127 return "jaiabot.protobuf.IMUData.AngularVelocity";
1128 }
1129 protected:
1130 explicit IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1131 bool is_message_owned = false);
1132 public:
1133
1134 static const ClassData _class_data_;
1135 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1136
1137 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1138
1139 // nested types ----------------------------------------------------
1140
1141 // accessors -------------------------------------------------------
1142
1143 enum : int {
1144 kXFieldNumber = 1,
1145 kYFieldNumber = 2,
1146 kZFieldNumber = 3,
1147 };
1148 // optional double x = 1 [(.dccl.field) = {
1149 bool has_x() const;
1150 private:
1151 bool _internal_has_x() const;
1152 public:
1153 void clear_x();
1154 double x() const;
1155 void set_x(double value);
1156 private:
1157 double _internal_x() const;
1158 void _internal_set_x(double value);
1159 public:
1160
1161 // optional double y = 2 [(.dccl.field) = {
1162 bool has_y() const;
1163 private:
1164 bool _internal_has_y() const;
1165 public:
1166 void clear_y();
1167 double y() const;
1168 void set_y(double value);
1169 private:
1170 double _internal_y() const;
1171 void _internal_set_y(double value);
1172 public:
1173
1174 // optional double z = 3 [(.dccl.field) = {
1175 bool has_z() const;
1176 private:
1177 bool _internal_has_z() const;
1178 public:
1179 void clear_z();
1180 double z() const;
1181 void set_z(double value);
1182 private:
1183 double _internal_z() const;
1184 void _internal_set_z(double value);
1185 public:
1186
1187 typedef boost::units::angular_velocity_dimension x_dimension;
1188
1189 typedef boost::units::unit<x_dimension,boost::units::si::system> x_unit;
1190
1191 template<typename Quantity >
1192 void set_x_with_units(Quantity value_w_units)
1193 { set_x(boost::units::quantity<x_unit,double >(value_w_units).value() ); };
1194
1195 template<typename Quantity >
1196 Quantity x_with_units() const
1197 { return Quantity(x() * x_unit()); };
1198
1199 boost::units::quantity< x_unit,double > x_with_units() const
1200 { return x_with_units<boost::units::quantity< x_unit,double > >(); };
1201
1202 typedef boost::units::angular_velocity_dimension y_dimension;
1203
1204 typedef boost::units::unit<y_dimension,boost::units::si::system> y_unit;
1205
1206 template<typename Quantity >
1207 void set_y_with_units(Quantity value_w_units)
1208 { set_y(boost::units::quantity<y_unit,double >(value_w_units).value() ); };
1209
1210 template<typename Quantity >
1211 Quantity y_with_units() const
1212 { return Quantity(y() * y_unit()); };
1213
1214 boost::units::quantity< y_unit,double > y_with_units() const
1215 { return y_with_units<boost::units::quantity< y_unit,double > >(); };
1216
1217 typedef boost::units::angular_velocity_dimension z_dimension;
1218
1219 typedef boost::units::unit<z_dimension,boost::units::si::system> z_unit;
1220
1221 template<typename Quantity >
1222 void set_z_with_units(Quantity value_w_units)
1223 { set_z(boost::units::quantity<z_unit,double >(value_w_units).value() ); };
1224
1225 template<typename Quantity >
1226 Quantity z_with_units() const
1227 { return Quantity(z() * z_unit()); };
1228
1229 boost::units::quantity< z_unit,double > z_with_units() const
1230 { return z_with_units<boost::units::quantity< z_unit,double > >(); };
1231
1232 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.AngularVelocity)
1233 private:
1234 class _Internal;
1235
1236 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1237 typedef void InternalArenaConstructable_;
1238 typedef void DestructorSkippable_;
1239 struct Impl_ {
1240 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1241 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1242 double x_;
1243 double y_;
1244 double z_;
1245 };
1246 union { Impl_ _impl_; };
1247 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1248};
1249// -------------------------------------------------------------------
1250
1252 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Quaternion) */ {
1253 public:
1256 explicit PROTOBUF_CONSTEXPR IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1257
1260 : IMUData_Quaternion() {
1261 *this = ::std::move(from);
1262 }
1263
1265 CopyFrom(from);
1266 return *this;
1267 }
1269 if (this == &from) return *this;
1270 if (GetOwningArena() == from.GetOwningArena()
1271 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1272 && GetOwningArena() != nullptr
1273 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1274 ) {
1275 InternalSwap(&from);
1276 } else {
1277 CopyFrom(from);
1278 }
1279 return *this;
1280 }
1281
1282 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1283 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1284 }
1285 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1286 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1287 }
1288
1289 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1290 return GetDescriptor();
1291 }
1292 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1293 return default_instance().GetMetadata().descriptor;
1294 }
1295 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1296 return default_instance().GetMetadata().reflection;
1297 }
1299 return *internal_default_instance();
1300 }
1302 return reinterpret_cast<const IMUData_Quaternion*>(
1304 }
1305 static constexpr int kIndexInFileMessages =
1306 5;
1307
1309 a.Swap(&b);
1310 }
1311 inline void Swap(IMUData_Quaternion* other) {
1312 if (other == this) return;
1313 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1314 if (GetOwningArena() != nullptr &&
1315 GetOwningArena() == other->GetOwningArena()) {
1316 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1317 if (GetOwningArena() == other->GetOwningArena()) {
1318 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1319 InternalSwap(other);
1320 } else {
1321 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1322 }
1323 }
1325 if (other == this) return;
1326 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1327 InternalSwap(other);
1328 }
1329
1330 // implements Message ----------------------------------------------
1331
1332 IMUData_Quaternion* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1333 return CreateMaybeMessage<IMUData_Quaternion>(arena);
1334 }
1335 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1336 void CopyFrom(const IMUData_Quaternion& from);
1337 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1338 void MergeFrom( const IMUData_Quaternion& from) {
1339 IMUData_Quaternion::MergeImpl(*this, from);
1340 }
1341 private:
1342 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1343 public:
1344 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1345 bool IsInitialized() const final;
1346
1347 size_t ByteSizeLong() const final;
1348 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1349 uint8_t* _InternalSerialize(
1350 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1351 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1352
1353 private:
1354 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1355 void SharedDtor();
1356 void SetCachedSize(int size) const final;
1357 void InternalSwap(IMUData_Quaternion* other);
1358
1359 private:
1360 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1361 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1362 return "jaiabot.protobuf.IMUData.Quaternion";
1363 }
1364 protected:
1365 explicit IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1366 bool is_message_owned = false);
1367 public:
1368
1369 static const ClassData _class_data_;
1370 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1371
1372 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1373
1374 // nested types ----------------------------------------------------
1375
1376 // accessors -------------------------------------------------------
1377
1378 enum : int {
1379 kWFieldNumber = 1,
1380 kXFieldNumber = 2,
1381 kYFieldNumber = 3,
1382 kZFieldNumber = 4,
1383 };
1384 // optional double w = 1;
1385 bool has_w() const;
1386 private:
1387 bool _internal_has_w() const;
1388 public:
1389 void clear_w();
1390 double w() const;
1391 void set_w(double value);
1392 private:
1393 double _internal_w() const;
1394 void _internal_set_w(double value);
1395 public:
1396
1397 // optional double x = 2;
1398 bool has_x() const;
1399 private:
1400 bool _internal_has_x() const;
1401 public:
1402 void clear_x();
1403 double x() const;
1404 void set_x(double value);
1405 private:
1406 double _internal_x() const;
1407 void _internal_set_x(double value);
1408 public:
1409
1410 // optional double y = 3;
1411 bool has_y() const;
1412 private:
1413 bool _internal_has_y() const;
1414 public:
1415 void clear_y();
1416 double y() const;
1417 void set_y(double value);
1418 private:
1419 double _internal_y() const;
1420 void _internal_set_y(double value);
1421 public:
1422
1423 // optional double z = 4;
1424 bool has_z() const;
1425 private:
1426 bool _internal_has_z() const;
1427 public:
1428 void clear_z();
1429 double z() const;
1430 void set_z(double value);
1431 private:
1432 double _internal_z() const;
1433 void _internal_set_z(double value);
1434 public:
1435
1436 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Quaternion)
1437 private:
1438 class _Internal;
1439
1440 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1441 typedef void InternalArenaConstructable_;
1442 typedef void DestructorSkippable_;
1443 struct Impl_ {
1444 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1445 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1446 double w_;
1447 double x_;
1448 double y_;
1449 double z_;
1450 };
1451 union { Impl_ _impl_; };
1452 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1453};
1454// -------------------------------------------------------------------
1455
1456class IMUData final :
1457 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData) */ {
1458 public:
1459 inline IMUData() : IMUData(nullptr) {}
1460 ~IMUData() override;
1461 explicit PROTOBUF_CONSTEXPR IMUData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1462
1463 IMUData(const IMUData& from);
1464 IMUData(IMUData&& from) noexcept
1465 : IMUData() {
1466 *this = ::std::move(from);
1467 }
1468
1469 inline IMUData& operator=(const IMUData& from) {
1470 CopyFrom(from);
1471 return *this;
1472 }
1473 inline IMUData& operator=(IMUData&& from) noexcept {
1474 if (this == &from) return *this;
1475 if (GetOwningArena() == from.GetOwningArena()
1476 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1477 && GetOwningArena() != nullptr
1478 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1479 ) {
1480 InternalSwap(&from);
1481 } else {
1482 CopyFrom(from);
1483 }
1484 return *this;
1485 }
1486
1487 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1488 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1489 }
1490 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1491 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1492 }
1493
1494 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1495 return GetDescriptor();
1496 }
1497 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1498 return default_instance().GetMetadata().descriptor;
1499 }
1500 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1501 return default_instance().GetMetadata().reflection;
1502 }
1503 static const IMUData& default_instance() {
1504 return *internal_default_instance();
1505 }
1506 static inline const IMUData* internal_default_instance() {
1507 return reinterpret_cast<const IMUData*>(
1509 }
1510 static constexpr int kIndexInFileMessages =
1511 6;
1512
1513 friend void swap(IMUData& a, IMUData& b) {
1514 a.Swap(&b);
1515 }
1516 inline void Swap(IMUData* other) {
1517 if (other == this) return;
1518 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1519 if (GetOwningArena() != nullptr &&
1520 GetOwningArena() == other->GetOwningArena()) {
1521 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1522 if (GetOwningArena() == other->GetOwningArena()) {
1523 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1524 InternalSwap(other);
1525 } else {
1526 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1527 }
1528 }
1530 if (other == this) return;
1531 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1532 InternalSwap(other);
1533 }
1534
1535 // implements Message ----------------------------------------------
1536
1537 IMUData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1538 return CreateMaybeMessage<IMUData>(arena);
1539 }
1540 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1541 void CopyFrom(const IMUData& from);
1542 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1543 void MergeFrom( const IMUData& from) {
1544 IMUData::MergeImpl(*this, from);
1545 }
1546 private:
1547 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1548 public:
1549 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1550 bool IsInitialized() const final;
1551
1552 size_t ByteSizeLong() const final;
1553 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1554 uint8_t* _InternalSerialize(
1555 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1556 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1557
1558 private:
1559 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1560 void SharedDtor();
1561 void SetCachedSize(int size) const final;
1562 void InternalSwap(IMUData* other);
1563
1564 private:
1565 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1566 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1567 return "jaiabot.protobuf.IMUData";
1568 }
1569 protected:
1570 explicit IMUData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1571 bool is_message_owned = false);
1572 public:
1573
1574 static const ClassData _class_data_;
1575 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1576
1577 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1578
1579 // nested types ----------------------------------------------------
1580
1586
1587 // accessors -------------------------------------------------------
1588
1589 enum : int {
1590 kImuTypeFieldNumber = 11,
1591 kEulerAnglesFieldNumber = 1,
1592 kLinearAccelerationFieldNumber = 2,
1593 kGravityFieldNumber = 3,
1594 kAccuraciesFieldNumber = 4,
1595 kAngularVelocityFieldNumber = 9,
1596 kQuaternionFieldNumber = 10,
1597 kSignificantWaveHeightFieldNumber = 7,
1598 kMaxAccelerationFieldNumber = 8,
1599 kBotRolledOverFieldNumber = 6,
1600 kCalibrationStateFieldNumber = 5,
1601 };
1602 // optional string imu_type = 11;
1603 bool has_imu_type() const;
1604 private:
1605 bool _internal_has_imu_type() const;
1606 public:
1607 void clear_imu_type();
1608 const std::string& imu_type() const;
1609 template <typename ArgT0 = const std::string&, typename... ArgT>
1610 void set_imu_type(ArgT0&& arg0, ArgT... args);
1611 std::string* mutable_imu_type();
1612 PROTOBUF_NODISCARD std::string* release_imu_type();
1613 void set_allocated_imu_type(std::string* imu_type);
1614 private:
1615 const std::string& _internal_imu_type() const;
1616 inline PROTOBUF_ALWAYS_INLINE void _internal_set_imu_type(const std::string& value);
1617 std::string* _internal_mutable_imu_type();
1618 public:
1619
1620 // optional .jaiabot.protobuf.IMUData.EulerAngles euler_angles = 1;
1621 bool has_euler_angles() const;
1622 private:
1623 bool _internal_has_euler_angles() const;
1624 public:
1625 void clear_euler_angles();
1626 const ::jaiabot::protobuf::IMUData_EulerAngles& euler_angles() const;
1627 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_EulerAngles* release_euler_angles();
1628 ::jaiabot::protobuf::IMUData_EulerAngles* mutable_euler_angles();
1629 void set_allocated_euler_angles(::jaiabot::protobuf::IMUData_EulerAngles* euler_angles);
1630 private:
1631 const ::jaiabot::protobuf::IMUData_EulerAngles& _internal_euler_angles() const;
1632 ::jaiabot::protobuf::IMUData_EulerAngles* _internal_mutable_euler_angles();
1633 public:
1634 void unsafe_arena_set_allocated_euler_angles(
1636 ::jaiabot::protobuf::IMUData_EulerAngles* unsafe_arena_release_euler_angles();
1637
1638 // optional .jaiabot.protobuf.IMUData.Acceleration linear_acceleration = 2;
1639 bool has_linear_acceleration() const;
1640 private:
1641 bool _internal_has_linear_acceleration() const;
1642 public:
1643 void clear_linear_acceleration();
1644 const ::jaiabot::protobuf::IMUData_Acceleration& linear_acceleration() const;
1645 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Acceleration* release_linear_acceleration();
1646 ::jaiabot::protobuf::IMUData_Acceleration* mutable_linear_acceleration();
1647 void set_allocated_linear_acceleration(::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration);
1648 private:
1649 const ::jaiabot::protobuf::IMUData_Acceleration& _internal_linear_acceleration() const;
1650 ::jaiabot::protobuf::IMUData_Acceleration* _internal_mutable_linear_acceleration();
1651 public:
1652 void unsafe_arena_set_allocated_linear_acceleration(
1653 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration);
1654 ::jaiabot::protobuf::IMUData_Acceleration* unsafe_arena_release_linear_acceleration();
1655
1656 // optional .jaiabot.protobuf.IMUData.Acceleration gravity = 3;
1657 bool has_gravity() const;
1658 private:
1659 bool _internal_has_gravity() const;
1660 public:
1661 void clear_gravity();
1662 const ::jaiabot::protobuf::IMUData_Acceleration& gravity() const;
1663 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Acceleration* release_gravity();
1665 void set_allocated_gravity(::jaiabot::protobuf::IMUData_Acceleration* gravity);
1666 private:
1667 const ::jaiabot::protobuf::IMUData_Acceleration& _internal_gravity() const;
1668 ::jaiabot::protobuf::IMUData_Acceleration* _internal_mutable_gravity();
1669 public:
1670 void unsafe_arena_set_allocated_gravity(
1672 ::jaiabot::protobuf::IMUData_Acceleration* unsafe_arena_release_gravity();
1673
1674 // optional .jaiabot.protobuf.IMUData.Accuracies accuracies = 4;
1675 bool has_accuracies() const;
1676 private:
1677 bool _internal_has_accuracies() const;
1678 public:
1679 void clear_accuracies();
1680 const ::jaiabot::protobuf::IMUData_Accuracies& accuracies() const;
1681 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Accuracies* release_accuracies();
1682 ::jaiabot::protobuf::IMUData_Accuracies* mutable_accuracies();
1683 void set_allocated_accuracies(::jaiabot::protobuf::IMUData_Accuracies* accuracies);
1684 private:
1685 const ::jaiabot::protobuf::IMUData_Accuracies& _internal_accuracies() const;
1686 ::jaiabot::protobuf::IMUData_Accuracies* _internal_mutable_accuracies();
1687 public:
1688 void unsafe_arena_set_allocated_accuracies(
1690 ::jaiabot::protobuf::IMUData_Accuracies* unsafe_arena_release_accuracies();
1691
1692 // optional .jaiabot.protobuf.IMUData.AngularVelocity angular_velocity = 9;
1693 bool has_angular_velocity() const;
1694 private:
1695 bool _internal_has_angular_velocity() const;
1696 public:
1697 void clear_angular_velocity();
1698 const ::jaiabot::protobuf::IMUData_AngularVelocity& angular_velocity() const;
1699 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_AngularVelocity* release_angular_velocity();
1700 ::jaiabot::protobuf::IMUData_AngularVelocity* mutable_angular_velocity();
1701 void set_allocated_angular_velocity(::jaiabot::protobuf::IMUData_AngularVelocity* angular_velocity);
1702 private:
1703 const ::jaiabot::protobuf::IMUData_AngularVelocity& _internal_angular_velocity() const;
1704 ::jaiabot::protobuf::IMUData_AngularVelocity* _internal_mutable_angular_velocity();
1705 public:
1706 void unsafe_arena_set_allocated_angular_velocity(
1708 ::jaiabot::protobuf::IMUData_AngularVelocity* unsafe_arena_release_angular_velocity();
1709
1710 // optional .jaiabot.protobuf.IMUData.Quaternion quaternion = 10;
1711 bool has_quaternion() const;
1712 private:
1713 bool _internal_has_quaternion() const;
1714 public:
1715 void clear_quaternion();
1716 const ::jaiabot::protobuf::IMUData_Quaternion& quaternion() const;
1717 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Quaternion* release_quaternion();
1718 ::jaiabot::protobuf::IMUData_Quaternion* mutable_quaternion();
1719 void set_allocated_quaternion(::jaiabot::protobuf::IMUData_Quaternion* quaternion);
1720 private:
1721 const ::jaiabot::protobuf::IMUData_Quaternion& _internal_quaternion() const;
1722 ::jaiabot::protobuf::IMUData_Quaternion* _internal_mutable_quaternion();
1723 public:
1724 void unsafe_arena_set_allocated_quaternion(
1726 ::jaiabot::protobuf::IMUData_Quaternion* unsafe_arena_release_quaternion();
1727
1728 // optional double significant_wave_height = 7 [(.dccl.field) = {
1729 bool has_significant_wave_height() const;
1730 private:
1731 bool _internal_has_significant_wave_height() const;
1732 public:
1733 void clear_significant_wave_height();
1734 double significant_wave_height() const;
1735 void set_significant_wave_height(double value);
1736 private:
1737 double _internal_significant_wave_height() const;
1738 void _internal_set_significant_wave_height(double value);
1739 public:
1740
1741 // optional double max_acceleration = 8 [(.dccl.field) = {
1742 bool has_max_acceleration() const;
1743 private:
1744 bool _internal_has_max_acceleration() const;
1745 public:
1746 void clear_max_acceleration();
1747 double max_acceleration() const;
1748 void set_max_acceleration(double value);
1749 private:
1750 double _internal_max_acceleration() const;
1751 void _internal_set_max_acceleration(double value);
1752 public:
1753
1754 // optional bool bot_rolled_over = 6 [default = false];
1755 bool has_bot_rolled_over() const;
1756 private:
1757 bool _internal_has_bot_rolled_over() const;
1758 public:
1759 void clear_bot_rolled_over();
1760 bool bot_rolled_over() const;
1761 void set_bot_rolled_over(bool value);
1762 private:
1763 bool _internal_bot_rolled_over() const;
1764 void _internal_set_bot_rolled_over(bool value);
1765 public:
1766
1767 // optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 5;
1768 bool has_calibration_state() const;
1769 private:
1770 bool _internal_has_calibration_state() const;
1771 public:
1772 void clear_calibration_state();
1773 ::jaiabot::protobuf::IMUCalibrationState calibration_state() const;
1774 void set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
1775 private:
1776 ::jaiabot::protobuf::IMUCalibrationState _internal_calibration_state() const;
1777 void _internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
1778 public:
1779
1780 typedef boost::units::length_dimension significant_wave_height_dimension;
1781
1782 typedef boost::units::unit<significant_wave_height_dimension,boost::units::si::system> significant_wave_height_unit;
1783
1784 template<typename Quantity >
1785 void set_significant_wave_height_with_units(Quantity value_w_units)
1786 { set_significant_wave_height(boost::units::quantity<significant_wave_height_unit,double >(value_w_units).value() ); };
1787
1788 template<typename Quantity >
1790 { return Quantity(significant_wave_height() * significant_wave_height_unit()); };
1791
1792 boost::units::quantity< significant_wave_height_unit,double > significant_wave_height_with_units() const
1793 { return significant_wave_height_with_units<boost::units::quantity< significant_wave_height_unit,double > >(); };
1794
1795 typedef boost::units::acceleration_dimension max_acceleration_dimension;
1796
1797 typedef boost::units::unit<max_acceleration_dimension,boost::units::si::system> max_acceleration_unit;
1798
1799 template<typename Quantity >
1800 void set_max_acceleration_with_units(Quantity value_w_units)
1801 { set_max_acceleration(boost::units::quantity<max_acceleration_unit,double >(value_w_units).value() ); };
1802
1803 template<typename Quantity >
1805 { return Quantity(max_acceleration() * max_acceleration_unit()); };
1806
1807 boost::units::quantity< max_acceleration_unit,double > max_acceleration_with_units() const
1808 { return max_acceleration_with_units<boost::units::quantity< max_acceleration_unit,double > >(); };
1809
1810 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData)
1811 private:
1812 class _Internal;
1813
1814 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1815 typedef void InternalArenaConstructable_;
1816 typedef void DestructorSkippable_;
1817 struct Impl_ {
1818 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1819 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1820 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr imu_type_;
1822 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration_;
1827 double significant_wave_height_;
1828 double max_acceleration_;
1829 bool bot_rolled_over_;
1830 int calibration_state_;
1831 };
1832 union { Impl_ _impl_; };
1833 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1834};
1835// -------------------------------------------------------------------
1836
1837class IMUIssue final :
1838 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUIssue) */ {
1839 public:
1840 inline IMUIssue() : IMUIssue(nullptr) {}
1841 ~IMUIssue() override;
1842 explicit PROTOBUF_CONSTEXPR IMUIssue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1843
1844 IMUIssue(const IMUIssue& from);
1845 IMUIssue(IMUIssue&& from) noexcept
1846 : IMUIssue() {
1847 *this = ::std::move(from);
1848 }
1849
1850 inline IMUIssue& operator=(const IMUIssue& from) {
1851 CopyFrom(from);
1852 return *this;
1853 }
1854 inline IMUIssue& operator=(IMUIssue&& from) noexcept {
1855 if (this == &from) return *this;
1856 if (GetOwningArena() == from.GetOwningArena()
1857 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1858 && GetOwningArena() != nullptr
1859 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1860 ) {
1861 InternalSwap(&from);
1862 } else {
1863 CopyFrom(from);
1864 }
1865 return *this;
1866 }
1867
1868 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1869 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1870 }
1871 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1872 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1873 }
1874
1875 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1876 return GetDescriptor();
1877 }
1878 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1879 return default_instance().GetMetadata().descriptor;
1880 }
1881 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1882 return default_instance().GetMetadata().reflection;
1883 }
1884 static const IMUIssue& default_instance() {
1885 return *internal_default_instance();
1886 }
1887 static inline const IMUIssue* internal_default_instance() {
1888 return reinterpret_cast<const IMUIssue*>(
1890 }
1891 static constexpr int kIndexInFileMessages =
1892 7;
1893
1894 friend void swap(IMUIssue& a, IMUIssue& b) {
1895 a.Swap(&b);
1896 }
1897 inline void Swap(IMUIssue* other) {
1898 if (other == this) return;
1899 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1900 if (GetOwningArena() != nullptr &&
1901 GetOwningArena() == other->GetOwningArena()) {
1902 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1903 if (GetOwningArena() == other->GetOwningArena()) {
1904 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1905 InternalSwap(other);
1906 } else {
1907 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1908 }
1909 }
1911 if (other == this) return;
1912 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1913 InternalSwap(other);
1914 }
1915
1916 // implements Message ----------------------------------------------
1917
1918 IMUIssue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1919 return CreateMaybeMessage<IMUIssue>(arena);
1920 }
1921 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1922 void CopyFrom(const IMUIssue& from);
1923 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1924 void MergeFrom( const IMUIssue& from) {
1925 IMUIssue::MergeImpl(*this, from);
1926 }
1927 private:
1928 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1929 public:
1930 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1931 bool IsInitialized() const final;
1932
1933 size_t ByteSizeLong() const final;
1934 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1935 uint8_t* _InternalSerialize(
1936 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1937 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1938
1939 private:
1940 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1941 void SharedDtor();
1942 void SetCachedSize(int size) const final;
1943 void InternalSwap(IMUIssue* other);
1944
1945 private:
1946 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1947 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1948 return "jaiabot.protobuf.IMUIssue";
1949 }
1950 protected:
1951 explicit IMUIssue(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1952 bool is_message_owned = false);
1953 public:
1954
1955 static const ClassData _class_data_;
1956 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1957
1958 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1959
1960 // nested types ----------------------------------------------------
1961
1963 static constexpr SolutionType STOP_BOT =
1964 IMUIssue_SolutionType_STOP_BOT;
1965 static constexpr SolutionType USE_COG =
1966 IMUIssue_SolutionType_USE_COG;
1967 static constexpr SolutionType USE_CORRECTION =
1968 IMUIssue_SolutionType_USE_CORRECTION;
1969 static constexpr SolutionType RESTART_BOT =
1970 IMUIssue_SolutionType_RESTART_BOT;
1971 static constexpr SolutionType REBOOT_BOT =
1972 IMUIssue_SolutionType_REBOOT_BOT;
1973 static constexpr SolutionType REPORT_IMU =
1974 IMUIssue_SolutionType_REPORT_IMU;
1975 static constexpr SolutionType RESTART_IMU_PY =
1976 IMUIssue_SolutionType_RESTART_IMU_PY;
1977 static constexpr SolutionType REBOOT_BNO085_IMU =
1978 IMUIssue_SolutionType_REBOOT_BNO085_IMU;
1979 static constexpr SolutionType REBOOT_BNO085_IMU_AND_RESTART_IMU_PY =
1980 IMUIssue_SolutionType_REBOOT_BNO085_IMU_AND_RESTART_IMU_PY;
1981 static inline bool SolutionType_IsValid(int value) {
1982 return IMUIssue_SolutionType_IsValid(value);
1983 }
1984 static constexpr SolutionType SolutionType_MIN =
1986 static constexpr SolutionType SolutionType_MAX =
1988 static constexpr int SolutionType_ARRAYSIZE =
1990 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1994 template<typename T>
1995 static inline const std::string& SolutionType_Name(T enum_t_value) {
1996 static_assert(::std::is_same<T, SolutionType>::value ||
1997 ::std::is_integral<T>::value,
1998 "Incorrect type passed to function SolutionType_Name.");
1999 return IMUIssue_SolutionType_Name(enum_t_value);
2000 }
2001 static inline bool SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
2002 SolutionType* value) {
2003 return IMUIssue_SolutionType_Parse(name, value);
2004 }
2005
2007 static constexpr IssueType HEADING_COURSE_DIFFERENCE_TOO_LARGE =
2009 static inline bool IssueType_IsValid(int value) {
2010 return IMUIssue_IssueType_IsValid(value);
2011 }
2012 static constexpr IssueType IssueType_MIN =
2014 static constexpr IssueType IssueType_MAX =
2016 static constexpr int IssueType_ARRAYSIZE =
2018 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
2022 template<typename T>
2023 static inline const std::string& IssueType_Name(T enum_t_value) {
2024 static_assert(::std::is_same<T, IssueType>::value ||
2025 ::std::is_integral<T>::value,
2026 "Incorrect type passed to function IssueType_Name.");
2027 return IMUIssue_IssueType_Name(enum_t_value);
2028 }
2029 static inline bool IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
2030 IssueType* value) {
2031 return IMUIssue_IssueType_Parse(name, value);
2032 }
2033
2034 // accessors -------------------------------------------------------
2035
2036 enum : int {
2037 kSolutionFieldNumber = 1,
2038 kTypeFieldNumber = 2,
2039 kHeadingFieldNumber = 31,
2040 kDesiredHeadingFieldNumber = 32,
2041 kCourseOverGroundFieldNumber = 33,
2042 kHeadingCourseDifferenceFieldNumber = 34,
2043 kPitchFieldNumber = 35,
2044 kSpeedOverGroundFieldNumber = 36,
2045 kDesiredSpeedFieldNumber = 37,
2046 kMissionStateFieldNumber = 3,
2047 kImuHeadingCourseMaxDiffFieldNumber = 30,
2048 };
2049 // required .jaiabot.protobuf.IMUIssue.SolutionType solution = 1;
2050 bool has_solution() const;
2051 private:
2052 bool _internal_has_solution() const;
2053 public:
2054 void clear_solution();
2056 void set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
2057 private:
2058 ::jaiabot::protobuf::IMUIssue_SolutionType _internal_solution() const;
2059 void _internal_set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
2060 public:
2061
2062 // optional .jaiabot.protobuf.IMUIssue.IssueType type = 2;
2063 bool has_type() const;
2064 private:
2065 bool _internal_has_type() const;
2066 public:
2067 void clear_type();
2069 void set_type(::jaiabot::protobuf::IMUIssue_IssueType value);
2070 private:
2071 ::jaiabot::protobuf::IMUIssue_IssueType _internal_type() const;
2072 void _internal_set_type(::jaiabot::protobuf::IMUIssue_IssueType value);
2073 public:
2074
2075 // optional double heading = 31 [(.dccl.field) = {
2076 bool has_heading() const;
2077 private:
2078 bool _internal_has_heading() const;
2079 public:
2080 void clear_heading();
2081 double heading() const;
2082 void set_heading(double value);
2083 private:
2084 double _internal_heading() const;
2085 void _internal_set_heading(double value);
2086 public:
2087
2088 // optional double desired_heading = 32 [(.dccl.field) = {
2089 bool has_desired_heading() const;
2090 private:
2091 bool _internal_has_desired_heading() const;
2092 public:
2093 void clear_desired_heading();
2094 double desired_heading() const;
2095 void set_desired_heading(double value);
2096 private:
2097 double _internal_desired_heading() const;
2098 void _internal_set_desired_heading(double value);
2099 public:
2100
2101 // optional double course_over_ground = 33 [(.dccl.field) = {
2102 bool has_course_over_ground() const;
2103 private:
2104 bool _internal_has_course_over_ground() const;
2105 public:
2106 void clear_course_over_ground();
2107 double course_over_ground() const;
2108 void set_course_over_ground(double value);
2109 private:
2110 double _internal_course_over_ground() const;
2111 void _internal_set_course_over_ground(double value);
2112 public:
2113
2114 // optional double heading_course_difference = 34 [(.dccl.field) = {
2115 bool has_heading_course_difference() const;
2116 private:
2117 bool _internal_has_heading_course_difference() const;
2118 public:
2119 void clear_heading_course_difference();
2120 double heading_course_difference() const;
2121 void set_heading_course_difference(double value);
2122 private:
2123 double _internal_heading_course_difference() const;
2124 void _internal_set_heading_course_difference(double value);
2125 public:
2126
2127 // optional double pitch = 35 [(.dccl.field) = {
2128 bool has_pitch() const;
2129 private:
2130 bool _internal_has_pitch() const;
2131 public:
2132 void clear_pitch();
2133 double pitch() const;
2134 void set_pitch(double value);
2135 private:
2136 double _internal_pitch() const;
2137 void _internal_set_pitch(double value);
2138 public:
2139
2140 // optional double speed_over_ground = 36 [(.dccl.field) = {
2141 bool has_speed_over_ground() const;
2142 private:
2143 bool _internal_has_speed_over_ground() const;
2144 public:
2145 void clear_speed_over_ground();
2146 double speed_over_ground() const;
2147 void set_speed_over_ground(double value);
2148 private:
2149 double _internal_speed_over_ground() const;
2150 void _internal_set_speed_over_ground(double value);
2151 public:
2152
2153 // optional double desired_speed = 37 [(.dccl.field) = {
2154 bool has_desired_speed() const;
2155 private:
2156 bool _internal_has_desired_speed() const;
2157 public:
2158 void clear_desired_speed();
2159 double desired_speed() const;
2160 void set_desired_speed(double value);
2161 private:
2162 double _internal_desired_speed() const;
2163 void _internal_set_desired_speed(double value);
2164 public:
2165
2166 // optional .jaiabot.protobuf.MissionState mission_state = 3;
2167 bool has_mission_state() const;
2168 private:
2169 bool _internal_has_mission_state() const;
2170 public:
2171 void clear_mission_state();
2172 ::jaiabot::protobuf::MissionState mission_state() const;
2173 void set_mission_state(::jaiabot::protobuf::MissionState value);
2174 private:
2175 ::jaiabot::protobuf::MissionState _internal_mission_state() const;
2176 void _internal_set_mission_state(::jaiabot::protobuf::MissionState value);
2177 public:
2178
2179 // optional double imu_heading_course_max_diff = 30 [default = 45];
2180 bool has_imu_heading_course_max_diff() const;
2181 private:
2182 bool _internal_has_imu_heading_course_max_diff() const;
2183 public:
2184 void clear_imu_heading_course_max_diff();
2185 double imu_heading_course_max_diff() const;
2186 void set_imu_heading_course_max_diff(double value);
2187 private:
2188 double _internal_imu_heading_course_max_diff() const;
2189 void _internal_set_imu_heading_course_max_diff(double value);
2190 public:
2191
2192 typedef boost::units::plane_angle_dimension heading_dimension;
2193
2194 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
2195
2196 template<typename Quantity >
2197 void set_heading_with_units(Quantity value_w_units)
2198 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
2199
2200 template<typename Quantity >
2201 Quantity heading_with_units() const
2202 { return Quantity(heading() * heading_unit()); };
2203
2204 boost::units::quantity< heading_unit,double > heading_with_units() const
2205 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
2206
2207 typedef boost::units::plane_angle_dimension desired_heading_dimension;
2208
2209 typedef boost::units::unit<desired_heading_dimension,boost::units::degree::system> desired_heading_unit;
2210
2211 template<typename Quantity >
2212 void set_desired_heading_with_units(Quantity value_w_units)
2213 { set_desired_heading(boost::units::quantity<desired_heading_unit,double >(value_w_units).value() ); };
2214
2215 template<typename Quantity >
2217 { return Quantity(desired_heading() * desired_heading_unit()); };
2218
2219 boost::units::quantity< desired_heading_unit,double > desired_heading_with_units() const
2220 { return desired_heading_with_units<boost::units::quantity< desired_heading_unit,double > >(); };
2221
2222 typedef boost::units::plane_angle_dimension course_over_ground_dimension;
2223
2224 typedef boost::units::unit<course_over_ground_dimension,boost::units::degree::system> course_over_ground_unit;
2225
2226 template<typename Quantity >
2227 void set_course_over_ground_with_units(Quantity value_w_units)
2228 { set_course_over_ground(boost::units::quantity<course_over_ground_unit,double >(value_w_units).value() ); };
2229
2230 template<typename Quantity >
2232 { return Quantity(course_over_ground() * course_over_ground_unit()); };
2233
2234 boost::units::quantity< course_over_ground_unit,double > course_over_ground_with_units() const
2235 { return course_over_ground_with_units<boost::units::quantity< course_over_ground_unit,double > >(); };
2236
2237 typedef boost::units::plane_angle_dimension heading_course_difference_dimension;
2238
2239 typedef boost::units::unit<heading_course_difference_dimension,boost::units::degree::system> heading_course_difference_unit;
2240
2241 template<typename Quantity >
2242 void set_heading_course_difference_with_units(Quantity value_w_units)
2243 { set_heading_course_difference(boost::units::quantity<heading_course_difference_unit,double >(value_w_units).value() ); };
2244
2245 template<typename Quantity >
2247 { return Quantity(heading_course_difference() * heading_course_difference_unit()); };
2248
2249 boost::units::quantity< heading_course_difference_unit,double > heading_course_difference_with_units() const
2250 { return heading_course_difference_with_units<boost::units::quantity< heading_course_difference_unit,double > >(); };
2251
2252 typedef boost::units::plane_angle_dimension pitch_dimension;
2253
2254 typedef boost::units::unit<pitch_dimension,boost::units::degree::system> pitch_unit;
2255
2256 template<typename Quantity >
2257 void set_pitch_with_units(Quantity value_w_units)
2258 { set_pitch(boost::units::quantity<pitch_unit,double >(value_w_units).value() ); };
2259
2260 template<typename Quantity >
2261 Quantity pitch_with_units() const
2262 { return Quantity(pitch() * pitch_unit()); };
2263
2264 boost::units::quantity< pitch_unit,double > pitch_with_units() const
2265 { return pitch_with_units<boost::units::quantity< pitch_unit,double > >(); };
2266
2267 typedef boost::units::velocity_dimension speed_over_ground_dimension;
2268
2269 typedef boost::units::unit<speed_over_ground_dimension,boost::units::si::system> speed_over_ground_unit;
2270
2271 template<typename Quantity >
2272 void set_speed_over_ground_with_units(Quantity value_w_units)
2273 { set_speed_over_ground(boost::units::quantity<speed_over_ground_unit,double >(value_w_units).value() ); };
2274
2275 template<typename Quantity >
2277 { return Quantity(speed_over_ground() * speed_over_ground_unit()); };
2278
2279 boost::units::quantity< speed_over_ground_unit,double > speed_over_ground_with_units() const
2280 { return speed_over_ground_with_units<boost::units::quantity< speed_over_ground_unit,double > >(); };
2281
2282 typedef boost::units::velocity_dimension desired_speed_dimension;
2283
2284 typedef boost::units::unit<desired_speed_dimension,boost::units::si::system> desired_speed_unit;
2285
2286 template<typename Quantity >
2287 void set_desired_speed_with_units(Quantity value_w_units)
2288 { set_desired_speed(boost::units::quantity<desired_speed_unit,double >(value_w_units).value() ); };
2289
2290 template<typename Quantity >
2292 { return Quantity(desired_speed() * desired_speed_unit()); };
2293
2294 boost::units::quantity< desired_speed_unit,double > desired_speed_with_units() const
2295 { return desired_speed_with_units<boost::units::quantity< desired_speed_unit,double > >(); };
2296
2297 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUIssue)
2298 private:
2299 class _Internal;
2300
2301 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2302 typedef void InternalArenaConstructable_;
2303 typedef void DestructorSkippable_;
2304 struct Impl_ {
2305 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2306 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2307 int solution_;
2308 int type_;
2309 double heading_;
2310 double desired_heading_;
2311 double course_over_ground_;
2312 double heading_course_difference_;
2313 double pitch_;
2314 double speed_over_ground_;
2315 double desired_speed_;
2316 int mission_state_;
2317 double imu_heading_course_max_diff_;
2318 };
2319 union { Impl_ _impl_; };
2320 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
2321};
2322// ===================================================================
2323
2324
2325// ===================================================================
2326
2327#ifdef __GNUC__
2328 #pragma GCC diagnostic push
2329 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
2330#endif // __GNUC__
2331// IMUCommand
2332
2333// required .jaiabot.protobuf.IMUCommand.IMUCommandType type = 1;
2334inline bool IMUCommand::_internal_has_type() const {
2335 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2336 return value;
2337}
2338inline bool IMUCommand::has_type() const {
2339 return _internal_has_type();
2340}
2341inline void IMUCommand::clear_type() {
2342 _impl_.type_ = 0;
2343 _impl_._has_bits_[0] &= ~0x00000001u;
2344}
2345inline ::jaiabot::protobuf::IMUCommand_IMUCommandType IMUCommand::_internal_type() const {
2346 return static_cast< ::jaiabot::protobuf::IMUCommand_IMUCommandType >(_impl_.type_);
2347}
2348inline ::jaiabot::protobuf::IMUCommand_IMUCommandType IMUCommand::type() const {
2349 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUCommand.type)
2350 return _internal_type();
2351}
2352inline void IMUCommand::_internal_set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value) {
2354 _impl_._has_bits_[0] |= 0x00000001u;
2355 _impl_.type_ = value;
2356}
2357inline void IMUCommand::set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value) {
2358 _internal_set_type(value);
2359 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUCommand.type)
2360}
2361
2362// -------------------------------------------------------------------
2363
2364// IMUData_EulerAngles
2365
2366// optional double heading = 1 [(.dccl.field) = {
2367inline bool IMUData_EulerAngles::_internal_has_heading() const {
2368 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2369 return value;
2370}
2371inline bool IMUData_EulerAngles::has_heading() const {
2372 return _internal_has_heading();
2373}
2374inline void IMUData_EulerAngles::clear_heading() {
2375 _impl_.heading_ = 0;
2376 _impl_._has_bits_[0] &= ~0x00000001u;
2377}
2378inline double IMUData_EulerAngles::_internal_heading() const {
2379 return _impl_.heading_;
2380}
2381inline double IMUData_EulerAngles::heading() const {
2382 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.heading)
2383 return _internal_heading();
2384}
2385inline void IMUData_EulerAngles::_internal_set_heading(double value) {
2386 _impl_._has_bits_[0] |= 0x00000001u;
2387 _impl_.heading_ = value;
2388}
2389inline void IMUData_EulerAngles::set_heading(double value) {
2390 _internal_set_heading(value);
2391 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.heading)
2392}
2393
2394// optional double pitch = 2 [(.dccl.field) = {
2395inline bool IMUData_EulerAngles::_internal_has_pitch() const {
2396 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2397 return value;
2398}
2399inline bool IMUData_EulerAngles::has_pitch() const {
2400 return _internal_has_pitch();
2401}
2402inline void IMUData_EulerAngles::clear_pitch() {
2403 _impl_.pitch_ = 0;
2404 _impl_._has_bits_[0] &= ~0x00000002u;
2405}
2406inline double IMUData_EulerAngles::_internal_pitch() const {
2407 return _impl_.pitch_;
2408}
2409inline double IMUData_EulerAngles::pitch() const {
2410 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.pitch)
2411 return _internal_pitch();
2412}
2413inline void IMUData_EulerAngles::_internal_set_pitch(double value) {
2414 _impl_._has_bits_[0] |= 0x00000002u;
2415 _impl_.pitch_ = value;
2416}
2417inline void IMUData_EulerAngles::set_pitch(double value) {
2418 _internal_set_pitch(value);
2419 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.pitch)
2420}
2421
2422// optional double roll = 3 [(.dccl.field) = {
2423inline bool IMUData_EulerAngles::_internal_has_roll() const {
2424 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2425 return value;
2426}
2427inline bool IMUData_EulerAngles::has_roll() const {
2428 return _internal_has_roll();
2429}
2430inline void IMUData_EulerAngles::clear_roll() {
2431 _impl_.roll_ = 0;
2432 _impl_._has_bits_[0] &= ~0x00000004u;
2433}
2434inline double IMUData_EulerAngles::_internal_roll() const {
2435 return _impl_.roll_;
2436}
2437inline double IMUData_EulerAngles::roll() const {
2438 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.roll)
2439 return _internal_roll();
2440}
2441inline void IMUData_EulerAngles::_internal_set_roll(double value) {
2442 _impl_._has_bits_[0] |= 0x00000004u;
2443 _impl_.roll_ = value;
2444}
2445inline void IMUData_EulerAngles::set_roll(double value) {
2446 _internal_set_roll(value);
2447 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.roll)
2448}
2449
2450// -------------------------------------------------------------------
2451
2452// IMUData_Acceleration
2453
2454// optional double x = 1;
2455inline bool IMUData_Acceleration::_internal_has_x() const {
2456 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2457 return value;
2458}
2459inline bool IMUData_Acceleration::has_x() const {
2460 return _internal_has_x();
2461}
2462inline void IMUData_Acceleration::clear_x() {
2463 _impl_.x_ = 0;
2464 _impl_._has_bits_[0] &= ~0x00000001u;
2465}
2466inline double IMUData_Acceleration::_internal_x() const {
2467 return _impl_.x_;
2468}
2469inline double IMUData_Acceleration::x() const {
2470 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.x)
2471 return _internal_x();
2472}
2473inline void IMUData_Acceleration::_internal_set_x(double value) {
2474 _impl_._has_bits_[0] |= 0x00000001u;
2475 _impl_.x_ = value;
2476}
2477inline void IMUData_Acceleration::set_x(double value) {
2478 _internal_set_x(value);
2479 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.x)
2480}
2481
2482// optional double y = 2;
2483inline bool IMUData_Acceleration::_internal_has_y() const {
2484 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2485 return value;
2486}
2487inline bool IMUData_Acceleration::has_y() const {
2488 return _internal_has_y();
2489}
2490inline void IMUData_Acceleration::clear_y() {
2491 _impl_.y_ = 0;
2492 _impl_._has_bits_[0] &= ~0x00000002u;
2493}
2494inline double IMUData_Acceleration::_internal_y() const {
2495 return _impl_.y_;
2496}
2497inline double IMUData_Acceleration::y() const {
2498 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.y)
2499 return _internal_y();
2500}
2501inline void IMUData_Acceleration::_internal_set_y(double value) {
2502 _impl_._has_bits_[0] |= 0x00000002u;
2503 _impl_.y_ = value;
2504}
2505inline void IMUData_Acceleration::set_y(double value) {
2506 _internal_set_y(value);
2507 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.y)
2508}
2509
2510// optional double z = 3;
2511inline bool IMUData_Acceleration::_internal_has_z() const {
2512 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2513 return value;
2514}
2515inline bool IMUData_Acceleration::has_z() const {
2516 return _internal_has_z();
2517}
2518inline void IMUData_Acceleration::clear_z() {
2519 _impl_.z_ = 0;
2520 _impl_._has_bits_[0] &= ~0x00000004u;
2521}
2522inline double IMUData_Acceleration::_internal_z() const {
2523 return _impl_.z_;
2524}
2525inline double IMUData_Acceleration::z() const {
2526 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.z)
2527 return _internal_z();
2528}
2529inline void IMUData_Acceleration::_internal_set_z(double value) {
2530 _impl_._has_bits_[0] |= 0x00000004u;
2531 _impl_.z_ = value;
2532}
2533inline void IMUData_Acceleration::set_z(double value) {
2534 _internal_set_z(value);
2535 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.z)
2536}
2537
2538// -------------------------------------------------------------------
2539
2540// IMUData_Accuracies
2541
2542// optional int32 accelerometer = 1 [(.dccl.field) = {
2543inline bool IMUData_Accuracies::_internal_has_accelerometer() const {
2544 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2545 return value;
2546}
2547inline bool IMUData_Accuracies::has_accelerometer() const {
2548 return _internal_has_accelerometer();
2549}
2550inline void IMUData_Accuracies::clear_accelerometer() {
2551 _impl_.accelerometer_ = 0;
2552 _impl_._has_bits_[0] &= ~0x00000001u;
2553}
2554inline int32_t IMUData_Accuracies::_internal_accelerometer() const {
2555 return _impl_.accelerometer_;
2556}
2557inline int32_t IMUData_Accuracies::accelerometer() const {
2558 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.accelerometer)
2559 return _internal_accelerometer();
2560}
2561inline void IMUData_Accuracies::_internal_set_accelerometer(int32_t value) {
2562 _impl_._has_bits_[0] |= 0x00000001u;
2563 _impl_.accelerometer_ = value;
2564}
2565inline void IMUData_Accuracies::set_accelerometer(int32_t value) {
2566 _internal_set_accelerometer(value);
2567 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.accelerometer)
2568}
2569
2570// optional int32 gyroscope = 2 [(.dccl.field) = {
2571inline bool IMUData_Accuracies::_internal_has_gyroscope() const {
2572 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2573 return value;
2574}
2575inline bool IMUData_Accuracies::has_gyroscope() const {
2576 return _internal_has_gyroscope();
2577}
2578inline void IMUData_Accuracies::clear_gyroscope() {
2579 _impl_.gyroscope_ = 0;
2580 _impl_._has_bits_[0] &= ~0x00000002u;
2581}
2582inline int32_t IMUData_Accuracies::_internal_gyroscope() const {
2583 return _impl_.gyroscope_;
2584}
2585inline int32_t IMUData_Accuracies::gyroscope() const {
2586 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.gyroscope)
2587 return _internal_gyroscope();
2588}
2589inline void IMUData_Accuracies::_internal_set_gyroscope(int32_t value) {
2590 _impl_._has_bits_[0] |= 0x00000002u;
2591 _impl_.gyroscope_ = value;
2592}
2593inline void IMUData_Accuracies::set_gyroscope(int32_t value) {
2594 _internal_set_gyroscope(value);
2595 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.gyroscope)
2596}
2597
2598// optional int32 magnetometer = 3 [(.dccl.field) = {
2599inline bool IMUData_Accuracies::_internal_has_magnetometer() const {
2600 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2601 return value;
2602}
2603inline bool IMUData_Accuracies::has_magnetometer() const {
2604 return _internal_has_magnetometer();
2605}
2606inline void IMUData_Accuracies::clear_magnetometer() {
2607 _impl_.magnetometer_ = 0;
2608 _impl_._has_bits_[0] &= ~0x00000004u;
2609}
2610inline int32_t IMUData_Accuracies::_internal_magnetometer() const {
2611 return _impl_.magnetometer_;
2612}
2613inline int32_t IMUData_Accuracies::magnetometer() const {
2614 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.magnetometer)
2615 return _internal_magnetometer();
2616}
2617inline void IMUData_Accuracies::_internal_set_magnetometer(int32_t value) {
2618 _impl_._has_bits_[0] |= 0x00000004u;
2619 _impl_.magnetometer_ = value;
2620}
2621inline void IMUData_Accuracies::set_magnetometer(int32_t value) {
2622 _internal_set_magnetometer(value);
2623 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.magnetometer)
2624}
2625
2626// -------------------------------------------------------------------
2627
2628// IMUData_AngularVelocity
2629
2630// optional double x = 1 [(.dccl.field) = {
2631inline bool IMUData_AngularVelocity::_internal_has_x() const {
2632 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2633 return value;
2634}
2635inline bool IMUData_AngularVelocity::has_x() const {
2636 return _internal_has_x();
2637}
2638inline void IMUData_AngularVelocity::clear_x() {
2639 _impl_.x_ = 0;
2640 _impl_._has_bits_[0] &= ~0x00000001u;
2641}
2642inline double IMUData_AngularVelocity::_internal_x() const {
2643 return _impl_.x_;
2644}
2645inline double IMUData_AngularVelocity::x() const {
2646 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.x)
2647 return _internal_x();
2648}
2649inline void IMUData_AngularVelocity::_internal_set_x(double value) {
2650 _impl_._has_bits_[0] |= 0x00000001u;
2651 _impl_.x_ = value;
2652}
2653inline void IMUData_AngularVelocity::set_x(double value) {
2654 _internal_set_x(value);
2655 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.x)
2656}
2657
2658// optional double y = 2 [(.dccl.field) = {
2659inline bool IMUData_AngularVelocity::_internal_has_y() const {
2660 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2661 return value;
2662}
2663inline bool IMUData_AngularVelocity::has_y() const {
2664 return _internal_has_y();
2665}
2666inline void IMUData_AngularVelocity::clear_y() {
2667 _impl_.y_ = 0;
2668 _impl_._has_bits_[0] &= ~0x00000002u;
2669}
2670inline double IMUData_AngularVelocity::_internal_y() const {
2671 return _impl_.y_;
2672}
2673inline double IMUData_AngularVelocity::y() const {
2674 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.y)
2675 return _internal_y();
2676}
2677inline void IMUData_AngularVelocity::_internal_set_y(double value) {
2678 _impl_._has_bits_[0] |= 0x00000002u;
2679 _impl_.y_ = value;
2680}
2681inline void IMUData_AngularVelocity::set_y(double value) {
2682 _internal_set_y(value);
2683 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.y)
2684}
2685
2686// optional double z = 3 [(.dccl.field) = {
2687inline bool IMUData_AngularVelocity::_internal_has_z() const {
2688 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2689 return value;
2690}
2691inline bool IMUData_AngularVelocity::has_z() const {
2692 return _internal_has_z();
2693}
2694inline void IMUData_AngularVelocity::clear_z() {
2695 _impl_.z_ = 0;
2696 _impl_._has_bits_[0] &= ~0x00000004u;
2697}
2698inline double IMUData_AngularVelocity::_internal_z() const {
2699 return _impl_.z_;
2700}
2701inline double IMUData_AngularVelocity::z() const {
2702 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.z)
2703 return _internal_z();
2704}
2705inline void IMUData_AngularVelocity::_internal_set_z(double value) {
2706 _impl_._has_bits_[0] |= 0x00000004u;
2707 _impl_.z_ = value;
2708}
2709inline void IMUData_AngularVelocity::set_z(double value) {
2710 _internal_set_z(value);
2711 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.z)
2712}
2713
2714// -------------------------------------------------------------------
2715
2716// IMUData_Quaternion
2717
2718// optional double w = 1;
2719inline bool IMUData_Quaternion::_internal_has_w() const {
2720 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2721 return value;
2722}
2723inline bool IMUData_Quaternion::has_w() const {
2724 return _internal_has_w();
2725}
2726inline void IMUData_Quaternion::clear_w() {
2727 _impl_.w_ = 0;
2728 _impl_._has_bits_[0] &= ~0x00000001u;
2729}
2730inline double IMUData_Quaternion::_internal_w() const {
2731 return _impl_.w_;
2732}
2733inline double IMUData_Quaternion::w() const {
2734 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.w)
2735 return _internal_w();
2736}
2737inline void IMUData_Quaternion::_internal_set_w(double value) {
2738 _impl_._has_bits_[0] |= 0x00000001u;
2739 _impl_.w_ = value;
2740}
2741inline void IMUData_Quaternion::set_w(double value) {
2742 _internal_set_w(value);
2743 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.w)
2744}
2745
2746// optional double x = 2;
2747inline bool IMUData_Quaternion::_internal_has_x() const {
2748 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2749 return value;
2750}
2751inline bool IMUData_Quaternion::has_x() const {
2752 return _internal_has_x();
2753}
2754inline void IMUData_Quaternion::clear_x() {
2755 _impl_.x_ = 0;
2756 _impl_._has_bits_[0] &= ~0x00000002u;
2757}
2758inline double IMUData_Quaternion::_internal_x() const {
2759 return _impl_.x_;
2760}
2761inline double IMUData_Quaternion::x() const {
2762 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.x)
2763 return _internal_x();
2764}
2765inline void IMUData_Quaternion::_internal_set_x(double value) {
2766 _impl_._has_bits_[0] |= 0x00000002u;
2767 _impl_.x_ = value;
2768}
2769inline void IMUData_Quaternion::set_x(double value) {
2770 _internal_set_x(value);
2771 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.x)
2772}
2773
2774// optional double y = 3;
2775inline bool IMUData_Quaternion::_internal_has_y() const {
2776 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2777 return value;
2778}
2779inline bool IMUData_Quaternion::has_y() const {
2780 return _internal_has_y();
2781}
2782inline void IMUData_Quaternion::clear_y() {
2783 _impl_.y_ = 0;
2784 _impl_._has_bits_[0] &= ~0x00000004u;
2785}
2786inline double IMUData_Quaternion::_internal_y() const {
2787 return _impl_.y_;
2788}
2789inline double IMUData_Quaternion::y() const {
2790 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.y)
2791 return _internal_y();
2792}
2793inline void IMUData_Quaternion::_internal_set_y(double value) {
2794 _impl_._has_bits_[0] |= 0x00000004u;
2795 _impl_.y_ = value;
2796}
2797inline void IMUData_Quaternion::set_y(double value) {
2798 _internal_set_y(value);
2799 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.y)
2800}
2801
2802// optional double z = 4;
2803inline bool IMUData_Quaternion::_internal_has_z() const {
2804 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
2805 return value;
2806}
2807inline bool IMUData_Quaternion::has_z() const {
2808 return _internal_has_z();
2809}
2810inline void IMUData_Quaternion::clear_z() {
2811 _impl_.z_ = 0;
2812 _impl_._has_bits_[0] &= ~0x00000008u;
2813}
2814inline double IMUData_Quaternion::_internal_z() const {
2815 return _impl_.z_;
2816}
2817inline double IMUData_Quaternion::z() const {
2818 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.z)
2819 return _internal_z();
2820}
2821inline void IMUData_Quaternion::_internal_set_z(double value) {
2822 _impl_._has_bits_[0] |= 0x00000008u;
2823 _impl_.z_ = value;
2824}
2825inline void IMUData_Quaternion::set_z(double value) {
2826 _internal_set_z(value);
2827 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.z)
2828}
2829
2830// -------------------------------------------------------------------
2831
2832// IMUData
2833
2834// optional .jaiabot.protobuf.IMUData.EulerAngles euler_angles = 1;
2835inline bool IMUData::_internal_has_euler_angles() const {
2836 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2837 PROTOBUF_ASSUME(!value || _impl_.euler_angles_ != nullptr);
2838 return value;
2839}
2840inline bool IMUData::has_euler_angles() const {
2841 return _internal_has_euler_angles();
2842}
2843inline void IMUData::clear_euler_angles() {
2844 if (_impl_.euler_angles_ != nullptr) _impl_.euler_angles_->Clear();
2845 _impl_._has_bits_[0] &= ~0x00000002u;
2846}
2847inline const ::jaiabot::protobuf::IMUData_EulerAngles& IMUData::_internal_euler_angles() const {
2848 const ::jaiabot::protobuf::IMUData_EulerAngles* p = _impl_.euler_angles_;
2849 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_EulerAngles&>(
2851}
2852inline const ::jaiabot::protobuf::IMUData_EulerAngles& IMUData::euler_angles() const {
2853 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.euler_angles)
2854 return _internal_euler_angles();
2855}
2856inline void IMUData::unsafe_arena_set_allocated_euler_angles(
2858 if (GetArenaForAllocation() == nullptr) {
2859 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.euler_angles_);
2860 }
2861 _impl_.euler_angles_ = euler_angles;
2862 if (euler_angles) {
2863 _impl_._has_bits_[0] |= 0x00000002u;
2864 } else {
2865 _impl_._has_bits_[0] &= ~0x00000002u;
2866 }
2867 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.euler_angles)
2868}
2869inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::release_euler_angles() {
2870 _impl_._has_bits_[0] &= ~0x00000002u;
2871 ::jaiabot::protobuf::IMUData_EulerAngles* temp = _impl_.euler_angles_;
2872 _impl_.euler_angles_ = nullptr;
2873#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
2874 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
2875 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2876 if (GetArenaForAllocation() == nullptr) { delete old; }
2877#else // PROTOBUF_FORCE_COPY_IN_RELEASE
2878 if (GetArenaForAllocation() != nullptr) {
2879 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2880 }
2881#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
2882 return temp;
2883}
2884inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::unsafe_arena_release_euler_angles() {
2885 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.euler_angles)
2886 _impl_._has_bits_[0] &= ~0x00000002u;
2887 ::jaiabot::protobuf::IMUData_EulerAngles* temp = _impl_.euler_angles_;
2888 _impl_.euler_angles_ = nullptr;
2889 return temp;
2890}
2891inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::_internal_mutable_euler_angles() {
2892 _impl_._has_bits_[0] |= 0x00000002u;
2893 if (_impl_.euler_angles_ == nullptr) {
2894 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles>(GetArenaForAllocation());
2895 _impl_.euler_angles_ = p;
2896 }
2897 return _impl_.euler_angles_;
2898}
2899inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::mutable_euler_angles() {
2900 ::jaiabot::protobuf::IMUData_EulerAngles* _msg = _internal_mutable_euler_angles();
2901 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.euler_angles)
2902 return _msg;
2903}
2904inline void IMUData::set_allocated_euler_angles(::jaiabot::protobuf::IMUData_EulerAngles* euler_angles) {
2905 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
2906 if (message_arena == nullptr) {
2907 delete _impl_.euler_angles_;
2908 }
2909 if (euler_angles) {
2910 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2911 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(euler_angles);
2912 if (message_arena != submessage_arena) {
2913 euler_angles = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2914 message_arena, euler_angles, submessage_arena);
2915 }
2916 _impl_._has_bits_[0] |= 0x00000002u;
2917 } else {
2918 _impl_._has_bits_[0] &= ~0x00000002u;
2919 }
2920 _impl_.euler_angles_ = euler_angles;
2921 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.euler_angles)
2922}
2923
2924// optional .jaiabot.protobuf.IMUData.Acceleration linear_acceleration = 2;
2925inline bool IMUData::_internal_has_linear_acceleration() const {
2926 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2927 PROTOBUF_ASSUME(!value || _impl_.linear_acceleration_ != nullptr);
2928 return value;
2929}
2930inline bool IMUData::has_linear_acceleration() const {
2931 return _internal_has_linear_acceleration();
2932}
2933inline void IMUData::clear_linear_acceleration() {
2934 if (_impl_.linear_acceleration_ != nullptr) _impl_.linear_acceleration_->Clear();
2935 _impl_._has_bits_[0] &= ~0x00000004u;
2936}
2937inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::_internal_linear_acceleration() const {
2938 const ::jaiabot::protobuf::IMUData_Acceleration* p = _impl_.linear_acceleration_;
2939 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Acceleration&>(
2941}
2942inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::linear_acceleration() const {
2943 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.linear_acceleration)
2944 return _internal_linear_acceleration();
2945}
2946inline void IMUData::unsafe_arena_set_allocated_linear_acceleration(
2947 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration) {
2948 if (GetArenaForAllocation() == nullptr) {
2949 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.linear_acceleration_);
2950 }
2951 _impl_.linear_acceleration_ = linear_acceleration;
2952 if (linear_acceleration) {
2953 _impl_._has_bits_[0] |= 0x00000004u;
2954 } else {
2955 _impl_._has_bits_[0] &= ~0x00000004u;
2956 }
2957 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration)
2958}
2959inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::release_linear_acceleration() {
2960 _impl_._has_bits_[0] &= ~0x00000004u;
2961 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.linear_acceleration_;
2962 _impl_.linear_acceleration_ = nullptr;
2963#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
2964 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
2965 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2966 if (GetArenaForAllocation() == nullptr) { delete old; }
2967#else // PROTOBUF_FORCE_COPY_IN_RELEASE
2968 if (GetArenaForAllocation() != nullptr) {
2969 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2970 }
2971#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
2972 return temp;
2973}
2974inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::unsafe_arena_release_linear_acceleration() {
2975 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.linear_acceleration)
2976 _impl_._has_bits_[0] &= ~0x00000004u;
2977 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.linear_acceleration_;
2978 _impl_.linear_acceleration_ = nullptr;
2979 return temp;
2980}
2981inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::_internal_mutable_linear_acceleration() {
2982 _impl_._has_bits_[0] |= 0x00000004u;
2983 if (_impl_.linear_acceleration_ == nullptr) {
2984 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(GetArenaForAllocation());
2985 _impl_.linear_acceleration_ = p;
2986 }
2987 return _impl_.linear_acceleration_;
2988}
2989inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::mutable_linear_acceleration() {
2990 ::jaiabot::protobuf::IMUData_Acceleration* _msg = _internal_mutable_linear_acceleration();
2991 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.linear_acceleration)
2992 return _msg;
2993}
2994inline void IMUData::set_allocated_linear_acceleration(::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration) {
2995 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
2996 if (message_arena == nullptr) {
2997 delete _impl_.linear_acceleration_;
2998 }
2999 if (linear_acceleration) {
3000 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3001 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(linear_acceleration);
3002 if (message_arena != submessage_arena) {
3003 linear_acceleration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3004 message_arena, linear_acceleration, submessage_arena);
3005 }
3006 _impl_._has_bits_[0] |= 0x00000004u;
3007 } else {
3008 _impl_._has_bits_[0] &= ~0x00000004u;
3009 }
3010 _impl_.linear_acceleration_ = linear_acceleration;
3011 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration)
3012}
3013
3014// optional .jaiabot.protobuf.IMUData.Acceleration gravity = 3;
3015inline bool IMUData::_internal_has_gravity() const {
3016 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3017 PROTOBUF_ASSUME(!value || _impl_.gravity_ != nullptr);
3018 return value;
3019}
3020inline bool IMUData::has_gravity() const {
3021 return _internal_has_gravity();
3022}
3023inline void IMUData::clear_gravity() {
3024 if (_impl_.gravity_ != nullptr) _impl_.gravity_->Clear();
3025 _impl_._has_bits_[0] &= ~0x00000008u;
3026}
3027inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::_internal_gravity() const {
3028 const ::jaiabot::protobuf::IMUData_Acceleration* p = _impl_.gravity_;
3029 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Acceleration&>(
3031}
3032inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::gravity() const {
3033 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.gravity)
3034 return _internal_gravity();
3035}
3036inline void IMUData::unsafe_arena_set_allocated_gravity(
3038 if (GetArenaForAllocation() == nullptr) {
3039 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.gravity_);
3040 }
3041 _impl_.gravity_ = gravity;
3042 if (gravity) {
3043 _impl_._has_bits_[0] |= 0x00000008u;
3044 } else {
3045 _impl_._has_bits_[0] &= ~0x00000008u;
3046 }
3047 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.gravity)
3048}
3049inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::release_gravity() {
3050 _impl_._has_bits_[0] &= ~0x00000008u;
3051 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.gravity_;
3052 _impl_.gravity_ = nullptr;
3053#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3054 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3055 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3056 if (GetArenaForAllocation() == nullptr) { delete old; }
3057#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3058 if (GetArenaForAllocation() != nullptr) {
3059 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3060 }
3061#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3062 return temp;
3063}
3064inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::unsafe_arena_release_gravity() {
3065 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.gravity)
3066 _impl_._has_bits_[0] &= ~0x00000008u;
3067 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.gravity_;
3068 _impl_.gravity_ = nullptr;
3069 return temp;
3070}
3071inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::_internal_mutable_gravity() {
3072 _impl_._has_bits_[0] |= 0x00000008u;
3073 if (_impl_.gravity_ == nullptr) {
3074 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(GetArenaForAllocation());
3075 _impl_.gravity_ = p;
3076 }
3077 return _impl_.gravity_;
3078}
3079inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::mutable_gravity() {
3080 ::jaiabot::protobuf::IMUData_Acceleration* _msg = _internal_mutable_gravity();
3081 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.gravity)
3082 return _msg;
3083}
3084inline void IMUData::set_allocated_gravity(::jaiabot::protobuf::IMUData_Acceleration* gravity) {
3085 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3086 if (message_arena == nullptr) {
3087 delete _impl_.gravity_;
3088 }
3089 if (gravity) {
3090 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3091 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(gravity);
3092 if (message_arena != submessage_arena) {
3093 gravity = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3094 message_arena, gravity, submessage_arena);
3095 }
3096 _impl_._has_bits_[0] |= 0x00000008u;
3097 } else {
3098 _impl_._has_bits_[0] &= ~0x00000008u;
3099 }
3100 _impl_.gravity_ = gravity;
3101 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.gravity)
3102}
3103
3104// optional .jaiabot.protobuf.IMUData.Accuracies accuracies = 4;
3105inline bool IMUData::_internal_has_accuracies() const {
3106 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
3107 PROTOBUF_ASSUME(!value || _impl_.accuracies_ != nullptr);
3108 return value;
3109}
3110inline bool IMUData::has_accuracies() const {
3111 return _internal_has_accuracies();
3112}
3113inline void IMUData::clear_accuracies() {
3114 if (_impl_.accuracies_ != nullptr) _impl_.accuracies_->Clear();
3115 _impl_._has_bits_[0] &= ~0x00000010u;
3116}
3117inline const ::jaiabot::protobuf::IMUData_Accuracies& IMUData::_internal_accuracies() const {
3118 const ::jaiabot::protobuf::IMUData_Accuracies* p = _impl_.accuracies_;
3119 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Accuracies&>(
3121}
3122inline const ::jaiabot::protobuf::IMUData_Accuracies& IMUData::accuracies() const {
3123 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.accuracies)
3124 return _internal_accuracies();
3125}
3126inline void IMUData::unsafe_arena_set_allocated_accuracies(
3128 if (GetArenaForAllocation() == nullptr) {
3129 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.accuracies_);
3130 }
3131 _impl_.accuracies_ = accuracies;
3132 if (accuracies) {
3133 _impl_._has_bits_[0] |= 0x00000010u;
3134 } else {
3135 _impl_._has_bits_[0] &= ~0x00000010u;
3136 }
3137 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.accuracies)
3138}
3139inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::release_accuracies() {
3140 _impl_._has_bits_[0] &= ~0x00000010u;
3141 ::jaiabot::protobuf::IMUData_Accuracies* temp = _impl_.accuracies_;
3142 _impl_.accuracies_ = nullptr;
3143#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3144 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3145 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3146 if (GetArenaForAllocation() == nullptr) { delete old; }
3147#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3148 if (GetArenaForAllocation() != nullptr) {
3149 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3150 }
3151#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3152 return temp;
3153}
3154inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::unsafe_arena_release_accuracies() {
3155 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.accuracies)
3156 _impl_._has_bits_[0] &= ~0x00000010u;
3157 ::jaiabot::protobuf::IMUData_Accuracies* temp = _impl_.accuracies_;
3158 _impl_.accuracies_ = nullptr;
3159 return temp;
3160}
3161inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::_internal_mutable_accuracies() {
3162 _impl_._has_bits_[0] |= 0x00000010u;
3163 if (_impl_.accuracies_ == nullptr) {
3164 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Accuracies>(GetArenaForAllocation());
3165 _impl_.accuracies_ = p;
3166 }
3167 return _impl_.accuracies_;
3168}
3169inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::mutable_accuracies() {
3170 ::jaiabot::protobuf::IMUData_Accuracies* _msg = _internal_mutable_accuracies();
3171 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.accuracies)
3172 return _msg;
3173}
3174inline void IMUData::set_allocated_accuracies(::jaiabot::protobuf::IMUData_Accuracies* accuracies) {
3175 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3176 if (message_arena == nullptr) {
3177 delete _impl_.accuracies_;
3178 }
3179 if (accuracies) {
3180 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3181 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(accuracies);
3182 if (message_arena != submessage_arena) {
3183 accuracies = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3184 message_arena, accuracies, submessage_arena);
3185 }
3186 _impl_._has_bits_[0] |= 0x00000010u;
3187 } else {
3188 _impl_._has_bits_[0] &= ~0x00000010u;
3189 }
3190 _impl_.accuracies_ = accuracies;
3191 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.accuracies)
3192}
3193
3194// optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 5;
3195inline bool IMUData::_internal_has_calibration_state() const {
3196 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
3197 return value;
3198}
3199inline bool IMUData::has_calibration_state() const {
3200 return _internal_has_calibration_state();
3201}
3202inline void IMUData::clear_calibration_state() {
3203 _impl_.calibration_state_ = 1;
3204 _impl_._has_bits_[0] &= ~0x00000400u;
3205}
3206inline ::jaiabot::protobuf::IMUCalibrationState IMUData::_internal_calibration_state() const {
3207 return static_cast< ::jaiabot::protobuf::IMUCalibrationState >(_impl_.calibration_state_);
3208}
3209inline ::jaiabot::protobuf::IMUCalibrationState IMUData::calibration_state() const {
3210 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.calibration_state)
3211 return _internal_calibration_state();
3212}
3213inline void IMUData::_internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
3215 _impl_._has_bits_[0] |= 0x00000400u;
3216 _impl_.calibration_state_ = value;
3217}
3218inline void IMUData::set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
3219 _internal_set_calibration_state(value);
3220 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.calibration_state)
3221}
3222
3223// optional bool bot_rolled_over = 6 [default = false];
3224inline bool IMUData::_internal_has_bot_rolled_over() const {
3225 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
3226 return value;
3227}
3228inline bool IMUData::has_bot_rolled_over() const {
3229 return _internal_has_bot_rolled_over();
3230}
3231inline void IMUData::clear_bot_rolled_over() {
3232 _impl_.bot_rolled_over_ = false;
3233 _impl_._has_bits_[0] &= ~0x00000200u;
3234}
3235inline bool IMUData::_internal_bot_rolled_over() const {
3236 return _impl_.bot_rolled_over_;
3237}
3238inline bool IMUData::bot_rolled_over() const {
3239 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.bot_rolled_over)
3240 return _internal_bot_rolled_over();
3241}
3242inline void IMUData::_internal_set_bot_rolled_over(bool value) {
3243 _impl_._has_bits_[0] |= 0x00000200u;
3244 _impl_.bot_rolled_over_ = value;
3245}
3246inline void IMUData::set_bot_rolled_over(bool value) {
3247 _internal_set_bot_rolled_over(value);
3248 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.bot_rolled_over)
3249}
3250
3251// optional double significant_wave_height = 7 [(.dccl.field) = {
3252inline bool IMUData::_internal_has_significant_wave_height() const {
3253 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
3254 return value;
3255}
3256inline bool IMUData::has_significant_wave_height() const {
3257 return _internal_has_significant_wave_height();
3258}
3259inline void IMUData::clear_significant_wave_height() {
3260 _impl_.significant_wave_height_ = 0;
3261 _impl_._has_bits_[0] &= ~0x00000080u;
3262}
3263inline double IMUData::_internal_significant_wave_height() const {
3264 return _impl_.significant_wave_height_;
3265}
3266inline double IMUData::significant_wave_height() const {
3267 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.significant_wave_height)
3268 return _internal_significant_wave_height();
3269}
3270inline void IMUData::_internal_set_significant_wave_height(double value) {
3271 _impl_._has_bits_[0] |= 0x00000080u;
3272 _impl_.significant_wave_height_ = value;
3273}
3274inline void IMUData::set_significant_wave_height(double value) {
3275 _internal_set_significant_wave_height(value);
3276 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.significant_wave_height)
3277}
3278
3279// optional double max_acceleration = 8 [(.dccl.field) = {
3280inline bool IMUData::_internal_has_max_acceleration() const {
3281 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
3282 return value;
3283}
3284inline bool IMUData::has_max_acceleration() const {
3285 return _internal_has_max_acceleration();
3286}
3287inline void IMUData::clear_max_acceleration() {
3288 _impl_.max_acceleration_ = 0;
3289 _impl_._has_bits_[0] &= ~0x00000100u;
3290}
3291inline double IMUData::_internal_max_acceleration() const {
3292 return _impl_.max_acceleration_;
3293}
3294inline double IMUData::max_acceleration() const {
3295 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.max_acceleration)
3296 return _internal_max_acceleration();
3297}
3298inline void IMUData::_internal_set_max_acceleration(double value) {
3299 _impl_._has_bits_[0] |= 0x00000100u;
3300 _impl_.max_acceleration_ = value;
3301}
3302inline void IMUData::set_max_acceleration(double value) {
3303 _internal_set_max_acceleration(value);
3304 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.max_acceleration)
3305}
3306
3307// optional .jaiabot.protobuf.IMUData.AngularVelocity angular_velocity = 9;
3308inline bool IMUData::_internal_has_angular_velocity() const {
3309 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
3310 PROTOBUF_ASSUME(!value || _impl_.angular_velocity_ != nullptr);
3311 return value;
3312}
3313inline bool IMUData::has_angular_velocity() const {
3314 return _internal_has_angular_velocity();
3315}
3316inline void IMUData::clear_angular_velocity() {
3317 if (_impl_.angular_velocity_ != nullptr) _impl_.angular_velocity_->Clear();
3318 _impl_._has_bits_[0] &= ~0x00000020u;
3319}
3320inline const ::jaiabot::protobuf::IMUData_AngularVelocity& IMUData::_internal_angular_velocity() const {
3321 const ::jaiabot::protobuf::IMUData_AngularVelocity* p = _impl_.angular_velocity_;
3322 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_AngularVelocity&>(
3324}
3325inline const ::jaiabot::protobuf::IMUData_AngularVelocity& IMUData::angular_velocity() const {
3326 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.angular_velocity)
3327 return _internal_angular_velocity();
3328}
3329inline void IMUData::unsafe_arena_set_allocated_angular_velocity(
3331 if (GetArenaForAllocation() == nullptr) {
3332 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.angular_velocity_);
3333 }
3334 _impl_.angular_velocity_ = angular_velocity;
3335 if (angular_velocity) {
3336 _impl_._has_bits_[0] |= 0x00000020u;
3337 } else {
3338 _impl_._has_bits_[0] &= ~0x00000020u;
3339 }
3340 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.angular_velocity)
3341}
3342inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::release_angular_velocity() {
3343 _impl_._has_bits_[0] &= ~0x00000020u;
3344 ::jaiabot::protobuf::IMUData_AngularVelocity* temp = _impl_.angular_velocity_;
3345 _impl_.angular_velocity_ = nullptr;
3346#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3347 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3348 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3349 if (GetArenaForAllocation() == nullptr) { delete old; }
3350#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3351 if (GetArenaForAllocation() != nullptr) {
3352 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3353 }
3354#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3355 return temp;
3356}
3357inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::unsafe_arena_release_angular_velocity() {
3358 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.angular_velocity)
3359 _impl_._has_bits_[0] &= ~0x00000020u;
3360 ::jaiabot::protobuf::IMUData_AngularVelocity* temp = _impl_.angular_velocity_;
3361 _impl_.angular_velocity_ = nullptr;
3362 return temp;
3363}
3364inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::_internal_mutable_angular_velocity() {
3365 _impl_._has_bits_[0] |= 0x00000020u;
3366 if (_impl_.angular_velocity_ == nullptr) {
3368 _impl_.angular_velocity_ = p;
3369 }
3370 return _impl_.angular_velocity_;
3371}
3372inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::mutable_angular_velocity() {
3373 ::jaiabot::protobuf::IMUData_AngularVelocity* _msg = _internal_mutable_angular_velocity();
3374 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.angular_velocity)
3375 return _msg;
3376}
3377inline void IMUData::set_allocated_angular_velocity(::jaiabot::protobuf::IMUData_AngularVelocity* angular_velocity) {
3378 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3379 if (message_arena == nullptr) {
3380 delete _impl_.angular_velocity_;
3381 }
3382 if (angular_velocity) {
3383 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3384 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(angular_velocity);
3385 if (message_arena != submessage_arena) {
3386 angular_velocity = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3387 message_arena, angular_velocity, submessage_arena);
3388 }
3389 _impl_._has_bits_[0] |= 0x00000020u;
3390 } else {
3391 _impl_._has_bits_[0] &= ~0x00000020u;
3392 }
3393 _impl_.angular_velocity_ = angular_velocity;
3394 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.angular_velocity)
3395}
3396
3397// optional .jaiabot.protobuf.IMUData.Quaternion quaternion = 10;
3398inline bool IMUData::_internal_has_quaternion() const {
3399 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
3400 PROTOBUF_ASSUME(!value || _impl_.quaternion_ != nullptr);
3401 return value;
3402}
3403inline bool IMUData::has_quaternion() const {
3404 return _internal_has_quaternion();
3405}
3406inline void IMUData::clear_quaternion() {
3407 if (_impl_.quaternion_ != nullptr) _impl_.quaternion_->Clear();
3408 _impl_._has_bits_[0] &= ~0x00000040u;
3409}
3410inline const ::jaiabot::protobuf::IMUData_Quaternion& IMUData::_internal_quaternion() const {
3411 const ::jaiabot::protobuf::IMUData_Quaternion* p = _impl_.quaternion_;
3412 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Quaternion&>(
3414}
3415inline const ::jaiabot::protobuf::IMUData_Quaternion& IMUData::quaternion() const {
3416 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.quaternion)
3417 return _internal_quaternion();
3418}
3419inline void IMUData::unsafe_arena_set_allocated_quaternion(
3421 if (GetArenaForAllocation() == nullptr) {
3422 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.quaternion_);
3423 }
3424 _impl_.quaternion_ = quaternion;
3425 if (quaternion) {
3426 _impl_._has_bits_[0] |= 0x00000040u;
3427 } else {
3428 _impl_._has_bits_[0] &= ~0x00000040u;
3429 }
3430 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.quaternion)
3431}
3432inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::release_quaternion() {
3433 _impl_._has_bits_[0] &= ~0x00000040u;
3434 ::jaiabot::protobuf::IMUData_Quaternion* temp = _impl_.quaternion_;
3435 _impl_.quaternion_ = nullptr;
3436#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3437 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3438 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3439 if (GetArenaForAllocation() == nullptr) { delete old; }
3440#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3441 if (GetArenaForAllocation() != nullptr) {
3442 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3443 }
3444#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3445 return temp;
3446}
3447inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::unsafe_arena_release_quaternion() {
3448 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.quaternion)
3449 _impl_._has_bits_[0] &= ~0x00000040u;
3450 ::jaiabot::protobuf::IMUData_Quaternion* temp = _impl_.quaternion_;
3451 _impl_.quaternion_ = nullptr;
3452 return temp;
3453}
3454inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::_internal_mutable_quaternion() {
3455 _impl_._has_bits_[0] |= 0x00000040u;
3456 if (_impl_.quaternion_ == nullptr) {
3457 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Quaternion>(GetArenaForAllocation());
3458 _impl_.quaternion_ = p;
3459 }
3460 return _impl_.quaternion_;
3461}
3462inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::mutable_quaternion() {
3463 ::jaiabot::protobuf::IMUData_Quaternion* _msg = _internal_mutable_quaternion();
3464 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.quaternion)
3465 return _msg;
3466}
3467inline void IMUData::set_allocated_quaternion(::jaiabot::protobuf::IMUData_Quaternion* quaternion) {
3468 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3469 if (message_arena == nullptr) {
3470 delete _impl_.quaternion_;
3471 }
3472 if (quaternion) {
3473 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3474 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(quaternion);
3475 if (message_arena != submessage_arena) {
3476 quaternion = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3477 message_arena, quaternion, submessage_arena);
3478 }
3479 _impl_._has_bits_[0] |= 0x00000040u;
3480 } else {
3481 _impl_._has_bits_[0] &= ~0x00000040u;
3482 }
3483 _impl_.quaternion_ = quaternion;
3484 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.quaternion)
3485}
3486
3487// optional string imu_type = 11;
3488inline bool IMUData::_internal_has_imu_type() const {
3489 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3490 return value;
3491}
3492inline bool IMUData::has_imu_type() const {
3493 return _internal_has_imu_type();
3494}
3495inline void IMUData::clear_imu_type() {
3496 _impl_.imu_type_.ClearToEmpty();
3497 _impl_._has_bits_[0] &= ~0x00000001u;
3498}
3499inline const std::string& IMUData::imu_type() const {
3500 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.imu_type)
3501 return _internal_imu_type();
3502}
3503template <typename ArgT0, typename... ArgT>
3504inline PROTOBUF_ALWAYS_INLINE
3505void IMUData::set_imu_type(ArgT0&& arg0, ArgT... args) {
3506 _impl_._has_bits_[0] |= 0x00000001u;
3507 _impl_.imu_type_.Set(static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
3508 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.imu_type)
3509}
3510inline std::string* IMUData::mutable_imu_type() {
3511 std::string* _s = _internal_mutable_imu_type();
3512 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.imu_type)
3513 return _s;
3514}
3515inline const std::string& IMUData::_internal_imu_type() const {
3516 return _impl_.imu_type_.Get();
3517}
3518inline void IMUData::_internal_set_imu_type(const std::string& value) {
3519 _impl_._has_bits_[0] |= 0x00000001u;
3520 _impl_.imu_type_.Set(value, GetArenaForAllocation());
3521}
3522inline std::string* IMUData::_internal_mutable_imu_type() {
3523 _impl_._has_bits_[0] |= 0x00000001u;
3524 return _impl_.imu_type_.Mutable(GetArenaForAllocation());
3525}
3526inline std::string* IMUData::release_imu_type() {
3527 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.imu_type)
3528 if (!_internal_has_imu_type()) {
3529 return nullptr;
3530 }
3531 _impl_._has_bits_[0] &= ~0x00000001u;
3532 auto* p = _impl_.imu_type_.Release();
3533#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
3534 if (_impl_.imu_type_.IsDefault()) {
3535 _impl_.imu_type_.Set("", GetArenaForAllocation());
3536 }
3537#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
3538 return p;
3539}
3540inline void IMUData::set_allocated_imu_type(std::string* imu_type) {
3541 if (imu_type != nullptr) {
3542 _impl_._has_bits_[0] |= 0x00000001u;
3543 } else {
3544 _impl_._has_bits_[0] &= ~0x00000001u;
3545 }
3546 _impl_.imu_type_.SetAllocated(imu_type, GetArenaForAllocation());
3547#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
3548 if (_impl_.imu_type_.IsDefault()) {
3549 _impl_.imu_type_.Set("", GetArenaForAllocation());
3550 }
3551#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
3552 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.imu_type)
3553}
3554
3555// -------------------------------------------------------------------
3556
3557// IMUIssue
3558
3559// required .jaiabot.protobuf.IMUIssue.SolutionType solution = 1;
3560inline bool IMUIssue::_internal_has_solution() const {
3561 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3562 return value;
3563}
3564inline bool IMUIssue::has_solution() const {
3565 return _internal_has_solution();
3566}
3567inline void IMUIssue::clear_solution() {
3568 _impl_.solution_ = 0;
3569 _impl_._has_bits_[0] &= ~0x00000001u;
3570}
3571inline ::jaiabot::protobuf::IMUIssue_SolutionType IMUIssue::_internal_solution() const {
3572 return static_cast< ::jaiabot::protobuf::IMUIssue_SolutionType >(_impl_.solution_);
3573}
3574inline ::jaiabot::protobuf::IMUIssue_SolutionType IMUIssue::solution() const {
3575 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.solution)
3576 return _internal_solution();
3577}
3578inline void IMUIssue::_internal_set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
3580 _impl_._has_bits_[0] |= 0x00000001u;
3581 _impl_.solution_ = value;
3582}
3583inline void IMUIssue::set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
3584 _internal_set_solution(value);
3585 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.solution)
3586}
3587
3588// optional .jaiabot.protobuf.IMUIssue.IssueType type = 2;
3589inline bool IMUIssue::_internal_has_type() const {
3590 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3591 return value;
3592}
3593inline bool IMUIssue::has_type() const {
3594 return _internal_has_type();
3595}
3596inline void IMUIssue::clear_type() {
3597 _impl_.type_ = 0;
3598 _impl_._has_bits_[0] &= ~0x00000002u;
3599}
3600inline ::jaiabot::protobuf::IMUIssue_IssueType IMUIssue::_internal_type() const {
3601 return static_cast< ::jaiabot::protobuf::IMUIssue_IssueType >(_impl_.type_);
3602}
3603inline ::jaiabot::protobuf::IMUIssue_IssueType IMUIssue::type() const {
3604 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.type)
3605 return _internal_type();
3606}
3607inline void IMUIssue::_internal_set_type(::jaiabot::protobuf::IMUIssue_IssueType value) {
3609 _impl_._has_bits_[0] |= 0x00000002u;
3610 _impl_.type_ = value;
3611}
3612inline void IMUIssue::set_type(::jaiabot::protobuf::IMUIssue_IssueType value) {
3613 _internal_set_type(value);
3614 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.type)
3615}
3616
3617// optional .jaiabot.protobuf.MissionState mission_state = 3;
3618inline bool IMUIssue::_internal_has_mission_state() const {
3619 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
3620 return value;
3621}
3622inline bool IMUIssue::has_mission_state() const {
3623 return _internal_has_mission_state();
3624}
3625inline void IMUIssue::clear_mission_state() {
3626 _impl_.mission_state_ = 0;
3627 _impl_._has_bits_[0] &= ~0x00000200u;
3628}
3629inline ::jaiabot::protobuf::MissionState IMUIssue::_internal_mission_state() const {
3630 return static_cast< ::jaiabot::protobuf::MissionState >(_impl_.mission_state_);
3631}
3632inline ::jaiabot::protobuf::MissionState IMUIssue::mission_state() const {
3633 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.mission_state)
3634 return _internal_mission_state();
3635}
3636inline void IMUIssue::_internal_set_mission_state(::jaiabot::protobuf::MissionState value) {
3638 _impl_._has_bits_[0] |= 0x00000200u;
3639 _impl_.mission_state_ = value;
3640}
3641inline void IMUIssue::set_mission_state(::jaiabot::protobuf::MissionState value) {
3642 _internal_set_mission_state(value);
3643 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.mission_state)
3644}
3645
3646// optional double imu_heading_course_max_diff = 30 [default = 45];
3647inline bool IMUIssue::_internal_has_imu_heading_course_max_diff() const {
3648 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
3649 return value;
3650}
3651inline bool IMUIssue::has_imu_heading_course_max_diff() const {
3652 return _internal_has_imu_heading_course_max_diff();
3653}
3654inline void IMUIssue::clear_imu_heading_course_max_diff() {
3655 _impl_.imu_heading_course_max_diff_ = 45;
3656 _impl_._has_bits_[0] &= ~0x00000400u;
3657}
3658inline double IMUIssue::_internal_imu_heading_course_max_diff() const {
3659 return _impl_.imu_heading_course_max_diff_;
3660}
3661inline double IMUIssue::imu_heading_course_max_diff() const {
3662 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.imu_heading_course_max_diff)
3663 return _internal_imu_heading_course_max_diff();
3664}
3665inline void IMUIssue::_internal_set_imu_heading_course_max_diff(double value) {
3666 _impl_._has_bits_[0] |= 0x00000400u;
3667 _impl_.imu_heading_course_max_diff_ = value;
3668}
3669inline void IMUIssue::set_imu_heading_course_max_diff(double value) {
3670 _internal_set_imu_heading_course_max_diff(value);
3671 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.imu_heading_course_max_diff)
3672}
3673
3674// optional double heading = 31 [(.dccl.field) = {
3675inline bool IMUIssue::_internal_has_heading() const {
3676 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3677 return value;
3678}
3679inline bool IMUIssue::has_heading() const {
3680 return _internal_has_heading();
3681}
3682inline void IMUIssue::clear_heading() {
3683 _impl_.heading_ = 0;
3684 _impl_._has_bits_[0] &= ~0x00000004u;
3685}
3686inline double IMUIssue::_internal_heading() const {
3687 return _impl_.heading_;
3688}
3689inline double IMUIssue::heading() const {
3690 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.heading)
3691 return _internal_heading();
3692}
3693inline void IMUIssue::_internal_set_heading(double value) {
3694 _impl_._has_bits_[0] |= 0x00000004u;
3695 _impl_.heading_ = value;
3696}
3697inline void IMUIssue::set_heading(double value) {
3698 _internal_set_heading(value);
3699 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.heading)
3700}
3701
3702// optional double desired_heading = 32 [(.dccl.field) = {
3703inline bool IMUIssue::_internal_has_desired_heading() const {
3704 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3705 return value;
3706}
3707inline bool IMUIssue::has_desired_heading() const {
3708 return _internal_has_desired_heading();
3709}
3710inline void IMUIssue::clear_desired_heading() {
3711 _impl_.desired_heading_ = 0;
3712 _impl_._has_bits_[0] &= ~0x00000008u;
3713}
3714inline double IMUIssue::_internal_desired_heading() const {
3715 return _impl_.desired_heading_;
3716}
3717inline double IMUIssue::desired_heading() const {
3718 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.desired_heading)
3719 return _internal_desired_heading();
3720}
3721inline void IMUIssue::_internal_set_desired_heading(double value) {
3722 _impl_._has_bits_[0] |= 0x00000008u;
3723 _impl_.desired_heading_ = value;
3724}
3725inline void IMUIssue::set_desired_heading(double value) {
3726 _internal_set_desired_heading(value);
3727 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.desired_heading)
3728}
3729
3730// optional double course_over_ground = 33 [(.dccl.field) = {
3731inline bool IMUIssue::_internal_has_course_over_ground() const {
3732 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
3733 return value;
3734}
3735inline bool IMUIssue::has_course_over_ground() const {
3736 return _internal_has_course_over_ground();
3737}
3738inline void IMUIssue::clear_course_over_ground() {
3739 _impl_.course_over_ground_ = 0;
3740 _impl_._has_bits_[0] &= ~0x00000010u;
3741}
3742inline double IMUIssue::_internal_course_over_ground() const {
3743 return _impl_.course_over_ground_;
3744}
3745inline double IMUIssue::course_over_ground() const {
3746 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.course_over_ground)
3747 return _internal_course_over_ground();
3748}
3749inline void IMUIssue::_internal_set_course_over_ground(double value) {
3750 _impl_._has_bits_[0] |= 0x00000010u;
3751 _impl_.course_over_ground_ = value;
3752}
3753inline void IMUIssue::set_course_over_ground(double value) {
3754 _internal_set_course_over_ground(value);
3755 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.course_over_ground)
3756}
3757
3758// optional double heading_course_difference = 34 [(.dccl.field) = {
3759inline bool IMUIssue::_internal_has_heading_course_difference() const {
3760 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
3761 return value;
3762}
3763inline bool IMUIssue::has_heading_course_difference() const {
3764 return _internal_has_heading_course_difference();
3765}
3766inline void IMUIssue::clear_heading_course_difference() {
3767 _impl_.heading_course_difference_ = 0;
3768 _impl_._has_bits_[0] &= ~0x00000020u;
3769}
3770inline double IMUIssue::_internal_heading_course_difference() const {
3771 return _impl_.heading_course_difference_;
3772}
3773inline double IMUIssue::heading_course_difference() const {
3774 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.heading_course_difference)
3775 return _internal_heading_course_difference();
3776}
3777inline void IMUIssue::_internal_set_heading_course_difference(double value) {
3778 _impl_._has_bits_[0] |= 0x00000020u;
3779 _impl_.heading_course_difference_ = value;
3780}
3781inline void IMUIssue::set_heading_course_difference(double value) {
3782 _internal_set_heading_course_difference(value);
3783 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.heading_course_difference)
3784}
3785
3786// optional double pitch = 35 [(.dccl.field) = {
3787inline bool IMUIssue::_internal_has_pitch() const {
3788 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
3789 return value;
3790}
3791inline bool IMUIssue::has_pitch() const {
3792 return _internal_has_pitch();
3793}
3794inline void IMUIssue::clear_pitch() {
3795 _impl_.pitch_ = 0;
3796 _impl_._has_bits_[0] &= ~0x00000040u;
3797}
3798inline double IMUIssue::_internal_pitch() const {
3799 return _impl_.pitch_;
3800}
3801inline double IMUIssue::pitch() const {
3802 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.pitch)
3803 return _internal_pitch();
3804}
3805inline void IMUIssue::_internal_set_pitch(double value) {
3806 _impl_._has_bits_[0] |= 0x00000040u;
3807 _impl_.pitch_ = value;
3808}
3809inline void IMUIssue::set_pitch(double value) {
3810 _internal_set_pitch(value);
3811 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.pitch)
3812}
3813
3814// optional double speed_over_ground = 36 [(.dccl.field) = {
3815inline bool IMUIssue::_internal_has_speed_over_ground() const {
3816 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
3817 return value;
3818}
3819inline bool IMUIssue::has_speed_over_ground() const {
3820 return _internal_has_speed_over_ground();
3821}
3822inline void IMUIssue::clear_speed_over_ground() {
3823 _impl_.speed_over_ground_ = 0;
3824 _impl_._has_bits_[0] &= ~0x00000080u;
3825}
3826inline double IMUIssue::_internal_speed_over_ground() const {
3827 return _impl_.speed_over_ground_;
3828}
3829inline double IMUIssue::speed_over_ground() const {
3830 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.speed_over_ground)
3831 return _internal_speed_over_ground();
3832}
3833inline void IMUIssue::_internal_set_speed_over_ground(double value) {
3834 _impl_._has_bits_[0] |= 0x00000080u;
3835 _impl_.speed_over_ground_ = value;
3836}
3837inline void IMUIssue::set_speed_over_ground(double value) {
3838 _internal_set_speed_over_ground(value);
3839 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.speed_over_ground)
3840}
3841
3842// optional double desired_speed = 37 [(.dccl.field) = {
3843inline bool IMUIssue::_internal_has_desired_speed() const {
3844 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
3845 return value;
3846}
3847inline bool IMUIssue::has_desired_speed() const {
3848 return _internal_has_desired_speed();
3849}
3850inline void IMUIssue::clear_desired_speed() {
3851 _impl_.desired_speed_ = 0;
3852 _impl_._has_bits_[0] &= ~0x00000100u;
3853}
3854inline double IMUIssue::_internal_desired_speed() const {
3855 return _impl_.desired_speed_;
3856}
3857inline double IMUIssue::desired_speed() const {
3858 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.desired_speed)
3859 return _internal_desired_speed();
3860}
3861inline void IMUIssue::_internal_set_desired_speed(double value) {
3862 _impl_._has_bits_[0] |= 0x00000100u;
3863 _impl_.desired_speed_ = value;
3864}
3865inline void IMUIssue::set_desired_speed(double value) {
3866 _internal_set_desired_speed(value);
3867 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.desired_speed)
3868}
3869
3870#ifdef __GNUC__
3871 #pragma GCC diagnostic pop
3872#endif // __GNUC__
3873// -------------------------------------------------------------------
3874
3875// -------------------------------------------------------------------
3876
3877// -------------------------------------------------------------------
3878
3879// -------------------------------------------------------------------
3880
3881// -------------------------------------------------------------------
3882
3883// -------------------------------------------------------------------
3884
3885// -------------------------------------------------------------------
3886
3887
3888// @@protoc_insertion_point(namespace_scope)
3889
3890} // namespace protobuf
3891} // namespace jaiabot
3892
3893PROTOBUF_NAMESPACE_OPEN
3894
3895template <> struct is_proto_enum< ::jaiabot::protobuf::IMUCommand_IMUCommandType> : ::std::true_type {};
3896template <>
3898 return ::jaiabot::protobuf::IMUCommand_IMUCommandType_descriptor();
3899}
3900template <> struct is_proto_enum< ::jaiabot::protobuf::IMUIssue_SolutionType> : ::std::true_type {};
3901template <>
3903 return ::jaiabot::protobuf::IMUIssue_SolutionType_descriptor();
3904}
3905template <> struct is_proto_enum< ::jaiabot::protobuf::IMUIssue_IssueType> : ::std::true_type {};
3906template <>
3908 return ::jaiabot::protobuf::IMUIssue_IssueType_descriptor();
3909}
3910template <> struct is_proto_enum< ::jaiabot::protobuf::IMUCalibrationState> : ::std::true_type {};
3911template <>
3913 return ::jaiabot::protobuf::IMUCalibrationState_descriptor();
3914}
3915
3916PROTOBUF_NAMESPACE_CLOSE
3917
3918// @@protoc_insertion_point(global_scope)
3919
3920#include <google/protobuf/port_undef.inc>
3921#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fimu_2eproto
static constexpr IMUCommandType TAKE_READING
Definition imu.pb.h:329
void CopyFrom(const IMUCommand &from)
static const ClassData _class_data_
Definition imu.pb.h:321
static const std::string & IMUCommandType_Name(T enum_t_value)
Definition imu.pb.h:355
IMUCommand(IMUCommand &&from) noexcept
Definition imu.pb.h:211
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:234
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:247
static constexpr IMUCommandType STOP_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:333
static constexpr IMUCommandType IMUCommandType_MIN
Definition imu.pb.h:344
size_t ByteSizeLong() const final
void MergeFrom(const IMUCommand &from)
Definition imu.pb.h:290
static constexpr int IMUCommandType_ARRAYSIZE
Definition imu.pb.h:348
static bool IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommandType *value)
Definition imu.pb.h:361
void UnsafeArenaSwap(IMUCommand *other)
Definition imu.pb.h:276
static constexpr IMUCommandType STOP_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:337
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:241
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUCommand & default_instance()
Definition imu.pb.h:250
static constexpr IMUCommandType IMUCommandType_MAX
Definition imu.pb.h:346
friend void swap(IMUCommand &a, IMUCommand &b)
Definition imu.pb.h:260
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:237
static constexpr IMUCommandType START_CALIBRATION
Definition imu.pb.h:339
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
IMUCommand(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
void set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value)
Definition imu.pb.h:2357
IMUCommand * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:284
static bool IMUCommandType_IsValid(int value)
Definition imu.pb.h:341
static constexpr int kIndexInFileMessages
Definition imu.pb.h:257
IMUCommand(const IMUCommand &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const IMUCommand * internal_default_instance()
Definition imu.pb.h:253
int GetCachedSize() const final
Definition imu.pb.h:303
void Swap(IMUCommand *other)
Definition imu.pb.h:263
::jaiabot::protobuf::IMUCommand_IMUCommandType type() const
Definition imu.pb.h:2348
static constexpr IMUCommandType START_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:331
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
PROTOBUF_CONSTEXPR IMUCommand(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
bool IsInitialized() const final
static constexpr IMUCommandType START_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:335
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUCommandType_descriptor()
Definition imu.pb.h:351
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:244
IMUCommand & operator=(const IMUCommand &from)
Definition imu.pb.h:216
IMUCommand & operator=(IMUCommand &&from) noexcept
Definition imu.pb.h:220
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:667
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:670
void MergeFrom(const IMUData_Acceleration &from)
Definition imu.pb.h:723
IMUData_Acceleration & operator=(const IMUData_Acceleration &from)
Definition imu.pb.h:649
IMUData_Acceleration(const IMUData_Acceleration &from)
static const IMUData_Acceleration * internal_default_instance()
Definition imu.pb.h:686
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
IMUData_Acceleration * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:717
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:680
PROTOBUF_CONSTEXPR IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
void CopyFrom(const IMUData_Acceleration &from)
static const IMUData_Acceleration & default_instance()
Definition imu.pb.h:683
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:674
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:677
void Swap(IMUData_Acceleration *other)
Definition imu.pb.h:696
friend void swap(IMUData_Acceleration &a, IMUData_Acceleration &b)
Definition imu.pb.h:693
static const ClassData _class_data_
Definition imu.pb.h:754
void UnsafeArenaSwap(IMUData_Acceleration *other)
Definition imu.pb.h:709
IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
IMUData_Acceleration & operator=(IMUData_Acceleration &&from) noexcept
Definition imu.pb.h:653
IMUData_Acceleration(IMUData_Acceleration &&from) noexcept
Definition imu.pb.h:644
void MergeFrom(const IMUData_Accuracies &from)
Definition imu.pb.h:913
IMUData_Accuracies & operator=(const IMUData_Accuracies &from)
Definition imu.pb.h:839
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:860
IMUData_Accuracies * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:907
void Swap(IMUData_Accuracies *other)
Definition imu.pb.h:886
void CopyFrom(const IMUData_Accuracies &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:864
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:857
void UnsafeArenaSwap(IMUData_Accuracies *other)
Definition imu.pb.h:899
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:867
IMUData_Accuracies & operator=(IMUData_Accuracies &&from) noexcept
Definition imu.pb.h:843
static const IMUData_Accuracies * internal_default_instance()
Definition imu.pb.h:876
PROTOBUF_CONSTEXPR IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
static const ClassData _class_data_
Definition imu.pb.h:944
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:870
static const IMUData_Accuracies & default_instance()
Definition imu.pb.h:873
IMUData_Accuracies(const IMUData_Accuracies &from)
IMUData_Accuracies(IMUData_Accuracies &&from) noexcept
Definition imu.pb.h:834
friend void swap(IMUData_Accuracies &a, IMUData_Accuracies &b)
Definition imu.pb.h:883
void set_x_with_units(Quantity value_w_units)
Definition imu.pb.h:1192
IMUData_AngularVelocity & operator=(const IMUData_AngularVelocity &from)
Definition imu.pb.h:1029
friend void swap(IMUData_AngularVelocity &a, IMUData_AngularVelocity &b)
Definition imu.pb.h:1073
boost::units::angular_velocity_dimension z_dimension
Definition imu.pb.h:1217
boost::units::unit< x_dimension, boost::units::si::system > x_unit
Definition imu.pb.h:1189
void CopyFrom(const IMUData_AngularVelocity &from)
boost::units::quantity< y_unit, double > y_with_units() const
Definition imu.pb.h:1214
void Swap(IMUData_AngularVelocity *other)
Definition imu.pb.h:1076
boost::units::unit< y_dimension, boost::units::si::system > y_unit
Definition imu.pb.h:1204
boost::units::angular_velocity_dimension x_dimension
Definition imu.pb.h:1187
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1060
IMUData_AngularVelocity & operator=(IMUData_AngularVelocity &&from) noexcept
Definition imu.pb.h:1033
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1054
boost::units::unit< z_dimension, boost::units::si::system > z_unit
Definition imu.pb.h:1219
IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1057
void UnsafeArenaSwap(IMUData_AngularVelocity *other)
Definition imu.pb.h:1089
IMUData_AngularVelocity(const IMUData_AngularVelocity &from)
void set_y_with_units(Quantity value_w_units)
Definition imu.pb.h:1207
static const ClassData _class_data_
Definition imu.pb.h:1134
boost::units::angular_velocity_dimension y_dimension
Definition imu.pb.h:1202
void MergeFrom(const IMUData_AngularVelocity &from)
Definition imu.pb.h:1103
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1050
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1047
IMUData_AngularVelocity(IMUData_AngularVelocity &&from) noexcept
Definition imu.pb.h:1024
boost::units::quantity< z_unit, double > z_with_units() const
Definition imu.pb.h:1229
static const IMUData_AngularVelocity * internal_default_instance()
Definition imu.pb.h:1066
void set_z_with_units(Quantity value_w_units)
Definition imu.pb.h:1222
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
IMUData_AngularVelocity * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1097
PROTOBUF_CONSTEXPR IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
boost::units::quantity< x_unit, double > x_with_units() const
Definition imu.pb.h:1199
static const IMUData_AngularVelocity & default_instance()
Definition imu.pb.h:1063
void set_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:577
IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
IMUData_EulerAngles(IMUData_EulerAngles &&from) noexcept
Definition imu.pb.h:409
void set_roll_with_units(Quantity value_w_units)
Definition imu.pb.h:607
static const ClassData _class_data_
Definition imu.pb.h:519
static const IMUData_EulerAngles & default_instance()
Definition imu.pb.h:448
boost::units::plane_angle_dimension roll_dimension
Definition imu.pb.h:602
void MergeFrom(const IMUData_EulerAngles &from)
Definition imu.pb.h:488
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:435
IMUData_EulerAngles * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:482
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:442
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
Definition imu.pb.h:574
IMUData_EulerAngles(const IMUData_EulerAngles &from)
void UnsafeArenaSwap(IMUData_EulerAngles *other)
Definition imu.pb.h:474
void Swap(IMUData_EulerAngles *other)
Definition imu.pb.h:461
boost::units::quantity< roll_unit, double > roll_with_units() const
Definition imu.pb.h:614
static const IMUData_EulerAngles * internal_default_instance()
Definition imu.pb.h:451
boost::units::plane_angle_dimension heading_dimension
Definition imu.pb.h:572
IMUData_EulerAngles & operator=(IMUData_EulerAngles &&from) noexcept
Definition imu.pb.h:418
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:432
void CopyFrom(const IMUData_EulerAngles &from)
boost::units::plane_angle_dimension pitch_dimension
Definition imu.pb.h:587
boost::units::unit< pitch_dimension, boost::units::degree::system > pitch_unit
Definition imu.pb.h:589
void set_pitch_with_units(Quantity value_w_units)
Definition imu.pb.h:592
PROTOBUF_CONSTEXPR IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
IMUData_EulerAngles & operator=(const IMUData_EulerAngles &from)
Definition imu.pb.h:414
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
boost::units::unit< roll_dimension, boost::units::degree::system > roll_unit
Definition imu.pb.h:604
friend void swap(IMUData_EulerAngles &a, IMUData_EulerAngles &b)
Definition imu.pb.h:458
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:439
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:445
boost::units::quantity< heading_unit, double > heading_with_units() const
Definition imu.pb.h:584
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::quantity< pitch_unit, double > pitch_with_units() const
Definition imu.pb.h:599
void MergeFrom(const IMUData_Quaternion &from)
Definition imu.pb.h:1338
IMUData_Quaternion * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1332
IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1295
IMUData_Quaternion(IMUData_Quaternion &&from) noexcept
Definition imu.pb.h:1259
static const IMUData_Quaternion & default_instance()
Definition imu.pb.h:1298
void Swap(IMUData_Quaternion *other)
Definition imu.pb.h:1311
PROTOBUF_CONSTEXPR IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1285
friend void swap(IMUData_Quaternion &a, IMUData_Quaternion &b)
Definition imu.pb.h:1308
static const ClassData _class_data_
Definition imu.pb.h:1369
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUData_Quaternion * internal_default_instance()
Definition imu.pb.h:1301
void UnsafeArenaSwap(IMUData_Quaternion *other)
Definition imu.pb.h:1324
IMUData_Quaternion & operator=(IMUData_Quaternion &&from) noexcept
Definition imu.pb.h:1268
IMUData_Quaternion & operator=(const IMUData_Quaternion &from)
Definition imu.pb.h:1264
void CopyFrom(const IMUData_Quaternion &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1289
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1282
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1292
IMUData_Quaternion(const IMUData_Quaternion &from)
IMUData(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const IMUData & default_instance()
Definition imu.pb.h:1503
boost::units::acceleration_dimension max_acceleration_dimension
Definition imu.pb.h:1795
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1494
void Swap(IMUData *other)
Definition imu.pb.h:1516
boost::units::unit< significant_wave_height_dimension, boost::units::si::system > significant_wave_height_unit
Definition imu.pb.h:1782
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1487
IMUData * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1537
void set_max_acceleration_with_units(Quantity value_w_units)
Definition imu.pb.h:1800
void UnsafeArenaSwap(IMUData *other)
Definition imu.pb.h:1529
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1497
void CopyFrom(const IMUData &from)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1490
IMUData & operator=(const IMUData &from)
Definition imu.pb.h:1469
boost::units::unit< max_acceleration_dimension, boost::units::si::system > max_acceleration_unit
Definition imu.pb.h:1797
static const IMUData * internal_default_instance()
Definition imu.pb.h:1506
void set_imu_type(ArgT0 &&arg0, ArgT... args)
IMUData & operator=(IMUData &&from) noexcept
Definition imu.pb.h:1473
boost::units::length_dimension significant_wave_height_dimension
Definition imu.pb.h:1780
PROTOBUF_CONSTEXPR IMUData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
Quantity significant_wave_height_with_units() const
Definition imu.pb.h:1789
boost::units::quantity< max_acceleration_unit, double > max_acceleration_with_units() const
Definition imu.pb.h:1807
void MergeFrom(const IMUData &from)
Definition imu.pb.h:1543
void set_significant_wave_height_with_units(Quantity value_w_units)
Definition imu.pb.h:1785
static const ClassData _class_data_
Definition imu.pb.h:1574
IMUData(IMUData &&from) noexcept
Definition imu.pb.h:1464
IMUData(const IMUData &from)
friend void swap(IMUData &a, IMUData &b)
Definition imu.pb.h:1513
boost::units::quantity< significant_wave_height_unit, double > significant_wave_height_with_units() const
Definition imu.pb.h:1792
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1500
Quantity max_acceleration_with_units() const
Definition imu.pb.h:1804
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
Definition imu.pb.h:2194
IMUIssue(const IMUIssue &from)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1868
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
IMUIssue & operator=(IMUIssue &&from) noexcept
Definition imu.pb.h:1854
static const IMUIssue & default_instance()
Definition imu.pb.h:1884
IMUIssue * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1918
boost::units::unit< desired_speed_dimension, boost::units::si::system > desired_speed_unit
Definition imu.pb.h:2284
void set_speed_over_ground_with_units(Quantity value_w_units)
Definition imu.pb.h:2272
void set_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:2197
boost::units::quantity< course_over_ground_unit, double > course_over_ground_with_units() const
Definition imu.pb.h:2234
void set_pitch_with_units(Quantity value_w_units)
Definition imu.pb.h:2257
Quantity speed_over_ground_with_units() const
Definition imu.pb.h:2276
IMUIssue(IMUIssue &&from) noexcept
Definition imu.pb.h:1845
void CopyFrom(const IMUIssue &from)
boost::units::unit< pitch_dimension, boost::units::degree::system > pitch_unit
Definition imu.pb.h:2254
void set_heading_course_difference_with_units(Quantity value_w_units)
Definition imu.pb.h:2242
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1881
Quantity desired_speed_with_units() const
Definition imu.pb.h:2291
void set_desired_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:2212
boost::units::quantity< pitch_unit, double > pitch_with_units() const
Definition imu.pb.h:2264
static bool SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SolutionType *value)
Definition imu.pb.h:2001
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IssueType_descriptor()
Definition imu.pb.h:2019
static const ClassData _class_data_
Definition imu.pb.h:1955
Quantity desired_heading_with_units() const
Definition imu.pb.h:2216
void set_course_over_ground_with_units(Quantity value_w_units)
Definition imu.pb.h:2227
Quantity pitch_with_units() const
Definition imu.pb.h:2261
void UnsafeArenaSwap(IMUIssue *other)
Definition imu.pb.h:1910
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUIssue * internal_default_instance()
Definition imu.pb.h:1887
boost::units::unit< speed_over_ground_dimension, boost::units::si::system > speed_over_ground_unit
Definition imu.pb.h:2269
static bool IssueType_IsValid(int value)
Definition imu.pb.h:2009
boost::units::quantity< desired_heading_unit, double > desired_heading_with_units() const
Definition imu.pb.h:2219
boost::units::plane_angle_dimension desired_heading_dimension
Definition imu.pb.h:2207
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1871
boost::units::quantity< heading_course_difference_unit, double > heading_course_difference_with_units() const
Definition imu.pb.h:2249
boost::units::plane_angle_dimension heading_dimension
Definition imu.pb.h:2192
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SolutionType_descriptor()
Definition imu.pb.h:1991
boost::units::velocity_dimension speed_over_ground_dimension
Definition imu.pb.h:2267
boost::units::quantity< desired_speed_unit, double > desired_speed_with_units() const
Definition imu.pb.h:2294
void MergeFrom(const IMUIssue &from)
Definition imu.pb.h:1924
IMUIssue_IssueType IssueType
Definition imu.pb.h:2006
void Swap(IMUIssue *other)
Definition imu.pb.h:1897
PROTOBUF_CONSTEXPR IMUIssue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
IMUIssue & operator=(const IMUIssue &from)
Definition imu.pb.h:1850
boost::units::quantity< heading_unit, double > heading_with_units() const
Definition imu.pb.h:2204
Quantity heading_course_difference_with_units() const
Definition imu.pb.h:2246
static bool IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IssueType *value)
Definition imu.pb.h:2029
boost::units::unit< heading_course_difference_dimension, boost::units::degree::system > heading_course_difference_unit
Definition imu.pb.h:2239
Quantity course_over_ground_with_units() const
Definition imu.pb.h:2231
boost::units::unit< course_over_ground_dimension, boost::units::degree::system > course_over_ground_unit
Definition imu.pb.h:2224
boost::units::plane_angle_dimension course_over_ground_dimension
Definition imu.pb.h:2222
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1878
friend void swap(IMUIssue &a, IMUIssue &b)
Definition imu.pb.h:1894
static const std::string & IssueType_Name(T enum_t_value)
Definition imu.pb.h:2023
static const std::string & SolutionType_Name(T enum_t_value)
Definition imu.pb.h:1995
IMUIssue(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
boost::units::plane_angle_dimension pitch_dimension
Definition imu.pb.h:2252
Quantity heading_with_units() const
Definition imu.pb.h:2201
boost::units::unit< desired_heading_dimension, boost::units::degree::system > desired_heading_unit
Definition imu.pb.h:2209
boost::units::quantity< speed_over_ground_unit, double > speed_over_ground_with_units() const
Definition imu.pb.h:2279
boost::units::velocity_dimension desired_speed_dimension
Definition imu.pb.h:2282
void set_desired_speed_with_units(Quantity value_w_units)
Definition imu.pb.h:2287
boost::units::plane_angle_dimension heading_course_difference_dimension
Definition imu.pb.h:2237
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1875
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fimu_2eproto
::jaiabot::protobuf::IMUData_Accuracies * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Accuracies >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUIssue_SolutionType >()
Definition imu.pb.h:3902
::jaiabot::protobuf::IMUData_Acceleration * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUCalibrationState >()
Definition imu.pb.h:3912
::jaiabot::protobuf::IMUData_Quaternion * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Quaternion >(Arena *)
::jaiabot::protobuf::IMUData_AngularVelocity * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_AngularVelocity >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUIssue_IssueType >()
Definition imu.pb.h:3907
::jaiabot::protobuf::IMUData_EulerAngles * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUCommand_IMUCommandType >()
Definition imu.pb.h:3897
bool IMUIssue_SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_SolutionType *value)
Definition imu.pb.h:151
constexpr IMUIssue_IssueType IMUIssue_IssueType_IssueType_MAX
Definition imu.pb.h:161
bool IMUIssue_IssueType_IsValid(int value)
IMUDataDefaultTypeInternal _IMUData_default_instance_
constexpr IMUCalibrationState IMUCalibrationState_MAX
Definition imu.pb.h:184
const std::string & IMUCalibrationState_Name(T enum_t_value)
Definition imu.pb.h:189
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUIssue_SolutionType_descriptor()
bool IMUIssue_IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_IssueType *value)
Definition imu.pb.h:173
const std::string & IMUIssue_IssueType_Name(T enum_t_value)
Definition imu.pb.h:166
constexpr IMUCommand_IMUCommandType IMUCommand_IMUCommandType_IMUCommandType_MAX
Definition imu.pb.h:109
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUIssue_IssueType_descriptor()
@ IMUCommand_IMUCommandType_START_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:101
@ IMUCommand_IMUCommandType_START_CALIBRATION
Definition imu.pb.h:105
@ IMUCommand_IMUCommandType_TAKE_READING
Definition imu.pb.h:100
@ IMUCommand_IMUCommandType_STOP_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:102
@ IMUCommand_IMUCommandType_STOP_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:104
@ IMUCommand_IMUCommandType_START_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:103
constexpr IMUCalibrationState IMUCalibrationState_MIN
Definition imu.pb.h:183
IMUData_AngularVelocityDefaultTypeInternal _IMUData_AngularVelocity_default_instance_
bool IMUCommand_IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommand_IMUCommandType *value)
Definition imu.pb.h:121
constexpr int IMUCalibrationState_ARRAYSIZE
Definition imu.pb.h:185
constexpr IMUIssue_SolutionType IMUIssue_SolutionType_SolutionType_MAX
Definition imu.pb.h:139
IMUData_AccelerationDefaultTypeInternal _IMUData_Acceleration_default_instance_
IMUIssueDefaultTypeInternal _IMUIssue_default_instance_
bool IMUCommand_IMUCommandType_IsValid(int value)
IMUData_EulerAnglesDefaultTypeInternal _IMUData_EulerAngles_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUCalibrationState_descriptor()
constexpr int IMUCommand_IMUCommandType_IMUCommandType_ARRAYSIZE
Definition imu.pb.h:110
constexpr IMUCommand_IMUCommandType IMUCommand_IMUCommandType_IMUCommandType_MIN
Definition imu.pb.h:108
constexpr IMUIssue_IssueType IMUIssue_IssueType_IssueType_MIN
Definition imu.pb.h:160
IMUData_QuaternionDefaultTypeInternal _IMUData_Quaternion_default_instance_
bool IMUCalibrationState_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCalibrationState *value)
Definition imu.pb.h:196
@ IMUIssue_IssueType_HEADING_COURSE_DIFFERENCE_TOO_LARGE
Definition imu.pb.h:157
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUCommand_IMUCommandType_descriptor()
const std::string & IMUCommand_IMUCommandType_Name(T enum_t_value)
Definition imu.pb.h:114
bool IMUIssue_SolutionType_IsValid(int value)
constexpr IMUIssue_SolutionType IMUIssue_SolutionType_SolutionType_MIN
Definition imu.pb.h:138
constexpr int IMUIssue_SolutionType_SolutionType_ARRAYSIZE
Definition imu.pb.h:140
bool IMUCalibrationState_IsValid(int value)
constexpr int IMUIssue_IssueType_IssueType_ARRAYSIZE
Definition imu.pb.h:162
@ IMUIssue_SolutionType_RESTART_IMU_PY
Definition imu.pb.h:133
@ IMUIssue_SolutionType_USE_CORRECTION
Definition imu.pb.h:129
@ IMUIssue_SolutionType_USE_COG
Definition imu.pb.h:128
@ IMUIssue_SolutionType_REBOOT_BNO085_IMU
Definition imu.pb.h:134
@ IMUIssue_SolutionType_REBOOT_BNO085_IMU_AND_RESTART_IMU_PY
Definition imu.pb.h:135
@ IMUIssue_SolutionType_REPORT_IMU
Definition imu.pb.h:132
@ IMUIssue_SolutionType_REBOOT_BOT
Definition imu.pb.h:131
@ IMUIssue_SolutionType_STOP_BOT
Definition imu.pb.h:127
@ IMUIssue_SolutionType_RESTART_BOT
Definition imu.pb.h:130
bool MissionState_IsValid(int value)
const std::string & IMUIssue_SolutionType_Name(T enum_t_value)
Definition imu.pb.h:144
IMUData_AccuraciesDefaultTypeInternal _IMUData_Accuracies_default_instance_
IMUCommandDefaultTypeInternal _IMUCommand_default_instance_