JaiaBot  1.20.0
JaiaBot micro-AUV software
sensor_core.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: jaiabot/messages/sensor/sensor_core.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3012000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3012004 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
37 #include "jaiabot/messages/sensor/metadata.pb.h"
38 #include "jaiabot/messages/sensor/configuration.pb.h"
39 #include "jaiabot/messages/sensor/atlas_scientific__oem_ec.pb.h"
40 #include "jaiabot/messages/sensor/atlas_scientific__oem_do.pb.h"
41 #include "jaiabot/messages/sensor/atlas_scientific__oem_ph.pb.h"
42 #include "jaiabot/messages/sensor/turner__c_fluor.pb.h"
43 #include "jaiabot/messages/sensor/blue_robotics__bar30.pb.h"
44 #include "jaiabot/messages/sensor/catalog.pb.h"
45 #include <boost/units/quantity.hpp>
46 #include <boost/units/absolute.hpp>
47 #include <boost/units/dimensionless_type.hpp>
48 #include <boost/units/make_scaled_unit.hpp>
49 
50 #include <boost/units/systems/si.hpp>
51 // @@protoc_insertion_point(includes)
52 #include <google/protobuf/port_def.inc>
53 #define PROTOBUF_INTERNAL_EXPORT_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto
54 PROTOBUF_NAMESPACE_OPEN
55 namespace internal {
56 class AnyMetadata;
57 } // namespace internal
58 PROTOBUF_NAMESPACE_CLOSE
59 
60 // Internal implementation detail -- do not use these members.
62  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
63  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
64  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
65  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
66  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3]
67  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
68  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
69  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
70  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
71 };
72 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto;
73 namespace jaiabot {
74 namespace sensor {
75 namespace protobuf {
76 class SensorData;
77 class SensorDataDefaultTypeInternal;
78 extern SensorDataDefaultTypeInternal _SensorData_default_instance_;
79 class SensorRequest;
80 class SensorRequestDefaultTypeInternal;
81 extern SensorRequestDefaultTypeInternal _SensorRequest_default_instance_;
82 class SensorThreadConfig;
83 class SensorThreadConfigDefaultTypeInternal;
84 extern SensorThreadConfigDefaultTypeInternal _SensorThreadConfig_default_instance_;
85 } // namespace protobuf
86 } // namespace sensor
87 } // namespace jaiabot
88 PROTOBUF_NAMESPACE_OPEN
89 template<> ::jaiabot::sensor::protobuf::SensorData* Arena::CreateMaybeMessage<::jaiabot::sensor::protobuf::SensorData>(Arena*);
90 template<> ::jaiabot::sensor::protobuf::SensorRequest* Arena::CreateMaybeMessage<::jaiabot::sensor::protobuf::SensorRequest>(Arena*);
91 template<> ::jaiabot::sensor::protobuf::SensorThreadConfig* Arena::CreateMaybeMessage<::jaiabot::sensor::protobuf::SensorThreadConfig>(Arena*);
92 PROTOBUF_NAMESPACE_CLOSE
93 namespace jaiabot {
94 namespace sensor {
95 namespace protobuf {
96 
97 enum MCUCommand : int {
99 };
100 bool MCUCommand_IsValid(int value);
103 constexpr int MCUCommand_ARRAYSIZE = MCUCommand_MAX + 1;
104 
105 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MCUCommand_descriptor();
106 template<typename T>
107 inline const std::string& MCUCommand_Name(T enum_t_value) {
108  static_assert(::std::is_same<T, MCUCommand>::value ||
109  ::std::is_integral<T>::value,
110  "Incorrect type passed to function MCUCommand_Name.");
111  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
112  MCUCommand_descriptor(), enum_t_value);
113 }
114 inline bool MCUCommand_Parse(
115  const std::string& name, MCUCommand* value) {
116  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MCUCommand>(
117  MCUCommand_descriptor(), name, value);
118 }
119 enum CompensationType : int {
125 };
126 bool CompensationType_IsValid(int value);
130 
131 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CompensationType_descriptor();
132 template<typename T>
133 inline const std::string& CompensationType_Name(T enum_t_value) {
134  static_assert(::std::is_same<T, CompensationType>::value ||
135  ::std::is_integral<T>::value,
136  "Incorrect type passed to function CompensationType_Name.");
137  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
138  CompensationType_descriptor(), enum_t_value);
139 }
140 inline bool CompensationType_Parse(
141  const std::string& name, CompensationType* value) {
142  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CompensationType>(
143  CompensationType_descriptor(), name, value);
144 }
145 enum CalibrationType : int {
147  CALIBRATE_EC_DRY = 2,
148  CALIBRATE_EC_LOW = 3,
149  CALIBRATE_EC_HIGH = 4,
152  CALIBRATE_DO_LOW = 7,
153  CALIBRATE_DO_HIGH = 8,
156  CALIBRATE_PH_LOW = 11,
157  CALIBRATE_PH_MID = 12,
158  CALIBRATE_PH_HIGH = 13,
160  STOP_CALIBRATION = 15
161 };
162 bool CalibrationType_IsValid(int value);
166 
167 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CalibrationType_descriptor();
168 template<typename T>
169 inline const std::string& CalibrationType_Name(T enum_t_value) {
170  static_assert(::std::is_same<T, CalibrationType>::value ||
171  ::std::is_integral<T>::value,
172  "Incorrect type passed to function CalibrationType_Name.");
173  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
174  CalibrationType_descriptor(), enum_t_value);
175 }
176 inline bool CalibrationType_Parse(
177  const std::string& name, CalibrationType* value) {
178  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CalibrationType>(
179  CalibrationType_descriptor(), name, value);
180 }
181 // ===================================================================
182 
183 class SensorRequest PROTOBUF_FINAL :
184  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.sensor.protobuf.SensorRequest) */ {
185  public:
186  inline SensorRequest() : SensorRequest(nullptr) {};
187  virtual ~SensorRequest();
188 
189  SensorRequest(const SensorRequest& from);
190  SensorRequest(SensorRequest&& from) noexcept
191  : SensorRequest() {
192  *this = ::std::move(from);
193  }
194 
195  inline SensorRequest& operator=(const SensorRequest& from) {
196  CopyFrom(from);
197  return *this;
198  }
199  inline SensorRequest& operator=(SensorRequest&& from) noexcept {
200  if (GetArena() == from.GetArena()) {
201  if (this != &from) InternalSwap(&from);
202  } else {
203  CopyFrom(from);
204  }
205  return *this;
206  }
207 
208  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
209  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
210  }
211  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
212  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
213  }
214 
215  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
216  return GetDescriptor();
217  }
218  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
219  return GetMetadataStatic().descriptor;
220  }
221  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
222  return GetMetadataStatic().reflection;
223  }
224  static const SensorRequest& default_instance();
225 
226  enum RequestDataCase {
227  kRequestMetadata = 11,
228  kCfg = 12,
229  REQUEST_DATA_NOT_SET = 0,
230  };
231 
232  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
233  static inline const SensorRequest* internal_default_instance() {
234  return reinterpret_cast<const SensorRequest*>(
236  }
237  static constexpr int kIndexInFileMessages =
238  0;
239 
240  friend void swap(SensorRequest& a, SensorRequest& b) {
241  a.Swap(&b);
242  }
243  inline void Swap(SensorRequest* other) {
244  if (other == this) return;
245  if (GetArena() == other->GetArena()) {
246  InternalSwap(other);
247  } else {
248  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
249  }
250  }
251  void UnsafeArenaSwap(SensorRequest* other) {
252  if (other == this) return;
253  GOOGLE_DCHECK(GetArena() == other->GetArena());
254  InternalSwap(other);
255  }
256 
257  // implements Message ----------------------------------------------
258 
259  inline SensorRequest* New() const final {
260  return CreateMaybeMessage<SensorRequest>(nullptr);
261  }
262 
263  SensorRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
264  return CreateMaybeMessage<SensorRequest>(arena);
265  }
266  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
267  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
268  void CopyFrom(const SensorRequest& from);
269  void MergeFrom(const SensorRequest& from);
270  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
271  bool IsInitialized() const final;
272 
273  size_t ByteSizeLong() const final;
274  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
275  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
276  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
277  int GetCachedSize() const final { return _cached_size_.Get(); }
278 
279  private:
280  inline void SharedCtor();
281  inline void SharedDtor();
282  void SetCachedSize(int size) const final;
283  void InternalSwap(SensorRequest* other);
284  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
285  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
286  return "jaiabot.sensor.protobuf.SensorRequest";
287  }
288  protected:
289  explicit SensorRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena);
290  private:
291  static void ArenaDtor(void* object);
292  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
293  public:
294 
295  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
296  private:
297  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
298  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto);
300  }
301 
302  public:
303 
304  // nested types ----------------------------------------------------
305 
306  // accessors -------------------------------------------------------
307 
308  enum : int {
309  kTimeFieldNumber = 1,
310  kCalibrationValueFieldNumber = 22,
311  kCompensationValueFieldNumber = 24,
312  kCompensationTypeFieldNumber = 23,
313  kMcuCommandFieldNumber = 20,
314  kCalibrationTypeFieldNumber = 21,
315  kRequestMetadataFieldNumber = 11,
316  kCfgFieldNumber = 12,
317  };
318  // required uint64 time = 1 [(.dccl.field) = {
319  bool has_time() const;
320  private:
321  bool _internal_has_time() const;
322  public:
323  void clear_time();
324  ::PROTOBUF_NAMESPACE_ID::uint64 time() const;
325  void set_time(::PROTOBUF_NAMESPACE_ID::uint64 value);
326  private:
327  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_time() const;
328  void _internal_set_time(::PROTOBUF_NAMESPACE_ID::uint64 value);
329  public:
330 
331  // optional double calibration_value = 22;
332  bool has_calibration_value() const;
333  private:
334  bool _internal_has_calibration_value() const;
335  public:
336  void clear_calibration_value();
337  double calibration_value() const;
338  void set_calibration_value(double value);
339  private:
340  double _internal_calibration_value() const;
341  void _internal_set_calibration_value(double value);
342  public:
343 
344  // optional double compensation_value = 24;
345  bool has_compensation_value() const;
346  private:
347  bool _internal_has_compensation_value() const;
348  public:
349  void clear_compensation_value();
350  double compensation_value() const;
351  void set_compensation_value(double value);
352  private:
353  double _internal_compensation_value() const;
354  void _internal_set_compensation_value(double value);
355  public:
356 
357  // optional .jaiabot.sensor.protobuf.CompensationType compensation_type = 23;
358  bool has_compensation_type() const;
359  private:
360  bool _internal_has_compensation_type() const;
361  public:
362  void clear_compensation_type();
363  ::jaiabot::sensor::protobuf::CompensationType compensation_type() const;
364  void set_compensation_type(::jaiabot::sensor::protobuf::CompensationType value);
365  private:
366  ::jaiabot::sensor::protobuf::CompensationType _internal_compensation_type() const;
367  void _internal_set_compensation_type(::jaiabot::sensor::protobuf::CompensationType value);
368  public:
369 
370  // optional .jaiabot.sensor.protobuf.MCUCommand mcu_command = 20;
371  bool has_mcu_command() const;
372  private:
373  bool _internal_has_mcu_command() const;
374  public:
375  void clear_mcu_command();
377  void set_mcu_command(::jaiabot::sensor::protobuf::MCUCommand value);
378  private:
379  ::jaiabot::sensor::protobuf::MCUCommand _internal_mcu_command() const;
380  void _internal_set_mcu_command(::jaiabot::sensor::protobuf::MCUCommand value);
381  public:
382 
383  // optional .jaiabot.sensor.protobuf.CalibrationType calibration_type = 21;
384  bool has_calibration_type() const;
385  private:
386  bool _internal_has_calibration_type() const;
387  public:
388  void clear_calibration_type();
389  ::jaiabot::sensor::protobuf::CalibrationType calibration_type() const;
390  void set_calibration_type(::jaiabot::sensor::protobuf::CalibrationType value);
391  private:
392  ::jaiabot::sensor::protobuf::CalibrationType _internal_calibration_type() const;
393  void _internal_set_calibration_type(::jaiabot::sensor::protobuf::CalibrationType value);
394  public:
395 
396  // bool request_metadata = 11;
397  bool has_request_metadata() const;
398  private:
399  bool _internal_has_request_metadata() const;
400  public:
401  void clear_request_metadata();
402  bool request_metadata() const;
403  void set_request_metadata(bool value);
404  private:
405  bool _internal_request_metadata() const;
406  void _internal_set_request_metadata(bool value);
407  public:
408 
409  // .jaiabot.sensor.protobuf.Configuration cfg = 12;
410  bool has_cfg() const;
411  private:
412  bool _internal_has_cfg() const;
413  public:
414  void clear_cfg();
415  const ::jaiabot::sensor::protobuf::Configuration& cfg() const;
416  ::jaiabot::sensor::protobuf::Configuration* release_cfg();
417  ::jaiabot::sensor::protobuf::Configuration* mutable_cfg();
418  void set_allocated_cfg(::jaiabot::sensor::protobuf::Configuration* cfg);
419  private:
420  const ::jaiabot::sensor::protobuf::Configuration& _internal_cfg() const;
421  ::jaiabot::sensor::protobuf::Configuration* _internal_mutable_cfg();
422  public:
423  void unsafe_arena_set_allocated_cfg(
424  ::jaiabot::sensor::protobuf::Configuration* cfg);
425  ::jaiabot::sensor::protobuf::Configuration* unsafe_arena_release_cfg();
426 
427  void clear_request_data();
428  RequestDataCase request_data_case() const;
429  typedef boost::units::time_dimension time_dimension;
430 
431  typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
432 
433  template<typename Quantity >
434  void set_time_with_units(Quantity value_w_units)
435  { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
436 
437  template<typename Quantity >
438  Quantity time_with_units() const
439  { return Quantity(time() * time_unit()); };
440 
441  boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
442  { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
443 
444  // @@protoc_insertion_point(class_scope:jaiabot.sensor.protobuf.SensorRequest)
445  private:
446  class _Internal;
447  void set_has_request_metadata();
448  void set_has_cfg();
449 
450  inline bool has_request_data() const;
451  inline void clear_has_request_data();
452 
453  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
454  typedef void InternalArenaConstructable_;
455  typedef void DestructorSkippable_;
456  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
457  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
458  ::PROTOBUF_NAMESPACE_ID::uint64 time_;
459  double calibration_value_;
460  double compensation_value_;
461  int compensation_type_;
462  int mcu_command_;
463  int calibration_type_;
464  union RequestDataUnion {
465  RequestDataUnion() {}
466  bool request_metadata_;
467  ::jaiabot::sensor::protobuf::Configuration* cfg_;
468  } request_data_;
469  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
470 
471  friend struct ::TableStruct_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto;
472 };
473 // -------------------------------------------------------------------
474 
475 class SensorData PROTOBUF_FINAL :
476  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.sensor.protobuf.SensorData) */ {
477  public:
478  inline SensorData() : SensorData(nullptr) {};
479  virtual ~SensorData();
480 
481  SensorData(const SensorData& from);
482  SensorData(SensorData&& from) noexcept
483  : SensorData() {
484  *this = ::std::move(from);
485  }
486 
487  inline SensorData& operator=(const SensorData& from) {
488  CopyFrom(from);
489  return *this;
490  }
491  inline SensorData& operator=(SensorData&& from) noexcept {
492  if (GetArena() == from.GetArena()) {
493  if (this != &from) InternalSwap(&from);
494  } else {
495  CopyFrom(from);
496  }
497  return *this;
498  }
499 
500  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
501  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
502  }
503  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
504  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
505  }
506 
507  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
508  return GetDescriptor();
509  }
510  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
511  return GetMetadataStatic().descriptor;
512  }
513  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
514  return GetMetadataStatic().reflection;
515  }
516  static const SensorData& default_instance();
517 
518  enum DataCase {
519  kMetadata = 11,
520  kOemEc = 12,
521  kBar30 = 13,
522  kOemPh = 14,
523  kOemDo = 15,
524  kCFluor = 16,
525  DATA_NOT_SET = 0,
526  };
527 
528  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
529  static inline const SensorData* internal_default_instance() {
530  return reinterpret_cast<const SensorData*>(
532  }
533  static constexpr int kIndexInFileMessages =
534  1;
535 
536  friend void swap(SensorData& a, SensorData& b) {
537  a.Swap(&b);
538  }
539  inline void Swap(SensorData* other) {
540  if (other == this) return;
541  if (GetArena() == other->GetArena()) {
542  InternalSwap(other);
543  } else {
544  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
545  }
546  }
547  void UnsafeArenaSwap(SensorData* other) {
548  if (other == this) return;
549  GOOGLE_DCHECK(GetArena() == other->GetArena());
550  InternalSwap(other);
551  }
552 
553  // implements Message ----------------------------------------------
554 
555  inline SensorData* New() const final {
556  return CreateMaybeMessage<SensorData>(nullptr);
557  }
558 
559  SensorData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
560  return CreateMaybeMessage<SensorData>(arena);
561  }
562  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
563  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
564  void CopyFrom(const SensorData& from);
565  void MergeFrom(const SensorData& from);
566  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
567  bool IsInitialized() const final;
568 
569  size_t ByteSizeLong() const final;
570  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
571  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
572  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
573  int GetCachedSize() const final { return _cached_size_.Get(); }
574 
575  private:
576  inline void SharedCtor();
577  inline void SharedDtor();
578  void SetCachedSize(int size) const final;
579  void InternalSwap(SensorData* other);
580  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
581  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
582  return "jaiabot.sensor.protobuf.SensorData";
583  }
584  protected:
585  explicit SensorData(::PROTOBUF_NAMESPACE_ID::Arena* arena);
586  private:
587  static void ArenaDtor(void* object);
588  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
589  public:
590 
591  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
592  private:
593  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
594  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto);
596  }
597 
598  public:
599 
600  // nested types ----------------------------------------------------
601 
602  // accessors -------------------------------------------------------
603 
604  enum : int {
605  kTimeFieldNumber = 1,
606  kMetadataFieldNumber = 11,
607  kOemEcFieldNumber = 12,
608  kBar30FieldNumber = 13,
609  kOemPhFieldNumber = 14,
610  kOemDoFieldNumber = 15,
611  kCFluorFieldNumber = 16,
612  };
613  // required uint64 time = 1 [(.dccl.field) = {
614  bool has_time() const;
615  private:
616  bool _internal_has_time() const;
617  public:
618  void clear_time();
619  ::PROTOBUF_NAMESPACE_ID::uint64 time() const;
620  void set_time(::PROTOBUF_NAMESPACE_ID::uint64 value);
621  private:
622  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_time() const;
623  void _internal_set_time(::PROTOBUF_NAMESPACE_ID::uint64 value);
624  public:
625 
626  // .jaiabot.sensor.protobuf.Metadata metadata = 11;
627  bool has_metadata() const;
628  private:
629  bool _internal_has_metadata() const;
630  public:
631  void clear_metadata();
632  const ::jaiabot::sensor::protobuf::Metadata& metadata() const;
633  ::jaiabot::sensor::protobuf::Metadata* release_metadata();
634  ::jaiabot::sensor::protobuf::Metadata* mutable_metadata();
635  void set_allocated_metadata(::jaiabot::sensor::protobuf::Metadata* metadata);
636  private:
637  const ::jaiabot::sensor::protobuf::Metadata& _internal_metadata() const;
638  ::jaiabot::sensor::protobuf::Metadata* _internal_mutable_metadata();
639  public:
640  void unsafe_arena_set_allocated_metadata(
641  ::jaiabot::sensor::protobuf::Metadata* metadata);
642  ::jaiabot::sensor::protobuf::Metadata* unsafe_arena_release_metadata();
643 
644  // .jaiabot.sensor.protobuf.AtlasScientificOEMEC oem_ec = 12;
645  bool has_oem_ec() const;
646  private:
647  bool _internal_has_oem_ec() const;
648  public:
649  void clear_oem_ec();
650  const ::jaiabot::sensor::protobuf::AtlasScientificOEMEC& oem_ec() const;
651  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* release_oem_ec();
652  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* mutable_oem_ec();
653  void set_allocated_oem_ec(::jaiabot::sensor::protobuf::AtlasScientificOEMEC* oem_ec);
654  private:
655  const ::jaiabot::sensor::protobuf::AtlasScientificOEMEC& _internal_oem_ec() const;
656  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* _internal_mutable_oem_ec();
657  public:
658  void unsafe_arena_set_allocated_oem_ec(
659  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* oem_ec);
660  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* unsafe_arena_release_oem_ec();
661 
662  // .jaiabot.sensor.protobuf.BlueRoboticsBar30 bar30 = 13;
663  bool has_bar30() const;
664  private:
665  bool _internal_has_bar30() const;
666  public:
667  void clear_bar30();
668  const ::jaiabot::sensor::protobuf::BlueRoboticsBar30& bar30() const;
669  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* release_bar30();
670  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* mutable_bar30();
671  void set_allocated_bar30(::jaiabot::sensor::protobuf::BlueRoboticsBar30* bar30);
672  private:
673  const ::jaiabot::sensor::protobuf::BlueRoboticsBar30& _internal_bar30() const;
674  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* _internal_mutable_bar30();
675  public:
676  void unsafe_arena_set_allocated_bar30(
677  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* bar30);
678  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* unsafe_arena_release_bar30();
679 
680  // .jaiabot.sensor.protobuf.AtlasScientificOEMpH oem_ph = 14;
681  bool has_oem_ph() const;
682  private:
683  bool _internal_has_oem_ph() const;
684  public:
685  void clear_oem_ph();
686  const ::jaiabot::sensor::protobuf::AtlasScientificOEMpH& oem_ph() const;
687  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* release_oem_ph();
688  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* mutable_oem_ph();
689  void set_allocated_oem_ph(::jaiabot::sensor::protobuf::AtlasScientificOEMpH* oem_ph);
690  private:
691  const ::jaiabot::sensor::protobuf::AtlasScientificOEMpH& _internal_oem_ph() const;
692  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* _internal_mutable_oem_ph();
693  public:
694  void unsafe_arena_set_allocated_oem_ph(
695  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* oem_ph);
696  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* unsafe_arena_release_oem_ph();
697 
698  // .jaiabot.sensor.protobuf.AtlasScientificOEMDO oem_do = 15;
699  bool has_oem_do() const;
700  private:
701  bool _internal_has_oem_do() const;
702  public:
703  void clear_oem_do();
704  const ::jaiabot::sensor::protobuf::AtlasScientificOEMDO& oem_do() const;
705  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* release_oem_do();
706  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* mutable_oem_do();
707  void set_allocated_oem_do(::jaiabot::sensor::protobuf::AtlasScientificOEMDO* oem_do);
708  private:
709  const ::jaiabot::sensor::protobuf::AtlasScientificOEMDO& _internal_oem_do() const;
710  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* _internal_mutable_oem_do();
711  public:
712  void unsafe_arena_set_allocated_oem_do(
713  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* oem_do);
714  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* unsafe_arena_release_oem_do();
715 
716  // .jaiabot.sensor.protobuf.TurnerCFluor c_fluor = 16;
717  bool has_c_fluor() const;
718  private:
719  bool _internal_has_c_fluor() const;
720  public:
721  void clear_c_fluor();
722  const ::jaiabot::sensor::protobuf::TurnerCFluor& c_fluor() const;
723  ::jaiabot::sensor::protobuf::TurnerCFluor* release_c_fluor();
724  ::jaiabot::sensor::protobuf::TurnerCFluor* mutable_c_fluor();
725  void set_allocated_c_fluor(::jaiabot::sensor::protobuf::TurnerCFluor* c_fluor);
726  private:
727  const ::jaiabot::sensor::protobuf::TurnerCFluor& _internal_c_fluor() const;
728  ::jaiabot::sensor::protobuf::TurnerCFluor* _internal_mutable_c_fluor();
729  public:
730  void unsafe_arena_set_allocated_c_fluor(
731  ::jaiabot::sensor::protobuf::TurnerCFluor* c_fluor);
732  ::jaiabot::sensor::protobuf::TurnerCFluor* unsafe_arena_release_c_fluor();
733 
734  void clear_data();
735  DataCase data_case() const;
736  typedef boost::units::time_dimension time_dimension;
737 
738  typedef boost::units::make_scaled_unit<boost::units::unit<time_dimension,boost::units::si::system> , boost::units::scale<10, boost::units::static_rational<-6> > >::type time_unit;
739 
740  template<typename Quantity >
741  void set_time_with_units(Quantity value_w_units)
742  { set_time(boost::units::quantity<time_unit,google::protobuf::uint64 >(value_w_units).value() ); };
743 
744  template<typename Quantity >
745  Quantity time_with_units() const
746  { return Quantity(time() * time_unit()); };
747 
748  boost::units::quantity< time_unit,google::protobuf::uint64 > time_with_units() const
749  { return time_with_units<boost::units::quantity< time_unit,google::protobuf::uint64 > >(); };
750 
751  // @@protoc_insertion_point(class_scope:jaiabot.sensor.protobuf.SensorData)
752  private:
753  class _Internal;
754  void set_has_metadata();
755  void set_has_oem_ec();
756  void set_has_bar30();
757  void set_has_oem_ph();
758  void set_has_oem_do();
759  void set_has_c_fluor();
760 
761  inline bool has_data() const;
762  inline void clear_has_data();
763 
764  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
765  typedef void InternalArenaConstructable_;
766  typedef void DestructorSkippable_;
767  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
768  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
769  ::PROTOBUF_NAMESPACE_ID::uint64 time_;
770  union DataUnion {
771  DataUnion() {}
772  ::jaiabot::sensor::protobuf::Metadata* metadata_;
773  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* oem_ec_;
774  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* bar30_;
775  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* oem_ph_;
776  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* oem_do_;
777  ::jaiabot::sensor::protobuf::TurnerCFluor* c_fluor_;
778  } data_;
779  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
780 
781  friend struct ::TableStruct_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto;
782 };
783 // -------------------------------------------------------------------
784 
785 class SensorThreadConfig PROTOBUF_FINAL :
786  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.sensor.protobuf.SensorThreadConfig) */ {
787  public:
788  inline SensorThreadConfig() : SensorThreadConfig(nullptr) {};
789  virtual ~SensorThreadConfig();
790 
791  SensorThreadConfig(const SensorThreadConfig& from);
792  SensorThreadConfig(SensorThreadConfig&& from) noexcept
793  : SensorThreadConfig() {
794  *this = ::std::move(from);
795  }
796 
797  inline SensorThreadConfig& operator=(const SensorThreadConfig& from) {
798  CopyFrom(from);
799  return *this;
800  }
801  inline SensorThreadConfig& operator=(SensorThreadConfig&& from) noexcept {
802  if (GetArena() == from.GetArena()) {
803  if (this != &from) InternalSwap(&from);
804  } else {
805  CopyFrom(from);
806  }
807  return *this;
808  }
809 
810  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
811  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
812  }
813  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
814  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
815  }
816 
817  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
818  return GetDescriptor();
819  }
820  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
821  return GetMetadataStatic().descriptor;
822  }
823  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
824  return GetMetadataStatic().reflection;
825  }
826  static const SensorThreadConfig& default_instance();
827 
828  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
829  static inline const SensorThreadConfig* internal_default_instance() {
830  return reinterpret_cast<const SensorThreadConfig*>(
832  }
833  static constexpr int kIndexInFileMessages =
834  2;
835 
836  friend void swap(SensorThreadConfig& a, SensorThreadConfig& b) {
837  a.Swap(&b);
838  }
839  inline void Swap(SensorThreadConfig* other) {
840  if (other == this) return;
841  if (GetArena() == other->GetArena()) {
842  InternalSwap(other);
843  } else {
844  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
845  }
846  }
847  void UnsafeArenaSwap(SensorThreadConfig* other) {
848  if (other == this) return;
849  GOOGLE_DCHECK(GetArena() == other->GetArena());
850  InternalSwap(other);
851  }
852 
853  // implements Message ----------------------------------------------
854 
855  inline SensorThreadConfig* New() const final {
856  return CreateMaybeMessage<SensorThreadConfig>(nullptr);
857  }
858 
859  SensorThreadConfig* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
860  return CreateMaybeMessage<SensorThreadConfig>(arena);
861  }
862  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
863  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
864  void CopyFrom(const SensorThreadConfig& from);
865  void MergeFrom(const SensorThreadConfig& from);
866  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
867  bool IsInitialized() const final;
868 
869  size_t ByteSizeLong() const final;
870  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
871  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
872  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
873  int GetCachedSize() const final { return _cached_size_.Get(); }
874 
875  private:
876  inline void SharedCtor();
877  inline void SharedDtor();
878  void SetCachedSize(int size) const final;
879  void InternalSwap(SensorThreadConfig* other);
880  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
881  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
882  return "jaiabot.sensor.protobuf.SensorThreadConfig";
883  }
884  protected:
885  explicit SensorThreadConfig(::PROTOBUF_NAMESPACE_ID::Arena* arena);
886  private:
887  static void ArenaDtor(void* object);
888  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
889  public:
890 
891  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
892  private:
893  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
894  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto);
896  }
897 
898  public:
899 
900  // nested types ----------------------------------------------------
901 
902  // accessors -------------------------------------------------------
903 
904  enum : int {
905  kMetadataFieldNumber = 1,
906  kSampleRateFieldNumber = 2,
907  };
908  // optional .jaiabot.sensor.protobuf.Metadata metadata = 1;
909  bool has_metadata() const;
910  private:
911  bool _internal_has_metadata() const;
912  public:
913  void clear_metadata();
914  const ::jaiabot::sensor::protobuf::Metadata& metadata() const;
915  ::jaiabot::sensor::protobuf::Metadata* release_metadata();
916  ::jaiabot::sensor::protobuf::Metadata* mutable_metadata();
917  void set_allocated_metadata(::jaiabot::sensor::protobuf::Metadata* metadata);
918  private:
919  const ::jaiabot::sensor::protobuf::Metadata& _internal_metadata() const;
920  ::jaiabot::sensor::protobuf::Metadata* _internal_mutable_metadata();
921  public:
922  void unsafe_arena_set_allocated_metadata(
923  ::jaiabot::sensor::protobuf::Metadata* metadata);
924  ::jaiabot::sensor::protobuf::Metadata* unsafe_arena_release_metadata();
925 
926  // optional int32 sample_rate = 2;
927  bool has_sample_rate() const;
928  private:
929  bool _internal_has_sample_rate() const;
930  public:
931  void clear_sample_rate();
932  ::PROTOBUF_NAMESPACE_ID::int32 sample_rate() const;
933  void set_sample_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
934  private:
935  ::PROTOBUF_NAMESPACE_ID::int32 _internal_sample_rate() const;
936  void _internal_set_sample_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
937  public:
938 
939  // @@protoc_insertion_point(class_scope:jaiabot.sensor.protobuf.SensorThreadConfig)
940  private:
941  class _Internal;
942 
943  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
944  typedef void InternalArenaConstructable_;
945  typedef void DestructorSkippable_;
946  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
947  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
948  ::jaiabot::sensor::protobuf::Metadata* metadata_;
949  ::PROTOBUF_NAMESPACE_ID::int32 sample_rate_;
950  friend struct ::TableStruct_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto;
951 };
952 // ===================================================================
953 
954 
955 // ===================================================================
956 
957 #ifdef __GNUC__
958  #pragma GCC diagnostic push
959  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
960 #endif // __GNUC__
961 // SensorRequest
962 
963 // required uint64 time = 1 [(.dccl.field) = {
964 inline bool SensorRequest::_internal_has_time() const {
965  bool value = (_has_bits_[0] & 0x00000001u) != 0;
966  return value;
967 }
968 inline bool SensorRequest::has_time() const {
969  return _internal_has_time();
970 }
971 inline void SensorRequest::clear_time() {
972  time_ = PROTOBUF_ULONGLONG(0);
973  _has_bits_[0] &= ~0x00000001u;
974 }
975 inline ::PROTOBUF_NAMESPACE_ID::uint64 SensorRequest::_internal_time() const {
976  return time_;
977 }
978 inline ::PROTOBUF_NAMESPACE_ID::uint64 SensorRequest::time() const {
979  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.time)
980  return _internal_time();
981 }
982 inline void SensorRequest::_internal_set_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
983  _has_bits_[0] |= 0x00000001u;
984  time_ = value;
985 }
986 inline void SensorRequest::set_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
987  _internal_set_time(value);
988  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.time)
989 }
990 
991 // bool request_metadata = 11;
992 inline bool SensorRequest::_internal_has_request_metadata() const {
993  return request_data_case() == kRequestMetadata;
994 }
995 inline bool SensorRequest::has_request_metadata() const {
996  return _internal_has_request_metadata();
997 }
998 inline void SensorRequest::set_has_request_metadata() {
999  _oneof_case_[0] = kRequestMetadata;
1000 }
1001 inline void SensorRequest::clear_request_metadata() {
1002  if (_internal_has_request_metadata()) {
1003  request_data_.request_metadata_ = false;
1004  clear_has_request_data();
1005  }
1006 }
1007 inline bool SensorRequest::_internal_request_metadata() const {
1008  if (_internal_has_request_metadata()) {
1009  return request_data_.request_metadata_;
1010  }
1011  return false;
1012 }
1013 inline void SensorRequest::_internal_set_request_metadata(bool value) {
1014  if (!_internal_has_request_metadata()) {
1015  clear_request_data();
1016  set_has_request_metadata();
1017  }
1018  request_data_.request_metadata_ = value;
1019 }
1020 inline bool SensorRequest::request_metadata() const {
1021  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.request_metadata)
1022  return _internal_request_metadata();
1023 }
1024 inline void SensorRequest::set_request_metadata(bool value) {
1025  _internal_set_request_metadata(value);
1026  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.request_metadata)
1027 }
1028 
1029 // .jaiabot.sensor.protobuf.Configuration cfg = 12;
1030 inline bool SensorRequest::_internal_has_cfg() const {
1031  return request_data_case() == kCfg;
1032 }
1033 inline bool SensorRequest::has_cfg() const {
1034  return _internal_has_cfg();
1035 }
1036 inline void SensorRequest::set_has_cfg() {
1037  _oneof_case_[0] = kCfg;
1038 }
1039 inline ::jaiabot::sensor::protobuf::Configuration* SensorRequest::release_cfg() {
1040  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorRequest.cfg)
1041  if (_internal_has_cfg()) {
1042  clear_has_request_data();
1043  ::jaiabot::sensor::protobuf::Configuration* temp = request_data_.cfg_;
1044  if (GetArena() != nullptr) {
1045  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1046  }
1047  request_data_.cfg_ = nullptr;
1048  return temp;
1049  } else {
1050  return nullptr;
1051  }
1052 }
1053 inline const ::jaiabot::sensor::protobuf::Configuration& SensorRequest::_internal_cfg() const {
1054  return _internal_has_cfg()
1055  ? *request_data_.cfg_
1056  : *reinterpret_cast< ::jaiabot::sensor::protobuf::Configuration*>(&::jaiabot::sensor::protobuf::_Configuration_default_instance_);
1057 }
1058 inline const ::jaiabot::sensor::protobuf::Configuration& SensorRequest::cfg() const {
1059  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.cfg)
1060  return _internal_cfg();
1061 }
1062 inline ::jaiabot::sensor::protobuf::Configuration* SensorRequest::unsafe_arena_release_cfg() {
1063  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorRequest.cfg)
1064  if (_internal_has_cfg()) {
1065  clear_has_request_data();
1066  ::jaiabot::sensor::protobuf::Configuration* temp = request_data_.cfg_;
1067  request_data_.cfg_ = nullptr;
1068  return temp;
1069  } else {
1070  return nullptr;
1071  }
1072 }
1073 inline void SensorRequest::unsafe_arena_set_allocated_cfg(::jaiabot::sensor::protobuf::Configuration* cfg) {
1074  clear_request_data();
1075  if (cfg) {
1076  set_has_cfg();
1077  request_data_.cfg_ = cfg;
1078  }
1079  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorRequest.cfg)
1080 }
1081 inline ::jaiabot::sensor::protobuf::Configuration* SensorRequest::_internal_mutable_cfg() {
1082  if (!_internal_has_cfg()) {
1083  clear_request_data();
1084  set_has_cfg();
1085  request_data_.cfg_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::Configuration >(GetArena());
1086  }
1087  return request_data_.cfg_;
1088 }
1089 inline ::jaiabot::sensor::protobuf::Configuration* SensorRequest::mutable_cfg() {
1090  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorRequest.cfg)
1091  return _internal_mutable_cfg();
1092 }
1093 
1094 // optional .jaiabot.sensor.protobuf.MCUCommand mcu_command = 20;
1095 inline bool SensorRequest::_internal_has_mcu_command() const {
1096  bool value = (_has_bits_[0] & 0x00000010u) != 0;
1097  return value;
1098 }
1099 inline bool SensorRequest::has_mcu_command() const {
1100  return _internal_has_mcu_command();
1101 }
1102 inline void SensorRequest::clear_mcu_command() {
1103  mcu_command_ = 1;
1104  _has_bits_[0] &= ~0x00000010u;
1105 }
1106 inline ::jaiabot::sensor::protobuf::MCUCommand SensorRequest::_internal_mcu_command() const {
1107  return static_cast< ::jaiabot::sensor::protobuf::MCUCommand >(mcu_command_);
1108 }
1110  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.mcu_command)
1111  return _internal_mcu_command();
1112 }
1113 inline void SensorRequest::_internal_set_mcu_command(::jaiabot::sensor::protobuf::MCUCommand value) {
1115  _has_bits_[0] |= 0x00000010u;
1116  mcu_command_ = value;
1117 }
1118 inline void SensorRequest::set_mcu_command(::jaiabot::sensor::protobuf::MCUCommand value) {
1119  _internal_set_mcu_command(value);
1120  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.mcu_command)
1121 }
1122 
1123 // optional .jaiabot.sensor.protobuf.CalibrationType calibration_type = 21;
1124 inline bool SensorRequest::_internal_has_calibration_type() const {
1125  bool value = (_has_bits_[0] & 0x00000020u) != 0;
1126  return value;
1127 }
1128 inline bool SensorRequest::has_calibration_type() const {
1129  return _internal_has_calibration_type();
1130 }
1131 inline void SensorRequest::clear_calibration_type() {
1132  calibration_type_ = 1;
1133  _has_bits_[0] &= ~0x00000020u;
1134 }
1135 inline ::jaiabot::sensor::protobuf::CalibrationType SensorRequest::_internal_calibration_type() const {
1136  return static_cast< ::jaiabot::sensor::protobuf::CalibrationType >(calibration_type_);
1137 }
1138 inline ::jaiabot::sensor::protobuf::CalibrationType SensorRequest::calibration_type() const {
1139  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.calibration_type)
1140  return _internal_calibration_type();
1141 }
1142 inline void SensorRequest::_internal_set_calibration_type(::jaiabot::sensor::protobuf::CalibrationType value) {
1144  _has_bits_[0] |= 0x00000020u;
1145  calibration_type_ = value;
1146 }
1147 inline void SensorRequest::set_calibration_type(::jaiabot::sensor::protobuf::CalibrationType value) {
1148  _internal_set_calibration_type(value);
1149  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.calibration_type)
1150 }
1151 
1152 // optional double calibration_value = 22;
1153 inline bool SensorRequest::_internal_has_calibration_value() const {
1154  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1155  return value;
1156 }
1157 inline bool SensorRequest::has_calibration_value() const {
1158  return _internal_has_calibration_value();
1159 }
1160 inline void SensorRequest::clear_calibration_value() {
1161  calibration_value_ = 0;
1162  _has_bits_[0] &= ~0x00000002u;
1163 }
1164 inline double SensorRequest::_internal_calibration_value() const {
1165  return calibration_value_;
1166 }
1167 inline double SensorRequest::calibration_value() const {
1168  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.calibration_value)
1169  return _internal_calibration_value();
1170 }
1171 inline void SensorRequest::_internal_set_calibration_value(double value) {
1172  _has_bits_[0] |= 0x00000002u;
1173  calibration_value_ = value;
1174 }
1175 inline void SensorRequest::set_calibration_value(double value) {
1176  _internal_set_calibration_value(value);
1177  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.calibration_value)
1178 }
1179 
1180 // optional .jaiabot.sensor.protobuf.CompensationType compensation_type = 23;
1181 inline bool SensorRequest::_internal_has_compensation_type() const {
1182  bool value = (_has_bits_[0] & 0x00000008u) != 0;
1183  return value;
1184 }
1185 inline bool SensorRequest::has_compensation_type() const {
1186  return _internal_has_compensation_type();
1187 }
1188 inline void SensorRequest::clear_compensation_type() {
1189  compensation_type_ = 1;
1190  _has_bits_[0] &= ~0x00000008u;
1191 }
1192 inline ::jaiabot::sensor::protobuf::CompensationType SensorRequest::_internal_compensation_type() const {
1193  return static_cast< ::jaiabot::sensor::protobuf::CompensationType >(compensation_type_);
1194 }
1195 inline ::jaiabot::sensor::protobuf::CompensationType SensorRequest::compensation_type() const {
1196  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.compensation_type)
1197  return _internal_compensation_type();
1198 }
1199 inline void SensorRequest::_internal_set_compensation_type(::jaiabot::sensor::protobuf::CompensationType value) {
1201  _has_bits_[0] |= 0x00000008u;
1202  compensation_type_ = value;
1203 }
1204 inline void SensorRequest::set_compensation_type(::jaiabot::sensor::protobuf::CompensationType value) {
1205  _internal_set_compensation_type(value);
1206  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.compensation_type)
1207 }
1208 
1209 // optional double compensation_value = 24;
1210 inline bool SensorRequest::_internal_has_compensation_value() const {
1211  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1212  return value;
1213 }
1214 inline bool SensorRequest::has_compensation_value() const {
1215  return _internal_has_compensation_value();
1216 }
1217 inline void SensorRequest::clear_compensation_value() {
1218  compensation_value_ = 0;
1219  _has_bits_[0] &= ~0x00000004u;
1220 }
1221 inline double SensorRequest::_internal_compensation_value() const {
1222  return compensation_value_;
1223 }
1224 inline double SensorRequest::compensation_value() const {
1225  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorRequest.compensation_value)
1226  return _internal_compensation_value();
1227 }
1228 inline void SensorRequest::_internal_set_compensation_value(double value) {
1229  _has_bits_[0] |= 0x00000004u;
1230  compensation_value_ = value;
1231 }
1232 inline void SensorRequest::set_compensation_value(double value) {
1233  _internal_set_compensation_value(value);
1234  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorRequest.compensation_value)
1235 }
1236 
1237 inline bool SensorRequest::has_request_data() const {
1238  return request_data_case() != REQUEST_DATA_NOT_SET;
1239 }
1240 inline void SensorRequest::clear_has_request_data() {
1241  _oneof_case_[0] = REQUEST_DATA_NOT_SET;
1242 }
1243 inline SensorRequest::RequestDataCase SensorRequest::request_data_case() const {
1244  return SensorRequest::RequestDataCase(_oneof_case_[0]);
1245 }
1246 // -------------------------------------------------------------------
1247 
1248 // SensorData
1249 
1250 // required uint64 time = 1 [(.dccl.field) = {
1251 inline bool SensorData::_internal_has_time() const {
1252  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1253  return value;
1254 }
1255 inline bool SensorData::has_time() const {
1256  return _internal_has_time();
1257 }
1258 inline void SensorData::clear_time() {
1259  time_ = PROTOBUF_ULONGLONG(0);
1260  _has_bits_[0] &= ~0x00000001u;
1261 }
1262 inline ::PROTOBUF_NAMESPACE_ID::uint64 SensorData::_internal_time() const {
1263  return time_;
1264 }
1265 inline ::PROTOBUF_NAMESPACE_ID::uint64 SensorData::time() const {
1266  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.time)
1267  return _internal_time();
1268 }
1269 inline void SensorData::_internal_set_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
1270  _has_bits_[0] |= 0x00000001u;
1271  time_ = value;
1272 }
1273 inline void SensorData::set_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
1274  _internal_set_time(value);
1275  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorData.time)
1276 }
1277 
1278 // .jaiabot.sensor.protobuf.Metadata metadata = 11;
1279 inline bool SensorData::_internal_has_metadata() const {
1280  return data_case() == kMetadata;
1281 }
1282 inline bool SensorData::has_metadata() const {
1283  return _internal_has_metadata();
1284 }
1285 inline void SensorData::set_has_metadata() {
1286  _oneof_case_[0] = kMetadata;
1287 }
1288 inline ::jaiabot::sensor::protobuf::Metadata* SensorData::release_metadata() {
1289  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.metadata)
1290  if (_internal_has_metadata()) {
1291  clear_has_data();
1292  ::jaiabot::sensor::protobuf::Metadata* temp = data_.metadata_;
1293  if (GetArena() != nullptr) {
1294  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1295  }
1296  data_.metadata_ = nullptr;
1297  return temp;
1298  } else {
1299  return nullptr;
1300  }
1301 }
1302 inline const ::jaiabot::sensor::protobuf::Metadata& SensorData::_internal_metadata() const {
1303  return _internal_has_metadata()
1304  ? *data_.metadata_
1305  : *reinterpret_cast< ::jaiabot::sensor::protobuf::Metadata*>(&::jaiabot::sensor::protobuf::_Metadata_default_instance_);
1306 }
1307 inline const ::jaiabot::sensor::protobuf::Metadata& SensorData::metadata() const {
1308  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.metadata)
1309  return _internal_metadata();
1310 }
1311 inline ::jaiabot::sensor::protobuf::Metadata* SensorData::unsafe_arena_release_metadata() {
1312  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.metadata)
1313  if (_internal_has_metadata()) {
1314  clear_has_data();
1315  ::jaiabot::sensor::protobuf::Metadata* temp = data_.metadata_;
1316  data_.metadata_ = nullptr;
1317  return temp;
1318  } else {
1319  return nullptr;
1320  }
1321 }
1322 inline void SensorData::unsafe_arena_set_allocated_metadata(::jaiabot::sensor::protobuf::Metadata* metadata) {
1323  clear_data();
1324  if (metadata) {
1325  set_has_metadata();
1326  data_.metadata_ = metadata;
1327  }
1328  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.metadata)
1329 }
1330 inline ::jaiabot::sensor::protobuf::Metadata* SensorData::_internal_mutable_metadata() {
1331  if (!_internal_has_metadata()) {
1332  clear_data();
1333  set_has_metadata();
1334  data_.metadata_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::Metadata >(GetArena());
1335  }
1336  return data_.metadata_;
1337 }
1338 inline ::jaiabot::sensor::protobuf::Metadata* SensorData::mutable_metadata() {
1339  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.metadata)
1340  return _internal_mutable_metadata();
1341 }
1342 
1343 // .jaiabot.sensor.protobuf.AtlasScientificOEMEC oem_ec = 12;
1344 inline bool SensorData::_internal_has_oem_ec() const {
1345  return data_case() == kOemEc;
1346 }
1347 inline bool SensorData::has_oem_ec() const {
1348  return _internal_has_oem_ec();
1349 }
1350 inline void SensorData::set_has_oem_ec() {
1351  _oneof_case_[0] = kOemEc;
1352 }
1353 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* SensorData::release_oem_ec() {
1354  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.oem_ec)
1355  if (_internal_has_oem_ec()) {
1356  clear_has_data();
1357  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* temp = data_.oem_ec_;
1358  if (GetArena() != nullptr) {
1359  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1360  }
1361  data_.oem_ec_ = nullptr;
1362  return temp;
1363  } else {
1364  return nullptr;
1365  }
1366 }
1367 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMEC& SensorData::_internal_oem_ec() const {
1368  return _internal_has_oem_ec()
1369  ? *data_.oem_ec_
1370  : *reinterpret_cast< ::jaiabot::sensor::protobuf::AtlasScientificOEMEC*>(&::jaiabot::sensor::protobuf::_AtlasScientificOEMEC_default_instance_);
1371 }
1372 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMEC& SensorData::oem_ec() const {
1373  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.oem_ec)
1374  return _internal_oem_ec();
1375 }
1376 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* SensorData::unsafe_arena_release_oem_ec() {
1377  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.oem_ec)
1378  if (_internal_has_oem_ec()) {
1379  clear_has_data();
1380  ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* temp = data_.oem_ec_;
1381  data_.oem_ec_ = nullptr;
1382  return temp;
1383  } else {
1384  return nullptr;
1385  }
1386 }
1387 inline void SensorData::unsafe_arena_set_allocated_oem_ec(::jaiabot::sensor::protobuf::AtlasScientificOEMEC* oem_ec) {
1388  clear_data();
1389  if (oem_ec) {
1390  set_has_oem_ec();
1391  data_.oem_ec_ = oem_ec;
1392  }
1393  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.oem_ec)
1394 }
1395 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* SensorData::_internal_mutable_oem_ec() {
1396  if (!_internal_has_oem_ec()) {
1397  clear_data();
1398  set_has_oem_ec();
1399  data_.oem_ec_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::AtlasScientificOEMEC >(GetArena());
1400  }
1401  return data_.oem_ec_;
1402 }
1403 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMEC* SensorData::mutable_oem_ec() {
1404  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.oem_ec)
1405  return _internal_mutable_oem_ec();
1406 }
1407 
1408 // .jaiabot.sensor.protobuf.BlueRoboticsBar30 bar30 = 13;
1409 inline bool SensorData::_internal_has_bar30() const {
1410  return data_case() == kBar30;
1411 }
1412 inline bool SensorData::has_bar30() const {
1413  return _internal_has_bar30();
1414 }
1415 inline void SensorData::set_has_bar30() {
1416  _oneof_case_[0] = kBar30;
1417 }
1418 inline ::jaiabot::sensor::protobuf::BlueRoboticsBar30* SensorData::release_bar30() {
1419  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.bar30)
1420  if (_internal_has_bar30()) {
1421  clear_has_data();
1422  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* temp = data_.bar30_;
1423  if (GetArena() != nullptr) {
1424  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1425  }
1426  data_.bar30_ = nullptr;
1427  return temp;
1428  } else {
1429  return nullptr;
1430  }
1431 }
1432 inline const ::jaiabot::sensor::protobuf::BlueRoboticsBar30& SensorData::_internal_bar30() const {
1433  return _internal_has_bar30()
1434  ? *data_.bar30_
1435  : *reinterpret_cast< ::jaiabot::sensor::protobuf::BlueRoboticsBar30*>(&::jaiabot::sensor::protobuf::_BlueRoboticsBar30_default_instance_);
1436 }
1437 inline const ::jaiabot::sensor::protobuf::BlueRoboticsBar30& SensorData::bar30() const {
1438  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.bar30)
1439  return _internal_bar30();
1440 }
1441 inline ::jaiabot::sensor::protobuf::BlueRoboticsBar30* SensorData::unsafe_arena_release_bar30() {
1442  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.bar30)
1443  if (_internal_has_bar30()) {
1444  clear_has_data();
1445  ::jaiabot::sensor::protobuf::BlueRoboticsBar30* temp = data_.bar30_;
1446  data_.bar30_ = nullptr;
1447  return temp;
1448  } else {
1449  return nullptr;
1450  }
1451 }
1452 inline void SensorData::unsafe_arena_set_allocated_bar30(::jaiabot::sensor::protobuf::BlueRoboticsBar30* bar30) {
1453  clear_data();
1454  if (bar30) {
1455  set_has_bar30();
1456  data_.bar30_ = bar30;
1457  }
1458  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.bar30)
1459 }
1460 inline ::jaiabot::sensor::protobuf::BlueRoboticsBar30* SensorData::_internal_mutable_bar30() {
1461  if (!_internal_has_bar30()) {
1462  clear_data();
1463  set_has_bar30();
1464  data_.bar30_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::BlueRoboticsBar30 >(GetArena());
1465  }
1466  return data_.bar30_;
1467 }
1468 inline ::jaiabot::sensor::protobuf::BlueRoboticsBar30* SensorData::mutable_bar30() {
1469  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.bar30)
1470  return _internal_mutable_bar30();
1471 }
1472 
1473 // .jaiabot.sensor.protobuf.AtlasScientificOEMpH oem_ph = 14;
1474 inline bool SensorData::_internal_has_oem_ph() const {
1475  return data_case() == kOemPh;
1476 }
1477 inline bool SensorData::has_oem_ph() const {
1478  return _internal_has_oem_ph();
1479 }
1480 inline void SensorData::set_has_oem_ph() {
1481  _oneof_case_[0] = kOemPh;
1482 }
1483 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* SensorData::release_oem_ph() {
1484  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.oem_ph)
1485  if (_internal_has_oem_ph()) {
1486  clear_has_data();
1487  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* temp = data_.oem_ph_;
1488  if (GetArena() != nullptr) {
1489  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1490  }
1491  data_.oem_ph_ = nullptr;
1492  return temp;
1493  } else {
1494  return nullptr;
1495  }
1496 }
1497 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMpH& SensorData::_internal_oem_ph() const {
1498  return _internal_has_oem_ph()
1499  ? *data_.oem_ph_
1500  : *reinterpret_cast< ::jaiabot::sensor::protobuf::AtlasScientificOEMpH*>(&::jaiabot::sensor::protobuf::_AtlasScientificOEMpH_default_instance_);
1501 }
1502 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMpH& SensorData::oem_ph() const {
1503  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.oem_ph)
1504  return _internal_oem_ph();
1505 }
1506 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* SensorData::unsafe_arena_release_oem_ph() {
1507  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.oem_ph)
1508  if (_internal_has_oem_ph()) {
1509  clear_has_data();
1510  ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* temp = data_.oem_ph_;
1511  data_.oem_ph_ = nullptr;
1512  return temp;
1513  } else {
1514  return nullptr;
1515  }
1516 }
1517 inline void SensorData::unsafe_arena_set_allocated_oem_ph(::jaiabot::sensor::protobuf::AtlasScientificOEMpH* oem_ph) {
1518  clear_data();
1519  if (oem_ph) {
1520  set_has_oem_ph();
1521  data_.oem_ph_ = oem_ph;
1522  }
1523  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.oem_ph)
1524 }
1525 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* SensorData::_internal_mutable_oem_ph() {
1526  if (!_internal_has_oem_ph()) {
1527  clear_data();
1528  set_has_oem_ph();
1529  data_.oem_ph_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::AtlasScientificOEMpH >(GetArena());
1530  }
1531  return data_.oem_ph_;
1532 }
1533 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMpH* SensorData::mutable_oem_ph() {
1534  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.oem_ph)
1535  return _internal_mutable_oem_ph();
1536 }
1537 
1538 // .jaiabot.sensor.protobuf.AtlasScientificOEMDO oem_do = 15;
1539 inline bool SensorData::_internal_has_oem_do() const {
1540  return data_case() == kOemDo;
1541 }
1542 inline bool SensorData::has_oem_do() const {
1543  return _internal_has_oem_do();
1544 }
1545 inline void SensorData::set_has_oem_do() {
1546  _oneof_case_[0] = kOemDo;
1547 }
1548 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* SensorData::release_oem_do() {
1549  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.oem_do)
1550  if (_internal_has_oem_do()) {
1551  clear_has_data();
1552  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* temp = data_.oem_do_;
1553  if (GetArena() != nullptr) {
1554  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1555  }
1556  data_.oem_do_ = nullptr;
1557  return temp;
1558  } else {
1559  return nullptr;
1560  }
1561 }
1562 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMDO& SensorData::_internal_oem_do() const {
1563  return _internal_has_oem_do()
1564  ? *data_.oem_do_
1565  : *reinterpret_cast< ::jaiabot::sensor::protobuf::AtlasScientificOEMDO*>(&::jaiabot::sensor::protobuf::_AtlasScientificOEMDO_default_instance_);
1566 }
1567 inline const ::jaiabot::sensor::protobuf::AtlasScientificOEMDO& SensorData::oem_do() const {
1568  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.oem_do)
1569  return _internal_oem_do();
1570 }
1571 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* SensorData::unsafe_arena_release_oem_do() {
1572  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.oem_do)
1573  if (_internal_has_oem_do()) {
1574  clear_has_data();
1575  ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* temp = data_.oem_do_;
1576  data_.oem_do_ = nullptr;
1577  return temp;
1578  } else {
1579  return nullptr;
1580  }
1581 }
1582 inline void SensorData::unsafe_arena_set_allocated_oem_do(::jaiabot::sensor::protobuf::AtlasScientificOEMDO* oem_do) {
1583  clear_data();
1584  if (oem_do) {
1585  set_has_oem_do();
1586  data_.oem_do_ = oem_do;
1587  }
1588  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.oem_do)
1589 }
1590 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* SensorData::_internal_mutable_oem_do() {
1591  if (!_internal_has_oem_do()) {
1592  clear_data();
1593  set_has_oem_do();
1594  data_.oem_do_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::AtlasScientificOEMDO >(GetArena());
1595  }
1596  return data_.oem_do_;
1597 }
1598 inline ::jaiabot::sensor::protobuf::AtlasScientificOEMDO* SensorData::mutable_oem_do() {
1599  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.oem_do)
1600  return _internal_mutable_oem_do();
1601 }
1602 
1603 // .jaiabot.sensor.protobuf.TurnerCFluor c_fluor = 16;
1604 inline bool SensorData::_internal_has_c_fluor() const {
1605  return data_case() == kCFluor;
1606 }
1607 inline bool SensorData::has_c_fluor() const {
1608  return _internal_has_c_fluor();
1609 }
1610 inline void SensorData::set_has_c_fluor() {
1611  _oneof_case_[0] = kCFluor;
1612 }
1613 inline ::jaiabot::sensor::protobuf::TurnerCFluor* SensorData::release_c_fluor() {
1614  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorData.c_fluor)
1615  if (_internal_has_c_fluor()) {
1616  clear_has_data();
1617  ::jaiabot::sensor::protobuf::TurnerCFluor* temp = data_.c_fluor_;
1618  if (GetArena() != nullptr) {
1619  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1620  }
1621  data_.c_fluor_ = nullptr;
1622  return temp;
1623  } else {
1624  return nullptr;
1625  }
1626 }
1627 inline const ::jaiabot::sensor::protobuf::TurnerCFluor& SensorData::_internal_c_fluor() const {
1628  return _internal_has_c_fluor()
1629  ? *data_.c_fluor_
1630  : *reinterpret_cast< ::jaiabot::sensor::protobuf::TurnerCFluor*>(&::jaiabot::sensor::protobuf::_TurnerCFluor_default_instance_);
1631 }
1632 inline const ::jaiabot::sensor::protobuf::TurnerCFluor& SensorData::c_fluor() const {
1633  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorData.c_fluor)
1634  return _internal_c_fluor();
1635 }
1636 inline ::jaiabot::sensor::protobuf::TurnerCFluor* SensorData::unsafe_arena_release_c_fluor() {
1637  // @@protoc_insertion_point(field_unsafe_arena_release:jaiabot.sensor.protobuf.SensorData.c_fluor)
1638  if (_internal_has_c_fluor()) {
1639  clear_has_data();
1640  ::jaiabot::sensor::protobuf::TurnerCFluor* temp = data_.c_fluor_;
1641  data_.c_fluor_ = nullptr;
1642  return temp;
1643  } else {
1644  return nullptr;
1645  }
1646 }
1647 inline void SensorData::unsafe_arena_set_allocated_c_fluor(::jaiabot::sensor::protobuf::TurnerCFluor* c_fluor) {
1648  clear_data();
1649  if (c_fluor) {
1650  set_has_c_fluor();
1651  data_.c_fluor_ = c_fluor;
1652  }
1653  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorData.c_fluor)
1654 }
1655 inline ::jaiabot::sensor::protobuf::TurnerCFluor* SensorData::_internal_mutable_c_fluor() {
1656  if (!_internal_has_c_fluor()) {
1657  clear_data();
1658  set_has_c_fluor();
1659  data_.c_fluor_ = CreateMaybeMessage< ::jaiabot::sensor::protobuf::TurnerCFluor >(GetArena());
1660  }
1661  return data_.c_fluor_;
1662 }
1663 inline ::jaiabot::sensor::protobuf::TurnerCFluor* SensorData::mutable_c_fluor() {
1664  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorData.c_fluor)
1665  return _internal_mutable_c_fluor();
1666 }
1667 
1668 inline bool SensorData::has_data() const {
1669  return data_case() != DATA_NOT_SET;
1670 }
1671 inline void SensorData::clear_has_data() {
1672  _oneof_case_[0] = DATA_NOT_SET;
1673 }
1674 inline SensorData::DataCase SensorData::data_case() const {
1675  return SensorData::DataCase(_oneof_case_[0]);
1676 }
1677 // -------------------------------------------------------------------
1678 
1679 // SensorThreadConfig
1680 
1681 // optional .jaiabot.sensor.protobuf.Metadata metadata = 1;
1682 inline bool SensorThreadConfig::_internal_has_metadata() const {
1683  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1684  PROTOBUF_ASSUME(!value || metadata_ != nullptr);
1685  return value;
1686 }
1687 inline bool SensorThreadConfig::has_metadata() const {
1688  return _internal_has_metadata();
1689 }
1690 inline const ::jaiabot::sensor::protobuf::Metadata& SensorThreadConfig::_internal_metadata() const {
1691  const ::jaiabot::sensor::protobuf::Metadata* p = metadata_;
1692  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::sensor::protobuf::Metadata*>(
1694 }
1695 inline const ::jaiabot::sensor::protobuf::Metadata& SensorThreadConfig::metadata() const {
1696  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorThreadConfig.metadata)
1697  return _internal_metadata();
1698 }
1699 inline void SensorThreadConfig::unsafe_arena_set_allocated_metadata(
1700  ::jaiabot::sensor::protobuf::Metadata* metadata) {
1701  if (GetArena() == nullptr) {
1702  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(metadata_);
1703  }
1704  metadata_ = metadata;
1705  if (metadata) {
1706  _has_bits_[0] |= 0x00000001u;
1707  } else {
1708  _has_bits_[0] &= ~0x00000001u;
1709  }
1710  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.sensor.protobuf.SensorThreadConfig.metadata)
1711 }
1712 inline ::jaiabot::sensor::protobuf::Metadata* SensorThreadConfig::release_metadata() {
1713  auto temp = unsafe_arena_release_metadata();
1714  if (GetArena() != nullptr) {
1715  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1716  }
1717  return temp;
1718 }
1719 inline ::jaiabot::sensor::protobuf::Metadata* SensorThreadConfig::unsafe_arena_release_metadata() {
1720  // @@protoc_insertion_point(field_release:jaiabot.sensor.protobuf.SensorThreadConfig.metadata)
1721  _has_bits_[0] &= ~0x00000001u;
1722  ::jaiabot::sensor::protobuf::Metadata* temp = metadata_;
1723  metadata_ = nullptr;
1724  return temp;
1725 }
1726 inline ::jaiabot::sensor::protobuf::Metadata* SensorThreadConfig::_internal_mutable_metadata() {
1727  _has_bits_[0] |= 0x00000001u;
1728  if (metadata_ == nullptr) {
1729  auto* p = CreateMaybeMessage<::jaiabot::sensor::protobuf::Metadata>(GetArena());
1730  metadata_ = p;
1731  }
1732  return metadata_;
1733 }
1734 inline ::jaiabot::sensor::protobuf::Metadata* SensorThreadConfig::mutable_metadata() {
1735  // @@protoc_insertion_point(field_mutable:jaiabot.sensor.protobuf.SensorThreadConfig.metadata)
1736  return _internal_mutable_metadata();
1737 }
1738 inline void SensorThreadConfig::set_allocated_metadata(::jaiabot::sensor::protobuf::Metadata* metadata) {
1739  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1740  if (message_arena == nullptr) {
1741  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(metadata_);
1742  }
1743  if (metadata) {
1744  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1745  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(metadata)->GetArena();
1746  if (message_arena != submessage_arena) {
1747  metadata = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1748  message_arena, metadata, submessage_arena);
1749  }
1750  _has_bits_[0] |= 0x00000001u;
1751  } else {
1752  _has_bits_[0] &= ~0x00000001u;
1753  }
1754  metadata_ = metadata;
1755  // @@protoc_insertion_point(field_set_allocated:jaiabot.sensor.protobuf.SensorThreadConfig.metadata)
1756 }
1757 
1758 // optional int32 sample_rate = 2;
1759 inline bool SensorThreadConfig::_internal_has_sample_rate() const {
1760  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1761  return value;
1762 }
1763 inline bool SensorThreadConfig::has_sample_rate() const {
1764  return _internal_has_sample_rate();
1765 }
1766 inline void SensorThreadConfig::clear_sample_rate() {
1767  sample_rate_ = 0;
1768  _has_bits_[0] &= ~0x00000002u;
1769 }
1770 inline ::PROTOBUF_NAMESPACE_ID::int32 SensorThreadConfig::_internal_sample_rate() const {
1771  return sample_rate_;
1772 }
1773 inline ::PROTOBUF_NAMESPACE_ID::int32 SensorThreadConfig::sample_rate() const {
1774  // @@protoc_insertion_point(field_get:jaiabot.sensor.protobuf.SensorThreadConfig.sample_rate)
1775  return _internal_sample_rate();
1776 }
1777 inline void SensorThreadConfig::_internal_set_sample_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
1778  _has_bits_[0] |= 0x00000002u;
1779  sample_rate_ = value;
1780 }
1781 inline void SensorThreadConfig::set_sample_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
1782  _internal_set_sample_rate(value);
1783  // @@protoc_insertion_point(field_set:jaiabot.sensor.protobuf.SensorThreadConfig.sample_rate)
1784 }
1785 
1786 #ifdef __GNUC__
1787  #pragma GCC diagnostic pop
1788 #endif // __GNUC__
1789 // -------------------------------------------------------------------
1790 
1791 // -------------------------------------------------------------------
1792 
1793 
1794 // @@protoc_insertion_point(namespace_scope)
1795 
1796 } // namespace protobuf
1797 } // namespace sensor
1798 } // namespace jaiabot
1799 
1800 PROTOBUF_NAMESPACE_OPEN
1801 
1802 template <> struct is_proto_enum< ::jaiabot::sensor::protobuf::MCUCommand> : ::std::true_type {};
1803 template <>
1804 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::sensor::protobuf::MCUCommand>() {
1806 }
1807 template <> struct is_proto_enum< ::jaiabot::sensor::protobuf::CompensationType> : ::std::true_type {};
1808 template <>
1809 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::sensor::protobuf::CompensationType>() {
1811 }
1812 template <> struct is_proto_enum< ::jaiabot::sensor::protobuf::CalibrationType> : ::std::true_type {};
1813 template <>
1814 inline const EnumDescriptor* GetEnumDescriptor< ::jaiabot::sensor::protobuf::CalibrationType>() {
1816 }
1817 
1818 PROTOBUF_NAMESPACE_CLOSE
1819 
1820 // @@protoc_insertion_point(global_scope)
1821 
1822 #include <google/protobuf/port_undef.inc>
1823 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto
MetadataDefaultTypeInternal _Metadata_default_instance_
constexpr goby::middleware::Group mcu_command
Definition: groups.h:56
constexpr goby::middleware::Group metadata
Definition: groups.h:114
bool CompensationType_Parse(const std::string &name, CompensationType *value)
ConfigurationDefaultTypeInternal _Configuration_default_instance_
SensorThreadConfigDefaultTypeInternal _SensorThreadConfig_default_instance_
constexpr CompensationType CompensationType_MAX
bool CalibrationType_Parse(const std::string &name, CalibrationType *value)
bool MCUCommand_Parse(const std::string &name, MCUCommand *value)
constexpr CalibrationType CalibrationType_MIN
AtlasScientificOEMpHDefaultTypeInternal _AtlasScientificOEMpH_default_instance_
const std::string & CalibrationType_Name(T enum_t_value)
constexpr int MCUCommand_ARRAYSIZE
constexpr int CalibrationType_ARRAYSIZE
bool MCUCommand_IsValid(int value)
SensorRequestDefaultTypeInternal _SensorRequest_default_instance_
const std::string & CompensationType_Name(T enum_t_value)
bool CompensationType_IsValid(int value)
const std::string & MCUCommand_Name(T enum_t_value)
AtlasScientificOEMDODefaultTypeInternal _AtlasScientificOEMDO_default_instance_
constexpr MCUCommand MCUCommand_MAX
bool CalibrationType_IsValid(int value)
TurnerCFluorDefaultTypeInternal _TurnerCFluor_default_instance_
BlueRoboticsBar30DefaultTypeInternal _BlueRoboticsBar30_default_instance_
constexpr CalibrationType CalibrationType_MAX
SensorDataDefaultTypeInternal _SensorData_default_instance_
AtlasScientificOEMECDefaultTypeInternal _AtlasScientificOEMEC_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CompensationType_descriptor()
constexpr CompensationType CompensationType_MIN
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MCUCommand_descriptor()
constexpr MCUCommand MCUCommand_MIN
constexpr int CompensationType_ARRAYSIZE
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CalibrationType_descriptor()
protobuf::DeviceMetadata metadata()
Definition: metadata.h:39
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_jaiabot_2fmessages_2fsensor_2fsensor_5fcore_2eproto
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)