JaiaBot 2.4.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_AccelerationWorld;
70struct IMUData_AccelerationWorldDefaultTypeInternal;
71extern IMUData_AccelerationWorldDefaultTypeInternal _IMUData_AccelerationWorld_default_instance_;
72class IMUData_Accuracies;
73struct IMUData_AccuraciesDefaultTypeInternal;
74extern IMUData_AccuraciesDefaultTypeInternal _IMUData_Accuracies_default_instance_;
75class IMUData_AngularVelocity;
76struct IMUData_AngularVelocityDefaultTypeInternal;
77extern IMUData_AngularVelocityDefaultTypeInternal _IMUData_AngularVelocity_default_instance_;
78class IMUData_EulerAngles;
79struct IMUData_EulerAnglesDefaultTypeInternal;
80extern IMUData_EulerAnglesDefaultTypeInternal _IMUData_EulerAngles_default_instance_;
81class IMUData_MagneticField;
82struct IMUData_MagneticFieldDefaultTypeInternal;
83extern IMUData_MagneticFieldDefaultTypeInternal _IMUData_MagneticField_default_instance_;
84class IMUData_Quaternion;
85struct IMUData_QuaternionDefaultTypeInternal;
86extern IMUData_QuaternionDefaultTypeInternal _IMUData_Quaternion_default_instance_;
87class IMUIssue;
88struct IMUIssueDefaultTypeInternal;
89extern IMUIssueDefaultTypeInternal _IMUIssue_default_instance_;
90} // namespace protobuf
91} // namespace jaiabot
92PROTOBUF_NAMESPACE_OPEN
93template<> ::jaiabot::protobuf::IMUCommand* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUCommand>(Arena*);
94template<> ::jaiabot::protobuf::IMUData* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData>(Arena*);
95template<> ::jaiabot::protobuf::IMUData_Acceleration* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(Arena*);
96template<> ::jaiabot::protobuf::IMUData_AccelerationWorld* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_AccelerationWorld>(Arena*);
97template<> ::jaiabot::protobuf::IMUData_Accuracies* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Accuracies>(Arena*);
98template<> ::jaiabot::protobuf::IMUData_AngularVelocity* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_AngularVelocity>(Arena*);
99template<> ::jaiabot::protobuf::IMUData_EulerAngles* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles>(Arena*);
100template<> ::jaiabot::protobuf::IMUData_MagneticField* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_MagneticField>(Arena*);
101template<> ::jaiabot::protobuf::IMUData_Quaternion* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Quaternion>(Arena*);
102template<> ::jaiabot::protobuf::IMUIssue* Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUIssue>(Arena*);
103PROTOBUF_NAMESPACE_CLOSE
104namespace jaiabot {
105namespace protobuf {
106
119
120const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUCommand_IMUCommandType_descriptor();
121template<typename T>
122inline const std::string& IMUCommand_IMUCommandType_Name(T enum_t_value) {
123 static_assert(::std::is_same<T, IMUCommand_IMUCommandType>::value ||
124 ::std::is_integral<T>::value,
125 "Incorrect type passed to function IMUCommand_IMUCommandType_Name.");
126 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
128}
130 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommand_IMUCommandType* value) {
131 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUCommand_IMUCommandType>(
133}
149
150const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUIssue_SolutionType_descriptor();
151template<typename T>
152inline const std::string& IMUIssue_SolutionType_Name(T enum_t_value) {
153 static_assert(::std::is_same<T, IMUIssue_SolutionType>::value ||
154 ::std::is_integral<T>::value,
155 "Incorrect type passed to function IMUIssue_SolutionType_Name.");
156 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
157 IMUIssue_SolutionType_descriptor(), enum_t_value);
158}
160 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_SolutionType* value) {
161 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUIssue_SolutionType>(
162 IMUIssue_SolutionType_descriptor(), name, value);
163}
171
172const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUIssue_IssueType_descriptor();
173template<typename T>
174inline const std::string& IMUIssue_IssueType_Name(T enum_t_value) {
175 static_assert(::std::is_same<T, IMUIssue_IssueType>::value ||
176 ::std::is_integral<T>::value,
177 "Incorrect type passed to function IMUIssue_IssueType_Name.");
178 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
179 IMUIssue_IssueType_descriptor(), enum_t_value);
180}
182 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_IssueType* value) {
183 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUIssue_IssueType>(
184 IMUIssue_IssueType_descriptor(), name, value);
185}
194
195const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* IMUCalibrationState_descriptor();
196template<typename T>
197inline const std::string& IMUCalibrationState_Name(T enum_t_value) {
198 static_assert(::std::is_same<T, IMUCalibrationState>::value ||
199 ::std::is_integral<T>::value,
200 "Incorrect type passed to function IMUCalibrationState_Name.");
201 return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
202 IMUCalibrationState_descriptor(), enum_t_value);
203}
205 ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCalibrationState* value) {
206 return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<IMUCalibrationState>(
207 IMUCalibrationState_descriptor(), name, value);
208}
209// ===================================================================
210
211class IMUCommand final :
212 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUCommand) */ {
213 public:
214 inline IMUCommand() : IMUCommand(nullptr) {}
215 ~IMUCommand() override;
216 explicit PROTOBUF_CONSTEXPR IMUCommand(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
217
218 IMUCommand(const IMUCommand& from);
219 IMUCommand(IMUCommand&& from) noexcept
220 : IMUCommand() {
221 *this = ::std::move(from);
222 }
223
224 inline IMUCommand& operator=(const IMUCommand& from) {
225 CopyFrom(from);
226 return *this;
227 }
228 inline IMUCommand& operator=(IMUCommand&& from) noexcept {
229 if (this == &from) return *this;
230 if (GetOwningArena() == from.GetOwningArena()
231 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
232 && GetOwningArena() != nullptr
233 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
234 ) {
235 InternalSwap(&from);
236 } else {
237 CopyFrom(from);
238 }
239 return *this;
240 }
241
242 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
243 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
244 }
245 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
246 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
247 }
248
249 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
250 return GetDescriptor();
251 }
252 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
253 return default_instance().GetMetadata().descriptor;
254 }
255 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
256 return default_instance().GetMetadata().reflection;
257 }
258 static const IMUCommand& default_instance() {
260 }
261 static inline const IMUCommand* internal_default_instance() {
262 return reinterpret_cast<const IMUCommand*>(
264 }
265 static constexpr int kIndexInFileMessages =
266 0;
267
268 friend void swap(IMUCommand& a, IMUCommand& b) {
269 a.Swap(&b);
270 }
271 inline void Swap(IMUCommand* other) {
272 if (other == this) return;
273 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
274 if (GetOwningArena() != nullptr &&
275 GetOwningArena() == other->GetOwningArena()) {
276 #else // PROTOBUF_FORCE_COPY_IN_SWAP
277 if (GetOwningArena() == other->GetOwningArena()) {
278 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
279 InternalSwap(other);
280 } else {
281 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
282 }
283 }
285 if (other == this) return;
286 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
287 InternalSwap(other);
288 }
289
290 // implements Message ----------------------------------------------
291
292 IMUCommand* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
293 return CreateMaybeMessage<IMUCommand>(arena);
294 }
295 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
296 void CopyFrom(const IMUCommand& from);
297 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
298 void MergeFrom( const IMUCommand& from) {
299 IMUCommand::MergeImpl(*this, from);
300 }
301 private:
302 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
303 public:
304 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
305 bool IsInitialized() const final;
306
307 size_t ByteSizeLong() const final;
308 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
310 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
311 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
312
313 private:
314 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
315 void SharedDtor();
316 void SetCachedSize(int size) const final;
317 void InternalSwap(IMUCommand* other);
318
319 private:
320 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
321 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
322 return "jaiabot.protobuf.IMUCommand";
323 }
324 protected:
325 explicit IMUCommand(::PROTOBUF_NAMESPACE_ID::Arena* arena,
326 bool is_message_owned = false);
327 public:
328
329 static const ClassData _class_data_;
330 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
331
332 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
333
334 // nested types ----------------------------------------------------
335
337 static constexpr IMUCommandType CONFIGURE =
349 static inline bool IMUCommandType_IsValid(int value) {
351 }
356 static constexpr int IMUCommandType_ARRAYSIZE =
358 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
362 template<typename T>
363 static inline const std::string& IMUCommandType_Name(T enum_t_value) {
364 static_assert(::std::is_same<T, IMUCommandType>::value ||
365 ::std::is_integral<T>::value,
366 "Incorrect type passed to function IMUCommandType_Name.");
367 return IMUCommand_IMUCommandType_Name(enum_t_value);
368 }
369 static inline bool IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
370 IMUCommandType* value) {
371 return IMUCommand_IMUCommandType_Parse(name, value);
372 }
373
374 // accessors -------------------------------------------------------
375
376 enum : int {
379 };
380 // required .jaiabot.protobuf.IMUCommand.IMUCommandType type = 1;
381 bool has_type() const;
382 private:
383 bool _internal_has_type() const;
384 public:
385 void clear_type();
388 private:
390 void _internal_set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value);
391 public:
392
393 // optional double sample_rate = 2 [default = 10, (.dccl.field) = {
394 bool has_sample_rate() const;
395 private:
396 bool _internal_has_sample_rate() const;
397 public:
398 void clear_sample_rate();
399 double sample_rate() const;
400 void set_sample_rate(double value);
401 private:
402 double _internal_sample_rate() const;
403 void _internal_set_sample_rate(double value);
404 public:
405
406 typedef boost::units::frequency_dimension sample_rate_dimension;
407
408 typedef boost::units::unit<sample_rate_dimension,boost::units::si::system> sample_rate_unit;
409
410 template<typename Quantity >
411 void set_sample_rate_with_units(Quantity value_w_units)
412 { set_sample_rate(boost::units::quantity<sample_rate_unit,double >(value_w_units).value() ); };
413
414 template<typename Quantity >
415 Quantity sample_rate_with_units() const
416 { return Quantity(sample_rate() * sample_rate_unit()); };
417
418 boost::units::quantity< sample_rate_unit,double > sample_rate_with_units() const
419 { return sample_rate_with_units<boost::units::quantity< sample_rate_unit,double > >(); };
420
421 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUCommand)
422 private:
423 class _Internal;
424
425 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
426 typedef void InternalArenaConstructable_;
427 typedef void DestructorSkippable_;
428 struct Impl_ {
429 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
430 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
431 int type_;
432 double sample_rate_;
433 };
434 union { Impl_ _impl_; };
435 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
436};
437// -------------------------------------------------------------------
438
440 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.EulerAngles) */ {
441 public:
444 explicit PROTOBUF_CONSTEXPR IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
445
449 *this = ::std::move(from);
450 }
451
453 CopyFrom(from);
454 return *this;
455 }
457 if (this == &from) return *this;
458 if (GetOwningArena() == from.GetOwningArena()
459 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
460 && GetOwningArena() != nullptr
461 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
462 ) {
463 InternalSwap(&from);
464 } else {
465 CopyFrom(from);
466 }
467 return *this;
468 }
469
470 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
471 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
472 }
473 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
474 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
475 }
476
477 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
478 return GetDescriptor();
479 }
480 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
481 return default_instance().GetMetadata().descriptor;
482 }
483 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
484 return default_instance().GetMetadata().reflection;
485 }
487 return *internal_default_instance();
488 }
490 return reinterpret_cast<const IMUData_EulerAngles*>(
492 }
493 static constexpr int kIndexInFileMessages =
494 1;
495
497 a.Swap(&b);
498 }
499 inline void Swap(IMUData_EulerAngles* other) {
500 if (other == this) return;
501 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
502 if (GetOwningArena() != nullptr &&
503 GetOwningArena() == other->GetOwningArena()) {
504 #else // PROTOBUF_FORCE_COPY_IN_SWAP
505 if (GetOwningArena() == other->GetOwningArena()) {
506 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
507 InternalSwap(other);
508 } else {
509 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
510 }
511 }
513 if (other == this) return;
514 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
515 InternalSwap(other);
516 }
517
518 // implements Message ----------------------------------------------
519
520 IMUData_EulerAngles* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
521 return CreateMaybeMessage<IMUData_EulerAngles>(arena);
522 }
523 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
524 void CopyFrom(const IMUData_EulerAngles& from);
525 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
526 void MergeFrom( const IMUData_EulerAngles& from) {
527 IMUData_EulerAngles::MergeImpl(*this, from);
528 }
529 private:
530 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
531 public:
532 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
533 bool IsInitialized() const final;
534
535 size_t ByteSizeLong() const final;
536 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
537 uint8_t* _InternalSerialize(
538 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
539 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
540
541 private:
542 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
543 void SharedDtor();
544 void SetCachedSize(int size) const final;
545 void InternalSwap(IMUData_EulerAngles* other);
546
547 private:
548 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
549 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
550 return "jaiabot.protobuf.IMUData.EulerAngles";
551 }
552 protected:
553 explicit IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::Arena* arena,
554 bool is_message_owned = false);
555 public:
556
557 static const ClassData _class_data_;
558 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
559
560 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
561
562 // nested types ----------------------------------------------------
563
564 // accessors -------------------------------------------------------
565
566 enum : int {
567 kHeadingFieldNumber = 1,
568 kPitchFieldNumber = 2,
569 kRollFieldNumber = 3,
570 };
571 // optional double heading = 1 [(.dccl.field) = {
572 bool has_heading() const;
573 private:
574 bool _internal_has_heading() const;
575 public:
576 void clear_heading();
577 double heading() const;
578 void set_heading(double value);
579 private:
580 double _internal_heading() const;
581 void _internal_set_heading(double value);
582 public:
583
584 // optional double pitch = 2 [(.dccl.field) = {
585 bool has_pitch() const;
586 private:
587 bool _internal_has_pitch() const;
588 public:
589 void clear_pitch();
590 double pitch() const;
591 void set_pitch(double value);
592 private:
593 double _internal_pitch() const;
594 void _internal_set_pitch(double value);
595 public:
596
597 // optional double roll = 3 [(.dccl.field) = {
598 bool has_roll() const;
599 private:
600 bool _internal_has_roll() const;
601 public:
602 void clear_roll();
603 double roll() const;
604 void set_roll(double value);
605 private:
606 double _internal_roll() const;
607 void _internal_set_roll(double value);
608 public:
609
610 typedef boost::units::plane_angle_dimension heading_dimension;
611
612 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
613
614 template<typename Quantity >
615 void set_heading_with_units(Quantity value_w_units)
616 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
617
618 template<typename Quantity >
619 Quantity heading_with_units() const
620 { return Quantity(heading() * heading_unit()); };
621
622 boost::units::quantity< heading_unit,double > heading_with_units() const
623 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
624
625 typedef boost::units::plane_angle_dimension pitch_dimension;
626
627 typedef boost::units::unit<pitch_dimension,boost::units::degree::system> pitch_unit;
628
629 template<typename Quantity >
630 void set_pitch_with_units(Quantity value_w_units)
631 { set_pitch(boost::units::quantity<pitch_unit,double >(value_w_units).value() ); };
632
633 template<typename Quantity >
634 Quantity pitch_with_units() const
635 { return Quantity(pitch() * pitch_unit()); };
636
637 boost::units::quantity< pitch_unit,double > pitch_with_units() const
638 { return pitch_with_units<boost::units::quantity< pitch_unit,double > >(); };
639
640 typedef boost::units::plane_angle_dimension roll_dimension;
641
642 typedef boost::units::unit<roll_dimension,boost::units::degree::system> roll_unit;
643
644 template<typename Quantity >
645 void set_roll_with_units(Quantity value_w_units)
646 { set_roll(boost::units::quantity<roll_unit,double >(value_w_units).value() ); };
647
648 template<typename Quantity >
649 Quantity roll_with_units() const
650 { return Quantity(roll() * roll_unit()); };
651
652 boost::units::quantity< roll_unit,double > roll_with_units() const
653 { return roll_with_units<boost::units::quantity< roll_unit,double > >(); };
654
655 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.EulerAngles)
656 private:
657 class _Internal;
658
659 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
660 typedef void InternalArenaConstructable_;
661 typedef void DestructorSkippable_;
662 struct Impl_ {
663 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
664 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
665 double heading_;
666 double pitch_;
667 double roll_;
668 };
669 union { Impl_ _impl_; };
670 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
671};
672// -------------------------------------------------------------------
673
675 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Acceleration) */ {
676 public:
679 explicit PROTOBUF_CONSTEXPR IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
680
684 *this = ::std::move(from);
685 }
686
688 CopyFrom(from);
689 return *this;
690 }
692 if (this == &from) return *this;
693 if (GetOwningArena() == from.GetOwningArena()
694 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
695 && GetOwningArena() != nullptr
696 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
697 ) {
698 InternalSwap(&from);
699 } else {
700 CopyFrom(from);
701 }
702 return *this;
703 }
704
705 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
706 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
707 }
708 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
709 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
710 }
711
712 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
713 return GetDescriptor();
714 }
715 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
716 return default_instance().GetMetadata().descriptor;
717 }
718 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
719 return default_instance().GetMetadata().reflection;
720 }
722 return *internal_default_instance();
723 }
725 return reinterpret_cast<const IMUData_Acceleration*>(
727 }
728 static constexpr int kIndexInFileMessages =
729 2;
730
732 a.Swap(&b);
733 }
734 inline void Swap(IMUData_Acceleration* other) {
735 if (other == this) return;
736 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
737 if (GetOwningArena() != nullptr &&
738 GetOwningArena() == other->GetOwningArena()) {
739 #else // PROTOBUF_FORCE_COPY_IN_SWAP
740 if (GetOwningArena() == other->GetOwningArena()) {
741 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
742 InternalSwap(other);
743 } else {
744 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
745 }
746 }
748 if (other == this) return;
749 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
750 InternalSwap(other);
751 }
752
753 // implements Message ----------------------------------------------
754
755 IMUData_Acceleration* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
756 return CreateMaybeMessage<IMUData_Acceleration>(arena);
757 }
758 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
760 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
761 void MergeFrom( const IMUData_Acceleration& from) {
762 IMUData_Acceleration::MergeImpl(*this, from);
763 }
764 private:
765 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
766 public:
767 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
768 bool IsInitialized() const final;
769
770 size_t ByteSizeLong() const final;
771 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
772 uint8_t* _InternalSerialize(
773 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
774 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
775
776 private:
777 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
778 void SharedDtor();
779 void SetCachedSize(int size) const final;
780 void InternalSwap(IMUData_Acceleration* other);
781
782 private:
783 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
784 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
785 return "jaiabot.protobuf.IMUData.Acceleration";
786 }
787 protected:
788 explicit IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::Arena* arena,
789 bool is_message_owned = false);
790 public:
791
792 static const ClassData _class_data_;
793 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
794
795 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
796
797 // nested types ----------------------------------------------------
798
799 // accessors -------------------------------------------------------
800
801 enum : int {
802 kXFieldNumber = 1,
803 kYFieldNumber = 2,
804 kZFieldNumber = 3,
805 };
806 // optional double x = 1;
807 bool has_x() const;
808 private:
809 bool _internal_has_x() const;
810 public:
811 void clear_x();
812 double x() const;
813 void set_x(double value);
814 private:
815 double _internal_x() const;
816 void _internal_set_x(double value);
817 public:
818
819 // optional double y = 2;
820 bool has_y() const;
821 private:
822 bool _internal_has_y() const;
823 public:
824 void clear_y();
825 double y() const;
826 void set_y(double value);
827 private:
828 double _internal_y() const;
829 void _internal_set_y(double value);
830 public:
831
832 // optional double z = 3;
833 bool has_z() const;
834 private:
835 bool _internal_has_z() const;
836 public:
837 void clear_z();
838 double z() const;
839 void set_z(double value);
840 private:
841 double _internal_z() const;
842 void _internal_set_z(double value);
843 public:
844
845 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Acceleration)
846 private:
847 class _Internal;
848
849 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
850 typedef void InternalArenaConstructable_;
851 typedef void DestructorSkippable_;
852 struct Impl_ {
853 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
854 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
855 double x_;
856 double y_;
857 double z_;
858 };
859 union { Impl_ _impl_; };
860 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
861};
862// -------------------------------------------------------------------
863
865 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Accuracies) */ {
866 public:
869 explicit PROTOBUF_CONSTEXPR IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
870
874 *this = ::std::move(from);
875 }
876
878 CopyFrom(from);
879 return *this;
880 }
882 if (this == &from) return *this;
883 if (GetOwningArena() == from.GetOwningArena()
884 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
885 && GetOwningArena() != nullptr
886 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
887 ) {
888 InternalSwap(&from);
889 } else {
890 CopyFrom(from);
891 }
892 return *this;
893 }
894
895 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
896 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
897 }
898 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
899 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
900 }
901
902 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
903 return GetDescriptor();
904 }
905 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
906 return default_instance().GetMetadata().descriptor;
907 }
908 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
909 return default_instance().GetMetadata().reflection;
910 }
912 return *internal_default_instance();
913 }
915 return reinterpret_cast<const IMUData_Accuracies*>(
917 }
918 static constexpr int kIndexInFileMessages =
919 3;
920
922 a.Swap(&b);
923 }
924 inline void Swap(IMUData_Accuracies* other) {
925 if (other == this) return;
926 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
927 if (GetOwningArena() != nullptr &&
928 GetOwningArena() == other->GetOwningArena()) {
929 #else // PROTOBUF_FORCE_COPY_IN_SWAP
930 if (GetOwningArena() == other->GetOwningArena()) {
931 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
932 InternalSwap(other);
933 } else {
934 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
935 }
936 }
938 if (other == this) return;
939 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
940 InternalSwap(other);
941 }
942
943 // implements Message ----------------------------------------------
944
945 IMUData_Accuracies* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
946 return CreateMaybeMessage<IMUData_Accuracies>(arena);
947 }
948 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
949 void CopyFrom(const IMUData_Accuracies& from);
950 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
951 void MergeFrom( const IMUData_Accuracies& from) {
952 IMUData_Accuracies::MergeImpl(*this, from);
953 }
954 private:
955 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
956 public:
957 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
958 bool IsInitialized() const final;
959
960 size_t ByteSizeLong() const final;
961 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
962 uint8_t* _InternalSerialize(
963 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
964 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
965
966 private:
967 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
968 void SharedDtor();
969 void SetCachedSize(int size) const final;
970 void InternalSwap(IMUData_Accuracies* other);
971
972 private:
973 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
974 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
975 return "jaiabot.protobuf.IMUData.Accuracies";
976 }
977 protected:
978 explicit IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::Arena* arena,
979 bool is_message_owned = false);
980 public:
981
982 static const ClassData _class_data_;
983 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
984
985 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
986
987 // nested types ----------------------------------------------------
988
989 // accessors -------------------------------------------------------
990
991 enum : int {
992 kAccelerometerFieldNumber = 1,
993 kGyroscopeFieldNumber = 2,
994 kMagnetometerFieldNumber = 3,
995 };
996 // optional int32 accelerometer = 1 [(.dccl.field) = {
997 bool has_accelerometer() const;
998 private:
999 bool _internal_has_accelerometer() const;
1000 public:
1001 void clear_accelerometer();
1002 int32_t accelerometer() const;
1003 void set_accelerometer(int32_t value);
1004 private:
1005 int32_t _internal_accelerometer() const;
1006 void _internal_set_accelerometer(int32_t value);
1007 public:
1008
1009 // optional int32 gyroscope = 2 [(.dccl.field) = {
1010 bool has_gyroscope() const;
1011 private:
1012 bool _internal_has_gyroscope() const;
1013 public:
1014 void clear_gyroscope();
1015 int32_t gyroscope() const;
1016 void set_gyroscope(int32_t value);
1017 private:
1018 int32_t _internal_gyroscope() const;
1019 void _internal_set_gyroscope(int32_t value);
1020 public:
1021
1022 // optional int32 magnetometer = 3 [(.dccl.field) = {
1023 bool has_magnetometer() const;
1024 private:
1025 bool _internal_has_magnetometer() const;
1026 public:
1027 void clear_magnetometer();
1028 int32_t magnetometer() const;
1029 void set_magnetometer(int32_t value);
1030 private:
1031 int32_t _internal_magnetometer() const;
1032 void _internal_set_magnetometer(int32_t value);
1033 public:
1034
1035 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Accuracies)
1036 private:
1037 class _Internal;
1038
1039 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1040 typedef void InternalArenaConstructable_;
1041 typedef void DestructorSkippable_;
1042 struct Impl_ {
1043 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1044 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1045 int32_t accelerometer_;
1046 int32_t gyroscope_;
1047 int32_t magnetometer_;
1048 };
1049 union { Impl_ _impl_; };
1050 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1051};
1052// -------------------------------------------------------------------
1053
1055 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.AngularVelocity) */ {
1056 public:
1059 explicit PROTOBUF_CONSTEXPR IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1060
1064 *this = ::std::move(from);
1065 }
1066
1068 CopyFrom(from);
1069 return *this;
1070 }
1072 if (this == &from) return *this;
1073 if (GetOwningArena() == from.GetOwningArena()
1074 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1075 && GetOwningArena() != nullptr
1076 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1077 ) {
1078 InternalSwap(&from);
1079 } else {
1080 CopyFrom(from);
1081 }
1082 return *this;
1083 }
1084
1085 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1086 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1087 }
1088 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1089 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1090 }
1091
1092 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1093 return GetDescriptor();
1094 }
1095 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1096 return default_instance().GetMetadata().descriptor;
1097 }
1098 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1099 return default_instance().GetMetadata().reflection;
1100 }
1102 return *internal_default_instance();
1103 }
1105 return reinterpret_cast<const IMUData_AngularVelocity*>(
1107 }
1108 static constexpr int kIndexInFileMessages =
1109 4;
1110
1112 a.Swap(&b);
1113 }
1114 inline void Swap(IMUData_AngularVelocity* other) {
1115 if (other == this) return;
1116 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1117 if (GetOwningArena() != nullptr &&
1118 GetOwningArena() == other->GetOwningArena()) {
1119 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1120 if (GetOwningArena() == other->GetOwningArena()) {
1121 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1122 InternalSwap(other);
1123 } else {
1124 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1125 }
1126 }
1128 if (other == this) return;
1129 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1130 InternalSwap(other);
1131 }
1132
1133 // implements Message ----------------------------------------------
1134
1135 IMUData_AngularVelocity* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1136 return CreateMaybeMessage<IMUData_AngularVelocity>(arena);
1137 }
1138 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1140 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1142 IMUData_AngularVelocity::MergeImpl(*this, from);
1143 }
1144 private:
1145 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1146 public:
1147 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1148 bool IsInitialized() const final;
1149
1150 size_t ByteSizeLong() const final;
1151 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1152 uint8_t* _InternalSerialize(
1153 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1154 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1155
1156 private:
1157 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1158 void SharedDtor();
1159 void SetCachedSize(int size) const final;
1160 void InternalSwap(IMUData_AngularVelocity* other);
1161
1162 private:
1163 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1164 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1165 return "jaiabot.protobuf.IMUData.AngularVelocity";
1166 }
1167 protected:
1168 explicit IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1169 bool is_message_owned = false);
1170 public:
1171
1172 static const ClassData _class_data_;
1173 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1174
1175 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1176
1177 // nested types ----------------------------------------------------
1178
1179 // accessors -------------------------------------------------------
1180
1181 enum : int {
1182 kXFieldNumber = 1,
1183 kYFieldNumber = 2,
1184 kZFieldNumber = 3,
1185 };
1186 // optional double x = 1 [(.dccl.field) = {
1187 bool has_x() const;
1188 private:
1189 bool _internal_has_x() const;
1190 public:
1191 void clear_x();
1192 double x() const;
1193 void set_x(double value);
1194 private:
1195 double _internal_x() const;
1196 void _internal_set_x(double value);
1197 public:
1198
1199 // optional double y = 2 [(.dccl.field) = {
1200 bool has_y() const;
1201 private:
1202 bool _internal_has_y() const;
1203 public:
1204 void clear_y();
1205 double y() const;
1206 void set_y(double value);
1207 private:
1208 double _internal_y() const;
1209 void _internal_set_y(double value);
1210 public:
1211
1212 // optional double z = 3 [(.dccl.field) = {
1213 bool has_z() const;
1214 private:
1215 bool _internal_has_z() const;
1216 public:
1217 void clear_z();
1218 double z() const;
1219 void set_z(double value);
1220 private:
1221 double _internal_z() const;
1222 void _internal_set_z(double value);
1223 public:
1224
1225 typedef boost::units::angular_velocity_dimension x_dimension;
1226
1227 typedef boost::units::unit<x_dimension,boost::units::si::system> x_unit;
1228
1229 template<typename Quantity >
1230 void set_x_with_units(Quantity value_w_units)
1231 { set_x(boost::units::quantity<x_unit,double >(value_w_units).value() ); };
1232
1233 template<typename Quantity >
1234 Quantity x_with_units() const
1235 { return Quantity(x() * x_unit()); };
1236
1237 boost::units::quantity< x_unit,double > x_with_units() const
1238 { return x_with_units<boost::units::quantity< x_unit,double > >(); };
1239
1240 typedef boost::units::angular_velocity_dimension y_dimension;
1241
1242 typedef boost::units::unit<y_dimension,boost::units::si::system> y_unit;
1243
1244 template<typename Quantity >
1245 void set_y_with_units(Quantity value_w_units)
1246 { set_y(boost::units::quantity<y_unit,double >(value_w_units).value() ); };
1247
1248 template<typename Quantity >
1249 Quantity y_with_units() const
1250 { return Quantity(y() * y_unit()); };
1251
1252 boost::units::quantity< y_unit,double > y_with_units() const
1253 { return y_with_units<boost::units::quantity< y_unit,double > >(); };
1254
1255 typedef boost::units::angular_velocity_dimension z_dimension;
1256
1257 typedef boost::units::unit<z_dimension,boost::units::si::system> z_unit;
1258
1259 template<typename Quantity >
1260 void set_z_with_units(Quantity value_w_units)
1261 { set_z(boost::units::quantity<z_unit,double >(value_w_units).value() ); };
1262
1263 template<typename Quantity >
1264 Quantity z_with_units() const
1265 { return Quantity(z() * z_unit()); };
1266
1267 boost::units::quantity< z_unit,double > z_with_units() const
1268 { return z_with_units<boost::units::quantity< z_unit,double > >(); };
1269
1270 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.AngularVelocity)
1271 private:
1272 class _Internal;
1273
1274 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1275 typedef void InternalArenaConstructable_;
1276 typedef void DestructorSkippable_;
1277 struct Impl_ {
1278 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1279 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1280 double x_;
1281 double y_;
1282 double z_;
1283 };
1284 union { Impl_ _impl_; };
1285 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1286};
1287// -------------------------------------------------------------------
1288
1290 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.Quaternion) */ {
1291 public:
1294 explicit PROTOBUF_CONSTEXPR IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1295
1298 : IMUData_Quaternion() {
1299 *this = ::std::move(from);
1300 }
1301
1303 CopyFrom(from);
1304 return *this;
1305 }
1307 if (this == &from) return *this;
1308 if (GetOwningArena() == from.GetOwningArena()
1309 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1310 && GetOwningArena() != nullptr
1311 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1312 ) {
1313 InternalSwap(&from);
1314 } else {
1315 CopyFrom(from);
1316 }
1317 return *this;
1318 }
1319
1320 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1321 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1322 }
1323 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1324 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1325 }
1326
1327 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1328 return GetDescriptor();
1329 }
1330 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1331 return default_instance().GetMetadata().descriptor;
1332 }
1333 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1334 return default_instance().GetMetadata().reflection;
1335 }
1337 return *internal_default_instance();
1338 }
1340 return reinterpret_cast<const IMUData_Quaternion*>(
1342 }
1343 static constexpr int kIndexInFileMessages =
1344 5;
1345
1347 a.Swap(&b);
1348 }
1349 inline void Swap(IMUData_Quaternion* other) {
1350 if (other == this) return;
1351 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1352 if (GetOwningArena() != nullptr &&
1353 GetOwningArena() == other->GetOwningArena()) {
1354 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1355 if (GetOwningArena() == other->GetOwningArena()) {
1356 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1357 InternalSwap(other);
1358 } else {
1359 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1360 }
1361 }
1363 if (other == this) return;
1364 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1365 InternalSwap(other);
1366 }
1367
1368 // implements Message ----------------------------------------------
1369
1370 IMUData_Quaternion* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1371 return CreateMaybeMessage<IMUData_Quaternion>(arena);
1372 }
1373 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1374 void CopyFrom(const IMUData_Quaternion& from);
1375 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1376 void MergeFrom( const IMUData_Quaternion& from) {
1377 IMUData_Quaternion::MergeImpl(*this, from);
1378 }
1379 private:
1380 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1381 public:
1382 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1383 bool IsInitialized() const final;
1384
1385 size_t ByteSizeLong() const final;
1386 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1387 uint8_t* _InternalSerialize(
1388 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1389 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1390
1391 private:
1392 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1393 void SharedDtor();
1394 void SetCachedSize(int size) const final;
1395 void InternalSwap(IMUData_Quaternion* other);
1396
1397 private:
1398 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1399 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1400 return "jaiabot.protobuf.IMUData.Quaternion";
1401 }
1402 protected:
1403 explicit IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1404 bool is_message_owned = false);
1405 public:
1406
1407 static const ClassData _class_data_;
1408 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1409
1410 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1411
1412 // nested types ----------------------------------------------------
1413
1414 // accessors -------------------------------------------------------
1415
1416 enum : int {
1417 kWFieldNumber = 1,
1418 kXFieldNumber = 2,
1419 kYFieldNumber = 3,
1420 kZFieldNumber = 4,
1421 };
1422 // optional double w = 1;
1423 bool has_w() const;
1424 private:
1425 bool _internal_has_w() const;
1426 public:
1427 void clear_w();
1428 double w() const;
1429 void set_w(double value);
1430 private:
1431 double _internal_w() const;
1432 void _internal_set_w(double value);
1433 public:
1434
1435 // optional double x = 2;
1436 bool has_x() const;
1437 private:
1438 bool _internal_has_x() const;
1439 public:
1440 void clear_x();
1441 double x() const;
1442 void set_x(double value);
1443 private:
1444 double _internal_x() const;
1445 void _internal_set_x(double value);
1446 public:
1447
1448 // optional double y = 3;
1449 bool has_y() const;
1450 private:
1451 bool _internal_has_y() const;
1452 public:
1453 void clear_y();
1454 double y() const;
1455 void set_y(double value);
1456 private:
1457 double _internal_y() const;
1458 void _internal_set_y(double value);
1459 public:
1460
1461 // optional double z = 4;
1462 bool has_z() const;
1463 private:
1464 bool _internal_has_z() const;
1465 public:
1466 void clear_z();
1467 double z() const;
1468 void set_z(double value);
1469 private:
1470 double _internal_z() const;
1471 void _internal_set_z(double value);
1472 public:
1473
1474 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.Quaternion)
1475 private:
1476 class _Internal;
1477
1478 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1479 typedef void InternalArenaConstructable_;
1480 typedef void DestructorSkippable_;
1481 struct Impl_ {
1482 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1483 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1484 double w_;
1485 double x_;
1486 double y_;
1487 double z_;
1488 };
1489 union { Impl_ _impl_; };
1490 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1491};
1492// -------------------------------------------------------------------
1493
1495 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.MagneticField) */ {
1496 public:
1499 explicit PROTOBUF_CONSTEXPR IMUData_MagneticField(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1500
1504 *this = ::std::move(from);
1505 }
1506
1508 CopyFrom(from);
1509 return *this;
1510 }
1512 if (this == &from) return *this;
1513 if (GetOwningArena() == from.GetOwningArena()
1514 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1515 && GetOwningArena() != nullptr
1516 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1517 ) {
1518 InternalSwap(&from);
1519 } else {
1520 CopyFrom(from);
1521 }
1522 return *this;
1523 }
1524
1525 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1526 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1527 }
1528 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1529 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1530 }
1531
1532 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1533 return GetDescriptor();
1534 }
1535 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1536 return default_instance().GetMetadata().descriptor;
1537 }
1538 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1539 return default_instance().GetMetadata().reflection;
1540 }
1542 return *internal_default_instance();
1543 }
1545 return reinterpret_cast<const IMUData_MagneticField*>(
1547 }
1548 static constexpr int kIndexInFileMessages =
1549 6;
1550
1552 a.Swap(&b);
1553 }
1554 inline void Swap(IMUData_MagneticField* other) {
1555 if (other == this) return;
1556 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1557 if (GetOwningArena() != nullptr &&
1558 GetOwningArena() == other->GetOwningArena()) {
1559 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1560 if (GetOwningArena() == other->GetOwningArena()) {
1561 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1562 InternalSwap(other);
1563 } else {
1564 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1565 }
1566 }
1568 if (other == this) return;
1569 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1570 InternalSwap(other);
1571 }
1572
1573 // implements Message ----------------------------------------------
1574
1575 IMUData_MagneticField* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1576 return CreateMaybeMessage<IMUData_MagneticField>(arena);
1577 }
1578 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1580 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1582 IMUData_MagneticField::MergeImpl(*this, from);
1583 }
1584 private:
1585 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1586 public:
1587 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1588 bool IsInitialized() const final;
1589
1590 size_t ByteSizeLong() const final;
1591 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1592 uint8_t* _InternalSerialize(
1593 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1594 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1595
1596 private:
1597 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1598 void SharedDtor();
1599 void SetCachedSize(int size) const final;
1600 void InternalSwap(IMUData_MagneticField* other);
1601
1602 private:
1603 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1604 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1605 return "jaiabot.protobuf.IMUData.MagneticField";
1606 }
1607 protected:
1608 explicit IMUData_MagneticField(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1609 bool is_message_owned = false);
1610 public:
1611
1612 static const ClassData _class_data_;
1613 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1614
1615 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1616
1617 // nested types ----------------------------------------------------
1618
1619 // accessors -------------------------------------------------------
1620
1621 enum : int {
1622 kXFieldNumber = 1,
1623 kYFieldNumber = 2,
1624 kZFieldNumber = 3,
1625 };
1626 // optional double x = 1 [(.dccl.field) = {
1627 bool has_x() const;
1628 private:
1629 bool _internal_has_x() const;
1630 public:
1631 void clear_x();
1632 double x() const;
1633 void set_x(double value);
1634 private:
1635 double _internal_x() const;
1636 void _internal_set_x(double value);
1637 public:
1638
1639 // optional double y = 2 [(.dccl.field) = {
1640 bool has_y() const;
1641 private:
1642 bool _internal_has_y() const;
1643 public:
1644 void clear_y();
1645 double y() const;
1646 void set_y(double value);
1647 private:
1648 double _internal_y() const;
1649 void _internal_set_y(double value);
1650 public:
1651
1652 // optional double z = 3 [(.dccl.field) = {
1653 bool has_z() const;
1654 private:
1655 bool _internal_has_z() const;
1656 public:
1657 void clear_z();
1658 double z() const;
1659 void set_z(double value);
1660 private:
1661 double _internal_z() const;
1662 void _internal_set_z(double value);
1663 public:
1664
1665 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.MagneticField)
1666 private:
1667 class _Internal;
1668
1669 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1670 typedef void InternalArenaConstructable_;
1671 typedef void DestructorSkippable_;
1672 struct Impl_ {
1673 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1674 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1675 double x_;
1676 double y_;
1677 double z_;
1678 };
1679 union { Impl_ _impl_; };
1680 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1681};
1682// -------------------------------------------------------------------
1683
1685 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData.AccelerationWorld) */ {
1686 public:
1689 explicit PROTOBUF_CONSTEXPR IMUData_AccelerationWorld(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1690
1694 *this = ::std::move(from);
1695 }
1696
1698 CopyFrom(from);
1699 return *this;
1700 }
1702 if (this == &from) return *this;
1703 if (GetOwningArena() == from.GetOwningArena()
1704 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1705 && GetOwningArena() != nullptr
1706 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1707 ) {
1708 InternalSwap(&from);
1709 } else {
1710 CopyFrom(from);
1711 }
1712 return *this;
1713 }
1714
1715 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1716 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1717 }
1718 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1719 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1720 }
1721
1722 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1723 return GetDescriptor();
1724 }
1725 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1726 return default_instance().GetMetadata().descriptor;
1727 }
1728 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1729 return default_instance().GetMetadata().reflection;
1730 }
1732 return *internal_default_instance();
1733 }
1735 return reinterpret_cast<const IMUData_AccelerationWorld*>(
1737 }
1738 static constexpr int kIndexInFileMessages =
1739 7;
1740
1742 a.Swap(&b);
1743 }
1744 inline void Swap(IMUData_AccelerationWorld* other) {
1745 if (other == this) return;
1746 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1747 if (GetOwningArena() != nullptr &&
1748 GetOwningArena() == other->GetOwningArena()) {
1749 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1750 if (GetOwningArena() == other->GetOwningArena()) {
1751 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1752 InternalSwap(other);
1753 } else {
1754 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1755 }
1756 }
1758 if (other == this) return;
1759 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1760 InternalSwap(other);
1761 }
1762
1763 // implements Message ----------------------------------------------
1764
1765 IMUData_AccelerationWorld* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
1766 return CreateMaybeMessage<IMUData_AccelerationWorld>(arena);
1767 }
1768 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
1770 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
1772 IMUData_AccelerationWorld::MergeImpl(*this, from);
1773 }
1774 private:
1775 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
1776 public:
1777 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1778 bool IsInitialized() const final;
1779
1780 size_t ByteSizeLong() const final;
1781 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1782 uint8_t* _InternalSerialize(
1783 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1784 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
1785
1786 private:
1787 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
1788 void SharedDtor();
1789 void SetCachedSize(int size) const final;
1790 void InternalSwap(IMUData_AccelerationWorld* other);
1791
1792 private:
1793 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1794 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1795 return "jaiabot.protobuf.IMUData.AccelerationWorld";
1796 }
1797 protected:
1798 explicit IMUData_AccelerationWorld(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1799 bool is_message_owned = false);
1800 public:
1801
1802 static const ClassData _class_data_;
1803 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
1804
1805 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1806
1807 // nested types ----------------------------------------------------
1808
1809 // accessors -------------------------------------------------------
1810
1811 enum : int {
1812 kNorthFieldNumber = 1,
1813 kEastFieldNumber = 2,
1814 kDownFieldNumber = 3,
1815 };
1816 // optional double north = 1 [(.dccl.field) = {
1817 bool has_north() const;
1818 private:
1819 bool _internal_has_north() const;
1820 public:
1821 void clear_north();
1822 double north() const;
1823 void set_north(double value);
1824 private:
1825 double _internal_north() const;
1826 void _internal_set_north(double value);
1827 public:
1828
1829 // optional double east = 2 [(.dccl.field) = {
1830 bool has_east() const;
1831 private:
1832 bool _internal_has_east() const;
1833 public:
1834 void clear_east();
1835 double east() const;
1836 void set_east(double value);
1837 private:
1838 double _internal_east() const;
1839 void _internal_set_east(double value);
1840 public:
1841
1842 // optional double down = 3 [(.dccl.field) = {
1843 bool has_down() const;
1844 private:
1845 bool _internal_has_down() const;
1846 public:
1847 void clear_down();
1848 double down() const;
1849 void set_down(double value);
1850 private:
1851 double _internal_down() const;
1852 void _internal_set_down(double value);
1853 public:
1854
1855 typedef boost::units::acceleration_dimension north_dimension;
1856
1857 typedef boost::units::unit<north_dimension,boost::units::si::system> north_unit;
1858
1859 template<typename Quantity >
1860 void set_north_with_units(Quantity value_w_units)
1861 { set_north(boost::units::quantity<north_unit,double >(value_w_units).value() ); };
1862
1863 template<typename Quantity >
1864 Quantity north_with_units() const
1865 { return Quantity(north() * north_unit()); };
1866
1867 boost::units::quantity< north_unit,double > north_with_units() const
1868 { return north_with_units<boost::units::quantity< north_unit,double > >(); };
1869
1870 typedef boost::units::acceleration_dimension east_dimension;
1871
1872 typedef boost::units::unit<east_dimension,boost::units::si::system> east_unit;
1873
1874 template<typename Quantity >
1875 void set_east_with_units(Quantity value_w_units)
1876 { set_east(boost::units::quantity<east_unit,double >(value_w_units).value() ); };
1877
1878 template<typename Quantity >
1879 Quantity east_with_units() const
1880 { return Quantity(east() * east_unit()); };
1881
1882 boost::units::quantity< east_unit,double > east_with_units() const
1883 { return east_with_units<boost::units::quantity< east_unit,double > >(); };
1884
1885 typedef boost::units::acceleration_dimension down_dimension;
1886
1887 typedef boost::units::unit<down_dimension,boost::units::si::system> down_unit;
1888
1889 template<typename Quantity >
1890 void set_down_with_units(Quantity value_w_units)
1891 { set_down(boost::units::quantity<down_unit,double >(value_w_units).value() ); };
1892
1893 template<typename Quantity >
1894 Quantity down_with_units() const
1895 { return Quantity(down() * down_unit()); };
1896
1897 boost::units::quantity< down_unit,double > down_with_units() const
1898 { return down_with_units<boost::units::quantity< down_unit,double > >(); };
1899
1900 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData.AccelerationWorld)
1901 private:
1902 class _Internal;
1903
1904 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1905 typedef void InternalArenaConstructable_;
1906 typedef void DestructorSkippable_;
1907 struct Impl_ {
1908 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1909 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1910 double north_;
1911 double east_;
1912 double down_;
1913 };
1914 union { Impl_ _impl_; };
1915 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
1916};
1917// -------------------------------------------------------------------
1918
1919class IMUData final :
1920 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUData) */ {
1921 public:
1922 inline IMUData() : IMUData(nullptr) {}
1923 ~IMUData() override;
1924 explicit PROTOBUF_CONSTEXPR IMUData(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
1925
1926 IMUData(const IMUData& from);
1927 IMUData(IMUData&& from) noexcept
1928 : IMUData() {
1929 *this = ::std::move(from);
1930 }
1931
1932 inline IMUData& operator=(const IMUData& from) {
1933 CopyFrom(from);
1934 return *this;
1935 }
1936 inline IMUData& operator=(IMUData&& from) noexcept {
1937 if (this == &from) return *this;
1938 if (GetOwningArena() == from.GetOwningArena()
1939 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
1940 && GetOwningArena() != nullptr
1941 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
1942 ) {
1943 InternalSwap(&from);
1944 } else {
1945 CopyFrom(from);
1946 }
1947 return *this;
1948 }
1949
1950 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1951 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
1952 }
1953 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1954 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1955 }
1956
1957 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1958 return GetDescriptor();
1959 }
1960 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1961 return default_instance().GetMetadata().descriptor;
1962 }
1963 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1964 return default_instance().GetMetadata().reflection;
1965 }
1966 static const IMUData& default_instance() {
1967 return *internal_default_instance();
1968 }
1969 static inline const IMUData* internal_default_instance() {
1970 return reinterpret_cast<const IMUData*>(
1972 }
1973 static constexpr int kIndexInFileMessages =
1974 8;
1975
1976 friend void swap(IMUData& a, IMUData& b) {
1977 a.Swap(&b);
1978 }
1979 inline void Swap(IMUData* other) {
1980 if (other == this) return;
1981 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
1982 if (GetOwningArena() != nullptr &&
1983 GetOwningArena() == other->GetOwningArena()) {
1984 #else // PROTOBUF_FORCE_COPY_IN_SWAP
1985 if (GetOwningArena() == other->GetOwningArena()) {
1986 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
1987 InternalSwap(other);
1988 } else {
1989 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
1990 }
1991 }
1993 if (other == this) return;
1994 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
1995 InternalSwap(other);
1996 }
1997
1998 // implements Message ----------------------------------------------
1999
2000 IMUData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2001 return CreateMaybeMessage<IMUData>(arena);
2002 }
2003 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2004 void CopyFrom(const IMUData& from);
2005 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2006 void MergeFrom( const IMUData& from) {
2007 IMUData::MergeImpl(*this, from);
2008 }
2009 private:
2010 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2011 public:
2012 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2013 bool IsInitialized() const final;
2014
2015 size_t ByteSizeLong() const final;
2016 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2017 uint8_t* _InternalSerialize(
2018 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2019 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2020
2021 private:
2022 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2023 void SharedDtor();
2024 void SetCachedSize(int size) const final;
2025 void InternalSwap(IMUData* other);
2026
2027 private:
2028 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2029 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2030 return "jaiabot.protobuf.IMUData";
2031 }
2032 protected:
2033 explicit IMUData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2034 bool is_message_owned = false);
2035 public:
2036
2037 static const ClassData _class_data_;
2038 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2039
2040 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2041
2042 // nested types ----------------------------------------------------
2043
2051
2052 // accessors -------------------------------------------------------
2053
2054 enum : int {
2055 kImuTypeFieldNumber = 11,
2056 kEulerAnglesFieldNumber = 1,
2057 kLinearAccelerationFieldNumber = 2,
2058 kGravityFieldNumber = 3,
2059 kAccuraciesFieldNumber = 4,
2060 kAngularVelocityFieldNumber = 9,
2061 kQuaternionFieldNumber = 10,
2062 kAccelerationFieldNumber = 12,
2063 kMagneticFieldFieldNumber = 13,
2064 kLinearAccelerationWorldFieldNumber = 14,
2065 kSignificantWaveHeightFieldNumber = 7,
2066 kMaxAccelerationFieldNumber = 8,
2067 kBotRolledOverFieldNumber = 6,
2068 kCalibrationStateFieldNumber = 5,
2069 };
2070 // optional string imu_type = 11;
2071 bool has_imu_type() const;
2072 private:
2073 bool _internal_has_imu_type() const;
2074 public:
2075 void clear_imu_type();
2076 const std::string& imu_type() const;
2077 template <typename ArgT0 = const std::string&, typename... ArgT>
2078 void set_imu_type(ArgT0&& arg0, ArgT... args);
2079 std::string* mutable_imu_type();
2080 PROTOBUF_NODISCARD std::string* release_imu_type();
2081 void set_allocated_imu_type(std::string* imu_type);
2082 private:
2083 const std::string& _internal_imu_type() const;
2084 inline PROTOBUF_ALWAYS_INLINE void _internal_set_imu_type(const std::string& value);
2085 std::string* _internal_mutable_imu_type();
2086 public:
2087
2088 // optional .jaiabot.protobuf.IMUData.EulerAngles euler_angles = 1;
2089 bool has_euler_angles() const;
2090 private:
2091 bool _internal_has_euler_angles() const;
2092 public:
2093 void clear_euler_angles();
2094 const ::jaiabot::protobuf::IMUData_EulerAngles& euler_angles() const;
2095 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_EulerAngles* release_euler_angles();
2096 ::jaiabot::protobuf::IMUData_EulerAngles* mutable_euler_angles();
2097 void set_allocated_euler_angles(::jaiabot::protobuf::IMUData_EulerAngles* euler_angles);
2098 private:
2099 const ::jaiabot::protobuf::IMUData_EulerAngles& _internal_euler_angles() const;
2100 ::jaiabot::protobuf::IMUData_EulerAngles* _internal_mutable_euler_angles();
2101 public:
2102 void unsafe_arena_set_allocated_euler_angles(
2104 ::jaiabot::protobuf::IMUData_EulerAngles* unsafe_arena_release_euler_angles();
2105
2106 // optional .jaiabot.protobuf.IMUData.Acceleration linear_acceleration = 2;
2107 bool has_linear_acceleration() const;
2108 private:
2109 bool _internal_has_linear_acceleration() const;
2110 public:
2111 void clear_linear_acceleration();
2112 const ::jaiabot::protobuf::IMUData_Acceleration& linear_acceleration() const;
2113 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Acceleration* release_linear_acceleration();
2114 ::jaiabot::protobuf::IMUData_Acceleration* mutable_linear_acceleration();
2115 void set_allocated_linear_acceleration(::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration);
2116 private:
2117 const ::jaiabot::protobuf::IMUData_Acceleration& _internal_linear_acceleration() const;
2118 ::jaiabot::protobuf::IMUData_Acceleration* _internal_mutable_linear_acceleration();
2119 public:
2120 void unsafe_arena_set_allocated_linear_acceleration(
2121 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration);
2122 ::jaiabot::protobuf::IMUData_Acceleration* unsafe_arena_release_linear_acceleration();
2123
2124 // optional .jaiabot.protobuf.IMUData.Acceleration gravity = 3;
2125 bool has_gravity() const;
2126 private:
2127 bool _internal_has_gravity() const;
2128 public:
2129 void clear_gravity();
2130 const ::jaiabot::protobuf::IMUData_Acceleration& gravity() const;
2131 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Acceleration* release_gravity();
2133 void set_allocated_gravity(::jaiabot::protobuf::IMUData_Acceleration* gravity);
2134 private:
2135 const ::jaiabot::protobuf::IMUData_Acceleration& _internal_gravity() const;
2136 ::jaiabot::protobuf::IMUData_Acceleration* _internal_mutable_gravity();
2137 public:
2138 void unsafe_arena_set_allocated_gravity(
2140 ::jaiabot::protobuf::IMUData_Acceleration* unsafe_arena_release_gravity();
2141
2142 // optional .jaiabot.protobuf.IMUData.Accuracies accuracies = 4;
2143 bool has_accuracies() const;
2144 private:
2145 bool _internal_has_accuracies() const;
2146 public:
2147 void clear_accuracies();
2148 const ::jaiabot::protobuf::IMUData_Accuracies& accuracies() const;
2149 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Accuracies* release_accuracies();
2150 ::jaiabot::protobuf::IMUData_Accuracies* mutable_accuracies();
2151 void set_allocated_accuracies(::jaiabot::protobuf::IMUData_Accuracies* accuracies);
2152 private:
2153 const ::jaiabot::protobuf::IMUData_Accuracies& _internal_accuracies() const;
2154 ::jaiabot::protobuf::IMUData_Accuracies* _internal_mutable_accuracies();
2155 public:
2156 void unsafe_arena_set_allocated_accuracies(
2158 ::jaiabot::protobuf::IMUData_Accuracies* unsafe_arena_release_accuracies();
2159
2160 // optional .jaiabot.protobuf.IMUData.AngularVelocity angular_velocity = 9;
2161 bool has_angular_velocity() const;
2162 private:
2163 bool _internal_has_angular_velocity() const;
2164 public:
2165 void clear_angular_velocity();
2166 const ::jaiabot::protobuf::IMUData_AngularVelocity& angular_velocity() const;
2167 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_AngularVelocity* release_angular_velocity();
2168 ::jaiabot::protobuf::IMUData_AngularVelocity* mutable_angular_velocity();
2169 void set_allocated_angular_velocity(::jaiabot::protobuf::IMUData_AngularVelocity* angular_velocity);
2170 private:
2171 const ::jaiabot::protobuf::IMUData_AngularVelocity& _internal_angular_velocity() const;
2172 ::jaiabot::protobuf::IMUData_AngularVelocity* _internal_mutable_angular_velocity();
2173 public:
2174 void unsafe_arena_set_allocated_angular_velocity(
2176 ::jaiabot::protobuf::IMUData_AngularVelocity* unsafe_arena_release_angular_velocity();
2177
2178 // optional .jaiabot.protobuf.IMUData.Quaternion quaternion = 10;
2179 bool has_quaternion() const;
2180 private:
2181 bool _internal_has_quaternion() const;
2182 public:
2183 void clear_quaternion();
2184 const ::jaiabot::protobuf::IMUData_Quaternion& quaternion() const;
2185 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Quaternion* release_quaternion();
2186 ::jaiabot::protobuf::IMUData_Quaternion* mutable_quaternion();
2187 void set_allocated_quaternion(::jaiabot::protobuf::IMUData_Quaternion* quaternion);
2188 private:
2189 const ::jaiabot::protobuf::IMUData_Quaternion& _internal_quaternion() const;
2190 ::jaiabot::protobuf::IMUData_Quaternion* _internal_mutable_quaternion();
2191 public:
2192 void unsafe_arena_set_allocated_quaternion(
2194 ::jaiabot::protobuf::IMUData_Quaternion* unsafe_arena_release_quaternion();
2195
2196 // optional .jaiabot.protobuf.IMUData.Acceleration acceleration = 12;
2197 bool has_acceleration() const;
2198 private:
2199 bool _internal_has_acceleration() const;
2200 public:
2201 void clear_acceleration();
2202 const ::jaiabot::protobuf::IMUData_Acceleration& acceleration() const;
2203 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_Acceleration* release_acceleration();
2204 ::jaiabot::protobuf::IMUData_Acceleration* mutable_acceleration();
2205 void set_allocated_acceleration(::jaiabot::protobuf::IMUData_Acceleration* acceleration);
2206 private:
2207 const ::jaiabot::protobuf::IMUData_Acceleration& _internal_acceleration() const;
2208 ::jaiabot::protobuf::IMUData_Acceleration* _internal_mutable_acceleration();
2209 public:
2210 void unsafe_arena_set_allocated_acceleration(
2212 ::jaiabot::protobuf::IMUData_Acceleration* unsafe_arena_release_acceleration();
2213
2214 // optional .jaiabot.protobuf.IMUData.MagneticField magnetic_field = 13;
2215 bool has_magnetic_field() const;
2216 private:
2217 bool _internal_has_magnetic_field() const;
2218 public:
2219 void clear_magnetic_field();
2220 const ::jaiabot::protobuf::IMUData_MagneticField& magnetic_field() const;
2221 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_MagneticField* release_magnetic_field();
2222 ::jaiabot::protobuf::IMUData_MagneticField* mutable_magnetic_field();
2223 void set_allocated_magnetic_field(::jaiabot::protobuf::IMUData_MagneticField* magnetic_field);
2224 private:
2225 const ::jaiabot::protobuf::IMUData_MagneticField& _internal_magnetic_field() const;
2226 ::jaiabot::protobuf::IMUData_MagneticField* _internal_mutable_magnetic_field();
2227 public:
2228 void unsafe_arena_set_allocated_magnetic_field(
2230 ::jaiabot::protobuf::IMUData_MagneticField* unsafe_arena_release_magnetic_field();
2231
2232 // optional .jaiabot.protobuf.IMUData.AccelerationWorld linear_acceleration_world = 14;
2233 bool has_linear_acceleration_world() const;
2234 private:
2235 bool _internal_has_linear_acceleration_world() const;
2236 public:
2237 void clear_linear_acceleration_world();
2238 const ::jaiabot::protobuf::IMUData_AccelerationWorld& linear_acceleration_world() const;
2239 PROTOBUF_NODISCARD ::jaiabot::protobuf::IMUData_AccelerationWorld* release_linear_acceleration_world();
2240 ::jaiabot::protobuf::IMUData_AccelerationWorld* mutable_linear_acceleration_world();
2241 void set_allocated_linear_acceleration_world(::jaiabot::protobuf::IMUData_AccelerationWorld* linear_acceleration_world);
2242 private:
2243 const ::jaiabot::protobuf::IMUData_AccelerationWorld& _internal_linear_acceleration_world() const;
2244 ::jaiabot::protobuf::IMUData_AccelerationWorld* _internal_mutable_linear_acceleration_world();
2245 public:
2246 void unsafe_arena_set_allocated_linear_acceleration_world(
2247 ::jaiabot::protobuf::IMUData_AccelerationWorld* linear_acceleration_world);
2248 ::jaiabot::protobuf::IMUData_AccelerationWorld* unsafe_arena_release_linear_acceleration_world();
2249
2250 // optional double significant_wave_height = 7 [(.dccl.field) = {
2251 bool has_significant_wave_height() const;
2252 private:
2253 bool _internal_has_significant_wave_height() const;
2254 public:
2255 void clear_significant_wave_height();
2256 double significant_wave_height() const;
2257 void set_significant_wave_height(double value);
2258 private:
2259 double _internal_significant_wave_height() const;
2260 void _internal_set_significant_wave_height(double value);
2261 public:
2262
2263 // optional double max_acceleration = 8 [(.dccl.field) = {
2264 bool has_max_acceleration() const;
2265 private:
2266 bool _internal_has_max_acceleration() const;
2267 public:
2268 void clear_max_acceleration();
2269 double max_acceleration() const;
2270 void set_max_acceleration(double value);
2271 private:
2272 double _internal_max_acceleration() const;
2273 void _internal_set_max_acceleration(double value);
2274 public:
2275
2276 // optional bool bot_rolled_over = 6 [default = false];
2277 bool has_bot_rolled_over() const;
2278 private:
2279 bool _internal_has_bot_rolled_over() const;
2280 public:
2281 void clear_bot_rolled_over();
2282 bool bot_rolled_over() const;
2283 void set_bot_rolled_over(bool value);
2284 private:
2285 bool _internal_bot_rolled_over() const;
2286 void _internal_set_bot_rolled_over(bool value);
2287 public:
2288
2289 // optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 5;
2290 bool has_calibration_state() const;
2291 private:
2292 bool _internal_has_calibration_state() const;
2293 public:
2294 void clear_calibration_state();
2295 ::jaiabot::protobuf::IMUCalibrationState calibration_state() const;
2296 void set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
2297 private:
2298 ::jaiabot::protobuf::IMUCalibrationState _internal_calibration_state() const;
2299 void _internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value);
2300 public:
2301
2302 typedef boost::units::length_dimension significant_wave_height_dimension;
2303
2304 typedef boost::units::unit<significant_wave_height_dimension,boost::units::si::system> significant_wave_height_unit;
2305
2306 template<typename Quantity >
2307 void set_significant_wave_height_with_units(Quantity value_w_units)
2308 { set_significant_wave_height(boost::units::quantity<significant_wave_height_unit,double >(value_w_units).value() ); };
2309
2310 template<typename Quantity >
2312 { return Quantity(significant_wave_height() * significant_wave_height_unit()); };
2313
2314 boost::units::quantity< significant_wave_height_unit,double > significant_wave_height_with_units() const
2315 { return significant_wave_height_with_units<boost::units::quantity< significant_wave_height_unit,double > >(); };
2316
2317 typedef boost::units::acceleration_dimension max_acceleration_dimension;
2318
2319 typedef boost::units::unit<max_acceleration_dimension,boost::units::si::system> max_acceleration_unit;
2320
2321 template<typename Quantity >
2322 void set_max_acceleration_with_units(Quantity value_w_units)
2323 { set_max_acceleration(boost::units::quantity<max_acceleration_unit,double >(value_w_units).value() ); };
2324
2325 template<typename Quantity >
2327 { return Quantity(max_acceleration() * max_acceleration_unit()); };
2328
2329 boost::units::quantity< max_acceleration_unit,double > max_acceleration_with_units() const
2330 { return max_acceleration_with_units<boost::units::quantity< max_acceleration_unit,double > >(); };
2331
2332 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUData)
2333 private:
2334 class _Internal;
2335
2336 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2337 typedef void InternalArenaConstructable_;
2338 typedef void DestructorSkippable_;
2339 struct Impl_ {
2340 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2341 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2342 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr imu_type_;
2344 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration_;
2351 ::jaiabot::protobuf::IMUData_AccelerationWorld* linear_acceleration_world_;
2352 double significant_wave_height_;
2353 double max_acceleration_;
2354 bool bot_rolled_over_;
2355 int calibration_state_;
2356 };
2357 union { Impl_ _impl_; };
2358 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
2359};
2360// -------------------------------------------------------------------
2361
2362class IMUIssue final :
2363 public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.protobuf.IMUIssue) */ {
2364 public:
2365 inline IMUIssue() : IMUIssue(nullptr) {}
2366 ~IMUIssue() override;
2367 explicit PROTOBUF_CONSTEXPR IMUIssue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
2368
2369 IMUIssue(const IMUIssue& from);
2370 IMUIssue(IMUIssue&& from) noexcept
2371 : IMUIssue() {
2372 *this = ::std::move(from);
2373 }
2374
2375 inline IMUIssue& operator=(const IMUIssue& from) {
2376 CopyFrom(from);
2377 return *this;
2378 }
2379 inline IMUIssue& operator=(IMUIssue&& from) noexcept {
2380 if (this == &from) return *this;
2381 if (GetOwningArena() == from.GetOwningArena()
2382 #ifdef PROTOBUF_FORCE_COPY_IN_MOVE
2383 && GetOwningArena() != nullptr
2384 #endif // !PROTOBUF_FORCE_COPY_IN_MOVE
2385 ) {
2386 InternalSwap(&from);
2387 } else {
2388 CopyFrom(from);
2389 }
2390 return *this;
2391 }
2392
2393 inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2394 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
2395 }
2396 inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2397 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2398 }
2399
2400 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2401 return GetDescriptor();
2402 }
2403 static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2404 return default_instance().GetMetadata().descriptor;
2405 }
2406 static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2407 return default_instance().GetMetadata().reflection;
2408 }
2409 static const IMUIssue& default_instance() {
2410 return *internal_default_instance();
2411 }
2412 static inline const IMUIssue* internal_default_instance() {
2413 return reinterpret_cast<const IMUIssue*>(
2415 }
2416 static constexpr int kIndexInFileMessages =
2417 9;
2418
2419 friend void swap(IMUIssue& a, IMUIssue& b) {
2420 a.Swap(&b);
2421 }
2422 inline void Swap(IMUIssue* other) {
2423 if (other == this) return;
2424 #ifdef PROTOBUF_FORCE_COPY_IN_SWAP
2425 if (GetOwningArena() != nullptr &&
2426 GetOwningArena() == other->GetOwningArena()) {
2427 #else // PROTOBUF_FORCE_COPY_IN_SWAP
2428 if (GetOwningArena() == other->GetOwningArena()) {
2429 #endif // !PROTOBUF_FORCE_COPY_IN_SWAP
2430 InternalSwap(other);
2431 } else {
2432 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
2433 }
2434 }
2436 if (other == this) return;
2437 GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
2438 InternalSwap(other);
2439 }
2440
2441 // implements Message ----------------------------------------------
2442
2443 IMUIssue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
2444 return CreateMaybeMessage<IMUIssue>(arena);
2445 }
2446 using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
2447 void CopyFrom(const IMUIssue& from);
2448 using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
2449 void MergeFrom( const IMUIssue& from) {
2450 IMUIssue::MergeImpl(*this, from);
2451 }
2452 private:
2453 static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
2454 public:
2455 PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2456 bool IsInitialized() const final;
2457
2458 size_t ByteSizeLong() const final;
2459 const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2460 uint8_t* _InternalSerialize(
2461 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2462 int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
2463
2464 private:
2465 void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
2466 void SharedDtor();
2467 void SetCachedSize(int size) const final;
2468 void InternalSwap(IMUIssue* other);
2469
2470 private:
2471 friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2472 static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2473 return "jaiabot.protobuf.IMUIssue";
2474 }
2475 protected:
2476 explicit IMUIssue(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2477 bool is_message_owned = false);
2478 public:
2479
2480 static const ClassData _class_data_;
2481 const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
2482
2483 ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2484
2485 // nested types ----------------------------------------------------
2486
2488 static constexpr SolutionType STOP_BOT =
2489 IMUIssue_SolutionType_STOP_BOT;
2490 static constexpr SolutionType USE_COG =
2491 IMUIssue_SolutionType_USE_COG;
2492 static constexpr SolutionType USE_CORRECTION =
2493 IMUIssue_SolutionType_USE_CORRECTION;
2494 static constexpr SolutionType RESTART_BOT =
2495 IMUIssue_SolutionType_RESTART_BOT;
2496 static constexpr SolutionType REBOOT_BOT =
2497 IMUIssue_SolutionType_REBOOT_BOT;
2498 static constexpr SolutionType REPORT_IMU =
2499 IMUIssue_SolutionType_REPORT_IMU;
2500 static constexpr SolutionType RESTART_IMU_PY =
2501 IMUIssue_SolutionType_RESTART_IMU_PY;
2502 static constexpr SolutionType REBOOT_BNO085_IMU =
2503 IMUIssue_SolutionType_REBOOT_BNO085_IMU;
2504 static constexpr SolutionType REBOOT_BNO085_IMU_AND_RESTART_IMU_PY =
2505 IMUIssue_SolutionType_REBOOT_BNO085_IMU_AND_RESTART_IMU_PY;
2506 static inline bool SolutionType_IsValid(int value) {
2507 return IMUIssue_SolutionType_IsValid(value);
2508 }
2509 static constexpr SolutionType SolutionType_MIN =
2511 static constexpr SolutionType SolutionType_MAX =
2513 static constexpr int SolutionType_ARRAYSIZE =
2515 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
2519 template<typename T>
2520 static inline const std::string& SolutionType_Name(T enum_t_value) {
2521 static_assert(::std::is_same<T, SolutionType>::value ||
2522 ::std::is_integral<T>::value,
2523 "Incorrect type passed to function SolutionType_Name.");
2524 return IMUIssue_SolutionType_Name(enum_t_value);
2525 }
2526 static inline bool SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
2527 SolutionType* value) {
2528 return IMUIssue_SolutionType_Parse(name, value);
2529 }
2530
2532 static constexpr IssueType HEADING_COURSE_DIFFERENCE_TOO_LARGE =
2534 static inline bool IssueType_IsValid(int value) {
2535 return IMUIssue_IssueType_IsValid(value);
2536 }
2537 static constexpr IssueType IssueType_MIN =
2539 static constexpr IssueType IssueType_MAX =
2541 static constexpr int IssueType_ARRAYSIZE =
2543 static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
2547 template<typename T>
2548 static inline const std::string& IssueType_Name(T enum_t_value) {
2549 static_assert(::std::is_same<T, IssueType>::value ||
2550 ::std::is_integral<T>::value,
2551 "Incorrect type passed to function IssueType_Name.");
2552 return IMUIssue_IssueType_Name(enum_t_value);
2553 }
2554 static inline bool IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name,
2555 IssueType* value) {
2556 return IMUIssue_IssueType_Parse(name, value);
2557 }
2558
2559 // accessors -------------------------------------------------------
2560
2561 enum : int {
2562 kSolutionFieldNumber = 1,
2563 kTypeFieldNumber = 2,
2564 kHeadingFieldNumber = 31,
2565 kDesiredHeadingFieldNumber = 32,
2566 kCourseOverGroundFieldNumber = 33,
2567 kHeadingCourseDifferenceFieldNumber = 34,
2568 kPitchFieldNumber = 35,
2569 kSpeedOverGroundFieldNumber = 36,
2570 kDesiredSpeedFieldNumber = 37,
2571 kMissionStateFieldNumber = 3,
2572 kImuHeadingCourseMaxDiffFieldNumber = 30,
2573 };
2574 // required .jaiabot.protobuf.IMUIssue.SolutionType solution = 1;
2575 bool has_solution() const;
2576 private:
2577 bool _internal_has_solution() const;
2578 public:
2579 void clear_solution();
2581 void set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
2582 private:
2583 ::jaiabot::protobuf::IMUIssue_SolutionType _internal_solution() const;
2584 void _internal_set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value);
2585 public:
2586
2587 // optional .jaiabot.protobuf.IMUIssue.IssueType type = 2;
2588 bool has_type() const;
2589 private:
2590 bool _internal_has_type() const;
2591 public:
2592 void clear_type();
2594 void set_type(::jaiabot::protobuf::IMUIssue_IssueType value);
2595 private:
2596 ::jaiabot::protobuf::IMUIssue_IssueType _internal_type() const;
2597 void _internal_set_type(::jaiabot::protobuf::IMUIssue_IssueType value);
2598 public:
2599
2600 // optional double heading = 31 [(.dccl.field) = {
2601 bool has_heading() const;
2602 private:
2603 bool _internal_has_heading() const;
2604 public:
2605 void clear_heading();
2606 double heading() const;
2607 void set_heading(double value);
2608 private:
2609 double _internal_heading() const;
2610 void _internal_set_heading(double value);
2611 public:
2612
2613 // optional double desired_heading = 32 [(.dccl.field) = {
2614 bool has_desired_heading() const;
2615 private:
2616 bool _internal_has_desired_heading() const;
2617 public:
2618 void clear_desired_heading();
2619 double desired_heading() const;
2620 void set_desired_heading(double value);
2621 private:
2622 double _internal_desired_heading() const;
2623 void _internal_set_desired_heading(double value);
2624 public:
2625
2626 // optional double course_over_ground = 33 [(.dccl.field) = {
2627 bool has_course_over_ground() const;
2628 private:
2629 bool _internal_has_course_over_ground() const;
2630 public:
2631 void clear_course_over_ground();
2632 double course_over_ground() const;
2633 void set_course_over_ground(double value);
2634 private:
2635 double _internal_course_over_ground() const;
2636 void _internal_set_course_over_ground(double value);
2637 public:
2638
2639 // optional double heading_course_difference = 34 [(.dccl.field) = {
2640 bool has_heading_course_difference() const;
2641 private:
2642 bool _internal_has_heading_course_difference() const;
2643 public:
2644 void clear_heading_course_difference();
2645 double heading_course_difference() const;
2646 void set_heading_course_difference(double value);
2647 private:
2648 double _internal_heading_course_difference() const;
2649 void _internal_set_heading_course_difference(double value);
2650 public:
2651
2652 // optional double pitch = 35 [(.dccl.field) = {
2653 bool has_pitch() const;
2654 private:
2655 bool _internal_has_pitch() const;
2656 public:
2657 void clear_pitch();
2658 double pitch() const;
2659 void set_pitch(double value);
2660 private:
2661 double _internal_pitch() const;
2662 void _internal_set_pitch(double value);
2663 public:
2664
2665 // optional double speed_over_ground = 36 [(.dccl.field) = {
2666 bool has_speed_over_ground() const;
2667 private:
2668 bool _internal_has_speed_over_ground() const;
2669 public:
2670 void clear_speed_over_ground();
2671 double speed_over_ground() const;
2672 void set_speed_over_ground(double value);
2673 private:
2674 double _internal_speed_over_ground() const;
2675 void _internal_set_speed_over_ground(double value);
2676 public:
2677
2678 // optional double desired_speed = 37 [(.dccl.field) = {
2679 bool has_desired_speed() const;
2680 private:
2681 bool _internal_has_desired_speed() const;
2682 public:
2683 void clear_desired_speed();
2684 double desired_speed() const;
2685 void set_desired_speed(double value);
2686 private:
2687 double _internal_desired_speed() const;
2688 void _internal_set_desired_speed(double value);
2689 public:
2690
2691 // optional .jaiabot.protobuf.MissionState mission_state = 3;
2692 bool has_mission_state() const;
2693 private:
2694 bool _internal_has_mission_state() const;
2695 public:
2696 void clear_mission_state();
2697 ::jaiabot::protobuf::MissionState mission_state() const;
2698 void set_mission_state(::jaiabot::protobuf::MissionState value);
2699 private:
2700 ::jaiabot::protobuf::MissionState _internal_mission_state() const;
2701 void _internal_set_mission_state(::jaiabot::protobuf::MissionState value);
2702 public:
2703
2704 // optional double imu_heading_course_max_diff = 30 [default = 45];
2705 bool has_imu_heading_course_max_diff() const;
2706 private:
2707 bool _internal_has_imu_heading_course_max_diff() const;
2708 public:
2709 void clear_imu_heading_course_max_diff();
2710 double imu_heading_course_max_diff() const;
2711 void set_imu_heading_course_max_diff(double value);
2712 private:
2713 double _internal_imu_heading_course_max_diff() const;
2714 void _internal_set_imu_heading_course_max_diff(double value);
2715 public:
2716
2717 typedef boost::units::plane_angle_dimension heading_dimension;
2718
2719 typedef boost::units::unit<heading_dimension,boost::units::degree::system> heading_unit;
2720
2721 template<typename Quantity >
2722 void set_heading_with_units(Quantity value_w_units)
2723 { set_heading(boost::units::quantity<heading_unit,double >(value_w_units).value() ); };
2724
2725 template<typename Quantity >
2726 Quantity heading_with_units() const
2727 { return Quantity(heading() * heading_unit()); };
2728
2729 boost::units::quantity< heading_unit,double > heading_with_units() const
2730 { return heading_with_units<boost::units::quantity< heading_unit,double > >(); };
2731
2732 typedef boost::units::plane_angle_dimension desired_heading_dimension;
2733
2734 typedef boost::units::unit<desired_heading_dimension,boost::units::degree::system> desired_heading_unit;
2735
2736 template<typename Quantity >
2737 void set_desired_heading_with_units(Quantity value_w_units)
2738 { set_desired_heading(boost::units::quantity<desired_heading_unit,double >(value_w_units).value() ); };
2739
2740 template<typename Quantity >
2742 { return Quantity(desired_heading() * desired_heading_unit()); };
2743
2744 boost::units::quantity< desired_heading_unit,double > desired_heading_with_units() const
2745 { return desired_heading_with_units<boost::units::quantity< desired_heading_unit,double > >(); };
2746
2747 typedef boost::units::plane_angle_dimension course_over_ground_dimension;
2748
2749 typedef boost::units::unit<course_over_ground_dimension,boost::units::degree::system> course_over_ground_unit;
2750
2751 template<typename Quantity >
2752 void set_course_over_ground_with_units(Quantity value_w_units)
2753 { set_course_over_ground(boost::units::quantity<course_over_ground_unit,double >(value_w_units).value() ); };
2754
2755 template<typename Quantity >
2757 { return Quantity(course_over_ground() * course_over_ground_unit()); };
2758
2759 boost::units::quantity< course_over_ground_unit,double > course_over_ground_with_units() const
2760 { return course_over_ground_with_units<boost::units::quantity< course_over_ground_unit,double > >(); };
2761
2762 typedef boost::units::plane_angle_dimension heading_course_difference_dimension;
2763
2764 typedef boost::units::unit<heading_course_difference_dimension,boost::units::degree::system> heading_course_difference_unit;
2765
2766 template<typename Quantity >
2767 void set_heading_course_difference_with_units(Quantity value_w_units)
2768 { set_heading_course_difference(boost::units::quantity<heading_course_difference_unit,double >(value_w_units).value() ); };
2769
2770 template<typename Quantity >
2772 { return Quantity(heading_course_difference() * heading_course_difference_unit()); };
2773
2774 boost::units::quantity< heading_course_difference_unit,double > heading_course_difference_with_units() const
2775 { return heading_course_difference_with_units<boost::units::quantity< heading_course_difference_unit,double > >(); };
2776
2777 typedef boost::units::plane_angle_dimension pitch_dimension;
2778
2779 typedef boost::units::unit<pitch_dimension,boost::units::degree::system> pitch_unit;
2780
2781 template<typename Quantity >
2782 void set_pitch_with_units(Quantity value_w_units)
2783 { set_pitch(boost::units::quantity<pitch_unit,double >(value_w_units).value() ); };
2784
2785 template<typename Quantity >
2786 Quantity pitch_with_units() const
2787 { return Quantity(pitch() * pitch_unit()); };
2788
2789 boost::units::quantity< pitch_unit,double > pitch_with_units() const
2790 { return pitch_with_units<boost::units::quantity< pitch_unit,double > >(); };
2791
2792 typedef boost::units::velocity_dimension speed_over_ground_dimension;
2793
2794 typedef boost::units::unit<speed_over_ground_dimension,boost::units::si::system> speed_over_ground_unit;
2795
2796 template<typename Quantity >
2797 void set_speed_over_ground_with_units(Quantity value_w_units)
2798 { set_speed_over_ground(boost::units::quantity<speed_over_ground_unit,double >(value_w_units).value() ); };
2799
2800 template<typename Quantity >
2802 { return Quantity(speed_over_ground() * speed_over_ground_unit()); };
2803
2804 boost::units::quantity< speed_over_ground_unit,double > speed_over_ground_with_units() const
2805 { return speed_over_ground_with_units<boost::units::quantity< speed_over_ground_unit,double > >(); };
2806
2807 typedef boost::units::velocity_dimension desired_speed_dimension;
2808
2809 typedef boost::units::unit<desired_speed_dimension,boost::units::si::system> desired_speed_unit;
2810
2811 template<typename Quantity >
2812 void set_desired_speed_with_units(Quantity value_w_units)
2813 { set_desired_speed(boost::units::quantity<desired_speed_unit,double >(value_w_units).value() ); };
2814
2815 template<typename Quantity >
2817 { return Quantity(desired_speed() * desired_speed_unit()); };
2818
2819 boost::units::quantity< desired_speed_unit,double > desired_speed_with_units() const
2820 { return desired_speed_with_units<boost::units::quantity< desired_speed_unit,double > >(); };
2821
2822 // @@protoc_insertion_point(class_scope:jaiabot.protobuf.IMUIssue)
2823 private:
2824 class _Internal;
2825
2826 template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
2827 typedef void InternalArenaConstructable_;
2828 typedef void DestructorSkippable_;
2829 struct Impl_ {
2830 ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2831 mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2832 int solution_;
2833 int type_;
2834 double heading_;
2835 double desired_heading_;
2836 double course_over_ground_;
2837 double heading_course_difference_;
2838 double pitch_;
2839 double speed_over_ground_;
2840 double desired_speed_;
2841 int mission_state_;
2842 double imu_heading_course_max_diff_;
2843 };
2844 union { Impl_ _impl_; };
2845 friend struct ::TableStruct_jaiabot_2fmessages_2fimu_2eproto;
2846};
2847// ===================================================================
2848
2849
2850// ===================================================================
2851
2852#ifdef __GNUC__
2853 #pragma GCC diagnostic push
2854 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
2855#endif // __GNUC__
2856// IMUCommand
2857
2858// required .jaiabot.protobuf.IMUCommand.IMUCommandType type = 1;
2859inline bool IMUCommand::_internal_has_type() const {
2860 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2861 return value;
2862}
2863inline bool IMUCommand::has_type() const {
2864 return _internal_has_type();
2865}
2866inline void IMUCommand::clear_type() {
2867 _impl_.type_ = 0;
2868 _impl_._has_bits_[0] &= ~0x00000001u;
2869}
2870inline ::jaiabot::protobuf::IMUCommand_IMUCommandType IMUCommand::_internal_type() const {
2871 return static_cast< ::jaiabot::protobuf::IMUCommand_IMUCommandType >(_impl_.type_);
2872}
2873inline ::jaiabot::protobuf::IMUCommand_IMUCommandType IMUCommand::type() const {
2874 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUCommand.type)
2875 return _internal_type();
2876}
2877inline void IMUCommand::_internal_set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value) {
2879 _impl_._has_bits_[0] |= 0x00000001u;
2880 _impl_.type_ = value;
2881}
2882inline void IMUCommand::set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value) {
2883 _internal_set_type(value);
2884 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUCommand.type)
2885}
2886
2887// optional double sample_rate = 2 [default = 10, (.dccl.field) = {
2888inline bool IMUCommand::_internal_has_sample_rate() const {
2889 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2890 return value;
2891}
2892inline bool IMUCommand::has_sample_rate() const {
2893 return _internal_has_sample_rate();
2894}
2895inline void IMUCommand::clear_sample_rate() {
2896 _impl_.sample_rate_ = 10;
2897 _impl_._has_bits_[0] &= ~0x00000002u;
2898}
2899inline double IMUCommand::_internal_sample_rate() const {
2900 return _impl_.sample_rate_;
2901}
2902inline double IMUCommand::sample_rate() const {
2903 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUCommand.sample_rate)
2904 return _internal_sample_rate();
2905}
2906inline void IMUCommand::_internal_set_sample_rate(double value) {
2907 _impl_._has_bits_[0] |= 0x00000002u;
2908 _impl_.sample_rate_ = value;
2909}
2910inline void IMUCommand::set_sample_rate(double value) {
2911 _internal_set_sample_rate(value);
2912 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUCommand.sample_rate)
2913}
2914
2915// -------------------------------------------------------------------
2916
2917// IMUData_EulerAngles
2918
2919// optional double heading = 1 [(.dccl.field) = {
2920inline bool IMUData_EulerAngles::_internal_has_heading() const {
2921 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2922 return value;
2923}
2924inline bool IMUData_EulerAngles::has_heading() const {
2925 return _internal_has_heading();
2926}
2927inline void IMUData_EulerAngles::clear_heading() {
2928 _impl_.heading_ = 0;
2929 _impl_._has_bits_[0] &= ~0x00000001u;
2930}
2931inline double IMUData_EulerAngles::_internal_heading() const {
2932 return _impl_.heading_;
2933}
2934inline double IMUData_EulerAngles::heading() const {
2935 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.heading)
2936 return _internal_heading();
2937}
2938inline void IMUData_EulerAngles::_internal_set_heading(double value) {
2939 _impl_._has_bits_[0] |= 0x00000001u;
2940 _impl_.heading_ = value;
2941}
2942inline void IMUData_EulerAngles::set_heading(double value) {
2943 _internal_set_heading(value);
2944 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.heading)
2945}
2946
2947// optional double pitch = 2 [(.dccl.field) = {
2948inline bool IMUData_EulerAngles::_internal_has_pitch() const {
2949 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2950 return value;
2951}
2952inline bool IMUData_EulerAngles::has_pitch() const {
2953 return _internal_has_pitch();
2954}
2955inline void IMUData_EulerAngles::clear_pitch() {
2956 _impl_.pitch_ = 0;
2957 _impl_._has_bits_[0] &= ~0x00000002u;
2958}
2959inline double IMUData_EulerAngles::_internal_pitch() const {
2960 return _impl_.pitch_;
2961}
2962inline double IMUData_EulerAngles::pitch() const {
2963 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.pitch)
2964 return _internal_pitch();
2965}
2966inline void IMUData_EulerAngles::_internal_set_pitch(double value) {
2967 _impl_._has_bits_[0] |= 0x00000002u;
2968 _impl_.pitch_ = value;
2969}
2970inline void IMUData_EulerAngles::set_pitch(double value) {
2971 _internal_set_pitch(value);
2972 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.pitch)
2973}
2974
2975// optional double roll = 3 [(.dccl.field) = {
2976inline bool IMUData_EulerAngles::_internal_has_roll() const {
2977 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2978 return value;
2979}
2980inline bool IMUData_EulerAngles::has_roll() const {
2981 return _internal_has_roll();
2982}
2983inline void IMUData_EulerAngles::clear_roll() {
2984 _impl_.roll_ = 0;
2985 _impl_._has_bits_[0] &= ~0x00000004u;
2986}
2987inline double IMUData_EulerAngles::_internal_roll() const {
2988 return _impl_.roll_;
2989}
2990inline double IMUData_EulerAngles::roll() const {
2991 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.EulerAngles.roll)
2992 return _internal_roll();
2993}
2994inline void IMUData_EulerAngles::_internal_set_roll(double value) {
2995 _impl_._has_bits_[0] |= 0x00000004u;
2996 _impl_.roll_ = value;
2997}
2998inline void IMUData_EulerAngles::set_roll(double value) {
2999 _internal_set_roll(value);
3000 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.EulerAngles.roll)
3001}
3002
3003// -------------------------------------------------------------------
3004
3005// IMUData_Acceleration
3006
3007// optional double x = 1;
3008inline bool IMUData_Acceleration::_internal_has_x() const {
3009 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3010 return value;
3011}
3012inline bool IMUData_Acceleration::has_x() const {
3013 return _internal_has_x();
3014}
3015inline void IMUData_Acceleration::clear_x() {
3016 _impl_.x_ = 0;
3017 _impl_._has_bits_[0] &= ~0x00000001u;
3018}
3019inline double IMUData_Acceleration::_internal_x() const {
3020 return _impl_.x_;
3021}
3022inline double IMUData_Acceleration::x() const {
3023 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.x)
3024 return _internal_x();
3025}
3026inline void IMUData_Acceleration::_internal_set_x(double value) {
3027 _impl_._has_bits_[0] |= 0x00000001u;
3028 _impl_.x_ = value;
3029}
3030inline void IMUData_Acceleration::set_x(double value) {
3031 _internal_set_x(value);
3032 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.x)
3033}
3034
3035// optional double y = 2;
3036inline bool IMUData_Acceleration::_internal_has_y() const {
3037 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3038 return value;
3039}
3040inline bool IMUData_Acceleration::has_y() const {
3041 return _internal_has_y();
3042}
3043inline void IMUData_Acceleration::clear_y() {
3044 _impl_.y_ = 0;
3045 _impl_._has_bits_[0] &= ~0x00000002u;
3046}
3047inline double IMUData_Acceleration::_internal_y() const {
3048 return _impl_.y_;
3049}
3050inline double IMUData_Acceleration::y() const {
3051 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.y)
3052 return _internal_y();
3053}
3054inline void IMUData_Acceleration::_internal_set_y(double value) {
3055 _impl_._has_bits_[0] |= 0x00000002u;
3056 _impl_.y_ = value;
3057}
3058inline void IMUData_Acceleration::set_y(double value) {
3059 _internal_set_y(value);
3060 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.y)
3061}
3062
3063// optional double z = 3;
3064inline bool IMUData_Acceleration::_internal_has_z() const {
3065 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3066 return value;
3067}
3068inline bool IMUData_Acceleration::has_z() const {
3069 return _internal_has_z();
3070}
3071inline void IMUData_Acceleration::clear_z() {
3072 _impl_.z_ = 0;
3073 _impl_._has_bits_[0] &= ~0x00000004u;
3074}
3075inline double IMUData_Acceleration::_internal_z() const {
3076 return _impl_.z_;
3077}
3078inline double IMUData_Acceleration::z() const {
3079 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Acceleration.z)
3080 return _internal_z();
3081}
3082inline void IMUData_Acceleration::_internal_set_z(double value) {
3083 _impl_._has_bits_[0] |= 0x00000004u;
3084 _impl_.z_ = value;
3085}
3086inline void IMUData_Acceleration::set_z(double value) {
3087 _internal_set_z(value);
3088 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Acceleration.z)
3089}
3090
3091// -------------------------------------------------------------------
3092
3093// IMUData_Accuracies
3094
3095// optional int32 accelerometer = 1 [(.dccl.field) = {
3096inline bool IMUData_Accuracies::_internal_has_accelerometer() const {
3097 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3098 return value;
3099}
3100inline bool IMUData_Accuracies::has_accelerometer() const {
3101 return _internal_has_accelerometer();
3102}
3103inline void IMUData_Accuracies::clear_accelerometer() {
3104 _impl_.accelerometer_ = 0;
3105 _impl_._has_bits_[0] &= ~0x00000001u;
3106}
3107inline int32_t IMUData_Accuracies::_internal_accelerometer() const {
3108 return _impl_.accelerometer_;
3109}
3110inline int32_t IMUData_Accuracies::accelerometer() const {
3111 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.accelerometer)
3112 return _internal_accelerometer();
3113}
3114inline void IMUData_Accuracies::_internal_set_accelerometer(int32_t value) {
3115 _impl_._has_bits_[0] |= 0x00000001u;
3116 _impl_.accelerometer_ = value;
3117}
3118inline void IMUData_Accuracies::set_accelerometer(int32_t value) {
3119 _internal_set_accelerometer(value);
3120 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.accelerometer)
3121}
3122
3123// optional int32 gyroscope = 2 [(.dccl.field) = {
3124inline bool IMUData_Accuracies::_internal_has_gyroscope() const {
3125 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3126 return value;
3127}
3128inline bool IMUData_Accuracies::has_gyroscope() const {
3129 return _internal_has_gyroscope();
3130}
3131inline void IMUData_Accuracies::clear_gyroscope() {
3132 _impl_.gyroscope_ = 0;
3133 _impl_._has_bits_[0] &= ~0x00000002u;
3134}
3135inline int32_t IMUData_Accuracies::_internal_gyroscope() const {
3136 return _impl_.gyroscope_;
3137}
3138inline int32_t IMUData_Accuracies::gyroscope() const {
3139 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.gyroscope)
3140 return _internal_gyroscope();
3141}
3142inline void IMUData_Accuracies::_internal_set_gyroscope(int32_t value) {
3143 _impl_._has_bits_[0] |= 0x00000002u;
3144 _impl_.gyroscope_ = value;
3145}
3146inline void IMUData_Accuracies::set_gyroscope(int32_t value) {
3147 _internal_set_gyroscope(value);
3148 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.gyroscope)
3149}
3150
3151// optional int32 magnetometer = 3 [(.dccl.field) = {
3152inline bool IMUData_Accuracies::_internal_has_magnetometer() const {
3153 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3154 return value;
3155}
3156inline bool IMUData_Accuracies::has_magnetometer() const {
3157 return _internal_has_magnetometer();
3158}
3159inline void IMUData_Accuracies::clear_magnetometer() {
3160 _impl_.magnetometer_ = 0;
3161 _impl_._has_bits_[0] &= ~0x00000004u;
3162}
3163inline int32_t IMUData_Accuracies::_internal_magnetometer() const {
3164 return _impl_.magnetometer_;
3165}
3166inline int32_t IMUData_Accuracies::magnetometer() const {
3167 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Accuracies.magnetometer)
3168 return _internal_magnetometer();
3169}
3170inline void IMUData_Accuracies::_internal_set_magnetometer(int32_t value) {
3171 _impl_._has_bits_[0] |= 0x00000004u;
3172 _impl_.magnetometer_ = value;
3173}
3174inline void IMUData_Accuracies::set_magnetometer(int32_t value) {
3175 _internal_set_magnetometer(value);
3176 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Accuracies.magnetometer)
3177}
3178
3179// -------------------------------------------------------------------
3180
3181// IMUData_AngularVelocity
3182
3183// optional double x = 1 [(.dccl.field) = {
3184inline bool IMUData_AngularVelocity::_internal_has_x() const {
3185 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3186 return value;
3187}
3188inline bool IMUData_AngularVelocity::has_x() const {
3189 return _internal_has_x();
3190}
3191inline void IMUData_AngularVelocity::clear_x() {
3192 _impl_.x_ = 0;
3193 _impl_._has_bits_[0] &= ~0x00000001u;
3194}
3195inline double IMUData_AngularVelocity::_internal_x() const {
3196 return _impl_.x_;
3197}
3198inline double IMUData_AngularVelocity::x() const {
3199 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.x)
3200 return _internal_x();
3201}
3202inline void IMUData_AngularVelocity::_internal_set_x(double value) {
3203 _impl_._has_bits_[0] |= 0x00000001u;
3204 _impl_.x_ = value;
3205}
3206inline void IMUData_AngularVelocity::set_x(double value) {
3207 _internal_set_x(value);
3208 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.x)
3209}
3210
3211// optional double y = 2 [(.dccl.field) = {
3212inline bool IMUData_AngularVelocity::_internal_has_y() const {
3213 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3214 return value;
3215}
3216inline bool IMUData_AngularVelocity::has_y() const {
3217 return _internal_has_y();
3218}
3219inline void IMUData_AngularVelocity::clear_y() {
3220 _impl_.y_ = 0;
3221 _impl_._has_bits_[0] &= ~0x00000002u;
3222}
3223inline double IMUData_AngularVelocity::_internal_y() const {
3224 return _impl_.y_;
3225}
3226inline double IMUData_AngularVelocity::y() const {
3227 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.y)
3228 return _internal_y();
3229}
3230inline void IMUData_AngularVelocity::_internal_set_y(double value) {
3231 _impl_._has_bits_[0] |= 0x00000002u;
3232 _impl_.y_ = value;
3233}
3234inline void IMUData_AngularVelocity::set_y(double value) {
3235 _internal_set_y(value);
3236 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.y)
3237}
3238
3239// optional double z = 3 [(.dccl.field) = {
3240inline bool IMUData_AngularVelocity::_internal_has_z() const {
3241 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3242 return value;
3243}
3244inline bool IMUData_AngularVelocity::has_z() const {
3245 return _internal_has_z();
3246}
3247inline void IMUData_AngularVelocity::clear_z() {
3248 _impl_.z_ = 0;
3249 _impl_._has_bits_[0] &= ~0x00000004u;
3250}
3251inline double IMUData_AngularVelocity::_internal_z() const {
3252 return _impl_.z_;
3253}
3254inline double IMUData_AngularVelocity::z() const {
3255 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AngularVelocity.z)
3256 return _internal_z();
3257}
3258inline void IMUData_AngularVelocity::_internal_set_z(double value) {
3259 _impl_._has_bits_[0] |= 0x00000004u;
3260 _impl_.z_ = value;
3261}
3262inline void IMUData_AngularVelocity::set_z(double value) {
3263 _internal_set_z(value);
3264 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AngularVelocity.z)
3265}
3266
3267// -------------------------------------------------------------------
3268
3269// IMUData_Quaternion
3270
3271// optional double w = 1;
3272inline bool IMUData_Quaternion::_internal_has_w() const {
3273 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3274 return value;
3275}
3276inline bool IMUData_Quaternion::has_w() const {
3277 return _internal_has_w();
3278}
3279inline void IMUData_Quaternion::clear_w() {
3280 _impl_.w_ = 0;
3281 _impl_._has_bits_[0] &= ~0x00000001u;
3282}
3283inline double IMUData_Quaternion::_internal_w() const {
3284 return _impl_.w_;
3285}
3286inline double IMUData_Quaternion::w() const {
3287 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.w)
3288 return _internal_w();
3289}
3290inline void IMUData_Quaternion::_internal_set_w(double value) {
3291 _impl_._has_bits_[0] |= 0x00000001u;
3292 _impl_.w_ = value;
3293}
3294inline void IMUData_Quaternion::set_w(double value) {
3295 _internal_set_w(value);
3296 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.w)
3297}
3298
3299// optional double x = 2;
3300inline bool IMUData_Quaternion::_internal_has_x() const {
3301 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3302 return value;
3303}
3304inline bool IMUData_Quaternion::has_x() const {
3305 return _internal_has_x();
3306}
3307inline void IMUData_Quaternion::clear_x() {
3308 _impl_.x_ = 0;
3309 _impl_._has_bits_[0] &= ~0x00000002u;
3310}
3311inline double IMUData_Quaternion::_internal_x() const {
3312 return _impl_.x_;
3313}
3314inline double IMUData_Quaternion::x() const {
3315 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.x)
3316 return _internal_x();
3317}
3318inline void IMUData_Quaternion::_internal_set_x(double value) {
3319 _impl_._has_bits_[0] |= 0x00000002u;
3320 _impl_.x_ = value;
3321}
3322inline void IMUData_Quaternion::set_x(double value) {
3323 _internal_set_x(value);
3324 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.x)
3325}
3326
3327// optional double y = 3;
3328inline bool IMUData_Quaternion::_internal_has_y() const {
3329 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3330 return value;
3331}
3332inline bool IMUData_Quaternion::has_y() const {
3333 return _internal_has_y();
3334}
3335inline void IMUData_Quaternion::clear_y() {
3336 _impl_.y_ = 0;
3337 _impl_._has_bits_[0] &= ~0x00000004u;
3338}
3339inline double IMUData_Quaternion::_internal_y() const {
3340 return _impl_.y_;
3341}
3342inline double IMUData_Quaternion::y() const {
3343 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.y)
3344 return _internal_y();
3345}
3346inline void IMUData_Quaternion::_internal_set_y(double value) {
3347 _impl_._has_bits_[0] |= 0x00000004u;
3348 _impl_.y_ = value;
3349}
3350inline void IMUData_Quaternion::set_y(double value) {
3351 _internal_set_y(value);
3352 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.y)
3353}
3354
3355// optional double z = 4;
3356inline bool IMUData_Quaternion::_internal_has_z() const {
3357 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3358 return value;
3359}
3360inline bool IMUData_Quaternion::has_z() const {
3361 return _internal_has_z();
3362}
3363inline void IMUData_Quaternion::clear_z() {
3364 _impl_.z_ = 0;
3365 _impl_._has_bits_[0] &= ~0x00000008u;
3366}
3367inline double IMUData_Quaternion::_internal_z() const {
3368 return _impl_.z_;
3369}
3370inline double IMUData_Quaternion::z() const {
3371 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.Quaternion.z)
3372 return _internal_z();
3373}
3374inline void IMUData_Quaternion::_internal_set_z(double value) {
3375 _impl_._has_bits_[0] |= 0x00000008u;
3376 _impl_.z_ = value;
3377}
3378inline void IMUData_Quaternion::set_z(double value) {
3379 _internal_set_z(value);
3380 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.Quaternion.z)
3381}
3382
3383// -------------------------------------------------------------------
3384
3385// IMUData_MagneticField
3386
3387// optional double x = 1 [(.dccl.field) = {
3388inline bool IMUData_MagneticField::_internal_has_x() const {
3389 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3390 return value;
3391}
3392inline bool IMUData_MagneticField::has_x() const {
3393 return _internal_has_x();
3394}
3395inline void IMUData_MagneticField::clear_x() {
3396 _impl_.x_ = 0;
3397 _impl_._has_bits_[0] &= ~0x00000001u;
3398}
3399inline double IMUData_MagneticField::_internal_x() const {
3400 return _impl_.x_;
3401}
3402inline double IMUData_MagneticField::x() const {
3403 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.MagneticField.x)
3404 return _internal_x();
3405}
3406inline void IMUData_MagneticField::_internal_set_x(double value) {
3407 _impl_._has_bits_[0] |= 0x00000001u;
3408 _impl_.x_ = value;
3409}
3410inline void IMUData_MagneticField::set_x(double value) {
3411 _internal_set_x(value);
3412 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.MagneticField.x)
3413}
3414
3415// optional double y = 2 [(.dccl.field) = {
3416inline bool IMUData_MagneticField::_internal_has_y() const {
3417 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3418 return value;
3419}
3420inline bool IMUData_MagneticField::has_y() const {
3421 return _internal_has_y();
3422}
3423inline void IMUData_MagneticField::clear_y() {
3424 _impl_.y_ = 0;
3425 _impl_._has_bits_[0] &= ~0x00000002u;
3426}
3427inline double IMUData_MagneticField::_internal_y() const {
3428 return _impl_.y_;
3429}
3430inline double IMUData_MagneticField::y() const {
3431 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.MagneticField.y)
3432 return _internal_y();
3433}
3434inline void IMUData_MagneticField::_internal_set_y(double value) {
3435 _impl_._has_bits_[0] |= 0x00000002u;
3436 _impl_.y_ = value;
3437}
3438inline void IMUData_MagneticField::set_y(double value) {
3439 _internal_set_y(value);
3440 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.MagneticField.y)
3441}
3442
3443// optional double z = 3 [(.dccl.field) = {
3444inline bool IMUData_MagneticField::_internal_has_z() const {
3445 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3446 return value;
3447}
3448inline bool IMUData_MagneticField::has_z() const {
3449 return _internal_has_z();
3450}
3451inline void IMUData_MagneticField::clear_z() {
3452 _impl_.z_ = 0;
3453 _impl_._has_bits_[0] &= ~0x00000004u;
3454}
3455inline double IMUData_MagneticField::_internal_z() const {
3456 return _impl_.z_;
3457}
3458inline double IMUData_MagneticField::z() const {
3459 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.MagneticField.z)
3460 return _internal_z();
3461}
3462inline void IMUData_MagneticField::_internal_set_z(double value) {
3463 _impl_._has_bits_[0] |= 0x00000004u;
3464 _impl_.z_ = value;
3465}
3466inline void IMUData_MagneticField::set_z(double value) {
3467 _internal_set_z(value);
3468 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.MagneticField.z)
3469}
3470
3471// -------------------------------------------------------------------
3472
3473// IMUData_AccelerationWorld
3474
3475// optional double north = 1 [(.dccl.field) = {
3476inline bool IMUData_AccelerationWorld::_internal_has_north() const {
3477 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
3478 return value;
3479}
3480inline bool IMUData_AccelerationWorld::has_north() const {
3481 return _internal_has_north();
3482}
3483inline void IMUData_AccelerationWorld::clear_north() {
3484 _impl_.north_ = 0;
3485 _impl_._has_bits_[0] &= ~0x00000001u;
3486}
3487inline double IMUData_AccelerationWorld::_internal_north() const {
3488 return _impl_.north_;
3489}
3490inline double IMUData_AccelerationWorld::north() const {
3491 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AccelerationWorld.north)
3492 return _internal_north();
3493}
3494inline void IMUData_AccelerationWorld::_internal_set_north(double value) {
3495 _impl_._has_bits_[0] |= 0x00000001u;
3496 _impl_.north_ = value;
3497}
3498inline void IMUData_AccelerationWorld::set_north(double value) {
3499 _internal_set_north(value);
3500 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AccelerationWorld.north)
3501}
3502
3503// optional double east = 2 [(.dccl.field) = {
3504inline bool IMUData_AccelerationWorld::_internal_has_east() const {
3505 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3506 return value;
3507}
3508inline bool IMUData_AccelerationWorld::has_east() const {
3509 return _internal_has_east();
3510}
3511inline void IMUData_AccelerationWorld::clear_east() {
3512 _impl_.east_ = 0;
3513 _impl_._has_bits_[0] &= ~0x00000002u;
3514}
3515inline double IMUData_AccelerationWorld::_internal_east() const {
3516 return _impl_.east_;
3517}
3518inline double IMUData_AccelerationWorld::east() const {
3519 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AccelerationWorld.east)
3520 return _internal_east();
3521}
3522inline void IMUData_AccelerationWorld::_internal_set_east(double value) {
3523 _impl_._has_bits_[0] |= 0x00000002u;
3524 _impl_.east_ = value;
3525}
3526inline void IMUData_AccelerationWorld::set_east(double value) {
3527 _internal_set_east(value);
3528 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AccelerationWorld.east)
3529}
3530
3531// optional double down = 3 [(.dccl.field) = {
3532inline bool IMUData_AccelerationWorld::_internal_has_down() const {
3533 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3534 return value;
3535}
3536inline bool IMUData_AccelerationWorld::has_down() const {
3537 return _internal_has_down();
3538}
3539inline void IMUData_AccelerationWorld::clear_down() {
3540 _impl_.down_ = 0;
3541 _impl_._has_bits_[0] &= ~0x00000004u;
3542}
3543inline double IMUData_AccelerationWorld::_internal_down() const {
3544 return _impl_.down_;
3545}
3546inline double IMUData_AccelerationWorld::down() const {
3547 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.AccelerationWorld.down)
3548 return _internal_down();
3549}
3550inline void IMUData_AccelerationWorld::_internal_set_down(double value) {
3551 _impl_._has_bits_[0] |= 0x00000004u;
3552 _impl_.down_ = value;
3553}
3554inline void IMUData_AccelerationWorld::set_down(double value) {
3555 _internal_set_down(value);
3556 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.AccelerationWorld.down)
3557}
3558
3559// -------------------------------------------------------------------
3560
3561// IMUData
3562
3563// optional .jaiabot.protobuf.IMUData.EulerAngles euler_angles = 1;
3564inline bool IMUData::_internal_has_euler_angles() const {
3565 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3566 PROTOBUF_ASSUME(!value || _impl_.euler_angles_ != nullptr);
3567 return value;
3568}
3569inline bool IMUData::has_euler_angles() const {
3570 return _internal_has_euler_angles();
3571}
3572inline void IMUData::clear_euler_angles() {
3573 if (_impl_.euler_angles_ != nullptr) _impl_.euler_angles_->Clear();
3574 _impl_._has_bits_[0] &= ~0x00000002u;
3575}
3576inline const ::jaiabot::protobuf::IMUData_EulerAngles& IMUData::_internal_euler_angles() const {
3577 const ::jaiabot::protobuf::IMUData_EulerAngles* p = _impl_.euler_angles_;
3578 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_EulerAngles&>(
3580}
3581inline const ::jaiabot::protobuf::IMUData_EulerAngles& IMUData::euler_angles() const {
3582 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.euler_angles)
3583 return _internal_euler_angles();
3584}
3585inline void IMUData::unsafe_arena_set_allocated_euler_angles(
3587 if (GetArenaForAllocation() == nullptr) {
3588 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.euler_angles_);
3589 }
3590 _impl_.euler_angles_ = euler_angles;
3591 if (euler_angles) {
3592 _impl_._has_bits_[0] |= 0x00000002u;
3593 } else {
3594 _impl_._has_bits_[0] &= ~0x00000002u;
3595 }
3596 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.euler_angles)
3597}
3598inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::release_euler_angles() {
3599 _impl_._has_bits_[0] &= ~0x00000002u;
3600 ::jaiabot::protobuf::IMUData_EulerAngles* temp = _impl_.euler_angles_;
3601 _impl_.euler_angles_ = nullptr;
3602#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3603 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3604 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3605 if (GetArenaForAllocation() == nullptr) { delete old; }
3606#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3607 if (GetArenaForAllocation() != nullptr) {
3608 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3609 }
3610#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3611 return temp;
3612}
3613inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::unsafe_arena_release_euler_angles() {
3614 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.euler_angles)
3615 _impl_._has_bits_[0] &= ~0x00000002u;
3616 ::jaiabot::protobuf::IMUData_EulerAngles* temp = _impl_.euler_angles_;
3617 _impl_.euler_angles_ = nullptr;
3618 return temp;
3619}
3620inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::_internal_mutable_euler_angles() {
3621 _impl_._has_bits_[0] |= 0x00000002u;
3622 if (_impl_.euler_angles_ == nullptr) {
3623 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles>(GetArenaForAllocation());
3624 _impl_.euler_angles_ = p;
3625 }
3626 return _impl_.euler_angles_;
3627}
3628inline ::jaiabot::protobuf::IMUData_EulerAngles* IMUData::mutable_euler_angles() {
3629 ::jaiabot::protobuf::IMUData_EulerAngles* _msg = _internal_mutable_euler_angles();
3630 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.euler_angles)
3631 return _msg;
3632}
3633inline void IMUData::set_allocated_euler_angles(::jaiabot::protobuf::IMUData_EulerAngles* euler_angles) {
3634 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3635 if (message_arena == nullptr) {
3636 delete _impl_.euler_angles_;
3637 }
3638 if (euler_angles) {
3639 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3640 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(euler_angles);
3641 if (message_arena != submessage_arena) {
3642 euler_angles = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3643 message_arena, euler_angles, submessage_arena);
3644 }
3645 _impl_._has_bits_[0] |= 0x00000002u;
3646 } else {
3647 _impl_._has_bits_[0] &= ~0x00000002u;
3648 }
3649 _impl_.euler_angles_ = euler_angles;
3650 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.euler_angles)
3651}
3652
3653// optional .jaiabot.protobuf.IMUData.Acceleration linear_acceleration = 2;
3654inline bool IMUData::_internal_has_linear_acceleration() const {
3655 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3656 PROTOBUF_ASSUME(!value || _impl_.linear_acceleration_ != nullptr);
3657 return value;
3658}
3659inline bool IMUData::has_linear_acceleration() const {
3660 return _internal_has_linear_acceleration();
3661}
3662inline void IMUData::clear_linear_acceleration() {
3663 if (_impl_.linear_acceleration_ != nullptr) _impl_.linear_acceleration_->Clear();
3664 _impl_._has_bits_[0] &= ~0x00000004u;
3665}
3666inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::_internal_linear_acceleration() const {
3667 const ::jaiabot::protobuf::IMUData_Acceleration* p = _impl_.linear_acceleration_;
3668 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Acceleration&>(
3670}
3671inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::linear_acceleration() const {
3672 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.linear_acceleration)
3673 return _internal_linear_acceleration();
3674}
3675inline void IMUData::unsafe_arena_set_allocated_linear_acceleration(
3676 ::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration) {
3677 if (GetArenaForAllocation() == nullptr) {
3678 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.linear_acceleration_);
3679 }
3680 _impl_.linear_acceleration_ = linear_acceleration;
3681 if (linear_acceleration) {
3682 _impl_._has_bits_[0] |= 0x00000004u;
3683 } else {
3684 _impl_._has_bits_[0] &= ~0x00000004u;
3685 }
3686 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration)
3687}
3688inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::release_linear_acceleration() {
3689 _impl_._has_bits_[0] &= ~0x00000004u;
3690 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.linear_acceleration_;
3691 _impl_.linear_acceleration_ = nullptr;
3692#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3693 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3694 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3695 if (GetArenaForAllocation() == nullptr) { delete old; }
3696#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3697 if (GetArenaForAllocation() != nullptr) {
3698 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3699 }
3700#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3701 return temp;
3702}
3703inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::unsafe_arena_release_linear_acceleration() {
3704 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.linear_acceleration)
3705 _impl_._has_bits_[0] &= ~0x00000004u;
3706 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.linear_acceleration_;
3707 _impl_.linear_acceleration_ = nullptr;
3708 return temp;
3709}
3710inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::_internal_mutable_linear_acceleration() {
3711 _impl_._has_bits_[0] |= 0x00000004u;
3712 if (_impl_.linear_acceleration_ == nullptr) {
3713 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(GetArenaForAllocation());
3714 _impl_.linear_acceleration_ = p;
3715 }
3716 return _impl_.linear_acceleration_;
3717}
3718inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::mutable_linear_acceleration() {
3719 ::jaiabot::protobuf::IMUData_Acceleration* _msg = _internal_mutable_linear_acceleration();
3720 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.linear_acceleration)
3721 return _msg;
3722}
3723inline void IMUData::set_allocated_linear_acceleration(::jaiabot::protobuf::IMUData_Acceleration* linear_acceleration) {
3724 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3725 if (message_arena == nullptr) {
3726 delete _impl_.linear_acceleration_;
3727 }
3728 if (linear_acceleration) {
3729 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3730 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(linear_acceleration);
3731 if (message_arena != submessage_arena) {
3732 linear_acceleration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3733 message_arena, linear_acceleration, submessage_arena);
3734 }
3735 _impl_._has_bits_[0] |= 0x00000004u;
3736 } else {
3737 _impl_._has_bits_[0] &= ~0x00000004u;
3738 }
3739 _impl_.linear_acceleration_ = linear_acceleration;
3740 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration)
3741}
3742
3743// optional .jaiabot.protobuf.IMUData.Acceleration gravity = 3;
3744inline bool IMUData::_internal_has_gravity() const {
3745 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
3746 PROTOBUF_ASSUME(!value || _impl_.gravity_ != nullptr);
3747 return value;
3748}
3749inline bool IMUData::has_gravity() const {
3750 return _internal_has_gravity();
3751}
3752inline void IMUData::clear_gravity() {
3753 if (_impl_.gravity_ != nullptr) _impl_.gravity_->Clear();
3754 _impl_._has_bits_[0] &= ~0x00000008u;
3755}
3756inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::_internal_gravity() const {
3757 const ::jaiabot::protobuf::IMUData_Acceleration* p = _impl_.gravity_;
3758 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Acceleration&>(
3760}
3761inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::gravity() const {
3762 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.gravity)
3763 return _internal_gravity();
3764}
3765inline void IMUData::unsafe_arena_set_allocated_gravity(
3767 if (GetArenaForAllocation() == nullptr) {
3768 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.gravity_);
3769 }
3770 _impl_.gravity_ = gravity;
3771 if (gravity) {
3772 _impl_._has_bits_[0] |= 0x00000008u;
3773 } else {
3774 _impl_._has_bits_[0] &= ~0x00000008u;
3775 }
3776 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.gravity)
3777}
3778inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::release_gravity() {
3779 _impl_._has_bits_[0] &= ~0x00000008u;
3780 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.gravity_;
3781 _impl_.gravity_ = nullptr;
3782#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3783 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3784 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3785 if (GetArenaForAllocation() == nullptr) { delete old; }
3786#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3787 if (GetArenaForAllocation() != nullptr) {
3788 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3789 }
3790#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3791 return temp;
3792}
3793inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::unsafe_arena_release_gravity() {
3794 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.gravity)
3795 _impl_._has_bits_[0] &= ~0x00000008u;
3796 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.gravity_;
3797 _impl_.gravity_ = nullptr;
3798 return temp;
3799}
3800inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::_internal_mutable_gravity() {
3801 _impl_._has_bits_[0] |= 0x00000008u;
3802 if (_impl_.gravity_ == nullptr) {
3803 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(GetArenaForAllocation());
3804 _impl_.gravity_ = p;
3805 }
3806 return _impl_.gravity_;
3807}
3808inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::mutable_gravity() {
3809 ::jaiabot::protobuf::IMUData_Acceleration* _msg = _internal_mutable_gravity();
3810 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.gravity)
3811 return _msg;
3812}
3813inline void IMUData::set_allocated_gravity(::jaiabot::protobuf::IMUData_Acceleration* gravity) {
3814 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3815 if (message_arena == nullptr) {
3816 delete _impl_.gravity_;
3817 }
3818 if (gravity) {
3819 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3820 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(gravity);
3821 if (message_arena != submessage_arena) {
3822 gravity = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3823 message_arena, gravity, submessage_arena);
3824 }
3825 _impl_._has_bits_[0] |= 0x00000008u;
3826 } else {
3827 _impl_._has_bits_[0] &= ~0x00000008u;
3828 }
3829 _impl_.gravity_ = gravity;
3830 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.gravity)
3831}
3832
3833// optional .jaiabot.protobuf.IMUData.Accuracies accuracies = 4;
3834inline bool IMUData::_internal_has_accuracies() const {
3835 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
3836 PROTOBUF_ASSUME(!value || _impl_.accuracies_ != nullptr);
3837 return value;
3838}
3839inline bool IMUData::has_accuracies() const {
3840 return _internal_has_accuracies();
3841}
3842inline void IMUData::clear_accuracies() {
3843 if (_impl_.accuracies_ != nullptr) _impl_.accuracies_->Clear();
3844 _impl_._has_bits_[0] &= ~0x00000010u;
3845}
3846inline const ::jaiabot::protobuf::IMUData_Accuracies& IMUData::_internal_accuracies() const {
3847 const ::jaiabot::protobuf::IMUData_Accuracies* p = _impl_.accuracies_;
3848 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Accuracies&>(
3850}
3851inline const ::jaiabot::protobuf::IMUData_Accuracies& IMUData::accuracies() const {
3852 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.accuracies)
3853 return _internal_accuracies();
3854}
3855inline void IMUData::unsafe_arena_set_allocated_accuracies(
3857 if (GetArenaForAllocation() == nullptr) {
3858 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.accuracies_);
3859 }
3860 _impl_.accuracies_ = accuracies;
3861 if (accuracies) {
3862 _impl_._has_bits_[0] |= 0x00000010u;
3863 } else {
3864 _impl_._has_bits_[0] &= ~0x00000010u;
3865 }
3866 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.accuracies)
3867}
3868inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::release_accuracies() {
3869 _impl_._has_bits_[0] &= ~0x00000010u;
3870 ::jaiabot::protobuf::IMUData_Accuracies* temp = _impl_.accuracies_;
3871 _impl_.accuracies_ = nullptr;
3872#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
3873 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
3874 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3875 if (GetArenaForAllocation() == nullptr) { delete old; }
3876#else // PROTOBUF_FORCE_COPY_IN_RELEASE
3877 if (GetArenaForAllocation() != nullptr) {
3878 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
3879 }
3880#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
3881 return temp;
3882}
3883inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::unsafe_arena_release_accuracies() {
3884 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.accuracies)
3885 _impl_._has_bits_[0] &= ~0x00000010u;
3886 ::jaiabot::protobuf::IMUData_Accuracies* temp = _impl_.accuracies_;
3887 _impl_.accuracies_ = nullptr;
3888 return temp;
3889}
3890inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::_internal_mutable_accuracies() {
3891 _impl_._has_bits_[0] |= 0x00000010u;
3892 if (_impl_.accuracies_ == nullptr) {
3893 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Accuracies>(GetArenaForAllocation());
3894 _impl_.accuracies_ = p;
3895 }
3896 return _impl_.accuracies_;
3897}
3898inline ::jaiabot::protobuf::IMUData_Accuracies* IMUData::mutable_accuracies() {
3899 ::jaiabot::protobuf::IMUData_Accuracies* _msg = _internal_mutable_accuracies();
3900 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.accuracies)
3901 return _msg;
3902}
3903inline void IMUData::set_allocated_accuracies(::jaiabot::protobuf::IMUData_Accuracies* accuracies) {
3904 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
3905 if (message_arena == nullptr) {
3906 delete _impl_.accuracies_;
3907 }
3908 if (accuracies) {
3909 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
3910 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(accuracies);
3911 if (message_arena != submessage_arena) {
3912 accuracies = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3913 message_arena, accuracies, submessage_arena);
3914 }
3915 _impl_._has_bits_[0] |= 0x00000010u;
3916 } else {
3917 _impl_._has_bits_[0] &= ~0x00000010u;
3918 }
3919 _impl_.accuracies_ = accuracies;
3920 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.accuracies)
3921}
3922
3923// optional .jaiabot.protobuf.IMUCalibrationState calibration_state = 5;
3924inline bool IMUData::_internal_has_calibration_state() const {
3925 bool value = (_impl_._has_bits_[0] & 0x00002000u) != 0;
3926 return value;
3927}
3928inline bool IMUData::has_calibration_state() const {
3929 return _internal_has_calibration_state();
3930}
3931inline void IMUData::clear_calibration_state() {
3932 _impl_.calibration_state_ = 1;
3933 _impl_._has_bits_[0] &= ~0x00002000u;
3934}
3935inline ::jaiabot::protobuf::IMUCalibrationState IMUData::_internal_calibration_state() const {
3936 return static_cast< ::jaiabot::protobuf::IMUCalibrationState >(_impl_.calibration_state_);
3937}
3938inline ::jaiabot::protobuf::IMUCalibrationState IMUData::calibration_state() const {
3939 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.calibration_state)
3940 return _internal_calibration_state();
3941}
3942inline void IMUData::_internal_set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
3944 _impl_._has_bits_[0] |= 0x00002000u;
3945 _impl_.calibration_state_ = value;
3946}
3947inline void IMUData::set_calibration_state(::jaiabot::protobuf::IMUCalibrationState value) {
3948 _internal_set_calibration_state(value);
3949 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.calibration_state)
3950}
3951
3952// optional bool bot_rolled_over = 6 [default = false];
3953inline bool IMUData::_internal_has_bot_rolled_over() const {
3954 bool value = (_impl_._has_bits_[0] & 0x00001000u) != 0;
3955 return value;
3956}
3957inline bool IMUData::has_bot_rolled_over() const {
3958 return _internal_has_bot_rolled_over();
3959}
3960inline void IMUData::clear_bot_rolled_over() {
3961 _impl_.bot_rolled_over_ = false;
3962 _impl_._has_bits_[0] &= ~0x00001000u;
3963}
3964inline bool IMUData::_internal_bot_rolled_over() const {
3965 return _impl_.bot_rolled_over_;
3966}
3967inline bool IMUData::bot_rolled_over() const {
3968 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.bot_rolled_over)
3969 return _internal_bot_rolled_over();
3970}
3971inline void IMUData::_internal_set_bot_rolled_over(bool value) {
3972 _impl_._has_bits_[0] |= 0x00001000u;
3973 _impl_.bot_rolled_over_ = value;
3974}
3975inline void IMUData::set_bot_rolled_over(bool value) {
3976 _internal_set_bot_rolled_over(value);
3977 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.bot_rolled_over)
3978}
3979
3980// optional double significant_wave_height = 7 [(.dccl.field) = {
3981inline bool IMUData::_internal_has_significant_wave_height() const {
3982 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
3983 return value;
3984}
3985inline bool IMUData::has_significant_wave_height() const {
3986 return _internal_has_significant_wave_height();
3987}
3988inline void IMUData::clear_significant_wave_height() {
3989 _impl_.significant_wave_height_ = 0;
3990 _impl_._has_bits_[0] &= ~0x00000400u;
3991}
3992inline double IMUData::_internal_significant_wave_height() const {
3993 return _impl_.significant_wave_height_;
3994}
3995inline double IMUData::significant_wave_height() const {
3996 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.significant_wave_height)
3997 return _internal_significant_wave_height();
3998}
3999inline void IMUData::_internal_set_significant_wave_height(double value) {
4000 _impl_._has_bits_[0] |= 0x00000400u;
4001 _impl_.significant_wave_height_ = value;
4002}
4003inline void IMUData::set_significant_wave_height(double value) {
4004 _internal_set_significant_wave_height(value);
4005 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.significant_wave_height)
4006}
4007
4008// optional double max_acceleration = 8 [(.dccl.field) = {
4009inline bool IMUData::_internal_has_max_acceleration() const {
4010 bool value = (_impl_._has_bits_[0] & 0x00000800u) != 0;
4011 return value;
4012}
4013inline bool IMUData::has_max_acceleration() const {
4014 return _internal_has_max_acceleration();
4015}
4016inline void IMUData::clear_max_acceleration() {
4017 _impl_.max_acceleration_ = 0;
4018 _impl_._has_bits_[0] &= ~0x00000800u;
4019}
4020inline double IMUData::_internal_max_acceleration() const {
4021 return _impl_.max_acceleration_;
4022}
4023inline double IMUData::max_acceleration() const {
4024 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.max_acceleration)
4025 return _internal_max_acceleration();
4026}
4027inline void IMUData::_internal_set_max_acceleration(double value) {
4028 _impl_._has_bits_[0] |= 0x00000800u;
4029 _impl_.max_acceleration_ = value;
4030}
4031inline void IMUData::set_max_acceleration(double value) {
4032 _internal_set_max_acceleration(value);
4033 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.max_acceleration)
4034}
4035
4036// optional .jaiabot.protobuf.IMUData.AngularVelocity angular_velocity = 9;
4037inline bool IMUData::_internal_has_angular_velocity() const {
4038 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
4039 PROTOBUF_ASSUME(!value || _impl_.angular_velocity_ != nullptr);
4040 return value;
4041}
4042inline bool IMUData::has_angular_velocity() const {
4043 return _internal_has_angular_velocity();
4044}
4045inline void IMUData::clear_angular_velocity() {
4046 if (_impl_.angular_velocity_ != nullptr) _impl_.angular_velocity_->Clear();
4047 _impl_._has_bits_[0] &= ~0x00000020u;
4048}
4049inline const ::jaiabot::protobuf::IMUData_AngularVelocity& IMUData::_internal_angular_velocity() const {
4050 const ::jaiabot::protobuf::IMUData_AngularVelocity* p = _impl_.angular_velocity_;
4051 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_AngularVelocity&>(
4053}
4054inline const ::jaiabot::protobuf::IMUData_AngularVelocity& IMUData::angular_velocity() const {
4055 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.angular_velocity)
4056 return _internal_angular_velocity();
4057}
4058inline void IMUData::unsafe_arena_set_allocated_angular_velocity(
4060 if (GetArenaForAllocation() == nullptr) {
4061 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.angular_velocity_);
4062 }
4063 _impl_.angular_velocity_ = angular_velocity;
4064 if (angular_velocity) {
4065 _impl_._has_bits_[0] |= 0x00000020u;
4066 } else {
4067 _impl_._has_bits_[0] &= ~0x00000020u;
4068 }
4069 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.angular_velocity)
4070}
4071inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::release_angular_velocity() {
4072 _impl_._has_bits_[0] &= ~0x00000020u;
4073 ::jaiabot::protobuf::IMUData_AngularVelocity* temp = _impl_.angular_velocity_;
4074 _impl_.angular_velocity_ = nullptr;
4075#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4076 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4077 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4078 if (GetArenaForAllocation() == nullptr) { delete old; }
4079#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4080 if (GetArenaForAllocation() != nullptr) {
4081 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4082 }
4083#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4084 return temp;
4085}
4086inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::unsafe_arena_release_angular_velocity() {
4087 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.angular_velocity)
4088 _impl_._has_bits_[0] &= ~0x00000020u;
4089 ::jaiabot::protobuf::IMUData_AngularVelocity* temp = _impl_.angular_velocity_;
4090 _impl_.angular_velocity_ = nullptr;
4091 return temp;
4092}
4093inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::_internal_mutable_angular_velocity() {
4094 _impl_._has_bits_[0] |= 0x00000020u;
4095 if (_impl_.angular_velocity_ == nullptr) {
4097 _impl_.angular_velocity_ = p;
4098 }
4099 return _impl_.angular_velocity_;
4100}
4101inline ::jaiabot::protobuf::IMUData_AngularVelocity* IMUData::mutable_angular_velocity() {
4102 ::jaiabot::protobuf::IMUData_AngularVelocity* _msg = _internal_mutable_angular_velocity();
4103 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.angular_velocity)
4104 return _msg;
4105}
4106inline void IMUData::set_allocated_angular_velocity(::jaiabot::protobuf::IMUData_AngularVelocity* angular_velocity) {
4107 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4108 if (message_arena == nullptr) {
4109 delete _impl_.angular_velocity_;
4110 }
4111 if (angular_velocity) {
4112 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4113 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(angular_velocity);
4114 if (message_arena != submessage_arena) {
4115 angular_velocity = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4116 message_arena, angular_velocity, submessage_arena);
4117 }
4118 _impl_._has_bits_[0] |= 0x00000020u;
4119 } else {
4120 _impl_._has_bits_[0] &= ~0x00000020u;
4121 }
4122 _impl_.angular_velocity_ = angular_velocity;
4123 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.angular_velocity)
4124}
4125
4126// optional .jaiabot.protobuf.IMUData.Quaternion quaternion = 10;
4127inline bool IMUData::_internal_has_quaternion() const {
4128 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
4129 PROTOBUF_ASSUME(!value || _impl_.quaternion_ != nullptr);
4130 return value;
4131}
4132inline bool IMUData::has_quaternion() const {
4133 return _internal_has_quaternion();
4134}
4135inline void IMUData::clear_quaternion() {
4136 if (_impl_.quaternion_ != nullptr) _impl_.quaternion_->Clear();
4137 _impl_._has_bits_[0] &= ~0x00000040u;
4138}
4139inline const ::jaiabot::protobuf::IMUData_Quaternion& IMUData::_internal_quaternion() const {
4140 const ::jaiabot::protobuf::IMUData_Quaternion* p = _impl_.quaternion_;
4141 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Quaternion&>(
4143}
4144inline const ::jaiabot::protobuf::IMUData_Quaternion& IMUData::quaternion() const {
4145 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.quaternion)
4146 return _internal_quaternion();
4147}
4148inline void IMUData::unsafe_arena_set_allocated_quaternion(
4150 if (GetArenaForAllocation() == nullptr) {
4151 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.quaternion_);
4152 }
4153 _impl_.quaternion_ = quaternion;
4154 if (quaternion) {
4155 _impl_._has_bits_[0] |= 0x00000040u;
4156 } else {
4157 _impl_._has_bits_[0] &= ~0x00000040u;
4158 }
4159 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.quaternion)
4160}
4161inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::release_quaternion() {
4162 _impl_._has_bits_[0] &= ~0x00000040u;
4163 ::jaiabot::protobuf::IMUData_Quaternion* temp = _impl_.quaternion_;
4164 _impl_.quaternion_ = nullptr;
4165#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4166 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4167 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4168 if (GetArenaForAllocation() == nullptr) { delete old; }
4169#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4170 if (GetArenaForAllocation() != nullptr) {
4171 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4172 }
4173#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4174 return temp;
4175}
4176inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::unsafe_arena_release_quaternion() {
4177 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.quaternion)
4178 _impl_._has_bits_[0] &= ~0x00000040u;
4179 ::jaiabot::protobuf::IMUData_Quaternion* temp = _impl_.quaternion_;
4180 _impl_.quaternion_ = nullptr;
4181 return temp;
4182}
4183inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::_internal_mutable_quaternion() {
4184 _impl_._has_bits_[0] |= 0x00000040u;
4185 if (_impl_.quaternion_ == nullptr) {
4186 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Quaternion>(GetArenaForAllocation());
4187 _impl_.quaternion_ = p;
4188 }
4189 return _impl_.quaternion_;
4190}
4191inline ::jaiabot::protobuf::IMUData_Quaternion* IMUData::mutable_quaternion() {
4192 ::jaiabot::protobuf::IMUData_Quaternion* _msg = _internal_mutable_quaternion();
4193 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.quaternion)
4194 return _msg;
4195}
4196inline void IMUData::set_allocated_quaternion(::jaiabot::protobuf::IMUData_Quaternion* quaternion) {
4197 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4198 if (message_arena == nullptr) {
4199 delete _impl_.quaternion_;
4200 }
4201 if (quaternion) {
4202 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4203 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(quaternion);
4204 if (message_arena != submessage_arena) {
4205 quaternion = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4206 message_arena, quaternion, submessage_arena);
4207 }
4208 _impl_._has_bits_[0] |= 0x00000040u;
4209 } else {
4210 _impl_._has_bits_[0] &= ~0x00000040u;
4211 }
4212 _impl_.quaternion_ = quaternion;
4213 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.quaternion)
4214}
4215
4216// optional string imu_type = 11;
4217inline bool IMUData::_internal_has_imu_type() const {
4218 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4219 return value;
4220}
4221inline bool IMUData::has_imu_type() const {
4222 return _internal_has_imu_type();
4223}
4224inline void IMUData::clear_imu_type() {
4225 _impl_.imu_type_.ClearToEmpty();
4226 _impl_._has_bits_[0] &= ~0x00000001u;
4227}
4228inline const std::string& IMUData::imu_type() const {
4229 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.imu_type)
4230 return _internal_imu_type();
4231}
4232template <typename ArgT0, typename... ArgT>
4233inline PROTOBUF_ALWAYS_INLINE
4234void IMUData::set_imu_type(ArgT0&& arg0, ArgT... args) {
4235 _impl_._has_bits_[0] |= 0x00000001u;
4236 _impl_.imu_type_.Set(static_cast<ArgT0 &&>(arg0), args..., GetArenaForAllocation());
4237 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUData.imu_type)
4238}
4239inline std::string* IMUData::mutable_imu_type() {
4240 std::string* _s = _internal_mutable_imu_type();
4241 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.imu_type)
4242 return _s;
4243}
4244inline const std::string& IMUData::_internal_imu_type() const {
4245 return _impl_.imu_type_.Get();
4246}
4247inline void IMUData::_internal_set_imu_type(const std::string& value) {
4248 _impl_._has_bits_[0] |= 0x00000001u;
4249 _impl_.imu_type_.Set(value, GetArenaForAllocation());
4250}
4251inline std::string* IMUData::_internal_mutable_imu_type() {
4252 _impl_._has_bits_[0] |= 0x00000001u;
4253 return _impl_.imu_type_.Mutable(GetArenaForAllocation());
4254}
4255inline std::string* IMUData::release_imu_type() {
4256 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.imu_type)
4257 if (!_internal_has_imu_type()) {
4258 return nullptr;
4259 }
4260 _impl_._has_bits_[0] &= ~0x00000001u;
4261 auto* p = _impl_.imu_type_.Release();
4262#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
4263 if (_impl_.imu_type_.IsDefault()) {
4264 _impl_.imu_type_.Set("", GetArenaForAllocation());
4265 }
4266#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
4267 return p;
4268}
4269inline void IMUData::set_allocated_imu_type(std::string* imu_type) {
4270 if (imu_type != nullptr) {
4271 _impl_._has_bits_[0] |= 0x00000001u;
4272 } else {
4273 _impl_._has_bits_[0] &= ~0x00000001u;
4274 }
4275 _impl_.imu_type_.SetAllocated(imu_type, GetArenaForAllocation());
4276#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
4277 if (_impl_.imu_type_.IsDefault()) {
4278 _impl_.imu_type_.Set("", GetArenaForAllocation());
4279 }
4280#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
4281 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.imu_type)
4282}
4283
4284// optional .jaiabot.protobuf.IMUData.Acceleration acceleration = 12;
4285inline bool IMUData::_internal_has_acceleration() const {
4286 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
4287 PROTOBUF_ASSUME(!value || _impl_.acceleration_ != nullptr);
4288 return value;
4289}
4290inline bool IMUData::has_acceleration() const {
4291 return _internal_has_acceleration();
4292}
4293inline void IMUData::clear_acceleration() {
4294 if (_impl_.acceleration_ != nullptr) _impl_.acceleration_->Clear();
4295 _impl_._has_bits_[0] &= ~0x00000080u;
4296}
4297inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::_internal_acceleration() const {
4298 const ::jaiabot::protobuf::IMUData_Acceleration* p = _impl_.acceleration_;
4299 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_Acceleration&>(
4301}
4302inline const ::jaiabot::protobuf::IMUData_Acceleration& IMUData::acceleration() const {
4303 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.acceleration)
4304 return _internal_acceleration();
4305}
4306inline void IMUData::unsafe_arena_set_allocated_acceleration(
4308 if (GetArenaForAllocation() == nullptr) {
4309 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.acceleration_);
4310 }
4311 _impl_.acceleration_ = acceleration;
4312 if (acceleration) {
4313 _impl_._has_bits_[0] |= 0x00000080u;
4314 } else {
4315 _impl_._has_bits_[0] &= ~0x00000080u;
4316 }
4317 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.acceleration)
4318}
4319inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::release_acceleration() {
4320 _impl_._has_bits_[0] &= ~0x00000080u;
4321 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.acceleration_;
4322 _impl_.acceleration_ = nullptr;
4323#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4324 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4325 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4326 if (GetArenaForAllocation() == nullptr) { delete old; }
4327#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4328 if (GetArenaForAllocation() != nullptr) {
4329 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4330 }
4331#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4332 return temp;
4333}
4334inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::unsafe_arena_release_acceleration() {
4335 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.acceleration)
4336 _impl_._has_bits_[0] &= ~0x00000080u;
4337 ::jaiabot::protobuf::IMUData_Acceleration* temp = _impl_.acceleration_;
4338 _impl_.acceleration_ = nullptr;
4339 return temp;
4340}
4341inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::_internal_mutable_acceleration() {
4342 _impl_._has_bits_[0] |= 0x00000080u;
4343 if (_impl_.acceleration_ == nullptr) {
4344 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration>(GetArenaForAllocation());
4345 _impl_.acceleration_ = p;
4346 }
4347 return _impl_.acceleration_;
4348}
4349inline ::jaiabot::protobuf::IMUData_Acceleration* IMUData::mutable_acceleration() {
4350 ::jaiabot::protobuf::IMUData_Acceleration* _msg = _internal_mutable_acceleration();
4351 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.acceleration)
4352 return _msg;
4353}
4354inline void IMUData::set_allocated_acceleration(::jaiabot::protobuf::IMUData_Acceleration* acceleration) {
4355 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4356 if (message_arena == nullptr) {
4357 delete _impl_.acceleration_;
4358 }
4359 if (acceleration) {
4360 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4361 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(acceleration);
4362 if (message_arena != submessage_arena) {
4363 acceleration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4364 message_arena, acceleration, submessage_arena);
4365 }
4366 _impl_._has_bits_[0] |= 0x00000080u;
4367 } else {
4368 _impl_._has_bits_[0] &= ~0x00000080u;
4369 }
4370 _impl_.acceleration_ = acceleration;
4371 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.acceleration)
4372}
4373
4374// optional .jaiabot.protobuf.IMUData.MagneticField magnetic_field = 13;
4375inline bool IMUData::_internal_has_magnetic_field() const {
4376 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
4377 PROTOBUF_ASSUME(!value || _impl_.magnetic_field_ != nullptr);
4378 return value;
4379}
4380inline bool IMUData::has_magnetic_field() const {
4381 return _internal_has_magnetic_field();
4382}
4383inline void IMUData::clear_magnetic_field() {
4384 if (_impl_.magnetic_field_ != nullptr) _impl_.magnetic_field_->Clear();
4385 _impl_._has_bits_[0] &= ~0x00000100u;
4386}
4387inline const ::jaiabot::protobuf::IMUData_MagneticField& IMUData::_internal_magnetic_field() const {
4388 const ::jaiabot::protobuf::IMUData_MagneticField* p = _impl_.magnetic_field_;
4389 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_MagneticField&>(
4391}
4392inline const ::jaiabot::protobuf::IMUData_MagneticField& IMUData::magnetic_field() const {
4393 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.magnetic_field)
4394 return _internal_magnetic_field();
4395}
4396inline void IMUData::unsafe_arena_set_allocated_magnetic_field(
4398 if (GetArenaForAllocation() == nullptr) {
4399 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.magnetic_field_);
4400 }
4401 _impl_.magnetic_field_ = magnetic_field;
4402 if (magnetic_field) {
4403 _impl_._has_bits_[0] |= 0x00000100u;
4404 } else {
4405 _impl_._has_bits_[0] &= ~0x00000100u;
4406 }
4407 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.magnetic_field)
4408}
4409inline ::jaiabot::protobuf::IMUData_MagneticField* IMUData::release_magnetic_field() {
4410 _impl_._has_bits_[0] &= ~0x00000100u;
4411 ::jaiabot::protobuf::IMUData_MagneticField* temp = _impl_.magnetic_field_;
4412 _impl_.magnetic_field_ = nullptr;
4413#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4414 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4415 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4416 if (GetArenaForAllocation() == nullptr) { delete old; }
4417#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4418 if (GetArenaForAllocation() != nullptr) {
4419 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4420 }
4421#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4422 return temp;
4423}
4424inline ::jaiabot::protobuf::IMUData_MagneticField* IMUData::unsafe_arena_release_magnetic_field() {
4425 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.magnetic_field)
4426 _impl_._has_bits_[0] &= ~0x00000100u;
4427 ::jaiabot::protobuf::IMUData_MagneticField* temp = _impl_.magnetic_field_;
4428 _impl_.magnetic_field_ = nullptr;
4429 return temp;
4430}
4431inline ::jaiabot::protobuf::IMUData_MagneticField* IMUData::_internal_mutable_magnetic_field() {
4432 _impl_._has_bits_[0] |= 0x00000100u;
4433 if (_impl_.magnetic_field_ == nullptr) {
4434 auto* p = CreateMaybeMessage<::jaiabot::protobuf::IMUData_MagneticField>(GetArenaForAllocation());
4435 _impl_.magnetic_field_ = p;
4436 }
4437 return _impl_.magnetic_field_;
4438}
4439inline ::jaiabot::protobuf::IMUData_MagneticField* IMUData::mutable_magnetic_field() {
4440 ::jaiabot::protobuf::IMUData_MagneticField* _msg = _internal_mutable_magnetic_field();
4441 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.magnetic_field)
4442 return _msg;
4443}
4444inline void IMUData::set_allocated_magnetic_field(::jaiabot::protobuf::IMUData_MagneticField* magnetic_field) {
4445 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4446 if (message_arena == nullptr) {
4447 delete _impl_.magnetic_field_;
4448 }
4449 if (magnetic_field) {
4450 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4451 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(magnetic_field);
4452 if (message_arena != submessage_arena) {
4453 magnetic_field = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4454 message_arena, magnetic_field, submessage_arena);
4455 }
4456 _impl_._has_bits_[0] |= 0x00000100u;
4457 } else {
4458 _impl_._has_bits_[0] &= ~0x00000100u;
4459 }
4460 _impl_.magnetic_field_ = magnetic_field;
4461 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.magnetic_field)
4462}
4463
4464// optional .jaiabot.protobuf.IMUData.AccelerationWorld linear_acceleration_world = 14;
4465inline bool IMUData::_internal_has_linear_acceleration_world() const {
4466 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
4467 PROTOBUF_ASSUME(!value || _impl_.linear_acceleration_world_ != nullptr);
4468 return value;
4469}
4470inline bool IMUData::has_linear_acceleration_world() const {
4471 return _internal_has_linear_acceleration_world();
4472}
4473inline void IMUData::clear_linear_acceleration_world() {
4474 if (_impl_.linear_acceleration_world_ != nullptr) _impl_.linear_acceleration_world_->Clear();
4475 _impl_._has_bits_[0] &= ~0x00000200u;
4476}
4477inline const ::jaiabot::protobuf::IMUData_AccelerationWorld& IMUData::_internal_linear_acceleration_world() const {
4478 const ::jaiabot::protobuf::IMUData_AccelerationWorld* p = _impl_.linear_acceleration_world_;
4479 return p != nullptr ? *p : reinterpret_cast<const ::jaiabot::protobuf::IMUData_AccelerationWorld&>(
4481}
4482inline const ::jaiabot::protobuf::IMUData_AccelerationWorld& IMUData::linear_acceleration_world() const {
4483 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUData.linear_acceleration_world)
4484 return _internal_linear_acceleration_world();
4485}
4486inline void IMUData::unsafe_arena_set_allocated_linear_acceleration_world(
4487 ::jaiabot::protobuf::IMUData_AccelerationWorld* linear_acceleration_world) {
4488 if (GetArenaForAllocation() == nullptr) {
4489 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.linear_acceleration_world_);
4490 }
4491 _impl_.linear_acceleration_world_ = linear_acceleration_world;
4492 if (linear_acceleration_world) {
4493 _impl_._has_bits_[0] |= 0x00000200u;
4494 } else {
4495 _impl_._has_bits_[0] &= ~0x00000200u;
4496 }
4497 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration_world)
4498}
4499inline ::jaiabot::protobuf::IMUData_AccelerationWorld* IMUData::release_linear_acceleration_world() {
4500 _impl_._has_bits_[0] &= ~0x00000200u;
4501 ::jaiabot::protobuf::IMUData_AccelerationWorld* temp = _impl_.linear_acceleration_world_;
4502 _impl_.linear_acceleration_world_ = nullptr;
4503#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
4504 auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
4505 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4506 if (GetArenaForAllocation() == nullptr) { delete old; }
4507#else // PROTOBUF_FORCE_COPY_IN_RELEASE
4508 if (GetArenaForAllocation() != nullptr) {
4509 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
4510 }
4511#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
4512 return temp;
4513}
4514inline ::jaiabot::protobuf::IMUData_AccelerationWorld* IMUData::unsafe_arena_release_linear_acceleration_world() {
4515 // @@protoc_insertion_point(field_release:jaiabot.protobuf.IMUData.linear_acceleration_world)
4516 _impl_._has_bits_[0] &= ~0x00000200u;
4517 ::jaiabot::protobuf::IMUData_AccelerationWorld* temp = _impl_.linear_acceleration_world_;
4518 _impl_.linear_acceleration_world_ = nullptr;
4519 return temp;
4520}
4521inline ::jaiabot::protobuf::IMUData_AccelerationWorld* IMUData::_internal_mutable_linear_acceleration_world() {
4522 _impl_._has_bits_[0] |= 0x00000200u;
4523 if (_impl_.linear_acceleration_world_ == nullptr) {
4525 _impl_.linear_acceleration_world_ = p;
4526 }
4527 return _impl_.linear_acceleration_world_;
4528}
4529inline ::jaiabot::protobuf::IMUData_AccelerationWorld* IMUData::mutable_linear_acceleration_world() {
4530 ::jaiabot::protobuf::IMUData_AccelerationWorld* _msg = _internal_mutable_linear_acceleration_world();
4531 // @@protoc_insertion_point(field_mutable:jaiabot.protobuf.IMUData.linear_acceleration_world)
4532 return _msg;
4533}
4534inline void IMUData::set_allocated_linear_acceleration_world(::jaiabot::protobuf::IMUData_AccelerationWorld* linear_acceleration_world) {
4535 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
4536 if (message_arena == nullptr) {
4537 delete _impl_.linear_acceleration_world_;
4538 }
4539 if (linear_acceleration_world) {
4540 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
4541 ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(linear_acceleration_world);
4542 if (message_arena != submessage_arena) {
4543 linear_acceleration_world = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
4544 message_arena, linear_acceleration_world, submessage_arena);
4545 }
4546 _impl_._has_bits_[0] |= 0x00000200u;
4547 } else {
4548 _impl_._has_bits_[0] &= ~0x00000200u;
4549 }
4550 _impl_.linear_acceleration_world_ = linear_acceleration_world;
4551 // @@protoc_insertion_point(field_set_allocated:jaiabot.protobuf.IMUData.linear_acceleration_world)
4552}
4553
4554// -------------------------------------------------------------------
4555
4556// IMUIssue
4557
4558// required .jaiabot.protobuf.IMUIssue.SolutionType solution = 1;
4559inline bool IMUIssue::_internal_has_solution() const {
4560 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
4561 return value;
4562}
4563inline bool IMUIssue::has_solution() const {
4564 return _internal_has_solution();
4565}
4566inline void IMUIssue::clear_solution() {
4567 _impl_.solution_ = 0;
4568 _impl_._has_bits_[0] &= ~0x00000001u;
4569}
4570inline ::jaiabot::protobuf::IMUIssue_SolutionType IMUIssue::_internal_solution() const {
4571 return static_cast< ::jaiabot::protobuf::IMUIssue_SolutionType >(_impl_.solution_);
4572}
4573inline ::jaiabot::protobuf::IMUIssue_SolutionType IMUIssue::solution() const {
4574 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.solution)
4575 return _internal_solution();
4576}
4577inline void IMUIssue::_internal_set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
4579 _impl_._has_bits_[0] |= 0x00000001u;
4580 _impl_.solution_ = value;
4581}
4582inline void IMUIssue::set_solution(::jaiabot::protobuf::IMUIssue_SolutionType value) {
4583 _internal_set_solution(value);
4584 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.solution)
4585}
4586
4587// optional .jaiabot.protobuf.IMUIssue.IssueType type = 2;
4588inline bool IMUIssue::_internal_has_type() const {
4589 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
4590 return value;
4591}
4592inline bool IMUIssue::has_type() const {
4593 return _internal_has_type();
4594}
4595inline void IMUIssue::clear_type() {
4596 _impl_.type_ = 0;
4597 _impl_._has_bits_[0] &= ~0x00000002u;
4598}
4599inline ::jaiabot::protobuf::IMUIssue_IssueType IMUIssue::_internal_type() const {
4600 return static_cast< ::jaiabot::protobuf::IMUIssue_IssueType >(_impl_.type_);
4601}
4602inline ::jaiabot::protobuf::IMUIssue_IssueType IMUIssue::type() const {
4603 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.type)
4604 return _internal_type();
4605}
4606inline void IMUIssue::_internal_set_type(::jaiabot::protobuf::IMUIssue_IssueType value) {
4608 _impl_._has_bits_[0] |= 0x00000002u;
4609 _impl_.type_ = value;
4610}
4611inline void IMUIssue::set_type(::jaiabot::protobuf::IMUIssue_IssueType value) {
4612 _internal_set_type(value);
4613 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.type)
4614}
4615
4616// optional .jaiabot.protobuf.MissionState mission_state = 3;
4617inline bool IMUIssue::_internal_has_mission_state() const {
4618 bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0;
4619 return value;
4620}
4621inline bool IMUIssue::has_mission_state() const {
4622 return _internal_has_mission_state();
4623}
4624inline void IMUIssue::clear_mission_state() {
4625 _impl_.mission_state_ = 0;
4626 _impl_._has_bits_[0] &= ~0x00000200u;
4627}
4628inline ::jaiabot::protobuf::MissionState IMUIssue::_internal_mission_state() const {
4629 return static_cast< ::jaiabot::protobuf::MissionState >(_impl_.mission_state_);
4630}
4631inline ::jaiabot::protobuf::MissionState IMUIssue::mission_state() const {
4632 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.mission_state)
4633 return _internal_mission_state();
4634}
4635inline void IMUIssue::_internal_set_mission_state(::jaiabot::protobuf::MissionState value) {
4637 _impl_._has_bits_[0] |= 0x00000200u;
4638 _impl_.mission_state_ = value;
4639}
4640inline void IMUIssue::set_mission_state(::jaiabot::protobuf::MissionState value) {
4641 _internal_set_mission_state(value);
4642 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.mission_state)
4643}
4644
4645// optional double imu_heading_course_max_diff = 30 [default = 45];
4646inline bool IMUIssue::_internal_has_imu_heading_course_max_diff() const {
4647 bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0;
4648 return value;
4649}
4650inline bool IMUIssue::has_imu_heading_course_max_diff() const {
4651 return _internal_has_imu_heading_course_max_diff();
4652}
4653inline void IMUIssue::clear_imu_heading_course_max_diff() {
4654 _impl_.imu_heading_course_max_diff_ = 45;
4655 _impl_._has_bits_[0] &= ~0x00000400u;
4656}
4657inline double IMUIssue::_internal_imu_heading_course_max_diff() const {
4658 return _impl_.imu_heading_course_max_diff_;
4659}
4660inline double IMUIssue::imu_heading_course_max_diff() const {
4661 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.imu_heading_course_max_diff)
4662 return _internal_imu_heading_course_max_diff();
4663}
4664inline void IMUIssue::_internal_set_imu_heading_course_max_diff(double value) {
4665 _impl_._has_bits_[0] |= 0x00000400u;
4666 _impl_.imu_heading_course_max_diff_ = value;
4667}
4668inline void IMUIssue::set_imu_heading_course_max_diff(double value) {
4669 _internal_set_imu_heading_course_max_diff(value);
4670 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.imu_heading_course_max_diff)
4671}
4672
4673// optional double heading = 31 [(.dccl.field) = {
4674inline bool IMUIssue::_internal_has_heading() const {
4675 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
4676 return value;
4677}
4678inline bool IMUIssue::has_heading() const {
4679 return _internal_has_heading();
4680}
4681inline void IMUIssue::clear_heading() {
4682 _impl_.heading_ = 0;
4683 _impl_._has_bits_[0] &= ~0x00000004u;
4684}
4685inline double IMUIssue::_internal_heading() const {
4686 return _impl_.heading_;
4687}
4688inline double IMUIssue::heading() const {
4689 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.heading)
4690 return _internal_heading();
4691}
4692inline void IMUIssue::_internal_set_heading(double value) {
4693 _impl_._has_bits_[0] |= 0x00000004u;
4694 _impl_.heading_ = value;
4695}
4696inline void IMUIssue::set_heading(double value) {
4697 _internal_set_heading(value);
4698 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.heading)
4699}
4700
4701// optional double desired_heading = 32 [(.dccl.field) = {
4702inline bool IMUIssue::_internal_has_desired_heading() const {
4703 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
4704 return value;
4705}
4706inline bool IMUIssue::has_desired_heading() const {
4707 return _internal_has_desired_heading();
4708}
4709inline void IMUIssue::clear_desired_heading() {
4710 _impl_.desired_heading_ = 0;
4711 _impl_._has_bits_[0] &= ~0x00000008u;
4712}
4713inline double IMUIssue::_internal_desired_heading() const {
4714 return _impl_.desired_heading_;
4715}
4716inline double IMUIssue::desired_heading() const {
4717 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.desired_heading)
4718 return _internal_desired_heading();
4719}
4720inline void IMUIssue::_internal_set_desired_heading(double value) {
4721 _impl_._has_bits_[0] |= 0x00000008u;
4722 _impl_.desired_heading_ = value;
4723}
4724inline void IMUIssue::set_desired_heading(double value) {
4725 _internal_set_desired_heading(value);
4726 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.desired_heading)
4727}
4728
4729// optional double course_over_ground = 33 [(.dccl.field) = {
4730inline bool IMUIssue::_internal_has_course_over_ground() const {
4731 bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0;
4732 return value;
4733}
4734inline bool IMUIssue::has_course_over_ground() const {
4735 return _internal_has_course_over_ground();
4736}
4737inline void IMUIssue::clear_course_over_ground() {
4738 _impl_.course_over_ground_ = 0;
4739 _impl_._has_bits_[0] &= ~0x00000010u;
4740}
4741inline double IMUIssue::_internal_course_over_ground() const {
4742 return _impl_.course_over_ground_;
4743}
4744inline double IMUIssue::course_over_ground() const {
4745 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.course_over_ground)
4746 return _internal_course_over_ground();
4747}
4748inline void IMUIssue::_internal_set_course_over_ground(double value) {
4749 _impl_._has_bits_[0] |= 0x00000010u;
4750 _impl_.course_over_ground_ = value;
4751}
4752inline void IMUIssue::set_course_over_ground(double value) {
4753 _internal_set_course_over_ground(value);
4754 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.course_over_ground)
4755}
4756
4757// optional double heading_course_difference = 34 [(.dccl.field) = {
4758inline bool IMUIssue::_internal_has_heading_course_difference() const {
4759 bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0;
4760 return value;
4761}
4762inline bool IMUIssue::has_heading_course_difference() const {
4763 return _internal_has_heading_course_difference();
4764}
4765inline void IMUIssue::clear_heading_course_difference() {
4766 _impl_.heading_course_difference_ = 0;
4767 _impl_._has_bits_[0] &= ~0x00000020u;
4768}
4769inline double IMUIssue::_internal_heading_course_difference() const {
4770 return _impl_.heading_course_difference_;
4771}
4772inline double IMUIssue::heading_course_difference() const {
4773 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.heading_course_difference)
4774 return _internal_heading_course_difference();
4775}
4776inline void IMUIssue::_internal_set_heading_course_difference(double value) {
4777 _impl_._has_bits_[0] |= 0x00000020u;
4778 _impl_.heading_course_difference_ = value;
4779}
4780inline void IMUIssue::set_heading_course_difference(double value) {
4781 _internal_set_heading_course_difference(value);
4782 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.heading_course_difference)
4783}
4784
4785// optional double pitch = 35 [(.dccl.field) = {
4786inline bool IMUIssue::_internal_has_pitch() const {
4787 bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0;
4788 return value;
4789}
4790inline bool IMUIssue::has_pitch() const {
4791 return _internal_has_pitch();
4792}
4793inline void IMUIssue::clear_pitch() {
4794 _impl_.pitch_ = 0;
4795 _impl_._has_bits_[0] &= ~0x00000040u;
4796}
4797inline double IMUIssue::_internal_pitch() const {
4798 return _impl_.pitch_;
4799}
4800inline double IMUIssue::pitch() const {
4801 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.pitch)
4802 return _internal_pitch();
4803}
4804inline void IMUIssue::_internal_set_pitch(double value) {
4805 _impl_._has_bits_[0] |= 0x00000040u;
4806 _impl_.pitch_ = value;
4807}
4808inline void IMUIssue::set_pitch(double value) {
4809 _internal_set_pitch(value);
4810 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.pitch)
4811}
4812
4813// optional double speed_over_ground = 36 [(.dccl.field) = {
4814inline bool IMUIssue::_internal_has_speed_over_ground() const {
4815 bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0;
4816 return value;
4817}
4818inline bool IMUIssue::has_speed_over_ground() const {
4819 return _internal_has_speed_over_ground();
4820}
4821inline void IMUIssue::clear_speed_over_ground() {
4822 _impl_.speed_over_ground_ = 0;
4823 _impl_._has_bits_[0] &= ~0x00000080u;
4824}
4825inline double IMUIssue::_internal_speed_over_ground() const {
4826 return _impl_.speed_over_ground_;
4827}
4828inline double IMUIssue::speed_over_ground() const {
4829 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.speed_over_ground)
4830 return _internal_speed_over_ground();
4831}
4832inline void IMUIssue::_internal_set_speed_over_ground(double value) {
4833 _impl_._has_bits_[0] |= 0x00000080u;
4834 _impl_.speed_over_ground_ = value;
4835}
4836inline void IMUIssue::set_speed_over_ground(double value) {
4837 _internal_set_speed_over_ground(value);
4838 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.speed_over_ground)
4839}
4840
4841// optional double desired_speed = 37 [(.dccl.field) = {
4842inline bool IMUIssue::_internal_has_desired_speed() const {
4843 bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0;
4844 return value;
4845}
4846inline bool IMUIssue::has_desired_speed() const {
4847 return _internal_has_desired_speed();
4848}
4849inline void IMUIssue::clear_desired_speed() {
4850 _impl_.desired_speed_ = 0;
4851 _impl_._has_bits_[0] &= ~0x00000100u;
4852}
4853inline double IMUIssue::_internal_desired_speed() const {
4854 return _impl_.desired_speed_;
4855}
4856inline double IMUIssue::desired_speed() const {
4857 // @@protoc_insertion_point(field_get:jaiabot.protobuf.IMUIssue.desired_speed)
4858 return _internal_desired_speed();
4859}
4860inline void IMUIssue::_internal_set_desired_speed(double value) {
4861 _impl_._has_bits_[0] |= 0x00000100u;
4862 _impl_.desired_speed_ = value;
4863}
4864inline void IMUIssue::set_desired_speed(double value) {
4865 _internal_set_desired_speed(value);
4866 // @@protoc_insertion_point(field_set:jaiabot.protobuf.IMUIssue.desired_speed)
4867}
4868
4869#ifdef __GNUC__
4870 #pragma GCC diagnostic pop
4871#endif // __GNUC__
4872// -------------------------------------------------------------------
4873
4874// -------------------------------------------------------------------
4875
4876// -------------------------------------------------------------------
4877
4878// -------------------------------------------------------------------
4879
4880// -------------------------------------------------------------------
4881
4882// -------------------------------------------------------------------
4883
4884// -------------------------------------------------------------------
4885
4886// -------------------------------------------------------------------
4887
4888// -------------------------------------------------------------------
4889
4890
4891// @@protoc_insertion_point(namespace_scope)
4892
4893} // namespace protobuf
4894} // namespace jaiabot
4895
4896PROTOBUF_NAMESPACE_OPEN
4897
4898template <> struct is_proto_enum< ::jaiabot::protobuf::IMUCommand_IMUCommandType> : ::std::true_type {};
4899template <>
4901 return ::jaiabot::protobuf::IMUCommand_IMUCommandType_descriptor();
4902}
4903template <> struct is_proto_enum< ::jaiabot::protobuf::IMUIssue_SolutionType> : ::std::true_type {};
4904template <>
4906 return ::jaiabot::protobuf::IMUIssue_SolutionType_descriptor();
4907}
4908template <> struct is_proto_enum< ::jaiabot::protobuf::IMUIssue_IssueType> : ::std::true_type {};
4909template <>
4911 return ::jaiabot::protobuf::IMUIssue_IssueType_descriptor();
4912}
4913template <> struct is_proto_enum< ::jaiabot::protobuf::IMUCalibrationState> : ::std::true_type {};
4914template <>
4916 return ::jaiabot::protobuf::IMUCalibrationState_descriptor();
4917}
4918
4919PROTOBUF_NAMESPACE_CLOSE
4920
4921// @@protoc_insertion_point(global_scope)
4922
4923#include <google/protobuf/port_undef.inc>
4924#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fimu_2eproto
void CopyFrom(const IMUCommand &from)
static const ClassData _class_data_
Definition imu.pb.h:329
static const std::string & IMUCommandType_Name(T enum_t_value)
Definition imu.pb.h:363
IMUCommand(IMUCommand &&from) noexcept
Definition imu.pb.h:219
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:242
boost::units::quantity< sample_rate_unit, double > sample_rate_with_units() const
Definition imu.pb.h:418
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:255
static constexpr IMUCommandType STOP_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:341
static constexpr IMUCommandType IMUCommandType_MIN
Definition imu.pb.h:352
size_t ByteSizeLong() const final
void set_sample_rate(double value)
Definition imu.pb.h:2910
void MergeFrom(const IMUCommand &from)
Definition imu.pb.h:298
static constexpr int IMUCommandType_ARRAYSIZE
Definition imu.pb.h:356
static bool IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommandType *value)
Definition imu.pb.h:369
boost::units::frequency_dimension sample_rate_dimension
Definition imu.pb.h:406
boost::units::unit< sample_rate_dimension, boost::units::si::system > sample_rate_unit
Definition imu.pb.h:408
void UnsafeArenaSwap(IMUCommand *other)
Definition imu.pb.h:284
static constexpr IMUCommandType STOP_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:345
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:249
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUCommand & default_instance()
Definition imu.pb.h:258
static constexpr IMUCommandType IMUCommandType_MAX
Definition imu.pb.h:354
friend void swap(IMUCommand &a, IMUCommand &b)
Definition imu.pb.h:268
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:245
static constexpr IMUCommandType START_CALIBRATION
Definition imu.pb.h:347
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_sample_rate_with_units(Quantity value_w_units)
Definition imu.pb.h:411
IMUCommand(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
void set_type(::jaiabot::protobuf::IMUCommand_IMUCommandType value)
Definition imu.pb.h:2882
IMUCommand * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:292
static bool IMUCommandType_IsValid(int value)
Definition imu.pb.h:349
static constexpr IMUCommandType CONFIGURE
Definition imu.pb.h:337
double sample_rate() const
Definition imu.pb.h:2902
static constexpr int kIndexInFileMessages
Definition imu.pb.h:265
IMUCommand(const IMUCommand &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const IMUCommand * internal_default_instance()
Definition imu.pb.h:261
int GetCachedSize() const final
Definition imu.pb.h:311
void Swap(IMUCommand *other)
Definition imu.pb.h:271
::jaiabot::protobuf::IMUCommand_IMUCommandType type() const
Definition imu.pb.h:2873
static constexpr IMUCommandType START_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:339
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:343
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUCommandType_descriptor()
Definition imu.pb.h:359
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:252
IMUCommand & operator=(const IMUCommand &from)
Definition imu.pb.h:224
IMUCommand & operator=(IMUCommand &&from) noexcept
Definition imu.pb.h:228
Quantity sample_rate_with_units() const
Definition imu.pb.h:415
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:705
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:708
void MergeFrom(const IMUData_Acceleration &from)
Definition imu.pb.h:761
IMUData_Acceleration & operator=(const IMUData_Acceleration &from)
Definition imu.pb.h:687
IMUData_Acceleration(const IMUData_Acceleration &from)
static const IMUData_Acceleration * internal_default_instance()
Definition imu.pb.h:724
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
IMUData_Acceleration * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:755
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:718
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:721
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:712
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:715
void Swap(IMUData_Acceleration *other)
Definition imu.pb.h:734
friend void swap(IMUData_Acceleration &a, IMUData_Acceleration &b)
Definition imu.pb.h:731
static const ClassData _class_data_
Definition imu.pb.h:792
void UnsafeArenaSwap(IMUData_Acceleration *other)
Definition imu.pb.h:747
IMUData_Acceleration(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
IMUData_Acceleration & operator=(IMUData_Acceleration &&from) noexcept
Definition imu.pb.h:691
IMUData_Acceleration(IMUData_Acceleration &&from) noexcept
Definition imu.pb.h:682
void UnsafeArenaSwap(IMUData_AccelerationWorld *other)
Definition imu.pb.h:1757
IMUData_AccelerationWorld & operator=(const IMUData_AccelerationWorld &from)
Definition imu.pb.h:1697
static const IMUData_AccelerationWorld & default_instance()
Definition imu.pb.h:1731
boost::units::acceleration_dimension down_dimension
Definition imu.pb.h:1885
void MergeFrom(const IMUData_AccelerationWorld &from)
Definition imu.pb.h:1771
void set_down_with_units(Quantity value_w_units)
Definition imu.pb.h:1890
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1722
boost::units::quantity< down_unit, double > down_with_units() const
Definition imu.pb.h:1897
void set_north_with_units(Quantity value_w_units)
Definition imu.pb.h:1860
IMUData_AccelerationWorld(const IMUData_AccelerationWorld &from)
boost::units::acceleration_dimension north_dimension
Definition imu.pb.h:1855
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_east_with_units(Quantity value_w_units)
Definition imu.pb.h:1875
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1725
boost::units::unit< down_dimension, boost::units::si::system > down_unit
Definition imu.pb.h:1887
static const IMUData_AccelerationWorld * internal_default_instance()
Definition imu.pb.h:1734
IMUData_AccelerationWorld * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1765
void Swap(IMUData_AccelerationWorld *other)
Definition imu.pb.h:1744
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1715
boost::units::unit< north_dimension, boost::units::si::system > north_unit
Definition imu.pb.h:1857
friend void swap(IMUData_AccelerationWorld &a, IMUData_AccelerationWorld &b)
Definition imu.pb.h:1741
void CopyFrom(const IMUData_AccelerationWorld &from)
IMUData_AccelerationWorld(IMUData_AccelerationWorld &&from) noexcept
Definition imu.pb.h:1692
boost::units::unit< east_dimension, boost::units::si::system > east_unit
Definition imu.pb.h:1872
PROTOBUF_CONSTEXPR IMUData_AccelerationWorld(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
boost::units::quantity< north_unit, double > north_with_units() const
Definition imu.pb.h:1867
IMUData_AccelerationWorld & operator=(IMUData_AccelerationWorld &&from) noexcept
Definition imu.pb.h:1701
IMUData_AccelerationWorld(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
boost::units::acceleration_dimension east_dimension
Definition imu.pb.h:1870
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1728
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1718
boost::units::quantity< east_unit, double > east_with_units() const
Definition imu.pb.h:1882
void MergeFrom(const IMUData_Accuracies &from)
Definition imu.pb.h:951
IMUData_Accuracies & operator=(const IMUData_Accuracies &from)
Definition imu.pb.h:877
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:898
IMUData_Accuracies * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:945
void Swap(IMUData_Accuracies *other)
Definition imu.pb.h:924
void CopyFrom(const IMUData_Accuracies &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:902
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:895
void UnsafeArenaSwap(IMUData_Accuracies *other)
Definition imu.pb.h:937
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:905
IMUData_Accuracies & operator=(IMUData_Accuracies &&from) noexcept
Definition imu.pb.h:881
static const IMUData_Accuracies * internal_default_instance()
Definition imu.pb.h:914
PROTOBUF_CONSTEXPR IMUData_Accuracies(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
static const ClassData _class_data_
Definition imu.pb.h:982
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:908
static const IMUData_Accuracies & default_instance()
Definition imu.pb.h:911
IMUData_Accuracies(const IMUData_Accuracies &from)
IMUData_Accuracies(IMUData_Accuracies &&from) noexcept
Definition imu.pb.h:872
friend void swap(IMUData_Accuracies &a, IMUData_Accuracies &b)
Definition imu.pb.h:921
void set_x_with_units(Quantity value_w_units)
Definition imu.pb.h:1230
IMUData_AngularVelocity & operator=(const IMUData_AngularVelocity &from)
Definition imu.pb.h:1067
friend void swap(IMUData_AngularVelocity &a, IMUData_AngularVelocity &b)
Definition imu.pb.h:1111
boost::units::angular_velocity_dimension z_dimension
Definition imu.pb.h:1255
boost::units::unit< x_dimension, boost::units::si::system > x_unit
Definition imu.pb.h:1227
void CopyFrom(const IMUData_AngularVelocity &from)
boost::units::quantity< y_unit, double > y_with_units() const
Definition imu.pb.h:1252
void Swap(IMUData_AngularVelocity *other)
Definition imu.pb.h:1114
boost::units::unit< y_dimension, boost::units::si::system > y_unit
Definition imu.pb.h:1242
boost::units::angular_velocity_dimension x_dimension
Definition imu.pb.h:1225
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1098
IMUData_AngularVelocity & operator=(IMUData_AngularVelocity &&from) noexcept
Definition imu.pb.h:1071
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1092
boost::units::unit< z_dimension, boost::units::si::system > z_unit
Definition imu.pb.h:1257
IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1095
void UnsafeArenaSwap(IMUData_AngularVelocity *other)
Definition imu.pb.h:1127
IMUData_AngularVelocity(const IMUData_AngularVelocity &from)
void set_y_with_units(Quantity value_w_units)
Definition imu.pb.h:1245
static const ClassData _class_data_
Definition imu.pb.h:1172
boost::units::angular_velocity_dimension y_dimension
Definition imu.pb.h:1240
void MergeFrom(const IMUData_AngularVelocity &from)
Definition imu.pb.h:1141
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1088
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1085
IMUData_AngularVelocity(IMUData_AngularVelocity &&from) noexcept
Definition imu.pb.h:1062
boost::units::quantity< z_unit, double > z_with_units() const
Definition imu.pb.h:1267
static const IMUData_AngularVelocity * internal_default_instance()
Definition imu.pb.h:1104
void set_z_with_units(Quantity value_w_units)
Definition imu.pb.h:1260
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
IMUData_AngularVelocity * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1135
PROTOBUF_CONSTEXPR IMUData_AngularVelocity(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
boost::units::quantity< x_unit, double > x_with_units() const
Definition imu.pb.h:1237
static const IMUData_AngularVelocity & default_instance()
Definition imu.pb.h:1101
void set_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:615
IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
IMUData_EulerAngles(IMUData_EulerAngles &&from) noexcept
Definition imu.pb.h:447
void set_roll_with_units(Quantity value_w_units)
Definition imu.pb.h:645
static const ClassData _class_data_
Definition imu.pb.h:557
static const IMUData_EulerAngles & default_instance()
Definition imu.pb.h:486
boost::units::plane_angle_dimension roll_dimension
Definition imu.pb.h:640
void MergeFrom(const IMUData_EulerAngles &from)
Definition imu.pb.h:526
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:473
IMUData_EulerAngles * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:520
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:480
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
Definition imu.pb.h:612
IMUData_EulerAngles(const IMUData_EulerAngles &from)
void UnsafeArenaSwap(IMUData_EulerAngles *other)
Definition imu.pb.h:512
void Swap(IMUData_EulerAngles *other)
Definition imu.pb.h:499
boost::units::quantity< roll_unit, double > roll_with_units() const
Definition imu.pb.h:652
static const IMUData_EulerAngles * internal_default_instance()
Definition imu.pb.h:489
boost::units::plane_angle_dimension heading_dimension
Definition imu.pb.h:610
IMUData_EulerAngles & operator=(IMUData_EulerAngles &&from) noexcept
Definition imu.pb.h:456
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:470
void CopyFrom(const IMUData_EulerAngles &from)
boost::units::plane_angle_dimension pitch_dimension
Definition imu.pb.h:625
boost::units::unit< pitch_dimension, boost::units::degree::system > pitch_unit
Definition imu.pb.h:627
void set_pitch_with_units(Quantity value_w_units)
Definition imu.pb.h:630
PROTOBUF_CONSTEXPR IMUData_EulerAngles(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
IMUData_EulerAngles & operator=(const IMUData_EulerAngles &from)
Definition imu.pb.h:452
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
boost::units::unit< roll_dimension, boost::units::degree::system > roll_unit
Definition imu.pb.h:642
friend void swap(IMUData_EulerAngles &a, IMUData_EulerAngles &b)
Definition imu.pb.h:496
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:477
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:483
boost::units::quantity< heading_unit, double > heading_with_units() const
Definition imu.pb.h:622
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::quantity< pitch_unit, double > pitch_with_units() const
Definition imu.pb.h:637
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1535
static const ClassData _class_data_
Definition imu.pb.h:1612
IMUData_MagneticField & operator=(const IMUData_MagneticField &from)
Definition imu.pb.h:1507
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void Swap(IMUData_MagneticField *other)
Definition imu.pb.h:1554
IMUData_MagneticField(IMUData_MagneticField &&from) noexcept
Definition imu.pb.h:1502
IMUData_MagneticField & operator=(IMUData_MagneticField &&from) noexcept
Definition imu.pb.h:1511
PROTOBUF_CONSTEXPR IMUData_MagneticField(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
void UnsafeArenaSwap(IMUData_MagneticField *other)
Definition imu.pb.h:1567
void CopyFrom(const IMUData_MagneticField &from)
static const IMUData_MagneticField & default_instance()
Definition imu.pb.h:1541
void MergeFrom(const IMUData_MagneticField &from)
Definition imu.pb.h:1581
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1538
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1532
friend void swap(IMUData_MagneticField &a, IMUData_MagneticField &b)
Definition imu.pb.h:1551
IMUData_MagneticField(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1525
IMUData_MagneticField * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1575
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1528
IMUData_MagneticField(const IMUData_MagneticField &from)
static const IMUData_MagneticField * internal_default_instance()
Definition imu.pb.h:1544
void MergeFrom(const IMUData_Quaternion &from)
Definition imu.pb.h:1376
IMUData_Quaternion * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:1370
IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1333
IMUData_Quaternion(IMUData_Quaternion &&from) noexcept
Definition imu.pb.h:1297
static const IMUData_Quaternion & default_instance()
Definition imu.pb.h:1336
void Swap(IMUData_Quaternion *other)
Definition imu.pb.h:1349
PROTOBUF_CONSTEXPR IMUData_Quaternion(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1323
friend void swap(IMUData_Quaternion &a, IMUData_Quaternion &b)
Definition imu.pb.h:1346
static const ClassData _class_data_
Definition imu.pb.h:1407
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUData_Quaternion * internal_default_instance()
Definition imu.pb.h:1339
void UnsafeArenaSwap(IMUData_Quaternion *other)
Definition imu.pb.h:1362
IMUData_Quaternion & operator=(IMUData_Quaternion &&from) noexcept
Definition imu.pb.h:1306
IMUData_Quaternion & operator=(const IMUData_Quaternion &from)
Definition imu.pb.h:1302
void CopyFrom(const IMUData_Quaternion &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1327
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1320
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1330
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:1966
boost::units::acceleration_dimension max_acceleration_dimension
Definition imu.pb.h:2317
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:1957
void Swap(IMUData *other)
Definition imu.pb.h:1979
boost::units::unit< significant_wave_height_dimension, boost::units::si::system > significant_wave_height_unit
Definition imu.pb.h:2304
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:1950
IMUData * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:2000
void set_max_acceleration_with_units(Quantity value_w_units)
Definition imu.pb.h:2322
void UnsafeArenaSwap(IMUData *other)
Definition imu.pb.h:1992
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:1960
void CopyFrom(const IMUData &from)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:1953
IMUData & operator=(const IMUData &from)
Definition imu.pb.h:1932
boost::units::unit< max_acceleration_dimension, boost::units::si::system > max_acceleration_unit
Definition imu.pb.h:2319
static const IMUData * internal_default_instance()
Definition imu.pb.h:1969
void set_imu_type(ArgT0 &&arg0, ArgT... args)
IMUData & operator=(IMUData &&from) noexcept
Definition imu.pb.h:1936
boost::units::length_dimension significant_wave_height_dimension
Definition imu.pb.h:2302
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:2311
boost::units::quantity< max_acceleration_unit, double > max_acceleration_with_units() const
Definition imu.pb.h:2329
void MergeFrom(const IMUData &from)
Definition imu.pb.h:2006
void set_significant_wave_height_with_units(Quantity value_w_units)
Definition imu.pb.h:2307
static const ClassData _class_data_
Definition imu.pb.h:2037
IMUData(IMUData &&from) noexcept
Definition imu.pb.h:1927
IMUData(const IMUData &from)
friend void swap(IMUData &a, IMUData &b)
Definition imu.pb.h:1976
boost::units::quantity< significant_wave_height_unit, double > significant_wave_height_with_units() const
Definition imu.pb.h:2314
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:1963
Quantity max_acceleration_with_units() const
Definition imu.pb.h:2326
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
boost::units::unit< heading_dimension, boost::units::degree::system > heading_unit
Definition imu.pb.h:2719
IMUIssue(const IMUIssue &from)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition imu.pb.h:2393
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
IMUIssue & operator=(IMUIssue &&from) noexcept
Definition imu.pb.h:2379
static const IMUIssue & default_instance()
Definition imu.pb.h:2409
IMUIssue * New(::PROTOBUF_NAMESPACE_ID::Arena *arena=nullptr) const final
Definition imu.pb.h:2443
boost::units::unit< desired_speed_dimension, boost::units::si::system > desired_speed_unit
Definition imu.pb.h:2809
void set_speed_over_ground_with_units(Quantity value_w_units)
Definition imu.pb.h:2797
void set_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:2722
boost::units::quantity< course_over_ground_unit, double > course_over_ground_with_units() const
Definition imu.pb.h:2759
void set_pitch_with_units(Quantity value_w_units)
Definition imu.pb.h:2782
Quantity speed_over_ground_with_units() const
Definition imu.pb.h:2801
IMUIssue(IMUIssue &&from) noexcept
Definition imu.pb.h:2370
void CopyFrom(const IMUIssue &from)
boost::units::unit< pitch_dimension, boost::units::degree::system > pitch_unit
Definition imu.pb.h:2779
void set_heading_course_difference_with_units(Quantity value_w_units)
Definition imu.pb.h:2767
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition imu.pb.h:2406
Quantity desired_speed_with_units() const
Definition imu.pb.h:2816
void set_desired_heading_with_units(Quantity value_w_units)
Definition imu.pb.h:2737
boost::units::quantity< pitch_unit, double > pitch_with_units() const
Definition imu.pb.h:2789
static bool SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, SolutionType *value)
Definition imu.pb.h:2526
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IssueType_descriptor()
Definition imu.pb.h:2544
static const ClassData _class_data_
Definition imu.pb.h:2480
Quantity desired_heading_with_units() const
Definition imu.pb.h:2741
void set_course_over_ground_with_units(Quantity value_w_units)
Definition imu.pb.h:2752
Quantity pitch_with_units() const
Definition imu.pb.h:2786
void UnsafeArenaSwap(IMUIssue *other)
Definition imu.pb.h:2435
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const IMUIssue * internal_default_instance()
Definition imu.pb.h:2412
boost::units::unit< speed_over_ground_dimension, boost::units::si::system > speed_over_ground_unit
Definition imu.pb.h:2794
static bool IssueType_IsValid(int value)
Definition imu.pb.h:2534
boost::units::quantity< desired_heading_unit, double > desired_heading_with_units() const
Definition imu.pb.h:2744
boost::units::plane_angle_dimension desired_heading_dimension
Definition imu.pb.h:2732
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition imu.pb.h:2396
boost::units::quantity< heading_course_difference_unit, double > heading_course_difference_with_units() const
Definition imu.pb.h:2774
boost::units::plane_angle_dimension heading_dimension
Definition imu.pb.h:2717
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SolutionType_descriptor()
Definition imu.pb.h:2516
boost::units::velocity_dimension speed_over_ground_dimension
Definition imu.pb.h:2792
boost::units::quantity< desired_speed_unit, double > desired_speed_with_units() const
Definition imu.pb.h:2819
void MergeFrom(const IMUIssue &from)
Definition imu.pb.h:2449
IMUIssue_IssueType IssueType
Definition imu.pb.h:2531
void Swap(IMUIssue *other)
Definition imu.pb.h:2422
PROTOBUF_CONSTEXPR IMUIssue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
IMUIssue & operator=(const IMUIssue &from)
Definition imu.pb.h:2375
boost::units::quantity< heading_unit, double > heading_with_units() const
Definition imu.pb.h:2729
Quantity heading_course_difference_with_units() const
Definition imu.pb.h:2771
static bool IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IssueType *value)
Definition imu.pb.h:2554
boost::units::unit< heading_course_difference_dimension, boost::units::degree::system > heading_course_difference_unit
Definition imu.pb.h:2764
Quantity course_over_ground_with_units() const
Definition imu.pb.h:2756
boost::units::unit< course_over_ground_dimension, boost::units::degree::system > course_over_ground_unit
Definition imu.pb.h:2749
boost::units::plane_angle_dimension course_over_ground_dimension
Definition imu.pb.h:2747
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition imu.pb.h:2403
friend void swap(IMUIssue &a, IMUIssue &b)
Definition imu.pb.h:2419
static const std::string & IssueType_Name(T enum_t_value)
Definition imu.pb.h:2548
static const std::string & SolutionType_Name(T enum_t_value)
Definition imu.pb.h:2520
IMUIssue(::PROTOBUF_NAMESPACE_ID::Arena *arena, bool is_message_owned=false)
boost::units::plane_angle_dimension pitch_dimension
Definition imu.pb.h:2777
Quantity heading_with_units() const
Definition imu.pb.h:2726
boost::units::unit< desired_heading_dimension, boost::units::degree::system > desired_heading_unit
Definition imu.pb.h:2734
boost::units::quantity< speed_over_ground_unit, double > speed_over_ground_with_units() const
Definition imu.pb.h:2804
boost::units::velocity_dimension desired_speed_dimension
Definition imu.pb.h:2807
void set_desired_speed_with_units(Quantity value_w_units)
Definition imu.pb.h:2812
boost::units::plane_angle_dimension heading_course_difference_dimension
Definition imu.pb.h:2762
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition imu.pb.h:2400
::jaiabot::protobuf::IMUData_AccelerationWorld * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_AccelerationWorld >(Arena *)
::jaiabot::protobuf::IMUData_MagneticField * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_MagneticField >(Arena *)
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:4905
::jaiabot::protobuf::IMUData_Acceleration * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_Acceleration >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUCalibrationState >()
Definition imu.pb.h:4915
::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:4910
::jaiabot::protobuf::IMUData_EulerAngles * Arena::CreateMaybeMessage<::jaiabot::protobuf::IMUData_EulerAngles >(Arena *)
const EnumDescriptor * GetEnumDescriptor< ::jaiabot::protobuf::IMUCommand_IMUCommandType >()
Definition imu.pb.h:4900
bool IMUIssue_SolutionType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_SolutionType *value)
Definition imu.pb.h:159
constexpr IMUIssue_IssueType IMUIssue_IssueType_IssueType_MAX
Definition imu.pb.h:169
bool IMUIssue_IssueType_IsValid(int value)
IMUDataDefaultTypeInternal _IMUData_default_instance_
constexpr IMUCalibrationState IMUCalibrationState_MAX
Definition imu.pb.h:192
const std::string & IMUCalibrationState_Name(T enum_t_value)
Definition imu.pb.h:197
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUIssue_SolutionType_descriptor()
bool IMUIssue_IssueType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUIssue_IssueType *value)
Definition imu.pb.h:181
const std::string & IMUIssue_IssueType_Name(T enum_t_value)
Definition imu.pb.h:174
constexpr IMUCommand_IMUCommandType IMUCommand_IMUCommandType_IMUCommandType_MAX
Definition imu.pb.h:117
IMUData_MagneticFieldDefaultTypeInternal _IMUData_MagneticField_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUIssue_IssueType_descriptor()
@ IMUCommand_IMUCommandType_CONFIGURE
Definition imu.pb.h:108
@ IMUCommand_IMUCommandType_START_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:109
@ IMUCommand_IMUCommandType_START_CALIBRATION
Definition imu.pb.h:113
@ IMUCommand_IMUCommandType_STOP_WAVE_HEIGHT_SAMPLING
Definition imu.pb.h:110
@ IMUCommand_IMUCommandType_STOP_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:112
@ IMUCommand_IMUCommandType_START_BOTTOM_TYPE_SAMPLING
Definition imu.pb.h:111
constexpr IMUCalibrationState IMUCalibrationState_MIN
Definition imu.pb.h:191
IMUData_AngularVelocityDefaultTypeInternal _IMUData_AngularVelocity_default_instance_
bool IMUCommand_IMUCommandType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCommand_IMUCommandType *value)
Definition imu.pb.h:129
constexpr int IMUCalibrationState_ARRAYSIZE
Definition imu.pb.h:193
constexpr IMUIssue_SolutionType IMUIssue_SolutionType_SolutionType_MAX
Definition imu.pb.h:147
IMUData_AccelerationDefaultTypeInternal _IMUData_Acceleration_default_instance_
IMUData_AccelerationWorldDefaultTypeInternal _IMUData_AccelerationWorld_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:118
constexpr IMUCommand_IMUCommandType IMUCommand_IMUCommandType_IMUCommandType_MIN
Definition imu.pb.h:116
constexpr IMUIssue_IssueType IMUIssue_IssueType_IssueType_MIN
Definition imu.pb.h:168
IMUData_QuaternionDefaultTypeInternal _IMUData_Quaternion_default_instance_
bool IMUCalibrationState_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, IMUCalibrationState *value)
Definition imu.pb.h:204
@ IMUIssue_IssueType_HEADING_COURSE_DIFFERENCE_TOO_LARGE
Definition imu.pb.h:165
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * IMUCommand_IMUCommandType_descriptor()
const std::string & IMUCommand_IMUCommandType_Name(T enum_t_value)
Definition imu.pb.h:122
bool IMUIssue_SolutionType_IsValid(int value)
constexpr IMUIssue_SolutionType IMUIssue_SolutionType_SolutionType_MIN
Definition imu.pb.h:146
constexpr int IMUIssue_SolutionType_SolutionType_ARRAYSIZE
Definition imu.pb.h:148
bool IMUCalibrationState_IsValid(int value)
constexpr int IMUIssue_IssueType_IssueType_ARRAYSIZE
Definition imu.pb.h:170
@ IMUIssue_SolutionType_RESTART_IMU_PY
Definition imu.pb.h:141
@ IMUIssue_SolutionType_USE_CORRECTION
Definition imu.pb.h:137
@ IMUIssue_SolutionType_USE_COG
Definition imu.pb.h:136
@ IMUIssue_SolutionType_REBOOT_BNO085_IMU
Definition imu.pb.h:142
@ IMUIssue_SolutionType_REBOOT_BNO085_IMU_AND_RESTART_IMU_PY
Definition imu.pb.h:143
@ IMUIssue_SolutionType_REPORT_IMU
Definition imu.pb.h:140
@ IMUIssue_SolutionType_REBOOT_BOT
Definition imu.pb.h:139
@ IMUIssue_SolutionType_STOP_BOT
Definition imu.pb.h:135
@ IMUIssue_SolutionType_RESTART_BOT
Definition imu.pb.h:138
bool MissionState_IsValid(int value)
const std::string & IMUIssue_SolutionType_Name(T enum_t_value)
Definition imu.pb.h:152
IMUData_AccuraciesDefaultTypeInternal _IMUData_Accuracies_default_instance_
IMUCommandDefaultTypeInternal _IMUCommand_default_instance_