JaiaBot  1.12.0+18+g85da5f82
JaiaBot micro-AUV software
config.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: bin/simulator/config.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_bin_2fsimulator_2fconfig_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_bin_2fsimulator_2fconfig_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3012000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3012004 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata_lite.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/unknown_field_set.h>
35 #include "dccl/option_extensions.pb.h"
36 #include "goby/middleware/protobuf/app_config.pb.h"
37 #include "goby/zeromq/protobuf/interprocess_config.pb.h"
38 #include "goby/moos/protobuf/moos_gateway_config.pb.h"
39 #include "goby/middleware/protobuf/udp_config.pb.h"
41 #include <boost/units/quantity.hpp>
42 #include <boost/units/absolute.hpp>
43 #include <boost/units/dimensionless_type.hpp>
44 #include <boost/units/make_scaled_unit.hpp>
45 
46 #include <boost/units/systems/angle/degrees.hpp>
47 
48 #include <boost/units/systems/temperature/celsius.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_bin_2fsimulator_2fconfig_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_bin_2fsimulator_2fconfig_2eproto;
73 namespace jaiabot {
74 namespace config {
75 class ArduinoSimThread;
76 class ArduinoSimThreadDefaultTypeInternal;
77 extern ArduinoSimThreadDefaultTypeInternal _ArduinoSimThread_default_instance_;
78 class Simulator;
79 class SimulatorDefaultTypeInternal;
80 extern SimulatorDefaultTypeInternal _Simulator_default_instance_;
81 class Simulator_ScalarSample;
82 class Simulator_ScalarSampleDefaultTypeInternal;
83 extern Simulator_ScalarSampleDefaultTypeInternal _Simulator_ScalarSample_default_instance_;
84 } // namespace config
85 } // namespace jaiabot
86 PROTOBUF_NAMESPACE_OPEN
87 template<> ::jaiabot::config::ArduinoSimThread* Arena::CreateMaybeMessage<::jaiabot::config::ArduinoSimThread>(Arena*);
88 template<> ::jaiabot::config::Simulator* Arena::CreateMaybeMessage<::jaiabot::config::Simulator>(Arena*);
89 template<> ::jaiabot::config::Simulator_ScalarSample* Arena::CreateMaybeMessage<::jaiabot::config::Simulator_ScalarSample>(Arena*);
90 PROTOBUF_NAMESPACE_CLOSE
91 namespace jaiabot {
92 namespace config {
93 
94 // ===================================================================
95 
96 class Simulator_ScalarSample PROTOBUF_FINAL :
97  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.Simulator.ScalarSample) */ {
98  public:
99  inline Simulator_ScalarSample() : Simulator_ScalarSample(nullptr) {};
101 
102  Simulator_ScalarSample(const Simulator_ScalarSample& from);
103  Simulator_ScalarSample(Simulator_ScalarSample&& from) noexcept
104  : Simulator_ScalarSample() {
105  *this = ::std::move(from);
106  }
107 
108  inline Simulator_ScalarSample& operator=(const Simulator_ScalarSample& from) {
109  CopyFrom(from);
110  return *this;
111  }
112  inline Simulator_ScalarSample& operator=(Simulator_ScalarSample&& from) noexcept {
113  if (GetArena() == from.GetArena()) {
114  if (this != &from) InternalSwap(&from);
115  } else {
116  CopyFrom(from);
117  }
118  return *this;
119  }
120 
121  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
122  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
123  }
124  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
125  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
126  }
127 
128  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
129  return GetDescriptor();
130  }
131  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
132  return GetMetadataStatic().descriptor;
133  }
134  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
135  return GetMetadataStatic().reflection;
136  }
137  static const Simulator_ScalarSample& default_instance();
138 
139  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
140  static inline const Simulator_ScalarSample* internal_default_instance() {
141  return reinterpret_cast<const Simulator_ScalarSample*>(
143  }
144  static constexpr int kIndexInFileMessages =
145  0;
146 
147  friend void swap(Simulator_ScalarSample& a, Simulator_ScalarSample& b) {
148  a.Swap(&b);
149  }
150  inline void Swap(Simulator_ScalarSample* other) {
151  if (other == this) return;
152  if (GetArena() == other->GetArena()) {
153  InternalSwap(other);
154  } else {
155  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
156  }
157  }
158  void UnsafeArenaSwap(Simulator_ScalarSample* other) {
159  if (other == this) return;
160  GOOGLE_DCHECK(GetArena() == other->GetArena());
161  InternalSwap(other);
162  }
163 
164  // implements Message ----------------------------------------------
165 
166  inline Simulator_ScalarSample* New() const final {
167  return CreateMaybeMessage<Simulator_ScalarSample>(nullptr);
168  }
169 
170  Simulator_ScalarSample* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
171  return CreateMaybeMessage<Simulator_ScalarSample>(arena);
172  }
173  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
174  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
175  void CopyFrom(const Simulator_ScalarSample& from);
176  void MergeFrom(const Simulator_ScalarSample& from);
177  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
178  bool IsInitialized() const final;
179 
180  size_t ByteSizeLong() const final;
181  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
182  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
183  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
184  int GetCachedSize() const final { return _cached_size_.Get(); }
185 
186  private:
187  inline void SharedCtor();
188  inline void SharedDtor();
189  void SetCachedSize(int size) const final;
190  void InternalSwap(Simulator_ScalarSample* other);
191  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
192  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
193  return "jaiabot.config.Simulator.ScalarSample";
194  }
195  protected:
196  explicit Simulator_ScalarSample(::PROTOBUF_NAMESPACE_ID::Arena* arena);
197  private:
198  static void ArenaDtor(void* object);
199  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
200  public:
201 
202  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
203  private:
204  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
205  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2fsimulator_2fconfig_2eproto);
206  return ::descriptor_table_bin_2fsimulator_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
207  }
208 
209  public:
210 
211  // nested types ----------------------------------------------------
212 
213  // accessors -------------------------------------------------------
214 
215  enum : int {
216  kDepthFieldNumber = 1,
217  kTemperatureFieldNumber = 2,
218  kSalinityFieldNumber = 3,
219  };
220  // optional double depth = 1 [(.dccl.field) = {
221  bool has_depth() const;
222  private:
223  bool _internal_has_depth() const;
224  public:
225  void clear_depth();
226  double depth() const;
227  void set_depth(double value);
228  private:
229  double _internal_depth() const;
230  void _internal_set_depth(double value);
231  public:
232 
233  // optional double temperature = 2 [(.dccl.field) = {
234  bool has_temperature() const;
235  private:
236  bool _internal_has_temperature() const;
237  public:
239  double temperature() const;
240  void set_temperature(double value);
241  private:
242  double _internal_temperature() const;
243  void _internal_set_temperature(double value);
244  public:
245 
246  // optional double salinity = 3;
247  bool has_salinity() const;
248  private:
249  bool _internal_has_salinity() const;
250  public:
252  double salinity() const;
253  void set_salinity(double value);
254  private:
255  double _internal_salinity() const;
256  void _internal_set_salinity(double value);
257  public:
258 
259  typedef boost::units::length_dimension depth_dimension;
260 
261  typedef boost::units::unit<depth_dimension,boost::units::si::system> depth_unit;
262 
263  template<typename Quantity >
264  void set_depth_with_units(Quantity value_w_units)
265  { set_depth(boost::units::quantity<depth_unit,double >(value_w_units).value() ); };
266 
267  template<typename Quantity >
268  Quantity depth_with_units() const
269  { return Quantity(depth() * depth_unit()); };
270 
271  boost::units::quantity< depth_unit,double > depth_with_units() const
272  { return depth_with_units<boost::units::quantity< depth_unit,double > >(); };
273 
274  typedef boost::units::temperature_dimension temperature_dimension;
275 
276  typedef boost::units::absolute<boost::units::unit<temperature_dimension,boost::units::celsius::system> > temperature_unit;
277 
278  template<typename Quantity >
279  void set_temperature_with_units(Quantity value_w_units)
280  { set_temperature(boost::units::quantity<temperature_unit,double >(value_w_units).value() ); };
281 
282  template<typename Quantity >
283  Quantity temperature_with_units() const
284  { return Quantity(temperature() * temperature_unit()); };
285 
286  boost::units::quantity< temperature_unit,double > temperature_with_units() const
287  { return temperature_with_units<boost::units::quantity< temperature_unit,double > >(); };
288 
289  // @@protoc_insertion_point(class_scope:jaiabot.config.Simulator.ScalarSample)
290  private:
291  class _Internal;
292 
293  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
294  typedef void InternalArenaConstructable_;
295  typedef void DestructorSkippable_;
296  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
297  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
298  double depth_;
299  double temperature_;
300  double salinity_;
301  friend struct ::TableStruct_bin_2fsimulator_2fconfig_2eproto;
302 };
303 // -------------------------------------------------------------------
304 
305 class Simulator PROTOBUF_FINAL :
306  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.Simulator) */ {
307  public:
308  inline Simulator() : Simulator(nullptr) {};
309  virtual ~Simulator();
310 
311  Simulator(const Simulator& from);
312  Simulator(Simulator&& from) noexcept
313  : Simulator() {
314  *this = ::std::move(from);
315  }
316 
317  inline Simulator& operator=(const Simulator& from) {
318  CopyFrom(from);
319  return *this;
320  }
321  inline Simulator& operator=(Simulator&& from) noexcept {
322  if (GetArena() == from.GetArena()) {
323  if (this != &from) InternalSwap(&from);
324  } else {
325  CopyFrom(from);
326  }
327  return *this;
328  }
329 
330  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
331  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
332  }
333  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
334  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
335  }
336 
337  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
338  return GetDescriptor();
339  }
340  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
341  return GetMetadataStatic().descriptor;
342  }
343  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
344  return GetMetadataStatic().reflection;
345  }
346  static const Simulator& default_instance();
347 
348  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
349  static inline const Simulator* internal_default_instance() {
350  return reinterpret_cast<const Simulator*>(
352  }
353  static constexpr int kIndexInFileMessages =
354  1;
355 
356  friend void swap(Simulator& a, Simulator& b) {
357  a.Swap(&b);
358  }
359  inline void Swap(Simulator* other) {
360  if (other == this) return;
361  if (GetArena() == other->GetArena()) {
362  InternalSwap(other);
363  } else {
364  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
365  }
366  }
367  void UnsafeArenaSwap(Simulator* other) {
368  if (other == this) return;
369  GOOGLE_DCHECK(GetArena() == other->GetArena());
370  InternalSwap(other);
371  }
372 
373  // implements Message ----------------------------------------------
374 
375  inline Simulator* New() const final {
376  return CreateMaybeMessage<Simulator>(nullptr);
377  }
378 
379  Simulator* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
380  return CreateMaybeMessage<Simulator>(arena);
381  }
382  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
383  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
384  void CopyFrom(const Simulator& from);
385  void MergeFrom(const Simulator& from);
386  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
387  bool IsInitialized() const final;
388 
389  size_t ByteSizeLong() const final;
390  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
391  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
392  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
393  int GetCachedSize() const final { return _cached_size_.Get(); }
394 
395  private:
396  inline void SharedCtor();
397  inline void SharedDtor();
398  void SetCachedSize(int size) const final;
399  void InternalSwap(Simulator* other);
400  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
401  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
402  return "jaiabot.config.Simulator";
403  }
404  protected:
405  explicit Simulator(::PROTOBUF_NAMESPACE_ID::Arena* arena);
406  private:
407  static void ArenaDtor(void* object);
408  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
409  public:
410 
411  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
412  private:
413  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
414  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2fsimulator_2fconfig_2eproto);
415  return ::descriptor_table_bin_2fsimulator_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
416  }
417 
418  public:
419 
420  // nested types ----------------------------------------------------
421 
422  typedef Simulator_ScalarSample ScalarSample;
423 
424  // accessors -------------------------------------------------------
425 
426  enum : int {
427  kSampleFieldNumber = 40,
428  kAppFieldNumber = 1,
429  kInterprocessFieldNumber = 2,
430  kMoosFieldNumber = 10,
431  kGpsUdpConfigFieldNumber = 20,
432  kPressureUdpConfigFieldNumber = 21,
433  kSalinityUdpConfigFieldNumber = 22,
434  kStartLocationFieldNumber = 26,
435  kArduinoConfigFieldNumber = 60,
436  kHeadingRandMaxFieldNumber = 30,
437  kVerticalDiveRateFieldNumber = 31,
438  kSeafloorDepthFieldNumber = 32,
439  kTemperatureStdevFieldNumber = 41,
440  kSalinityStdevFieldNumber = 42,
441  kEnableGpsFieldNumber = 25,
442  kIsBotSimFieldNumber = 28,
443  kGpsHdopRandMaxFieldNumber = 27,
444  kGpsPdopRandMaxFieldNumber = 29,
445  kSeafloorWavelengthFieldNumber = 33,
446  kSeafloorAmplitudeFieldNumber = 34,
447  kGpsHdopDropoutFieldNumber = 35,
448  kGpsPdopDropoutFieldNumber = 36,
449  kMinimumThrustFieldNumber = 37,
450  kPitchAtRestFieldNumber = 38,
451  };
452  // repeated .jaiabot.config.Simulator.ScalarSample sample = 40;
453  int sample_size() const;
454  private:
455  int _internal_sample_size() const;
456  public:
457  void clear_sample();
458  ::jaiabot::config::Simulator_ScalarSample* mutable_sample(int index);
459  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample >*
461  private:
462  const ::jaiabot::config::Simulator_ScalarSample& _internal_sample(int index) const;
463  ::jaiabot::config::Simulator_ScalarSample* _internal_add_sample();
464  public:
465  const ::jaiabot::config::Simulator_ScalarSample& sample(int index) const;
466  ::jaiabot::config::Simulator_ScalarSample* add_sample();
467  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample >&
468  sample() const;
469 
470  // optional .goby.middleware.protobuf.AppConfig app = 1;
471  bool has_app() const;
472  private:
473  bool _internal_has_app() const;
474  public:
475  void clear_app();
476  const ::goby::middleware::protobuf::AppConfig& app() const;
477  ::goby::middleware::protobuf::AppConfig* release_app();
478  ::goby::middleware::protobuf::AppConfig* mutable_app();
479  void set_allocated_app(::goby::middleware::protobuf::AppConfig* app);
480  private:
481  const ::goby::middleware::protobuf::AppConfig& _internal_app() const;
482  ::goby::middleware::protobuf::AppConfig* _internal_mutable_app();
483  public:
485  ::goby::middleware::protobuf::AppConfig* app);
486  ::goby::middleware::protobuf::AppConfig* unsafe_arena_release_app();
487 
488  // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
489  bool has_interprocess() const;
490  private:
491  bool _internal_has_interprocess() const;
492  public:
494  const ::goby::zeromq::protobuf::InterProcessPortalConfig& interprocess() const;
495  ::goby::zeromq::protobuf::InterProcessPortalConfig* release_interprocess();
496  ::goby::zeromq::protobuf::InterProcessPortalConfig* mutable_interprocess();
497  void set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
498  private:
499  const ::goby::zeromq::protobuf::InterProcessPortalConfig& _internal_interprocess() const;
500  ::goby::zeromq::protobuf::InterProcessPortalConfig* _internal_mutable_interprocess();
501  public:
503  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess);
504  ::goby::zeromq::protobuf::InterProcessPortalConfig* unsafe_arena_release_interprocess();
505 
506  // optional .goby.apps.moos.protobuf.GobyMOOSGatewayConfig.MOOSConfig moos = 10;
507  bool has_moos() const;
508  private:
509  bool _internal_has_moos() const;
510  public:
511  void clear_moos();
512  const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig& moos() const;
513  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* release_moos();
514  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* mutable_moos();
515  void set_allocated_moos(::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* moos);
516  private:
517  const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig& _internal_moos() const;
518  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* _internal_mutable_moos();
519  public:
521  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* moos);
522  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* unsafe_arena_release_moos();
523 
524  // optional .goby.middleware.protobuf.UDPPointToPointConfig gps_udp_config = 20;
525  bool has_gps_udp_config() const;
526  private:
527  bool _internal_has_gps_udp_config() const;
528  public:
530  const ::goby::middleware::protobuf::UDPPointToPointConfig& gps_udp_config() const;
531  ::goby::middleware::protobuf::UDPPointToPointConfig* release_gps_udp_config();
532  ::goby::middleware::protobuf::UDPPointToPointConfig* mutable_gps_udp_config();
533  void set_allocated_gps_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* gps_udp_config);
534  private:
535  const ::goby::middleware::protobuf::UDPPointToPointConfig& _internal_gps_udp_config() const;
536  ::goby::middleware::protobuf::UDPPointToPointConfig* _internal_mutable_gps_udp_config();
537  public:
539  ::goby::middleware::protobuf::UDPPointToPointConfig* gps_udp_config);
540  ::goby::middleware::protobuf::UDPPointToPointConfig* unsafe_arena_release_gps_udp_config();
541 
542  // optional .goby.middleware.protobuf.UDPPointToPointConfig pressure_udp_config = 21;
544  private:
545  bool _internal_has_pressure_udp_config() const;
546  public:
548  const ::goby::middleware::protobuf::UDPPointToPointConfig& pressure_udp_config() const;
549  ::goby::middleware::protobuf::UDPPointToPointConfig* release_pressure_udp_config();
550  ::goby::middleware::protobuf::UDPPointToPointConfig* mutable_pressure_udp_config();
551  void set_allocated_pressure_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* pressure_udp_config);
552  private:
553  const ::goby::middleware::protobuf::UDPPointToPointConfig& _internal_pressure_udp_config() const;
554  ::goby::middleware::protobuf::UDPPointToPointConfig* _internal_mutable_pressure_udp_config();
555  public:
557  ::goby::middleware::protobuf::UDPPointToPointConfig* pressure_udp_config);
558  ::goby::middleware::protobuf::UDPPointToPointConfig* unsafe_arena_release_pressure_udp_config();
559 
560  // optional .goby.middleware.protobuf.UDPPointToPointConfig salinity_udp_config = 22;
562  private:
563  bool _internal_has_salinity_udp_config() const;
564  public:
566  const ::goby::middleware::protobuf::UDPPointToPointConfig& salinity_udp_config() const;
567  ::goby::middleware::protobuf::UDPPointToPointConfig* release_salinity_udp_config();
568  ::goby::middleware::protobuf::UDPPointToPointConfig* mutable_salinity_udp_config();
569  void set_allocated_salinity_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* salinity_udp_config);
570  private:
571  const ::goby::middleware::protobuf::UDPPointToPointConfig& _internal_salinity_udp_config() const;
572  ::goby::middleware::protobuf::UDPPointToPointConfig* _internal_mutable_salinity_udp_config();
573  public:
575  ::goby::middleware::protobuf::UDPPointToPointConfig* salinity_udp_config);
576  ::goby::middleware::protobuf::UDPPointToPointConfig* unsafe_arena_release_salinity_udp_config();
577 
578  // optional .jaiabot.protobuf.GeographicCoordinate start_location = 26;
579  bool has_start_location() const;
580  private:
581  bool _internal_has_start_location() const;
582  public:
584  const ::jaiabot::protobuf::GeographicCoordinate& start_location() const;
585  ::jaiabot::protobuf::GeographicCoordinate* release_start_location();
586  ::jaiabot::protobuf::GeographicCoordinate* mutable_start_location();
587  void set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location);
588  private:
589  const ::jaiabot::protobuf::GeographicCoordinate& _internal_start_location() const;
590  ::jaiabot::protobuf::GeographicCoordinate* _internal_mutable_start_location();
591  public:
593  ::jaiabot::protobuf::GeographicCoordinate* start_location);
594  ::jaiabot::protobuf::GeographicCoordinate* unsafe_arena_release_start_location();
595 
596  // optional .jaiabot.config.ArduinoSimThread arduino_config = 60;
597  bool has_arduino_config() const;
598  private:
599  bool _internal_has_arduino_config() const;
600  public:
602  const ::jaiabot::config::ArduinoSimThread& arduino_config() const;
603  ::jaiabot::config::ArduinoSimThread* release_arduino_config();
604  ::jaiabot::config::ArduinoSimThread* mutable_arduino_config();
605  void set_allocated_arduino_config(::jaiabot::config::ArduinoSimThread* arduino_config);
606  private:
607  const ::jaiabot::config::ArduinoSimThread& _internal_arduino_config() const;
608  ::jaiabot::config::ArduinoSimThread* _internal_mutable_arduino_config();
609  public:
611  ::jaiabot::config::ArduinoSimThread* arduino_config);
612  ::jaiabot::config::ArduinoSimThread* unsafe_arena_release_arduino_config();
613 
614  // optional double heading_rand_max = 30 [default = 0];
615  bool has_heading_rand_max() const;
616  private:
617  bool _internal_has_heading_rand_max() const;
618  public:
620  double heading_rand_max() const;
621  void set_heading_rand_max(double value);
622  private:
623  double _internal_heading_rand_max() const;
624  void _internal_set_heading_rand_max(double value);
625  public:
626 
627  // optional double vertical_dive_rate = 31 [(.dccl.field) = {
629  private:
630  bool _internal_has_vertical_dive_rate() const;
631  public:
633  double vertical_dive_rate() const;
634  void set_vertical_dive_rate(double value);
635  private:
636  double _internal_vertical_dive_rate() const;
637  void _internal_set_vertical_dive_rate(double value);
638  public:
639 
640  // optional double seafloor_depth = 32 [(.dccl.field) = {
641  bool has_seafloor_depth() const;
642  private:
643  bool _internal_has_seafloor_depth() const;
644  public:
646  double seafloor_depth() const;
647  void set_seafloor_depth(double value);
648  private:
649  double _internal_seafloor_depth() const;
650  void _internal_set_seafloor_depth(double value);
651  public:
652 
653  // optional double temperature_stdev = 41 [(.dccl.field) = {
654  bool has_temperature_stdev() const;
655  private:
656  bool _internal_has_temperature_stdev() const;
657  public:
659  double temperature_stdev() const;
660  void set_temperature_stdev(double value);
661  private:
662  double _internal_temperature_stdev() const;
663  void _internal_set_temperature_stdev(double value);
664  public:
665 
666  // optional double salinity_stdev = 42;
667  bool has_salinity_stdev() const;
668  private:
669  bool _internal_has_salinity_stdev() const;
670  public:
672  double salinity_stdev() const;
673  void set_salinity_stdev(double value);
674  private:
675  double _internal_salinity_stdev() const;
676  void _internal_set_salinity_stdev(double value);
677  public:
678 
679  // optional bool enable_gps = 25 [default = true];
680  bool has_enable_gps() const;
681  private:
682  bool _internal_has_enable_gps() const;
683  public:
685  bool enable_gps() const;
686  void set_enable_gps(bool value);
687  private:
688  bool _internal_enable_gps() const;
689  void _internal_set_enable_gps(bool value);
690  public:
691 
692  // optional bool is_bot_sim = 28 [default = true];
693  bool has_is_bot_sim() const;
694  private:
695  bool _internal_has_is_bot_sim() const;
696  public:
698  bool is_bot_sim() const;
699  void set_is_bot_sim(bool value);
700  private:
701  bool _internal_is_bot_sim() const;
702  void _internal_set_is_bot_sim(bool value);
703  public:
704 
705  // optional double gps_hdop_rand_max = 27 [default = 1.3];
706  bool has_gps_hdop_rand_max() const;
707  private:
708  bool _internal_has_gps_hdop_rand_max() const;
709  public:
711  double gps_hdop_rand_max() const;
712  void set_gps_hdop_rand_max(double value);
713  private:
714  double _internal_gps_hdop_rand_max() const;
715  void _internal_set_gps_hdop_rand_max(double value);
716  public:
717 
718  // optional double gps_pdop_rand_max = 29 [default = 2.2];
719  bool has_gps_pdop_rand_max() const;
720  private:
721  bool _internal_has_gps_pdop_rand_max() const;
722  public:
724  double gps_pdop_rand_max() const;
725  void set_gps_pdop_rand_max(double value);
726  private:
727  double _internal_gps_pdop_rand_max() const;
728  void _internal_set_gps_pdop_rand_max(double value);
729  public:
730 
731  // optional double seafloor_wavelength = 33 [default = 100, (.dccl.field) = {
733  private:
734  bool _internal_has_seafloor_wavelength() const;
735  public:
737  double seafloor_wavelength() const;
738  void set_seafloor_wavelength(double value);
739  private:
740  double _internal_seafloor_wavelength() const;
741  void _internal_set_seafloor_wavelength(double value);
742  public:
743 
744  // optional double seafloor_amplitude = 34 [default = 5, (.dccl.field) = {
746  private:
747  bool _internal_has_seafloor_amplitude() const;
748  public:
750  double seafloor_amplitude() const;
751  void set_seafloor_amplitude(double value);
752  private:
753  double _internal_seafloor_amplitude() const;
754  void _internal_set_seafloor_amplitude(double value);
755  public:
756 
757  // optional double gps_hdop_dropout = 35 [default = 20];
758  bool has_gps_hdop_dropout() const;
759  private:
760  bool _internal_has_gps_hdop_dropout() const;
761  public:
763  double gps_hdop_dropout() const;
764  void set_gps_hdop_dropout(double value);
765  private:
766  double _internal_gps_hdop_dropout() const;
767  void _internal_set_gps_hdop_dropout(double value);
768  public:
769 
770  // optional double gps_pdop_dropout = 36 [default = 20];
771  bool has_gps_pdop_dropout() const;
772  private:
773  bool _internal_has_gps_pdop_dropout() const;
774  public:
776  double gps_pdop_dropout() const;
777  void set_gps_pdop_dropout(double value);
778  private:
779  double _internal_gps_pdop_dropout() const;
780  void _internal_set_gps_pdop_dropout(double value);
781  public:
782 
783  // optional double minimum_thrust = 37 [default = 5];
784  bool has_minimum_thrust() const;
785  private:
786  bool _internal_has_minimum_thrust() const;
787  public:
789  double minimum_thrust() const;
790  void set_minimum_thrust(double value);
791  private:
792  double _internal_minimum_thrust() const;
793  void _internal_set_minimum_thrust(double value);
794  public:
795 
796  // optional double pitch_at_rest = 38 [default = 85, (.dccl.field) = {
797  bool has_pitch_at_rest() const;
798  private:
799  bool _internal_has_pitch_at_rest() const;
800  public:
802  double pitch_at_rest() const;
803  void set_pitch_at_rest(double value);
804  private:
805  double _internal_pitch_at_rest() const;
806  void _internal_set_pitch_at_rest(double value);
807  public:
808 
809  typedef boost::units::velocity_dimension vertical_dive_rate_dimension;
810 
811  typedef boost::units::unit<vertical_dive_rate_dimension,boost::units::si::system> vertical_dive_rate_unit;
812 
813  template<typename Quantity >
814  void set_vertical_dive_rate_with_units(Quantity value_w_units)
815  { set_vertical_dive_rate(boost::units::quantity<vertical_dive_rate_unit,double >(value_w_units).value() ); };
816 
817  template<typename Quantity >
819  { return Quantity(vertical_dive_rate() * vertical_dive_rate_unit()); };
820 
821  boost::units::quantity< vertical_dive_rate_unit,double > vertical_dive_rate_with_units() const
822  { return vertical_dive_rate_with_units<boost::units::quantity< vertical_dive_rate_unit,double > >(); };
823 
824  typedef boost::units::length_dimension seafloor_depth_dimension;
825 
826  typedef boost::units::unit<seafloor_depth_dimension,boost::units::si::system> seafloor_depth_unit;
827 
828  template<typename Quantity >
829  void set_seafloor_depth_with_units(Quantity value_w_units)
830  { set_seafloor_depth(boost::units::quantity<seafloor_depth_unit,double >(value_w_units).value() ); };
831 
832  template<typename Quantity >
833  Quantity seafloor_depth_with_units() const
834  { return Quantity(seafloor_depth() * seafloor_depth_unit()); };
835 
836  boost::units::quantity< seafloor_depth_unit,double > seafloor_depth_with_units() const
837  { return seafloor_depth_with_units<boost::units::quantity< seafloor_depth_unit,double > >(); };
838 
839  typedef boost::units::length_dimension seafloor_wavelength_dimension;
840 
841  typedef boost::units::unit<seafloor_wavelength_dimension,boost::units::si::system> seafloor_wavelength_unit;
842 
843  template<typename Quantity >
844  void set_seafloor_wavelength_with_units(Quantity value_w_units)
845  { set_seafloor_wavelength(boost::units::quantity<seafloor_wavelength_unit,double >(value_w_units).value() ); };
846 
847  template<typename Quantity >
849  { return Quantity(seafloor_wavelength() * seafloor_wavelength_unit()); };
850 
851  boost::units::quantity< seafloor_wavelength_unit,double > seafloor_wavelength_with_units() const
852  { return seafloor_wavelength_with_units<boost::units::quantity< seafloor_wavelength_unit,double > >(); };
853 
854  typedef boost::units::length_dimension seafloor_amplitude_dimension;
855 
856  typedef boost::units::unit<seafloor_amplitude_dimension,boost::units::si::system> seafloor_amplitude_unit;
857 
858  template<typename Quantity >
859  void set_seafloor_amplitude_with_units(Quantity value_w_units)
860  { set_seafloor_amplitude(boost::units::quantity<seafloor_amplitude_unit,double >(value_w_units).value() ); };
861 
862  template<typename Quantity >
864  { return Quantity(seafloor_amplitude() * seafloor_amplitude_unit()); };
865 
866  boost::units::quantity< seafloor_amplitude_unit,double > seafloor_amplitude_with_units() const
867  { return seafloor_amplitude_with_units<boost::units::quantity< seafloor_amplitude_unit,double > >(); };
868 
869  typedef boost::units::plane_angle_dimension pitch_at_rest_dimension;
870 
871  typedef boost::units::unit<pitch_at_rest_dimension,boost::units::degree::system> pitch_at_rest_unit;
872 
873  template<typename Quantity >
874  void set_pitch_at_rest_with_units(Quantity value_w_units)
875  { set_pitch_at_rest(boost::units::quantity<pitch_at_rest_unit,double >(value_w_units).value() ); };
876 
877  template<typename Quantity >
878  Quantity pitch_at_rest_with_units() const
879  { return Quantity(pitch_at_rest() * pitch_at_rest_unit()); };
880 
881  boost::units::quantity< pitch_at_rest_unit,double > pitch_at_rest_with_units() const
882  { return pitch_at_rest_with_units<boost::units::quantity< pitch_at_rest_unit,double > >(); };
883 
884  typedef boost::units::temperature_dimension temperature_stdev_dimension;
885 
886  typedef boost::units::unit<temperature_stdev_dimension,boost::units::celsius::system> temperature_stdev_unit;
887 
888  template<typename Quantity >
889  void set_temperature_stdev_with_units(Quantity value_w_units)
890  { set_temperature_stdev(boost::units::quantity<temperature_stdev_unit,double >(value_w_units).value() ); };
891 
892  template<typename Quantity >
894  { return Quantity(temperature_stdev() * temperature_stdev_unit()); };
895 
896  boost::units::quantity< temperature_stdev_unit,double > temperature_stdev_with_units() const
897  { return temperature_stdev_with_units<boost::units::quantity< temperature_stdev_unit,double > >(); };
898 
899  // @@protoc_insertion_point(class_scope:jaiabot.config.Simulator)
900  private:
901  class _Internal;
902 
903  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
904  typedef void InternalArenaConstructable_;
905  typedef void DestructorSkippable_;
906  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
907  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
908  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample > sample_;
909  ::goby::middleware::protobuf::AppConfig* app_;
910  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess_;
911  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* moos_;
912  ::goby::middleware::protobuf::UDPPointToPointConfig* gps_udp_config_;
913  ::goby::middleware::protobuf::UDPPointToPointConfig* pressure_udp_config_;
914  ::goby::middleware::protobuf::UDPPointToPointConfig* salinity_udp_config_;
915  ::jaiabot::protobuf::GeographicCoordinate* start_location_;
916  ::jaiabot::config::ArduinoSimThread* arduino_config_;
917  double heading_rand_max_;
918  double vertical_dive_rate_;
919  double seafloor_depth_;
920  double temperature_stdev_;
921  double salinity_stdev_;
922  bool enable_gps_;
923  bool is_bot_sim_;
924  double gps_hdop_rand_max_;
925  double gps_pdop_rand_max_;
926  double seafloor_wavelength_;
927  double seafloor_amplitude_;
928  double gps_hdop_dropout_;
929  double gps_pdop_dropout_;
930  double minimum_thrust_;
931  double pitch_at_rest_;
932  friend struct ::TableStruct_bin_2fsimulator_2fconfig_2eproto;
933 };
934 // -------------------------------------------------------------------
935 
936 class ArduinoSimThread PROTOBUF_FINAL :
937  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:jaiabot.config.ArduinoSimThread) */ {
938  public:
939  inline ArduinoSimThread() : ArduinoSimThread(nullptr) {};
940  virtual ~ArduinoSimThread();
941 
942  ArduinoSimThread(const ArduinoSimThread& from);
943  ArduinoSimThread(ArduinoSimThread&& from) noexcept
944  : ArduinoSimThread() {
945  *this = ::std::move(from);
946  }
947 
948  inline ArduinoSimThread& operator=(const ArduinoSimThread& from) {
949  CopyFrom(from);
950  return *this;
951  }
952  inline ArduinoSimThread& operator=(ArduinoSimThread&& from) noexcept {
953  if (GetArena() == from.GetArena()) {
954  if (this != &from) InternalSwap(&from);
955  } else {
956  CopyFrom(from);
957  }
958  return *this;
959  }
960 
961  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
962  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
963  }
964  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
965  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
966  }
967 
968  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
969  return GetDescriptor();
970  }
971  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
972  return GetMetadataStatic().descriptor;
973  }
974  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
975  return GetMetadataStatic().reflection;
976  }
977  static const ArduinoSimThread& default_instance();
978 
979  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
980  static inline const ArduinoSimThread* internal_default_instance() {
981  return reinterpret_cast<const ArduinoSimThread*>(
983  }
984  static constexpr int kIndexInFileMessages =
985  2;
986 
987  friend void swap(ArduinoSimThread& a, ArduinoSimThread& b) {
988  a.Swap(&b);
989  }
990  inline void Swap(ArduinoSimThread* other) {
991  if (other == this) return;
992  if (GetArena() == other->GetArena()) {
993  InternalSwap(other);
994  } else {
995  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
996  }
997  }
998  void UnsafeArenaSwap(ArduinoSimThread* other) {
999  if (other == this) return;
1000  GOOGLE_DCHECK(GetArena() == other->GetArena());
1001  InternalSwap(other);
1002  }
1003 
1004  // implements Message ----------------------------------------------
1005 
1006  inline ArduinoSimThread* New() const final {
1007  return CreateMaybeMessage<ArduinoSimThread>(nullptr);
1008  }
1009 
1010  ArduinoSimThread* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1011  return CreateMaybeMessage<ArduinoSimThread>(arena);
1012  }
1013  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1014  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1015  void CopyFrom(const ArduinoSimThread& from);
1016  void MergeFrom(const ArduinoSimThread& from);
1017  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1018  bool IsInitialized() const final;
1019 
1020  size_t ByteSizeLong() const final;
1021  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1022  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1023  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1024  int GetCachedSize() const final { return _cached_size_.Get(); }
1025 
1026  private:
1027  inline void SharedCtor();
1028  inline void SharedDtor();
1029  void SetCachedSize(int size) const final;
1030  void InternalSwap(ArduinoSimThread* other);
1031  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1032  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1033  return "jaiabot.config.ArduinoSimThread";
1034  }
1035  protected:
1036  explicit ArduinoSimThread(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1037  private:
1038  static void ArenaDtor(void* object);
1039  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
1040  public:
1041 
1042  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1043  private:
1044  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1045  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_bin_2fsimulator_2fconfig_2eproto);
1046  return ::descriptor_table_bin_2fsimulator_2fconfig_2eproto.file_level_metadata[kIndexInFileMessages];
1047  }
1048 
1049  public:
1050 
1051  // nested types ----------------------------------------------------
1052 
1053  // accessors -------------------------------------------------------
1054 
1055  enum : int {
1056  kVoltagePeriodFieldNumber = 1,
1057  kVoltageStepDecreaseFieldNumber = 2,
1058  kVoltageStartFieldNumber = 3,
1059  kResetVoltageLevelFieldNumber = 4,
1060  };
1061  // optional int32 voltage_period = 1 [default = 1];
1062  bool has_voltage_period() const;
1063  private:
1064  bool _internal_has_voltage_period() const;
1065  public:
1067  ::PROTOBUF_NAMESPACE_ID::int32 voltage_period() const;
1068  void set_voltage_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1069  private:
1070  ::PROTOBUF_NAMESPACE_ID::int32 _internal_voltage_period() const;
1071  void _internal_set_voltage_period(::PROTOBUF_NAMESPACE_ID::int32 value);
1072  public:
1073 
1074  // optional double voltage_step_decrease = 2 [default = 0.1];
1076  private:
1077  bool _internal_has_voltage_step_decrease() const;
1078  public:
1080  double voltage_step_decrease() const;
1081  void set_voltage_step_decrease(double value);
1082  private:
1083  double _internal_voltage_step_decrease() const;
1084  void _internal_set_voltage_step_decrease(double value);
1085  public:
1086 
1087  // optional double voltage_start = 3 [default = 24];
1088  bool has_voltage_start() const;
1089  private:
1090  bool _internal_has_voltage_start() const;
1091  public:
1093  double voltage_start() const;
1094  void set_voltage_start(double value);
1095  private:
1096  double _internal_voltage_start() const;
1097  void _internal_set_voltage_start(double value);
1098  public:
1099 
1100  // optional double reset_voltage_level = 4 [default = 15];
1102  private:
1103  bool _internal_has_reset_voltage_level() const;
1104  public:
1106  double reset_voltage_level() const;
1107  void set_reset_voltage_level(double value);
1108  private:
1109  double _internal_reset_voltage_level() const;
1110  void _internal_set_reset_voltage_level(double value);
1111  public:
1112 
1113  // @@protoc_insertion_point(class_scope:jaiabot.config.ArduinoSimThread)
1114  private:
1115  class _Internal;
1116 
1117  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
1118  typedef void InternalArenaConstructable_;
1119  typedef void DestructorSkippable_;
1120  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1121  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1122  ::PROTOBUF_NAMESPACE_ID::int32 voltage_period_;
1123  double voltage_step_decrease_;
1124  double voltage_start_;
1125  double reset_voltage_level_;
1126  friend struct ::TableStruct_bin_2fsimulator_2fconfig_2eproto;
1127 };
1128 // ===================================================================
1129 
1130 
1131 // ===================================================================
1132 
1133 #ifdef __GNUC__
1134  #pragma GCC diagnostic push
1135  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
1136 #endif // __GNUC__
1137 // Simulator_ScalarSample
1138 
1139 // optional double depth = 1 [(.dccl.field) = {
1140 inline bool Simulator_ScalarSample::_internal_has_depth() const {
1141  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1142  return value;
1143 }
1144 inline bool Simulator_ScalarSample::has_depth() const {
1145  return _internal_has_depth();
1146 }
1147 inline void Simulator_ScalarSample::clear_depth() {
1148  depth_ = 0;
1149  _has_bits_[0] &= ~0x00000001u;
1150 }
1151 inline double Simulator_ScalarSample::_internal_depth() const {
1152  return depth_;
1153 }
1154 inline double Simulator_ScalarSample::depth() const {
1155  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.ScalarSample.depth)
1156  return _internal_depth();
1157 }
1158 inline void Simulator_ScalarSample::_internal_set_depth(double value) {
1159  _has_bits_[0] |= 0x00000001u;
1160  depth_ = value;
1161 }
1162 inline void Simulator_ScalarSample::set_depth(double value) {
1163  _internal_set_depth(value);
1164  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.ScalarSample.depth)
1165 }
1166 
1167 // optional double temperature = 2 [(.dccl.field) = {
1168 inline bool Simulator_ScalarSample::_internal_has_temperature() const {
1169  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1170  return value;
1171 }
1172 inline bool Simulator_ScalarSample::has_temperature() const {
1173  return _internal_has_temperature();
1174 }
1175 inline void Simulator_ScalarSample::clear_temperature() {
1176  temperature_ = 0;
1177  _has_bits_[0] &= ~0x00000002u;
1178 }
1179 inline double Simulator_ScalarSample::_internal_temperature() const {
1180  return temperature_;
1181 }
1182 inline double Simulator_ScalarSample::temperature() const {
1183  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.ScalarSample.temperature)
1184  return _internal_temperature();
1185 }
1186 inline void Simulator_ScalarSample::_internal_set_temperature(double value) {
1187  _has_bits_[0] |= 0x00000002u;
1188  temperature_ = value;
1189 }
1190 inline void Simulator_ScalarSample::set_temperature(double value) {
1191  _internal_set_temperature(value);
1192  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.ScalarSample.temperature)
1193 }
1194 
1195 // optional double salinity = 3;
1196 inline bool Simulator_ScalarSample::_internal_has_salinity() const {
1197  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1198  return value;
1199 }
1200 inline bool Simulator_ScalarSample::has_salinity() const {
1201  return _internal_has_salinity();
1202 }
1203 inline void Simulator_ScalarSample::clear_salinity() {
1204  salinity_ = 0;
1205  _has_bits_[0] &= ~0x00000004u;
1206 }
1207 inline double Simulator_ScalarSample::_internal_salinity() const {
1208  return salinity_;
1209 }
1210 inline double Simulator_ScalarSample::salinity() const {
1211  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.ScalarSample.salinity)
1212  return _internal_salinity();
1213 }
1214 inline void Simulator_ScalarSample::_internal_set_salinity(double value) {
1215  _has_bits_[0] |= 0x00000004u;
1216  salinity_ = value;
1217 }
1218 inline void Simulator_ScalarSample::set_salinity(double value) {
1219  _internal_set_salinity(value);
1220  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.ScalarSample.salinity)
1221 }
1222 
1223 // -------------------------------------------------------------------
1224 
1225 // Simulator
1226 
1227 // optional .goby.middleware.protobuf.AppConfig app = 1;
1228 inline bool Simulator::_internal_has_app() const {
1229  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1230  PROTOBUF_ASSUME(!value || app_ != nullptr);
1231  return value;
1232 }
1233 inline bool Simulator::has_app() const {
1234  return _internal_has_app();
1235 }
1236 inline const ::goby::middleware::protobuf::AppConfig& Simulator::_internal_app() const {
1237  const ::goby::middleware::protobuf::AppConfig* p = app_;
1238  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::AppConfig*>(
1239  &::goby::middleware::protobuf::_AppConfig_default_instance_);
1240 }
1241 inline const ::goby::middleware::protobuf::AppConfig& Simulator::app() const {
1242  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.app)
1243  return _internal_app();
1244 }
1245 inline void Simulator::unsafe_arena_set_allocated_app(
1246  ::goby::middleware::protobuf::AppConfig* app) {
1247  if (GetArena() == nullptr) {
1248  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
1249  }
1250  app_ = app;
1251  if (app) {
1252  _has_bits_[0] |= 0x00000001u;
1253  } else {
1254  _has_bits_[0] &= ~0x00000001u;
1255  }
1256  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.app)
1257 }
1258 inline ::goby::middleware::protobuf::AppConfig* Simulator::release_app() {
1259  auto temp = unsafe_arena_release_app();
1260  if (GetArena() != nullptr) {
1261  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1262  }
1263  return temp;
1264 }
1265 inline ::goby::middleware::protobuf::AppConfig* Simulator::unsafe_arena_release_app() {
1266  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.app)
1267  _has_bits_[0] &= ~0x00000001u;
1268  ::goby::middleware::protobuf::AppConfig* temp = app_;
1269  app_ = nullptr;
1270  return temp;
1271 }
1272 inline ::goby::middleware::protobuf::AppConfig* Simulator::_internal_mutable_app() {
1273  _has_bits_[0] |= 0x00000001u;
1274  if (app_ == nullptr) {
1275  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::AppConfig>(GetArena());
1276  app_ = p;
1277  }
1278  return app_;
1279 }
1280 inline ::goby::middleware::protobuf::AppConfig* Simulator::mutable_app() {
1281  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.app)
1282  return _internal_mutable_app();
1283 }
1284 inline void Simulator::set_allocated_app(::goby::middleware::protobuf::AppConfig* app) {
1285  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1286  if (message_arena == nullptr) {
1287  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(app_);
1288  }
1289  if (app) {
1290  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1291  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(app)->GetArena();
1292  if (message_arena != submessage_arena) {
1293  app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1294  message_arena, app, submessage_arena);
1295  }
1296  _has_bits_[0] |= 0x00000001u;
1297  } else {
1298  _has_bits_[0] &= ~0x00000001u;
1299  }
1300  app_ = app;
1301  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.app)
1302 }
1303 
1304 // optional .goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
1305 inline bool Simulator::_internal_has_interprocess() const {
1306  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1307  PROTOBUF_ASSUME(!value || interprocess_ != nullptr);
1308  return value;
1309 }
1310 inline bool Simulator::has_interprocess() const {
1311  return _internal_has_interprocess();
1312 }
1313 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& Simulator::_internal_interprocess() const {
1314  const ::goby::zeromq::protobuf::InterProcessPortalConfig* p = interprocess_;
1315  return p != nullptr ? *p : *reinterpret_cast<const ::goby::zeromq::protobuf::InterProcessPortalConfig*>(
1316  &::goby::zeromq::protobuf::_InterProcessPortalConfig_default_instance_);
1317 }
1318 inline const ::goby::zeromq::protobuf::InterProcessPortalConfig& Simulator::interprocess() const {
1319  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.interprocess)
1320  return _internal_interprocess();
1321 }
1322 inline void Simulator::unsafe_arena_set_allocated_interprocess(
1323  ::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
1324  if (GetArena() == nullptr) {
1325  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
1326  }
1327  interprocess_ = interprocess;
1328  if (interprocess) {
1329  _has_bits_[0] |= 0x00000002u;
1330  } else {
1331  _has_bits_[0] &= ~0x00000002u;
1332  }
1333  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.interprocess)
1334 }
1335 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Simulator::release_interprocess() {
1336  auto temp = unsafe_arena_release_interprocess();
1337  if (GetArena() != nullptr) {
1338  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1339  }
1340  return temp;
1341 }
1342 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Simulator::unsafe_arena_release_interprocess() {
1343  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.interprocess)
1344  _has_bits_[0] &= ~0x00000002u;
1345  ::goby::zeromq::protobuf::InterProcessPortalConfig* temp = interprocess_;
1346  interprocess_ = nullptr;
1347  return temp;
1348 }
1349 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Simulator::_internal_mutable_interprocess() {
1350  _has_bits_[0] |= 0x00000002u;
1351  if (interprocess_ == nullptr) {
1352  auto* p = CreateMaybeMessage<::goby::zeromq::protobuf::InterProcessPortalConfig>(GetArena());
1353  interprocess_ = p;
1354  }
1355  return interprocess_;
1356 }
1357 inline ::goby::zeromq::protobuf::InterProcessPortalConfig* Simulator::mutable_interprocess() {
1358  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.interprocess)
1359  return _internal_mutable_interprocess();
1360 }
1361 inline void Simulator::set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig* interprocess) {
1362  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1363  if (message_arena == nullptr) {
1364  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess_);
1365  }
1366  if (interprocess) {
1367  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1368  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(interprocess)->GetArena();
1369  if (message_arena != submessage_arena) {
1370  interprocess = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1371  message_arena, interprocess, submessage_arena);
1372  }
1373  _has_bits_[0] |= 0x00000002u;
1374  } else {
1375  _has_bits_[0] &= ~0x00000002u;
1376  }
1377  interprocess_ = interprocess;
1378  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.interprocess)
1379 }
1380 
1381 // optional .goby.apps.moos.protobuf.GobyMOOSGatewayConfig.MOOSConfig moos = 10;
1382 inline bool Simulator::_internal_has_moos() const {
1383  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1384  PROTOBUF_ASSUME(!value || moos_ != nullptr);
1385  return value;
1386 }
1387 inline bool Simulator::has_moos() const {
1388  return _internal_has_moos();
1389 }
1390 inline const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig& Simulator::_internal_moos() const {
1391  const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* p = moos_;
1392  return p != nullptr ? *p : *reinterpret_cast<const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig*>(
1393  &::goby::apps::moos::protobuf::_GobyMOOSGatewayConfig_MOOSConfig_default_instance_);
1394 }
1395 inline const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig& Simulator::moos() const {
1396  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.moos)
1397  return _internal_moos();
1398 }
1399 inline void Simulator::unsafe_arena_set_allocated_moos(
1400  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* moos) {
1401  if (GetArena() == nullptr) {
1402  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(moos_);
1403  }
1404  moos_ = moos;
1405  if (moos) {
1406  _has_bits_[0] |= 0x00000004u;
1407  } else {
1408  _has_bits_[0] &= ~0x00000004u;
1409  }
1410  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.moos)
1411 }
1412 inline ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* Simulator::release_moos() {
1413  auto temp = unsafe_arena_release_moos();
1414  if (GetArena() != nullptr) {
1415  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1416  }
1417  return temp;
1418 }
1419 inline ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* Simulator::unsafe_arena_release_moos() {
1420  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.moos)
1421  _has_bits_[0] &= ~0x00000004u;
1422  ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* temp = moos_;
1423  moos_ = nullptr;
1424  return temp;
1425 }
1426 inline ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* Simulator::_internal_mutable_moos() {
1427  _has_bits_[0] |= 0x00000004u;
1428  if (moos_ == nullptr) {
1429  auto* p = CreateMaybeMessage<::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig>(GetArena());
1430  moos_ = p;
1431  }
1432  return moos_;
1433 }
1434 inline ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* Simulator::mutable_moos() {
1435  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.moos)
1436  return _internal_mutable_moos();
1437 }
1438 inline void Simulator::set_allocated_moos(::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig* moos) {
1439  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1440  if (message_arena == nullptr) {
1441  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(moos_);
1442  }
1443  if (moos) {
1444  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1445  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(moos)->GetArena();
1446  if (message_arena != submessage_arena) {
1447  moos = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1448  message_arena, moos, submessage_arena);
1449  }
1450  _has_bits_[0] |= 0x00000004u;
1451  } else {
1452  _has_bits_[0] &= ~0x00000004u;
1453  }
1454  moos_ = moos;
1455  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.moos)
1456 }
1457 
1458 // optional .goby.middleware.protobuf.UDPPointToPointConfig gps_udp_config = 20;
1459 inline bool Simulator::_internal_has_gps_udp_config() const {
1460  bool value = (_has_bits_[0] & 0x00000008u) != 0;
1461  PROTOBUF_ASSUME(!value || gps_udp_config_ != nullptr);
1462  return value;
1463 }
1464 inline bool Simulator::has_gps_udp_config() const {
1465  return _internal_has_gps_udp_config();
1466 }
1467 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::_internal_gps_udp_config() const {
1468  const ::goby::middleware::protobuf::UDPPointToPointConfig* p = gps_udp_config_;
1469  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::UDPPointToPointConfig*>(
1470  &::goby::middleware::protobuf::_UDPPointToPointConfig_default_instance_);
1471 }
1472 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::gps_udp_config() const {
1473  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.gps_udp_config)
1474  return _internal_gps_udp_config();
1475 }
1476 inline void Simulator::unsafe_arena_set_allocated_gps_udp_config(
1477  ::goby::middleware::protobuf::UDPPointToPointConfig* gps_udp_config) {
1478  if (GetArena() == nullptr) {
1479  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(gps_udp_config_);
1480  }
1481  gps_udp_config_ = gps_udp_config;
1482  if (gps_udp_config) {
1483  _has_bits_[0] |= 0x00000008u;
1484  } else {
1485  _has_bits_[0] &= ~0x00000008u;
1486  }
1487  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.gps_udp_config)
1488 }
1489 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::release_gps_udp_config() {
1490  auto temp = unsafe_arena_release_gps_udp_config();
1491  if (GetArena() != nullptr) {
1492  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1493  }
1494  return temp;
1495 }
1496 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::unsafe_arena_release_gps_udp_config() {
1497  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.gps_udp_config)
1498  _has_bits_[0] &= ~0x00000008u;
1499  ::goby::middleware::protobuf::UDPPointToPointConfig* temp = gps_udp_config_;
1500  gps_udp_config_ = nullptr;
1501  return temp;
1502 }
1503 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::_internal_mutable_gps_udp_config() {
1504  _has_bits_[0] |= 0x00000008u;
1505  if (gps_udp_config_ == nullptr) {
1506  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::UDPPointToPointConfig>(GetArena());
1507  gps_udp_config_ = p;
1508  }
1509  return gps_udp_config_;
1510 }
1511 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::mutable_gps_udp_config() {
1512  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.gps_udp_config)
1513  return _internal_mutable_gps_udp_config();
1514 }
1515 inline void Simulator::set_allocated_gps_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* gps_udp_config) {
1516  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1517  if (message_arena == nullptr) {
1518  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(gps_udp_config_);
1519  }
1520  if (gps_udp_config) {
1521  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1522  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(gps_udp_config)->GetArena();
1523  if (message_arena != submessage_arena) {
1524  gps_udp_config = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1525  message_arena, gps_udp_config, submessage_arena);
1526  }
1527  _has_bits_[0] |= 0x00000008u;
1528  } else {
1529  _has_bits_[0] &= ~0x00000008u;
1530  }
1531  gps_udp_config_ = gps_udp_config;
1532  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.gps_udp_config)
1533 }
1534 
1535 // optional .goby.middleware.protobuf.UDPPointToPointConfig pressure_udp_config = 21;
1536 inline bool Simulator::_internal_has_pressure_udp_config() const {
1537  bool value = (_has_bits_[0] & 0x00000010u) != 0;
1538  PROTOBUF_ASSUME(!value || pressure_udp_config_ != nullptr);
1539  return value;
1540 }
1541 inline bool Simulator::has_pressure_udp_config() const {
1542  return _internal_has_pressure_udp_config();
1543 }
1544 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::_internal_pressure_udp_config() const {
1545  const ::goby::middleware::protobuf::UDPPointToPointConfig* p = pressure_udp_config_;
1546  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::UDPPointToPointConfig*>(
1547  &::goby::middleware::protobuf::_UDPPointToPointConfig_default_instance_);
1548 }
1549 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::pressure_udp_config() const {
1550  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.pressure_udp_config)
1551  return _internal_pressure_udp_config();
1552 }
1553 inline void Simulator::unsafe_arena_set_allocated_pressure_udp_config(
1554  ::goby::middleware::protobuf::UDPPointToPointConfig* pressure_udp_config) {
1555  if (GetArena() == nullptr) {
1556  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(pressure_udp_config_);
1557  }
1558  pressure_udp_config_ = pressure_udp_config;
1559  if (pressure_udp_config) {
1560  _has_bits_[0] |= 0x00000010u;
1561  } else {
1562  _has_bits_[0] &= ~0x00000010u;
1563  }
1564  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.pressure_udp_config)
1565 }
1566 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::release_pressure_udp_config() {
1567  auto temp = unsafe_arena_release_pressure_udp_config();
1568  if (GetArena() != nullptr) {
1569  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1570  }
1571  return temp;
1572 }
1573 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::unsafe_arena_release_pressure_udp_config() {
1574  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.pressure_udp_config)
1575  _has_bits_[0] &= ~0x00000010u;
1576  ::goby::middleware::protobuf::UDPPointToPointConfig* temp = pressure_udp_config_;
1577  pressure_udp_config_ = nullptr;
1578  return temp;
1579 }
1580 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::_internal_mutable_pressure_udp_config() {
1581  _has_bits_[0] |= 0x00000010u;
1582  if (pressure_udp_config_ == nullptr) {
1583  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::UDPPointToPointConfig>(GetArena());
1584  pressure_udp_config_ = p;
1585  }
1586  return pressure_udp_config_;
1587 }
1588 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::mutable_pressure_udp_config() {
1589  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.pressure_udp_config)
1590  return _internal_mutable_pressure_udp_config();
1591 }
1592 inline void Simulator::set_allocated_pressure_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* pressure_udp_config) {
1593  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1594  if (message_arena == nullptr) {
1595  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(pressure_udp_config_);
1596  }
1597  if (pressure_udp_config) {
1598  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1599  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(pressure_udp_config)->GetArena();
1600  if (message_arena != submessage_arena) {
1601  pressure_udp_config = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1602  message_arena, pressure_udp_config, submessage_arena);
1603  }
1604  _has_bits_[0] |= 0x00000010u;
1605  } else {
1606  _has_bits_[0] &= ~0x00000010u;
1607  }
1608  pressure_udp_config_ = pressure_udp_config;
1609  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.pressure_udp_config)
1610 }
1611 
1612 // optional .goby.middleware.protobuf.UDPPointToPointConfig salinity_udp_config = 22;
1613 inline bool Simulator::_internal_has_salinity_udp_config() const {
1614  bool value = (_has_bits_[0] & 0x00000020u) != 0;
1615  PROTOBUF_ASSUME(!value || salinity_udp_config_ != nullptr);
1616  return value;
1617 }
1618 inline bool Simulator::has_salinity_udp_config() const {
1619  return _internal_has_salinity_udp_config();
1620 }
1621 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::_internal_salinity_udp_config() const {
1622  const ::goby::middleware::protobuf::UDPPointToPointConfig* p = salinity_udp_config_;
1623  return p != nullptr ? *p : *reinterpret_cast<const ::goby::middleware::protobuf::UDPPointToPointConfig*>(
1624  &::goby::middleware::protobuf::_UDPPointToPointConfig_default_instance_);
1625 }
1626 inline const ::goby::middleware::protobuf::UDPPointToPointConfig& Simulator::salinity_udp_config() const {
1627  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.salinity_udp_config)
1628  return _internal_salinity_udp_config();
1629 }
1630 inline void Simulator::unsafe_arena_set_allocated_salinity_udp_config(
1631  ::goby::middleware::protobuf::UDPPointToPointConfig* salinity_udp_config) {
1632  if (GetArena() == nullptr) {
1633  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(salinity_udp_config_);
1634  }
1635  salinity_udp_config_ = salinity_udp_config;
1636  if (salinity_udp_config) {
1637  _has_bits_[0] |= 0x00000020u;
1638  } else {
1639  _has_bits_[0] &= ~0x00000020u;
1640  }
1641  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.salinity_udp_config)
1642 }
1643 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::release_salinity_udp_config() {
1644  auto temp = unsafe_arena_release_salinity_udp_config();
1645  if (GetArena() != nullptr) {
1646  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1647  }
1648  return temp;
1649 }
1650 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::unsafe_arena_release_salinity_udp_config() {
1651  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.salinity_udp_config)
1652  _has_bits_[0] &= ~0x00000020u;
1653  ::goby::middleware::protobuf::UDPPointToPointConfig* temp = salinity_udp_config_;
1654  salinity_udp_config_ = nullptr;
1655  return temp;
1656 }
1657 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::_internal_mutable_salinity_udp_config() {
1658  _has_bits_[0] |= 0x00000020u;
1659  if (salinity_udp_config_ == nullptr) {
1660  auto* p = CreateMaybeMessage<::goby::middleware::protobuf::UDPPointToPointConfig>(GetArena());
1661  salinity_udp_config_ = p;
1662  }
1663  return salinity_udp_config_;
1664 }
1665 inline ::goby::middleware::protobuf::UDPPointToPointConfig* Simulator::mutable_salinity_udp_config() {
1666  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.salinity_udp_config)
1667  return _internal_mutable_salinity_udp_config();
1668 }
1669 inline void Simulator::set_allocated_salinity_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig* salinity_udp_config) {
1670  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1671  if (message_arena == nullptr) {
1672  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(salinity_udp_config_);
1673  }
1674  if (salinity_udp_config) {
1675  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1676  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(salinity_udp_config)->GetArena();
1677  if (message_arena != submessage_arena) {
1678  salinity_udp_config = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1679  message_arena, salinity_udp_config, submessage_arena);
1680  }
1681  _has_bits_[0] |= 0x00000020u;
1682  } else {
1683  _has_bits_[0] &= ~0x00000020u;
1684  }
1685  salinity_udp_config_ = salinity_udp_config;
1686  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.salinity_udp_config)
1687 }
1688 
1689 // optional bool enable_gps = 25 [default = true];
1690 inline bool Simulator::_internal_has_enable_gps() const {
1691  bool value = (_has_bits_[0] & 0x00002000u) != 0;
1692  return value;
1693 }
1694 inline bool Simulator::has_enable_gps() const {
1695  return _internal_has_enable_gps();
1696 }
1697 inline void Simulator::clear_enable_gps() {
1698  enable_gps_ = true;
1699  _has_bits_[0] &= ~0x00002000u;
1700 }
1701 inline bool Simulator::_internal_enable_gps() const {
1702  return enable_gps_;
1703 }
1704 inline bool Simulator::enable_gps() const {
1705  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.enable_gps)
1706  return _internal_enable_gps();
1707 }
1708 inline void Simulator::_internal_set_enable_gps(bool value) {
1709  _has_bits_[0] |= 0x00002000u;
1710  enable_gps_ = value;
1711 }
1712 inline void Simulator::set_enable_gps(bool value) {
1713  _internal_set_enable_gps(value);
1714  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.enable_gps)
1715 }
1716 
1717 // optional .jaiabot.protobuf.GeographicCoordinate start_location = 26;
1718 inline bool Simulator::_internal_has_start_location() const {
1719  bool value = (_has_bits_[0] & 0x00000040u) != 0;
1720  PROTOBUF_ASSUME(!value || start_location_ != nullptr);
1721  return value;
1722 }
1723 inline bool Simulator::has_start_location() const {
1724  return _internal_has_start_location();
1725 }
1726 inline const ::jaiabot::protobuf::GeographicCoordinate& Simulator::_internal_start_location() const {
1727  const ::jaiabot::protobuf::GeographicCoordinate* p = start_location_;
1728  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::protobuf::GeographicCoordinate*>(
1730 }
1731 inline const ::jaiabot::protobuf::GeographicCoordinate& Simulator::start_location() const {
1732  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.start_location)
1733  return _internal_start_location();
1734 }
1735 inline void Simulator::unsafe_arena_set_allocated_start_location(
1736  ::jaiabot::protobuf::GeographicCoordinate* start_location) {
1737  if (GetArena() == nullptr) {
1738  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_location_);
1739  }
1740  start_location_ = start_location;
1741  if (start_location) {
1742  _has_bits_[0] |= 0x00000040u;
1743  } else {
1744  _has_bits_[0] &= ~0x00000040u;
1745  }
1746  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.start_location)
1747 }
1748 inline ::jaiabot::protobuf::GeographicCoordinate* Simulator::release_start_location() {
1749  auto temp = unsafe_arena_release_start_location();
1750  if (GetArena() != nullptr) {
1751  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1752  }
1753  return temp;
1754 }
1755 inline ::jaiabot::protobuf::GeographicCoordinate* Simulator::unsafe_arena_release_start_location() {
1756  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.start_location)
1757  _has_bits_[0] &= ~0x00000040u;
1758  ::jaiabot::protobuf::GeographicCoordinate* temp = start_location_;
1759  start_location_ = nullptr;
1760  return temp;
1761 }
1762 inline ::jaiabot::protobuf::GeographicCoordinate* Simulator::_internal_mutable_start_location() {
1763  _has_bits_[0] |= 0x00000040u;
1764  if (start_location_ == nullptr) {
1765  auto* p = CreateMaybeMessage<::jaiabot::protobuf::GeographicCoordinate>(GetArena());
1766  start_location_ = p;
1767  }
1768  return start_location_;
1769 }
1770 inline ::jaiabot::protobuf::GeographicCoordinate* Simulator::mutable_start_location() {
1771  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.start_location)
1772  return _internal_mutable_start_location();
1773 }
1774 inline void Simulator::set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate* start_location) {
1775  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1776  if (message_arena == nullptr) {
1777  delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_location_);
1778  }
1779  if (start_location) {
1780  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1781  reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(start_location)->GetArena();
1782  if (message_arena != submessage_arena) {
1783  start_location = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1784  message_arena, start_location, submessage_arena);
1785  }
1786  _has_bits_[0] |= 0x00000040u;
1787  } else {
1788  _has_bits_[0] &= ~0x00000040u;
1789  }
1790  start_location_ = start_location;
1791  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.start_location)
1792 }
1793 
1794 // optional double gps_hdop_rand_max = 27 [default = 1.3];
1795 inline bool Simulator::_internal_has_gps_hdop_rand_max() const {
1796  bool value = (_has_bits_[0] & 0x00008000u) != 0;
1797  return value;
1798 }
1799 inline bool Simulator::has_gps_hdop_rand_max() const {
1800  return _internal_has_gps_hdop_rand_max();
1801 }
1802 inline void Simulator::clear_gps_hdop_rand_max() {
1803  gps_hdop_rand_max_ = 1.3;
1804  _has_bits_[0] &= ~0x00008000u;
1805 }
1806 inline double Simulator::_internal_gps_hdop_rand_max() const {
1807  return gps_hdop_rand_max_;
1808 }
1809 inline double Simulator::gps_hdop_rand_max() const {
1810  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.gps_hdop_rand_max)
1811  return _internal_gps_hdop_rand_max();
1812 }
1813 inline void Simulator::_internal_set_gps_hdop_rand_max(double value) {
1814  _has_bits_[0] |= 0x00008000u;
1815  gps_hdop_rand_max_ = value;
1816 }
1817 inline void Simulator::set_gps_hdop_rand_max(double value) {
1818  _internal_set_gps_hdop_rand_max(value);
1819  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.gps_hdop_rand_max)
1820 }
1821 
1822 // optional bool is_bot_sim = 28 [default = true];
1823 inline bool Simulator::_internal_has_is_bot_sim() const {
1824  bool value = (_has_bits_[0] & 0x00004000u) != 0;
1825  return value;
1826 }
1827 inline bool Simulator::has_is_bot_sim() const {
1828  return _internal_has_is_bot_sim();
1829 }
1830 inline void Simulator::clear_is_bot_sim() {
1831  is_bot_sim_ = true;
1832  _has_bits_[0] &= ~0x00004000u;
1833 }
1834 inline bool Simulator::_internal_is_bot_sim() const {
1835  return is_bot_sim_;
1836 }
1837 inline bool Simulator::is_bot_sim() const {
1838  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.is_bot_sim)
1839  return _internal_is_bot_sim();
1840 }
1841 inline void Simulator::_internal_set_is_bot_sim(bool value) {
1842  _has_bits_[0] |= 0x00004000u;
1843  is_bot_sim_ = value;
1844 }
1845 inline void Simulator::set_is_bot_sim(bool value) {
1846  _internal_set_is_bot_sim(value);
1847  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.is_bot_sim)
1848 }
1849 
1850 // optional double gps_pdop_rand_max = 29 [default = 2.2];
1851 inline bool Simulator::_internal_has_gps_pdop_rand_max() const {
1852  bool value = (_has_bits_[0] & 0x00010000u) != 0;
1853  return value;
1854 }
1855 inline bool Simulator::has_gps_pdop_rand_max() const {
1856  return _internal_has_gps_pdop_rand_max();
1857 }
1858 inline void Simulator::clear_gps_pdop_rand_max() {
1859  gps_pdop_rand_max_ = 2.2;
1860  _has_bits_[0] &= ~0x00010000u;
1861 }
1862 inline double Simulator::_internal_gps_pdop_rand_max() const {
1863  return gps_pdop_rand_max_;
1864 }
1865 inline double Simulator::gps_pdop_rand_max() const {
1866  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.gps_pdop_rand_max)
1867  return _internal_gps_pdop_rand_max();
1868 }
1869 inline void Simulator::_internal_set_gps_pdop_rand_max(double value) {
1870  _has_bits_[0] |= 0x00010000u;
1871  gps_pdop_rand_max_ = value;
1872 }
1873 inline void Simulator::set_gps_pdop_rand_max(double value) {
1874  _internal_set_gps_pdop_rand_max(value);
1875  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.gps_pdop_rand_max)
1876 }
1877 
1878 // optional double heading_rand_max = 30 [default = 0];
1879 inline bool Simulator::_internal_has_heading_rand_max() const {
1880  bool value = (_has_bits_[0] & 0x00000100u) != 0;
1881  return value;
1882 }
1883 inline bool Simulator::has_heading_rand_max() const {
1884  return _internal_has_heading_rand_max();
1885 }
1886 inline void Simulator::clear_heading_rand_max() {
1887  heading_rand_max_ = 0;
1888  _has_bits_[0] &= ~0x00000100u;
1889 }
1890 inline double Simulator::_internal_heading_rand_max() const {
1891  return heading_rand_max_;
1892 }
1893 inline double Simulator::heading_rand_max() const {
1894  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.heading_rand_max)
1895  return _internal_heading_rand_max();
1896 }
1897 inline void Simulator::_internal_set_heading_rand_max(double value) {
1898  _has_bits_[0] |= 0x00000100u;
1899  heading_rand_max_ = value;
1900 }
1901 inline void Simulator::set_heading_rand_max(double value) {
1902  _internal_set_heading_rand_max(value);
1903  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.heading_rand_max)
1904 }
1905 
1906 // optional double vertical_dive_rate = 31 [(.dccl.field) = {
1907 inline bool Simulator::_internal_has_vertical_dive_rate() const {
1908  bool value = (_has_bits_[0] & 0x00000200u) != 0;
1909  return value;
1910 }
1911 inline bool Simulator::has_vertical_dive_rate() const {
1912  return _internal_has_vertical_dive_rate();
1913 }
1914 inline void Simulator::clear_vertical_dive_rate() {
1915  vertical_dive_rate_ = 0;
1916  _has_bits_[0] &= ~0x00000200u;
1917 }
1918 inline double Simulator::_internal_vertical_dive_rate() const {
1919  return vertical_dive_rate_;
1920 }
1921 inline double Simulator::vertical_dive_rate() const {
1922  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.vertical_dive_rate)
1923  return _internal_vertical_dive_rate();
1924 }
1925 inline void Simulator::_internal_set_vertical_dive_rate(double value) {
1926  _has_bits_[0] |= 0x00000200u;
1927  vertical_dive_rate_ = value;
1928 }
1929 inline void Simulator::set_vertical_dive_rate(double value) {
1930  _internal_set_vertical_dive_rate(value);
1931  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.vertical_dive_rate)
1932 }
1933 
1934 // optional double seafloor_depth = 32 [(.dccl.field) = {
1935 inline bool Simulator::_internal_has_seafloor_depth() const {
1936  bool value = (_has_bits_[0] & 0x00000400u) != 0;
1937  return value;
1938 }
1939 inline bool Simulator::has_seafloor_depth() const {
1940  return _internal_has_seafloor_depth();
1941 }
1942 inline void Simulator::clear_seafloor_depth() {
1943  seafloor_depth_ = 0;
1944  _has_bits_[0] &= ~0x00000400u;
1945 }
1946 inline double Simulator::_internal_seafloor_depth() const {
1947  return seafloor_depth_;
1948 }
1949 inline double Simulator::seafloor_depth() const {
1950  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.seafloor_depth)
1951  return _internal_seafloor_depth();
1952 }
1953 inline void Simulator::_internal_set_seafloor_depth(double value) {
1954  _has_bits_[0] |= 0x00000400u;
1955  seafloor_depth_ = value;
1956 }
1957 inline void Simulator::set_seafloor_depth(double value) {
1958  _internal_set_seafloor_depth(value);
1959  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.seafloor_depth)
1960 }
1961 
1962 // optional double seafloor_wavelength = 33 [default = 100, (.dccl.field) = {
1963 inline bool Simulator::_internal_has_seafloor_wavelength() const {
1964  bool value = (_has_bits_[0] & 0x00020000u) != 0;
1965  return value;
1966 }
1967 inline bool Simulator::has_seafloor_wavelength() const {
1968  return _internal_has_seafloor_wavelength();
1969 }
1970 inline void Simulator::clear_seafloor_wavelength() {
1971  seafloor_wavelength_ = 100;
1972  _has_bits_[0] &= ~0x00020000u;
1973 }
1974 inline double Simulator::_internal_seafloor_wavelength() const {
1975  return seafloor_wavelength_;
1976 }
1977 inline double Simulator::seafloor_wavelength() const {
1978  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.seafloor_wavelength)
1979  return _internal_seafloor_wavelength();
1980 }
1981 inline void Simulator::_internal_set_seafloor_wavelength(double value) {
1982  _has_bits_[0] |= 0x00020000u;
1983  seafloor_wavelength_ = value;
1984 }
1985 inline void Simulator::set_seafloor_wavelength(double value) {
1986  _internal_set_seafloor_wavelength(value);
1987  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.seafloor_wavelength)
1988 }
1989 
1990 // optional double seafloor_amplitude = 34 [default = 5, (.dccl.field) = {
1991 inline bool Simulator::_internal_has_seafloor_amplitude() const {
1992  bool value = (_has_bits_[0] & 0x00040000u) != 0;
1993  return value;
1994 }
1995 inline bool Simulator::has_seafloor_amplitude() const {
1996  return _internal_has_seafloor_amplitude();
1997 }
1998 inline void Simulator::clear_seafloor_amplitude() {
1999  seafloor_amplitude_ = 5;
2000  _has_bits_[0] &= ~0x00040000u;
2001 }
2002 inline double Simulator::_internal_seafloor_amplitude() const {
2003  return seafloor_amplitude_;
2004 }
2005 inline double Simulator::seafloor_amplitude() const {
2006  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.seafloor_amplitude)
2007  return _internal_seafloor_amplitude();
2008 }
2009 inline void Simulator::_internal_set_seafloor_amplitude(double value) {
2010  _has_bits_[0] |= 0x00040000u;
2011  seafloor_amplitude_ = value;
2012 }
2013 inline void Simulator::set_seafloor_amplitude(double value) {
2014  _internal_set_seafloor_amplitude(value);
2015  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.seafloor_amplitude)
2016 }
2017 
2018 // optional double gps_hdop_dropout = 35 [default = 20];
2019 inline bool Simulator::_internal_has_gps_hdop_dropout() const {
2020  bool value = (_has_bits_[0] & 0x00080000u) != 0;
2021  return value;
2022 }
2023 inline bool Simulator::has_gps_hdop_dropout() const {
2024  return _internal_has_gps_hdop_dropout();
2025 }
2026 inline void Simulator::clear_gps_hdop_dropout() {
2027  gps_hdop_dropout_ = 20;
2028  _has_bits_[0] &= ~0x00080000u;
2029 }
2030 inline double Simulator::_internal_gps_hdop_dropout() const {
2031  return gps_hdop_dropout_;
2032 }
2033 inline double Simulator::gps_hdop_dropout() const {
2034  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.gps_hdop_dropout)
2035  return _internal_gps_hdop_dropout();
2036 }
2037 inline void Simulator::_internal_set_gps_hdop_dropout(double value) {
2038  _has_bits_[0] |= 0x00080000u;
2039  gps_hdop_dropout_ = value;
2040 }
2041 inline void Simulator::set_gps_hdop_dropout(double value) {
2042  _internal_set_gps_hdop_dropout(value);
2043  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.gps_hdop_dropout)
2044 }
2045 
2046 // optional double gps_pdop_dropout = 36 [default = 20];
2047 inline bool Simulator::_internal_has_gps_pdop_dropout() const {
2048  bool value = (_has_bits_[0] & 0x00100000u) != 0;
2049  return value;
2050 }
2051 inline bool Simulator::has_gps_pdop_dropout() const {
2052  return _internal_has_gps_pdop_dropout();
2053 }
2054 inline void Simulator::clear_gps_pdop_dropout() {
2055  gps_pdop_dropout_ = 20;
2056  _has_bits_[0] &= ~0x00100000u;
2057 }
2058 inline double Simulator::_internal_gps_pdop_dropout() const {
2059  return gps_pdop_dropout_;
2060 }
2061 inline double Simulator::gps_pdop_dropout() const {
2062  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.gps_pdop_dropout)
2063  return _internal_gps_pdop_dropout();
2064 }
2065 inline void Simulator::_internal_set_gps_pdop_dropout(double value) {
2066  _has_bits_[0] |= 0x00100000u;
2067  gps_pdop_dropout_ = value;
2068 }
2069 inline void Simulator::set_gps_pdop_dropout(double value) {
2070  _internal_set_gps_pdop_dropout(value);
2071  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.gps_pdop_dropout)
2072 }
2073 
2074 // optional double minimum_thrust = 37 [default = 5];
2075 inline bool Simulator::_internal_has_minimum_thrust() const {
2076  bool value = (_has_bits_[0] & 0x00200000u) != 0;
2077  return value;
2078 }
2079 inline bool Simulator::has_minimum_thrust() const {
2080  return _internal_has_minimum_thrust();
2081 }
2082 inline void Simulator::clear_minimum_thrust() {
2083  minimum_thrust_ = 5;
2084  _has_bits_[0] &= ~0x00200000u;
2085 }
2086 inline double Simulator::_internal_minimum_thrust() const {
2087  return minimum_thrust_;
2088 }
2089 inline double Simulator::minimum_thrust() const {
2090  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.minimum_thrust)
2091  return _internal_minimum_thrust();
2092 }
2093 inline void Simulator::_internal_set_minimum_thrust(double value) {
2094  _has_bits_[0] |= 0x00200000u;
2095  minimum_thrust_ = value;
2096 }
2097 inline void Simulator::set_minimum_thrust(double value) {
2098  _internal_set_minimum_thrust(value);
2099  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.minimum_thrust)
2100 }
2101 
2102 // optional double pitch_at_rest = 38 [default = 85, (.dccl.field) = {
2103 inline bool Simulator::_internal_has_pitch_at_rest() const {
2104  bool value = (_has_bits_[0] & 0x00400000u) != 0;
2105  return value;
2106 }
2107 inline bool Simulator::has_pitch_at_rest() const {
2108  return _internal_has_pitch_at_rest();
2109 }
2110 inline void Simulator::clear_pitch_at_rest() {
2111  pitch_at_rest_ = 85;
2112  _has_bits_[0] &= ~0x00400000u;
2113 }
2114 inline double Simulator::_internal_pitch_at_rest() const {
2115  return pitch_at_rest_;
2116 }
2117 inline double Simulator::pitch_at_rest() const {
2118  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.pitch_at_rest)
2119  return _internal_pitch_at_rest();
2120 }
2121 inline void Simulator::_internal_set_pitch_at_rest(double value) {
2122  _has_bits_[0] |= 0x00400000u;
2123  pitch_at_rest_ = value;
2124 }
2125 inline void Simulator::set_pitch_at_rest(double value) {
2126  _internal_set_pitch_at_rest(value);
2127  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.pitch_at_rest)
2128 }
2129 
2130 // repeated .jaiabot.config.Simulator.ScalarSample sample = 40;
2131 inline int Simulator::_internal_sample_size() const {
2132  return sample_.size();
2133 }
2134 inline int Simulator::sample_size() const {
2135  return _internal_sample_size();
2136 }
2137 inline void Simulator::clear_sample() {
2138  sample_.Clear();
2139 }
2140 inline ::jaiabot::config::Simulator_ScalarSample* Simulator::mutable_sample(int index) {
2141  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.sample)
2142  return sample_.Mutable(index);
2143 }
2144 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample >*
2145 Simulator::mutable_sample() {
2146  // @@protoc_insertion_point(field_mutable_list:jaiabot.config.Simulator.sample)
2147  return &sample_;
2148 }
2149 inline const ::jaiabot::config::Simulator_ScalarSample& Simulator::_internal_sample(int index) const {
2150  return sample_.Get(index);
2151 }
2152 inline const ::jaiabot::config::Simulator_ScalarSample& Simulator::sample(int index) const {
2153  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.sample)
2154  return _internal_sample(index);
2155 }
2156 inline ::jaiabot::config::Simulator_ScalarSample* Simulator::_internal_add_sample() {
2157  return sample_.Add();
2158 }
2159 inline ::jaiabot::config::Simulator_ScalarSample* Simulator::add_sample() {
2160  // @@protoc_insertion_point(field_add:jaiabot.config.Simulator.sample)
2161  return _internal_add_sample();
2162 }
2163 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample >&
2164 Simulator::sample() const {
2165  // @@protoc_insertion_point(field_list:jaiabot.config.Simulator.sample)
2166  return sample_;
2167 }
2168 
2169 // optional double temperature_stdev = 41 [(.dccl.field) = {
2170 inline bool Simulator::_internal_has_temperature_stdev() const {
2171  bool value = (_has_bits_[0] & 0x00000800u) != 0;
2172  return value;
2173 }
2174 inline bool Simulator::has_temperature_stdev() const {
2175  return _internal_has_temperature_stdev();
2176 }
2177 inline void Simulator::clear_temperature_stdev() {
2178  temperature_stdev_ = 0;
2179  _has_bits_[0] &= ~0x00000800u;
2180 }
2181 inline double Simulator::_internal_temperature_stdev() const {
2182  return temperature_stdev_;
2183 }
2184 inline double Simulator::temperature_stdev() const {
2185  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.temperature_stdev)
2186  return _internal_temperature_stdev();
2187 }
2188 inline void Simulator::_internal_set_temperature_stdev(double value) {
2189  _has_bits_[0] |= 0x00000800u;
2190  temperature_stdev_ = value;
2191 }
2192 inline void Simulator::set_temperature_stdev(double value) {
2193  _internal_set_temperature_stdev(value);
2194  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.temperature_stdev)
2195 }
2196 
2197 // optional double salinity_stdev = 42;
2198 inline bool Simulator::_internal_has_salinity_stdev() const {
2199  bool value = (_has_bits_[0] & 0x00001000u) != 0;
2200  return value;
2201 }
2202 inline bool Simulator::has_salinity_stdev() const {
2203  return _internal_has_salinity_stdev();
2204 }
2205 inline void Simulator::clear_salinity_stdev() {
2206  salinity_stdev_ = 0;
2207  _has_bits_[0] &= ~0x00001000u;
2208 }
2209 inline double Simulator::_internal_salinity_stdev() const {
2210  return salinity_stdev_;
2211 }
2212 inline double Simulator::salinity_stdev() const {
2213  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.salinity_stdev)
2214  return _internal_salinity_stdev();
2215 }
2216 inline void Simulator::_internal_set_salinity_stdev(double value) {
2217  _has_bits_[0] |= 0x00001000u;
2218  salinity_stdev_ = value;
2219 }
2220 inline void Simulator::set_salinity_stdev(double value) {
2221  _internal_set_salinity_stdev(value);
2222  // @@protoc_insertion_point(field_set:jaiabot.config.Simulator.salinity_stdev)
2223 }
2224 
2225 // optional .jaiabot.config.ArduinoSimThread arduino_config = 60;
2226 inline bool Simulator::_internal_has_arduino_config() const {
2227  bool value = (_has_bits_[0] & 0x00000080u) != 0;
2228  PROTOBUF_ASSUME(!value || arduino_config_ != nullptr);
2229  return value;
2230 }
2231 inline bool Simulator::has_arduino_config() const {
2232  return _internal_has_arduino_config();
2233 }
2234 inline void Simulator::clear_arduino_config() {
2235  if (arduino_config_ != nullptr) arduino_config_->Clear();
2236  _has_bits_[0] &= ~0x00000080u;
2237 }
2238 inline const ::jaiabot::config::ArduinoSimThread& Simulator::_internal_arduino_config() const {
2239  const ::jaiabot::config::ArduinoSimThread* p = arduino_config_;
2240  return p != nullptr ? *p : *reinterpret_cast<const ::jaiabot::config::ArduinoSimThread*>(
2242 }
2243 inline const ::jaiabot::config::ArduinoSimThread& Simulator::arduino_config() const {
2244  // @@protoc_insertion_point(field_get:jaiabot.config.Simulator.arduino_config)
2245  return _internal_arduino_config();
2246 }
2247 inline void Simulator::unsafe_arena_set_allocated_arduino_config(
2248  ::jaiabot::config::ArduinoSimThread* arduino_config) {
2249  if (GetArena() == nullptr) {
2250  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(arduino_config_);
2251  }
2252  arduino_config_ = arduino_config;
2253  if (arduino_config) {
2254  _has_bits_[0] |= 0x00000080u;
2255  } else {
2256  _has_bits_[0] &= ~0x00000080u;
2257  }
2258  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:jaiabot.config.Simulator.arduino_config)
2259 }
2260 inline ::jaiabot::config::ArduinoSimThread* Simulator::release_arduino_config() {
2261  auto temp = unsafe_arena_release_arduino_config();
2262  if (GetArena() != nullptr) {
2263  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
2264  }
2265  return temp;
2266 }
2267 inline ::jaiabot::config::ArduinoSimThread* Simulator::unsafe_arena_release_arduino_config() {
2268  // @@protoc_insertion_point(field_release:jaiabot.config.Simulator.arduino_config)
2269  _has_bits_[0] &= ~0x00000080u;
2270  ::jaiabot::config::ArduinoSimThread* temp = arduino_config_;
2271  arduino_config_ = nullptr;
2272  return temp;
2273 }
2274 inline ::jaiabot::config::ArduinoSimThread* Simulator::_internal_mutable_arduino_config() {
2275  _has_bits_[0] |= 0x00000080u;
2276  if (arduino_config_ == nullptr) {
2277  auto* p = CreateMaybeMessage<::jaiabot::config::ArduinoSimThread>(GetArena());
2278  arduino_config_ = p;
2279  }
2280  return arduino_config_;
2281 }
2282 inline ::jaiabot::config::ArduinoSimThread* Simulator::mutable_arduino_config() {
2283  // @@protoc_insertion_point(field_mutable:jaiabot.config.Simulator.arduino_config)
2284  return _internal_mutable_arduino_config();
2285 }
2286 inline void Simulator::set_allocated_arduino_config(::jaiabot::config::ArduinoSimThread* arduino_config) {
2287  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
2288  if (message_arena == nullptr) {
2289  delete arduino_config_;
2290  }
2291  if (arduino_config) {
2292  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
2293  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(arduino_config);
2294  if (message_arena != submessage_arena) {
2295  arduino_config = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2296  message_arena, arduino_config, submessage_arena);
2297  }
2298  _has_bits_[0] |= 0x00000080u;
2299  } else {
2300  _has_bits_[0] &= ~0x00000080u;
2301  }
2302  arduino_config_ = arduino_config;
2303  // @@protoc_insertion_point(field_set_allocated:jaiabot.config.Simulator.arduino_config)
2304 }
2305 
2306 // -------------------------------------------------------------------
2307 
2308 // ArduinoSimThread
2309 
2310 // optional int32 voltage_period = 1 [default = 1];
2311 inline bool ArduinoSimThread::_internal_has_voltage_period() const {
2312  bool value = (_has_bits_[0] & 0x00000001u) != 0;
2313  return value;
2314 }
2315 inline bool ArduinoSimThread::has_voltage_period() const {
2316  return _internal_has_voltage_period();
2317 }
2318 inline void ArduinoSimThread::clear_voltage_period() {
2319  voltage_period_ = 1;
2320  _has_bits_[0] &= ~0x00000001u;
2321 }
2322 inline ::PROTOBUF_NAMESPACE_ID::int32 ArduinoSimThread::_internal_voltage_period() const {
2323  return voltage_period_;
2324 }
2325 inline ::PROTOBUF_NAMESPACE_ID::int32 ArduinoSimThread::voltage_period() const {
2326  // @@protoc_insertion_point(field_get:jaiabot.config.ArduinoSimThread.voltage_period)
2327  return _internal_voltage_period();
2328 }
2329 inline void ArduinoSimThread::_internal_set_voltage_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
2330  _has_bits_[0] |= 0x00000001u;
2331  voltage_period_ = value;
2332 }
2333 inline void ArduinoSimThread::set_voltage_period(::PROTOBUF_NAMESPACE_ID::int32 value) {
2334  _internal_set_voltage_period(value);
2335  // @@protoc_insertion_point(field_set:jaiabot.config.ArduinoSimThread.voltage_period)
2336 }
2337 
2338 // optional double voltage_step_decrease = 2 [default = 0.1];
2339 inline bool ArduinoSimThread::_internal_has_voltage_step_decrease() const {
2340  bool value = (_has_bits_[0] & 0x00000002u) != 0;
2341  return value;
2342 }
2343 inline bool ArduinoSimThread::has_voltage_step_decrease() const {
2344  return _internal_has_voltage_step_decrease();
2345 }
2346 inline void ArduinoSimThread::clear_voltage_step_decrease() {
2347  voltage_step_decrease_ = 0.1;
2348  _has_bits_[0] &= ~0x00000002u;
2349 }
2350 inline double ArduinoSimThread::_internal_voltage_step_decrease() const {
2351  return voltage_step_decrease_;
2352 }
2353 inline double ArduinoSimThread::voltage_step_decrease() const {
2354  // @@protoc_insertion_point(field_get:jaiabot.config.ArduinoSimThread.voltage_step_decrease)
2355  return _internal_voltage_step_decrease();
2356 }
2357 inline void ArduinoSimThread::_internal_set_voltage_step_decrease(double value) {
2358  _has_bits_[0] |= 0x00000002u;
2359  voltage_step_decrease_ = value;
2360 }
2361 inline void ArduinoSimThread::set_voltage_step_decrease(double value) {
2362  _internal_set_voltage_step_decrease(value);
2363  // @@protoc_insertion_point(field_set:jaiabot.config.ArduinoSimThread.voltage_step_decrease)
2364 }
2365 
2366 // optional double voltage_start = 3 [default = 24];
2367 inline bool ArduinoSimThread::_internal_has_voltage_start() const {
2368  bool value = (_has_bits_[0] & 0x00000004u) != 0;
2369  return value;
2370 }
2371 inline bool ArduinoSimThread::has_voltage_start() const {
2372  return _internal_has_voltage_start();
2373 }
2374 inline void ArduinoSimThread::clear_voltage_start() {
2375  voltage_start_ = 24;
2376  _has_bits_[0] &= ~0x00000004u;
2377 }
2378 inline double ArduinoSimThread::_internal_voltage_start() const {
2379  return voltage_start_;
2380 }
2381 inline double ArduinoSimThread::voltage_start() const {
2382  // @@protoc_insertion_point(field_get:jaiabot.config.ArduinoSimThread.voltage_start)
2383  return _internal_voltage_start();
2384 }
2385 inline void ArduinoSimThread::_internal_set_voltage_start(double value) {
2386  _has_bits_[0] |= 0x00000004u;
2387  voltage_start_ = value;
2388 }
2389 inline void ArduinoSimThread::set_voltage_start(double value) {
2390  _internal_set_voltage_start(value);
2391  // @@protoc_insertion_point(field_set:jaiabot.config.ArduinoSimThread.voltage_start)
2392 }
2393 
2394 // optional double reset_voltage_level = 4 [default = 15];
2395 inline bool ArduinoSimThread::_internal_has_reset_voltage_level() const {
2396  bool value = (_has_bits_[0] & 0x00000008u) != 0;
2397  return value;
2398 }
2399 inline bool ArduinoSimThread::has_reset_voltage_level() const {
2400  return _internal_has_reset_voltage_level();
2401 }
2402 inline void ArduinoSimThread::clear_reset_voltage_level() {
2403  reset_voltage_level_ = 15;
2404  _has_bits_[0] &= ~0x00000008u;
2405 }
2406 inline double ArduinoSimThread::_internal_reset_voltage_level() const {
2407  return reset_voltage_level_;
2408 }
2409 inline double ArduinoSimThread::reset_voltage_level() const {
2410  // @@protoc_insertion_point(field_get:jaiabot.config.ArduinoSimThread.reset_voltage_level)
2411  return _internal_reset_voltage_level();
2412 }
2413 inline void ArduinoSimThread::_internal_set_reset_voltage_level(double value) {
2414  _has_bits_[0] |= 0x00000008u;
2415  reset_voltage_level_ = value;
2416 }
2417 inline void ArduinoSimThread::set_reset_voltage_level(double value) {
2418  _internal_set_reset_voltage_level(value);
2419  // @@protoc_insertion_point(field_set:jaiabot.config.ArduinoSimThread.reset_voltage_level)
2420 }
2421 
2422 #ifdef __GNUC__
2423  #pragma GCC diagnostic pop
2424 #endif // __GNUC__
2425 // -------------------------------------------------------------------
2426 
2427 // -------------------------------------------------------------------
2428 
2429 
2430 // @@protoc_insertion_point(namespace_scope)
2431 
2432 } // namespace config
2433 } // namespace jaiabot
2434 
2435 // @@protoc_insertion_point(global_scope)
2436 
2437 #include <google/protobuf/port_undef.inc>
2438 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_bin_2fsimulator_2fconfig_2eproto
void set_allocated_arduino_config(::jaiabot::config::ArduinoSimThread *arduino_config)
const ::goby::middleware::protobuf::UDPPointToPointConfig & gps_udp_config() const
void set_voltage_step_decrease(double value)
const ::jaiabot::config::ArduinoSimThread & arduino_config() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
Definition: config.pb.h:124
ArduinoSimThread * New() const final
Definition: config.pb.h:1006
void set_heading_rand_max(double value)
Simulator_ScalarSample * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:170
Simulator(::PROTOBUF_NAMESPACE_ID::Arena *arena)
static const Simulator & default_instance()
boost::units::length_dimension seafloor_depth_dimension
Definition: config.pb.h:822
boost::units::quantity< seafloor_wavelength_unit, double > seafloor_wavelength_with_units() const
Definition: config.pb.h:851
void set_gps_pdop_dropout(double value)
static const Simulator_ScalarSample * internal_default_instance()
Definition: config.pb.h:140
void Swap(ArduinoSimThread *other)
Definition: config.pb.h:990
boost::units::quantity< seafloor_depth_unit, double > seafloor_depth_with_units() const
Definition: config.pb.h:836
Quantity seafloor_amplitude_with_units() const
Definition: config.pb.h:863
boost::units::plane_angle_dimension pitch_at_rest_dimension
Definition: config.pb.h:867
void set_reset_voltage_level(double value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::goby::middleware::protobuf::AppConfig & app() const
friend void swap(Simulator &a, Simulator &b)
Definition: config.pb.h:356
void set_vertical_dive_rate(double value)
Simulator & operator=(const Simulator &from)
Definition: config.pb.h:317
Quantity seafloor_depth_with_units() const
Definition: config.pb.h:833
::PROTOBUF_NAMESPACE_ID::int32 voltage_period() const
void UnsafeArenaSwap(Simulator *other)
Definition: config.pb.h:367
const ::goby::middleware::protobuf::UDPPointToPointConfig & salinity_udp_config() const
void set_gps_hdop_dropout(double value)
const ::jaiabot::protobuf::GeographicCoordinate & start_location() const
boost::units::length_dimension depth_dimension
Definition: config.pb.h:259
::jaiabot::config::ArduinoSimThread * mutable_arduino_config()
Simulator_ScalarSample & operator=(Simulator_ScalarSample &&from) noexcept
Definition: config.pb.h:112
::goby::middleware::protobuf::AppConfig * unsafe_arena_release_app()
void set_voltage_start(double value)
void CopyFrom(const ArduinoSimThread &from)
void unsafe_arena_set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate *start_location)
::goby::middleware::protobuf::AppConfig * release_app()
void set_allocated_moos(::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig *moos)
void set_gps_pdop_rand_max(double value)
Simulator(Simulator &&from) noexcept
Definition: config.pb.h:312
void set_salinity(double value)
void set_allocated_gps_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *gps_udp_config)
Simulator_ScalarSample(::PROTOBUF_NAMESPACE_ID::Arena *arena)
::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig * mutable_moos()
void set_pitch_at_rest_with_units(Quantity value_w_units)
Definition: config.pb.h:874
Simulator_ScalarSample * New() const final
Definition: config.pb.h:166
const ::goby::zeromq::protobuf::InterProcessPortalConfig & interprocess() const
Simulator_ScalarSample ScalarSample
Definition: config.pb.h:422
boost::units::unit< seafloor_wavelength_dimension, boost::units::si::system > seafloor_wavelength_unit
Definition: config.pb.h:841
void unsafe_arena_set_allocated_moos(::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig *moos)
void MergeFrom(const Simulator_ScalarSample &from)
boost::units::temperature_dimension temperature_dimension
Definition: config.pb.h:272
boost::units::unit< temperature_stdev_dimension, boost::units::celsius::system > temperature_stdev_unit
Definition: config.pb.h:886
friend void swap(ArduinoSimThread &a, ArduinoSimThread &b)
Definition: config.pb.h:987
boost::units::unit< seafloor_depth_dimension, boost::units::si::system > seafloor_depth_unit
Definition: config.pb.h:826
Simulator & operator=(Simulator &&from) noexcept
Definition: config.pb.h:321
Simulator_ScalarSample(Simulator_ScalarSample &&from) noexcept
Definition: config.pb.h:103
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: config.pb.h:134
void MergeFrom(const ArduinoSimThread &from)
::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig * unsafe_arena_release_moos()
void set_voltage_period(::PROTOBUF_NAMESPACE_ID::int32 value)
void unsafe_arena_set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig *interprocess)
boost::units::absolute< boost::units::unit< temperature_dimension, boost::units::celsius::system > > temperature_unit
Definition: config.pb.h:276
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: config.pb.h:131
::goby::middleware::protobuf::UDPPointToPointConfig * mutable_gps_udp_config()
boost::units::quantity< pitch_at_rest_unit, double > pitch_at_rest_with_units() const
Definition: config.pb.h:881
boost::units::velocity_dimension vertical_dive_rate_dimension
Definition: config.pb.h:809
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
Definition: config.pb.h:121
::goby::zeromq::protobuf::InterProcessPortalConfig * release_interprocess()
::goby::middleware::protobuf::UDPPointToPointConfig * release_gps_udp_config()
void set_minimum_thrust(double value)
::goby::zeromq::protobuf::InterProcessPortalConfig * mutable_interprocess()
friend void swap(Simulator_ScalarSample &a, Simulator_ScalarSample &b)
Definition: config.pb.h:147
ArduinoSimThread & operator=(const ArduinoSimThread &from)
Definition: config.pb.h:948
ArduinoSimThread(::PROTOBUF_NAMESPACE_ID::Arena *arena)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ArduinoSimThread * internal_default_instance()
Definition: config.pb.h:980
boost::units::unit< vertical_dive_rate_dimension, boost::units::si::system > vertical_dive_rate_unit
Definition: config.pb.h:811
::jaiabot::config::ArduinoSimThread * unsafe_arena_release_arduino_config()
::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig * release_moos()
double voltage_step_decrease() const
void set_depth(double value)
void set_seafloor_wavelength_with_units(Quantity value_w_units)
Definition: config.pb.h:844
void UnsafeArenaSwap(Simulator_ScalarSample *other)
Definition: config.pb.h:158
void unsafe_arena_set_allocated_pressure_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *pressure_udp_config)
boost::units::length_dimension seafloor_wavelength_dimension
Definition: config.pb.h:837
static const Simulator * internal_default_instance()
Definition: config.pb.h:349
void set_seafloor_amplitude(double value)
Simulator * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:379
boost::units::quantity< temperature_unit, double > temperature_with_units() const
Definition: config.pb.h:286
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample > * mutable_sample()
void set_pitch_at_rest(double value)
::goby::middleware::protobuf::UDPPointToPointConfig * release_pressure_udp_config()
::jaiabot::protobuf::GeographicCoordinate * release_start_location()
void set_temperature(double value)
Simulator * New() const final
Definition: config.pb.h:375
void set_allocated_salinity_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *salinity_udp_config)
void unsafe_arena_set_allocated_salinity_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *salinity_udp_config)
boost::units::length_dimension seafloor_amplitude_dimension
Definition: config.pb.h:852
void set_seafloor_wavelength(double value)
::goby::middleware::protobuf::AppConfig * mutable_app()
static const Simulator_ScalarSample & default_instance()
void set_allocated_pressure_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *pressure_udp_config)
void set_temperature_with_units(Quantity value_w_units)
Definition: config.pb.h:279
void CopyFrom(const Simulator &from)
void set_temperature_stdev(double value)
Quantity temperature_with_units() const
Definition: config.pb.h:283
ArduinoSimThread & operator=(ArduinoSimThread &&from) noexcept
Definition: config.pb.h:952
boost::units::unit< pitch_at_rest_dimension, boost::units::degree::system > pitch_at_rest_unit
Definition: config.pb.h:871
void set_seafloor_depth_with_units(Quantity value_w_units)
Definition: config.pb.h:829
ArduinoSimThread(const ArduinoSimThread &from)
void set_gps_hdop_rand_max(double value)
boost::units::unit< seafloor_amplitude_dimension, boost::units::si::system > seafloor_amplitude_unit
Definition: config.pb.h:856
::goby::middleware::protobuf::UDPPointToPointConfig * mutable_pressure_udp_config()
Quantity temperature_stdev_with_units() const
Definition: config.pb.h:893
::goby::middleware::protobuf::UDPPointToPointConfig * unsafe_arena_release_gps_udp_config()
boost::units::temperature_dimension temperature_stdev_dimension
Definition: config.pb.h:882
void Swap(Simulator *other)
Definition: config.pb.h:359
::jaiabot::protobuf::GeographicCoordinate * unsafe_arena_release_start_location()
void set_depth_with_units(Quantity value_w_units)
Definition: config.pb.h:264
Quantity vertical_dive_rate_with_units() const
Definition: config.pb.h:818
::goby::middleware::protobuf::UDPPointToPointConfig * mutable_salinity_udp_config()
void set_salinity_stdev(double value)
const ::jaiabot::config::Simulator_ScalarSample & sample(int index) const
::goby::middleware::protobuf::UDPPointToPointConfig * unsafe_arena_release_pressure_udp_config()
void set_allocated_interprocess(::goby::zeromq::protobuf::InterProcessPortalConfig *interprocess)
void unsafe_arena_set_allocated_app(::goby::middleware::protobuf::AppConfig *app)
void UnsafeArenaSwap(ArduinoSimThread *other)
Definition: config.pb.h:998
Simulator_ScalarSample(const Simulator_ScalarSample &from)
::jaiabot::config::Simulator_ScalarSample * mutable_sample(int index)
static const ArduinoSimThread & default_instance()
::jaiabot::config::Simulator_ScalarSample * add_sample()
const ::goby::middleware::protobuf::UDPPointToPointConfig & pressure_udp_config() const
void set_temperature_stdev_with_units(Quantity value_w_units)
Definition: config.pb.h:889
void set_allocated_app(::goby::middleware::protobuf::AppConfig *app)
::goby::middleware::protobuf::UDPPointToPointConfig * unsafe_arena_release_salinity_udp_config()
Simulator_ScalarSample & operator=(const Simulator_ScalarSample &from)
Definition: config.pb.h:108
const ::goby::apps::moos::protobuf::GobyMOOSGatewayConfig_MOOSConfig & moos() const
ArduinoSimThread * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: config.pb.h:1010
void set_allocated_start_location(::jaiabot::protobuf::GeographicCoordinate *start_location)
::goby::zeromq::protobuf::InterProcessPortalConfig * unsafe_arena_release_interprocess()
boost::units::quantity< seafloor_amplitude_unit, double > seafloor_amplitude_with_units() const
Definition: config.pb.h:866
void set_seafloor_amplitude_with_units(Quantity value_w_units)
Definition: config.pb.h:859
::goby::middleware::protobuf::UDPPointToPointConfig * release_salinity_udp_config()
boost::units::unit< depth_dimension, boost::units::si::system > depth_unit
Definition: config.pb.h:261
boost::units::quantity< depth_unit, double > depth_with_units() const
Definition: config.pb.h:271
Quantity pitch_at_rest_with_units() const
Definition: config.pb.h:878
void CopyFrom(const Simulator_ScalarSample &from)
Quantity depth_with_units() const
Definition: config.pb.h:268
void MergeFrom(const Simulator &from)
Simulator(const Simulator &from)
::jaiabot::protobuf::GeographicCoordinate * mutable_start_location()
boost::units::quantity< temperature_stdev_unit, double > temperature_stdev_with_units() const
Definition: config.pb.h:896
::jaiabot::config::ArduinoSimThread * release_arduino_config()
void set_vertical_dive_rate_with_units(Quantity value_w_units)
Definition: config.pb.h:814
void unsafe_arena_set_allocated_arduino_config(::jaiabot::config::ArduinoSimThread *arduino_config)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::jaiabot::config::Simulator_ScalarSample > & sample() const
void set_seafloor_depth(double value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: config.pb.h:128
Quantity seafloor_wavelength_with_units() const
Definition: config.pb.h:848
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
ArduinoSimThread(ArduinoSimThread &&from) noexcept
Definition: config.pb.h:943
void unsafe_arena_set_allocated_gps_udp_config(::goby::middleware::protobuf::UDPPointToPointConfig *gps_udp_config)
void Swap(Simulator_ScalarSample *other)
Definition: config.pb.h:150
boost::units::quantity< vertical_dive_rate_unit, double > vertical_dive_rate_with_units() const
Definition: config.pb.h:821
ArduinoSimThreadDefaultTypeInternal _ArduinoSimThread_default_instance_
Simulator_ScalarSampleDefaultTypeInternal _Simulator_ScalarSample_default_instance_
SimulatorDefaultTypeInternal _Simulator_default_instance_
constexpr goby::middleware::Group salinity
Definition: groups.h:45
constexpr goby::middleware::Group moos
Definition: groups.h:98
GeographicCoordinateDefaultTypeInternal _GeographicCoordinate_default_instance_
extern ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< ::goby::acomms::protobuf::DriverConfig, ::PROTOBUF_NAMESPACE_ID::internal::MessageTypeTraits< ::xbee::protobuf::Config >, 11, false > config
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_bin_2fsimulator_2fconfig_2eproto
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: config.pb.h:70
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: config.pb.h:69
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: config.pb.h:68