// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: Terminor_parameter.proto

#ifndef PROTOBUF_Terminor_5fparameter_2eproto__INCLUDED
#define PROTOBUF_Terminor_5fparameter_2eproto__INCLUDED

#include <string>

#include <google/protobuf/stubs/common.h>

#if GOOGLE_PROTOBUF_VERSION < 3005000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please update
#error your headers.
#endif
#if 3005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/arena.h>
#include <google/protobuf/arenastring.h>
#include <google/protobuf/generated_message_table_driven.h>
#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/metadata.h>
#include <google/protobuf/message.h>
#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
#include <google/protobuf/extension_set.h>  // IWYU pragma: export
#include <google/protobuf/unknown_field_set.h>
// @@protoc_insertion_point(includes)

namespace protobuf_Terminor_5fparameter_2eproto {
// Internal implementation detail -- do not use these members.
struct TableStruct {
  static const ::google::protobuf::internal::ParseTableField entries[];
  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
  static const ::google::protobuf::internal::ParseTable schema[4];
  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
  static const ::google::protobuf::internal::SerializationTable serialization_table[];
  static const ::google::protobuf::uint32 offsets[];
};
void AddDescriptors();
void InitDefaultsArea3dImpl();
void InitDefaultsArea3d();
void InitDefaultsLaser_parameterImpl();
void InitDefaultsLaser_parameter();
void InitDefaultsTerminor_parameterImpl();
void InitDefaultsTerminor_parameter();
void InitDefaultsTerminor_parameter_allImpl();
void InitDefaultsTerminor_parameter_all();
inline void InitDefaults() {
  InitDefaultsArea3d();
  InitDefaultsLaser_parameter();
  InitDefaultsTerminor_parameter();
  InitDefaultsTerminor_parameter_all();
}
}  // namespace protobuf_Terminor_5fparameter_2eproto
namespace Terminal {
class Area3d;
class Area3dDefaultTypeInternal;
extern Area3dDefaultTypeInternal _Area3d_default_instance_;
class Laser_parameter;
class Laser_parameterDefaultTypeInternal;
extern Laser_parameterDefaultTypeInternal _Laser_parameter_default_instance_;
class Terminor_parameter;
class Terminor_parameterDefaultTypeInternal;
extern Terminor_parameterDefaultTypeInternal _Terminor_parameter_default_instance_;
class Terminor_parameter_all;
class Terminor_parameter_allDefaultTypeInternal;
extern Terminor_parameter_allDefaultTypeInternal _Terminor_parameter_all_default_instance_;
}  // namespace Terminal
namespace Terminal {

// ===================================================================

class Area3d : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Terminal.Area3d) */ {
 public:
  Area3d();
  virtual ~Area3d();

  Area3d(const Area3d& from);

  inline Area3d& operator=(const Area3d& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  Area3d(Area3d&& from) noexcept
    : Area3d() {
    *this = ::std::move(from);
  }

  inline Area3d& operator=(Area3d&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const Area3d& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const Area3d* internal_default_instance() {
    return reinterpret_cast<const Area3d*>(
               &_Area3d_default_instance_);
  }
  static PROTOBUF_CONSTEXPR int const kIndexInFileMessages =
    0;

  void Swap(Area3d* other);
  friend void swap(Area3d& a, Area3d& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline Area3d* New() const PROTOBUF_FINAL { return New(NULL); }

  Area3d* New(::google::protobuf::Arena* arena) const PROTOBUF_FINAL;
  void CopyFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void MergeFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void CopyFrom(const Area3d& from);
  void MergeFrom(const Area3d& from);
  void Clear() PROTOBUF_FINAL;
  bool IsInitialized() const PROTOBUF_FINAL;

  size_t ByteSizeLong() const PROTOBUF_FINAL;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) PROTOBUF_FINAL;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const PROTOBUF_FINAL;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const PROTOBUF_FINAL;
  int GetCachedSize() const PROTOBUF_FINAL { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const PROTOBUF_FINAL;
  void InternalSwap(Area3d* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const PROTOBUF_FINAL;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required float min_x = 1;
  bool has_min_x() const;
  void clear_min_x();
  static const int kMinXFieldNumber = 1;
  float min_x() const;
  void set_min_x(float value);

  // required float max_x = 2;
  bool has_max_x() const;
  void clear_max_x();
  static const int kMaxXFieldNumber = 2;
  float max_x() const;
  void set_max_x(float value);

  // required float min_y = 3;
  bool has_min_y() const;
  void clear_min_y();
  static const int kMinYFieldNumber = 3;
  float min_y() const;
  void set_min_y(float value);

  // required float max_y = 4;
  bool has_max_y() const;
  void clear_max_y();
  static const int kMaxYFieldNumber = 4;
  float max_y() const;
  void set_max_y(float value);

  // required float min_z = 5;
  bool has_min_z() const;
  void clear_min_z();
  static const int kMinZFieldNumber = 5;
  float min_z() const;
  void set_min_z(float value);

  // required float max_z = 6;
  bool has_max_z() const;
  void clear_max_z();
  static const int kMaxZFieldNumber = 6;
  float max_z() const;
  void set_max_z(float value);

  // @@protoc_insertion_point(class_scope:Terminal.Area3d)
 private:
  void set_has_min_x();
  void clear_has_min_x();
  void set_has_max_x();
  void clear_has_max_x();
  void set_has_min_y();
  void clear_has_min_y();
  void set_has_max_y();
  void clear_has_max_y();
  void set_has_min_z();
  void clear_has_min_z();
  void set_has_max_z();
  void clear_has_max_z();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable int _cached_size_;
  float min_x_;
  float max_x_;
  float min_y_;
  float max_y_;
  float min_z_;
  float max_z_;
  friend struct ::protobuf_Terminor_5fparameter_2eproto::TableStruct;
  friend void ::protobuf_Terminor_5fparameter_2eproto::InitDefaultsArea3dImpl();
};
// -------------------------------------------------------------------

class Laser_parameter : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Terminal.Laser_parameter) */ {
 public:
  Laser_parameter();
  virtual ~Laser_parameter();

  Laser_parameter(const Laser_parameter& from);

  inline Laser_parameter& operator=(const Laser_parameter& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  Laser_parameter(Laser_parameter&& from) noexcept
    : Laser_parameter() {
    *this = ::std::move(from);
  }

  inline Laser_parameter& operator=(Laser_parameter&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const Laser_parameter& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const Laser_parameter* internal_default_instance() {
    return reinterpret_cast<const Laser_parameter*>(
               &_Laser_parameter_default_instance_);
  }
  static PROTOBUF_CONSTEXPR int const kIndexInFileMessages =
    1;

  void Swap(Laser_parameter* other);
  friend void swap(Laser_parameter& a, Laser_parameter& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline Laser_parameter* New() const PROTOBUF_FINAL { return New(NULL); }

  Laser_parameter* New(::google::protobuf::Arena* arena) const PROTOBUF_FINAL;
  void CopyFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void MergeFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void CopyFrom(const Laser_parameter& from);
  void MergeFrom(const Laser_parameter& from);
  void Clear() PROTOBUF_FINAL;
  bool IsInitialized() const PROTOBUF_FINAL;

  size_t ByteSizeLong() const PROTOBUF_FINAL;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) PROTOBUF_FINAL;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const PROTOBUF_FINAL;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const PROTOBUF_FINAL;
  int GetCachedSize() const PROTOBUF_FINAL { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const PROTOBUF_FINAL;
  void InternalSwap(Laser_parameter* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const PROTOBUF_FINAL;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required int64 id = 1;
  bool has_id() const;
  void clear_id();
  static const int kIdFieldNumber = 1;
  ::google::protobuf::int64 id() const;
  void set_id(::google::protobuf::int64 value);

  // optional int64 frame_count = 2;
  bool has_frame_count() const;
  void clear_frame_count();
  static const int kFrameCountFieldNumber = 2;
  ::google::protobuf::int64 frame_count() const;
  void set_frame_count(::google::protobuf::int64 value);

  // @@protoc_insertion_point(class_scope:Terminal.Laser_parameter)
 private:
  void set_has_id();
  void clear_has_id();
  void set_has_frame_count();
  void clear_has_frame_count();

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable int _cached_size_;
  ::google::protobuf::int64 id_;
  ::google::protobuf::int64 frame_count_;
  friend struct ::protobuf_Terminor_5fparameter_2eproto::TableStruct;
  friend void ::protobuf_Terminor_5fparameter_2eproto::InitDefaultsLaser_parameterImpl();
};
// -------------------------------------------------------------------

class Terminor_parameter : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Terminal.Terminor_parameter) */ {
 public:
  Terminor_parameter();
  virtual ~Terminor_parameter();

  Terminor_parameter(const Terminor_parameter& from);

  inline Terminor_parameter& operator=(const Terminor_parameter& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  Terminor_parameter(Terminor_parameter&& from) noexcept
    : Terminor_parameter() {
    *this = ::std::move(from);
  }

  inline Terminor_parameter& operator=(Terminor_parameter&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const Terminor_parameter& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const Terminor_parameter* internal_default_instance() {
    return reinterpret_cast<const Terminor_parameter*>(
               &_Terminor_parameter_default_instance_);
  }
  static PROTOBUF_CONSTEXPR int const kIndexInFileMessages =
    2;

  void Swap(Terminor_parameter* other);
  friend void swap(Terminor_parameter& a, Terminor_parameter& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline Terminor_parameter* New() const PROTOBUF_FINAL { return New(NULL); }

  Terminor_parameter* New(::google::protobuf::Arena* arena) const PROTOBUF_FINAL;
  void CopyFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void MergeFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void CopyFrom(const Terminor_parameter& from);
  void MergeFrom(const Terminor_parameter& from);
  void Clear() PROTOBUF_FINAL;
  bool IsInitialized() const PROTOBUF_FINAL;

  size_t ByteSizeLong() const PROTOBUF_FINAL;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) PROTOBUF_FINAL;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const PROTOBUF_FINAL;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const PROTOBUF_FINAL;
  int GetCachedSize() const PROTOBUF_FINAL { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const PROTOBUF_FINAL;
  void InternalSwap(Terminor_parameter* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const PROTOBUF_FINAL;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .Terminal.Laser_parameter laser_parameter = 3;
  int laser_parameter_size() const;
  void clear_laser_parameter();
  static const int kLaserParameterFieldNumber = 3;
  const ::Terminal::Laser_parameter& laser_parameter(int index) const;
  ::Terminal::Laser_parameter* mutable_laser_parameter(int index);
  ::Terminal::Laser_parameter* add_laser_parameter();
  ::google::protobuf::RepeatedPtrField< ::Terminal::Laser_parameter >*
      mutable_laser_parameter();
  const ::google::protobuf::RepeatedPtrField< ::Terminal::Laser_parameter >&
      laser_parameter() const;

  // required .Terminal.Area3d area_3d = 1;
  bool has_area_3d() const;
  void clear_area_3d();
  static const int kArea3DFieldNumber = 1;
  const ::Terminal::Area3d& area_3d() const;
  ::Terminal::Area3d* release_area_3d();
  ::Terminal::Area3d* mutable_area_3d();
  void set_allocated_area_3d(::Terminal::Area3d* area_3d);

  // required int64 id = 2;
  bool has_id() const;
  void clear_id();
  static const int kIdFieldNumber = 2;
  ::google::protobuf::int64 id() const;
  void set_id(::google::protobuf::int64 value);

  // @@protoc_insertion_point(class_scope:Terminal.Terminor_parameter)
 private:
  void set_has_area_3d();
  void clear_has_area_3d();
  void set_has_id();
  void clear_has_id();

  // helper for ByteSizeLong()
  size_t RequiredFieldsByteSizeFallback() const;

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::Terminal::Laser_parameter > laser_parameter_;
  ::Terminal::Area3d* area_3d_;
  ::google::protobuf::int64 id_;
  friend struct ::protobuf_Terminor_5fparameter_2eproto::TableStruct;
  friend void ::protobuf_Terminor_5fparameter_2eproto::InitDefaultsTerminor_parameterImpl();
};
// -------------------------------------------------------------------

class Terminor_parameter_all : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Terminal.Terminor_parameter_all) */ {
 public:
  Terminor_parameter_all();
  virtual ~Terminor_parameter_all();

  Terminor_parameter_all(const Terminor_parameter_all& from);

  inline Terminor_parameter_all& operator=(const Terminor_parameter_all& from) {
    CopyFrom(from);
    return *this;
  }
  #if LANG_CXX11
  Terminor_parameter_all(Terminor_parameter_all&& from) noexcept
    : Terminor_parameter_all() {
    *this = ::std::move(from);
  }

  inline Terminor_parameter_all& operator=(Terminor_parameter_all&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
    return _internal_metadata_.unknown_fields();
  }
  inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
    return _internal_metadata_.mutable_unknown_fields();
  }

  static const ::google::protobuf::Descriptor* descriptor();
  static const Terminor_parameter_all& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const Terminor_parameter_all* internal_default_instance() {
    return reinterpret_cast<const Terminor_parameter_all*>(
               &_Terminor_parameter_all_default_instance_);
  }
  static PROTOBUF_CONSTEXPR int const kIndexInFileMessages =
    3;

  void Swap(Terminor_parameter_all* other);
  friend void swap(Terminor_parameter_all& a, Terminor_parameter_all& b) {
    a.Swap(&b);
  }

  // implements Message ----------------------------------------------

  inline Terminor_parameter_all* New() const PROTOBUF_FINAL { return New(NULL); }

  Terminor_parameter_all* New(::google::protobuf::Arena* arena) const PROTOBUF_FINAL;
  void CopyFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void MergeFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL;
  void CopyFrom(const Terminor_parameter_all& from);
  void MergeFrom(const Terminor_parameter_all& from);
  void Clear() PROTOBUF_FINAL;
  bool IsInitialized() const PROTOBUF_FINAL;

  size_t ByteSizeLong() const PROTOBUF_FINAL;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input) PROTOBUF_FINAL;
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const PROTOBUF_FINAL;
  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
      bool deterministic, ::google::protobuf::uint8* target) const PROTOBUF_FINAL;
  int GetCachedSize() const PROTOBUF_FINAL { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const PROTOBUF_FINAL;
  void InternalSwap(Terminor_parameter_all* other);
  private:
  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
    return NULL;
  }
  inline void* MaybeArenaPtr() const {
    return NULL;
  }
  public:

  ::google::protobuf::Metadata GetMetadata() const PROTOBUF_FINAL;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .Terminal.Terminor_parameter terminor_parameters = 1;
  int terminor_parameters_size() const;
  void clear_terminor_parameters();
  static const int kTerminorParametersFieldNumber = 1;
  const ::Terminal::Terminor_parameter& terminor_parameters(int index) const;
  ::Terminal::Terminor_parameter* mutable_terminor_parameters(int index);
  ::Terminal::Terminor_parameter* add_terminor_parameters();
  ::google::protobuf::RepeatedPtrField< ::Terminal::Terminor_parameter >*
      mutable_terminor_parameters();
  const ::google::protobuf::RepeatedPtrField< ::Terminal::Terminor_parameter >&
      terminor_parameters() const;

  // required string save_root_path = 2;
  bool has_save_root_path() const;
  void clear_save_root_path();
  static const int kSaveRootPathFieldNumber = 2;
  const ::std::string& save_root_path() const;
  void set_save_root_path(const ::std::string& value);
  #if LANG_CXX11
  void set_save_root_path(::std::string&& value);
  #endif
  void set_save_root_path(const char* value);
  void set_save_root_path(const char* value, size_t size);
  ::std::string* mutable_save_root_path();
  ::std::string* release_save_root_path();
  void set_allocated_save_root_path(::std::string* save_root_path);

  // @@protoc_insertion_point(class_scope:Terminal.Terminor_parameter_all)
 private:
  void set_has_save_root_path();
  void clear_has_save_root_path();

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::google::protobuf::internal::HasBits<1> _has_bits_;
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::Terminal::Terminor_parameter > terminor_parameters_;
  ::google::protobuf::internal::ArenaStringPtr save_root_path_;
  friend struct ::protobuf_Terminor_5fparameter_2eproto::TableStruct;
  friend void ::protobuf_Terminor_5fparameter_2eproto::InitDefaultsTerminor_parameter_allImpl();
};
// ===================================================================


// ===================================================================

#ifdef __GNUC__
  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// Area3d

// required float min_x = 1;
inline bool Area3d::has_min_x() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void Area3d::set_has_min_x() {
  _has_bits_[0] |= 0x00000001u;
}
inline void Area3d::clear_has_min_x() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void Area3d::clear_min_x() {
  min_x_ = 0;
  clear_has_min_x();
}
inline float Area3d::min_x() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.min_x)
  return min_x_;
}
inline void Area3d::set_min_x(float value) {
  set_has_min_x();
  min_x_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.min_x)
}

// required float max_x = 2;
inline bool Area3d::has_max_x() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void Area3d::set_has_max_x() {
  _has_bits_[0] |= 0x00000002u;
}
inline void Area3d::clear_has_max_x() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void Area3d::clear_max_x() {
  max_x_ = 0;
  clear_has_max_x();
}
inline float Area3d::max_x() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.max_x)
  return max_x_;
}
inline void Area3d::set_max_x(float value) {
  set_has_max_x();
  max_x_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.max_x)
}

// required float min_y = 3;
inline bool Area3d::has_min_y() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void Area3d::set_has_min_y() {
  _has_bits_[0] |= 0x00000004u;
}
inline void Area3d::clear_has_min_y() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void Area3d::clear_min_y() {
  min_y_ = 0;
  clear_has_min_y();
}
inline float Area3d::min_y() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.min_y)
  return min_y_;
}
inline void Area3d::set_min_y(float value) {
  set_has_min_y();
  min_y_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.min_y)
}

// required float max_y = 4;
inline bool Area3d::has_max_y() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void Area3d::set_has_max_y() {
  _has_bits_[0] |= 0x00000008u;
}
inline void Area3d::clear_has_max_y() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void Area3d::clear_max_y() {
  max_y_ = 0;
  clear_has_max_y();
}
inline float Area3d::max_y() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.max_y)
  return max_y_;
}
inline void Area3d::set_max_y(float value) {
  set_has_max_y();
  max_y_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.max_y)
}

// required float min_z = 5;
inline bool Area3d::has_min_z() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void Area3d::set_has_min_z() {
  _has_bits_[0] |= 0x00000010u;
}
inline void Area3d::clear_has_min_z() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void Area3d::clear_min_z() {
  min_z_ = 0;
  clear_has_min_z();
}
inline float Area3d::min_z() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.min_z)
  return min_z_;
}
inline void Area3d::set_min_z(float value) {
  set_has_min_z();
  min_z_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.min_z)
}

// required float max_z = 6;
inline bool Area3d::has_max_z() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void Area3d::set_has_max_z() {
  _has_bits_[0] |= 0x00000020u;
}
inline void Area3d::clear_has_max_z() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void Area3d::clear_max_z() {
  max_z_ = 0;
  clear_has_max_z();
}
inline float Area3d::max_z() const {
  // @@protoc_insertion_point(field_get:Terminal.Area3d.max_z)
  return max_z_;
}
inline void Area3d::set_max_z(float value) {
  set_has_max_z();
  max_z_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Area3d.max_z)
}

// -------------------------------------------------------------------

// Laser_parameter

// required int64 id = 1;
inline bool Laser_parameter::has_id() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void Laser_parameter::set_has_id() {
  _has_bits_[0] |= 0x00000001u;
}
inline void Laser_parameter::clear_has_id() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void Laser_parameter::clear_id() {
  id_ = GOOGLE_LONGLONG(0);
  clear_has_id();
}
inline ::google::protobuf::int64 Laser_parameter::id() const {
  // @@protoc_insertion_point(field_get:Terminal.Laser_parameter.id)
  return id_;
}
inline void Laser_parameter::set_id(::google::protobuf::int64 value) {
  set_has_id();
  id_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Laser_parameter.id)
}

// optional int64 frame_count = 2;
inline bool Laser_parameter::has_frame_count() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void Laser_parameter::set_has_frame_count() {
  _has_bits_[0] |= 0x00000002u;
}
inline void Laser_parameter::clear_has_frame_count() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void Laser_parameter::clear_frame_count() {
  frame_count_ = GOOGLE_LONGLONG(0);
  clear_has_frame_count();
}
inline ::google::protobuf::int64 Laser_parameter::frame_count() const {
  // @@protoc_insertion_point(field_get:Terminal.Laser_parameter.frame_count)
  return frame_count_;
}
inline void Laser_parameter::set_frame_count(::google::protobuf::int64 value) {
  set_has_frame_count();
  frame_count_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Laser_parameter.frame_count)
}

// -------------------------------------------------------------------

// Terminor_parameter

// required .Terminal.Area3d area_3d = 1;
inline bool Terminor_parameter::has_area_3d() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void Terminor_parameter::set_has_area_3d() {
  _has_bits_[0] |= 0x00000001u;
}
inline void Terminor_parameter::clear_has_area_3d() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void Terminor_parameter::clear_area_3d() {
  if (area_3d_ != NULL) area_3d_->Clear();
  clear_has_area_3d();
}
inline const ::Terminal::Area3d& Terminor_parameter::area_3d() const {
  const ::Terminal::Area3d* p = area_3d_;
  // @@protoc_insertion_point(field_get:Terminal.Terminor_parameter.area_3d)
  return p != NULL ? *p : *reinterpret_cast<const ::Terminal::Area3d*>(
      &::Terminal::_Area3d_default_instance_);
}
inline ::Terminal::Area3d* Terminor_parameter::release_area_3d() {
  // @@protoc_insertion_point(field_release:Terminal.Terminor_parameter.area_3d)
  clear_has_area_3d();
  ::Terminal::Area3d* temp = area_3d_;
  area_3d_ = NULL;
  return temp;
}
inline ::Terminal::Area3d* Terminor_parameter::mutable_area_3d() {
  set_has_area_3d();
  if (area_3d_ == NULL) {
    area_3d_ = new ::Terminal::Area3d;
  }
  // @@protoc_insertion_point(field_mutable:Terminal.Terminor_parameter.area_3d)
  return area_3d_;
}
inline void Terminor_parameter::set_allocated_area_3d(::Terminal::Area3d* area_3d) {
  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == NULL) {
    delete area_3d_;
  }
  if (area_3d) {
    ::google::protobuf::Arena* submessage_arena = NULL;
    if (message_arena != submessage_arena) {
      area_3d = ::google::protobuf::internal::GetOwnedMessage(
          message_arena, area_3d, submessage_arena);
    }
    set_has_area_3d();
  } else {
    clear_has_area_3d();
  }
  area_3d_ = area_3d;
  // @@protoc_insertion_point(field_set_allocated:Terminal.Terminor_parameter.area_3d)
}

// required int64 id = 2;
inline bool Terminor_parameter::has_id() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void Terminor_parameter::set_has_id() {
  _has_bits_[0] |= 0x00000002u;
}
inline void Terminor_parameter::clear_has_id() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void Terminor_parameter::clear_id() {
  id_ = GOOGLE_LONGLONG(0);
  clear_has_id();
}
inline ::google::protobuf::int64 Terminor_parameter::id() const {
  // @@protoc_insertion_point(field_get:Terminal.Terminor_parameter.id)
  return id_;
}
inline void Terminor_parameter::set_id(::google::protobuf::int64 value) {
  set_has_id();
  id_ = value;
  // @@protoc_insertion_point(field_set:Terminal.Terminor_parameter.id)
}

// repeated .Terminal.Laser_parameter laser_parameter = 3;
inline int Terminor_parameter::laser_parameter_size() const {
  return laser_parameter_.size();
}
inline void Terminor_parameter::clear_laser_parameter() {
  laser_parameter_.Clear();
}
inline const ::Terminal::Laser_parameter& Terminor_parameter::laser_parameter(int index) const {
  // @@protoc_insertion_point(field_get:Terminal.Terminor_parameter.laser_parameter)
  return laser_parameter_.Get(index);
}
inline ::Terminal::Laser_parameter* Terminor_parameter::mutable_laser_parameter(int index) {
  // @@protoc_insertion_point(field_mutable:Terminal.Terminor_parameter.laser_parameter)
  return laser_parameter_.Mutable(index);
}
inline ::Terminal::Laser_parameter* Terminor_parameter::add_laser_parameter() {
  // @@protoc_insertion_point(field_add:Terminal.Terminor_parameter.laser_parameter)
  return laser_parameter_.Add();
}
inline ::google::protobuf::RepeatedPtrField< ::Terminal::Laser_parameter >*
Terminor_parameter::mutable_laser_parameter() {
  // @@protoc_insertion_point(field_mutable_list:Terminal.Terminor_parameter.laser_parameter)
  return &laser_parameter_;
}
inline const ::google::protobuf::RepeatedPtrField< ::Terminal::Laser_parameter >&
Terminor_parameter::laser_parameter() const {
  // @@protoc_insertion_point(field_list:Terminal.Terminor_parameter.laser_parameter)
  return laser_parameter_;
}

// -------------------------------------------------------------------

// Terminor_parameter_all

// repeated .Terminal.Terminor_parameter terminor_parameters = 1;
inline int Terminor_parameter_all::terminor_parameters_size() const {
  return terminor_parameters_.size();
}
inline void Terminor_parameter_all::clear_terminor_parameters() {
  terminor_parameters_.Clear();
}
inline const ::Terminal::Terminor_parameter& Terminor_parameter_all::terminor_parameters(int index) const {
  // @@protoc_insertion_point(field_get:Terminal.Terminor_parameter_all.terminor_parameters)
  return terminor_parameters_.Get(index);
}
inline ::Terminal::Terminor_parameter* Terminor_parameter_all::mutable_terminor_parameters(int index) {
  // @@protoc_insertion_point(field_mutable:Terminal.Terminor_parameter_all.terminor_parameters)
  return terminor_parameters_.Mutable(index);
}
inline ::Terminal::Terminor_parameter* Terminor_parameter_all::add_terminor_parameters() {
  // @@protoc_insertion_point(field_add:Terminal.Terminor_parameter_all.terminor_parameters)
  return terminor_parameters_.Add();
}
inline ::google::protobuf::RepeatedPtrField< ::Terminal::Terminor_parameter >*
Terminor_parameter_all::mutable_terminor_parameters() {
  // @@protoc_insertion_point(field_mutable_list:Terminal.Terminor_parameter_all.terminor_parameters)
  return &terminor_parameters_;
}
inline const ::google::protobuf::RepeatedPtrField< ::Terminal::Terminor_parameter >&
Terminor_parameter_all::terminor_parameters() const {
  // @@protoc_insertion_point(field_list:Terminal.Terminor_parameter_all.terminor_parameters)
  return terminor_parameters_;
}

// required string save_root_path = 2;
inline bool Terminor_parameter_all::has_save_root_path() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void Terminor_parameter_all::set_has_save_root_path() {
  _has_bits_[0] |= 0x00000001u;
}
inline void Terminor_parameter_all::clear_has_save_root_path() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void Terminor_parameter_all::clear_save_root_path() {
  save_root_path_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  clear_has_save_root_path();
}
inline const ::std::string& Terminor_parameter_all::save_root_path() const {
  // @@protoc_insertion_point(field_get:Terminal.Terminor_parameter_all.save_root_path)
  return save_root_path_.GetNoArena();
}
inline void Terminor_parameter_all::set_save_root_path(const ::std::string& value) {
  set_has_save_root_path();
  save_root_path_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:Terminal.Terminor_parameter_all.save_root_path)
}
#if LANG_CXX11
inline void Terminor_parameter_all::set_save_root_path(::std::string&& value) {
  set_has_save_root_path();
  save_root_path_.SetNoArena(
    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:Terminal.Terminor_parameter_all.save_root_path)
}
#endif
inline void Terminor_parameter_all::set_save_root_path(const char* value) {
  GOOGLE_DCHECK(value != NULL);
  set_has_save_root_path();
  save_root_path_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:Terminal.Terminor_parameter_all.save_root_path)
}
inline void Terminor_parameter_all::set_save_root_path(const char* value, size_t size) {
  set_has_save_root_path();
  save_root_path_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:Terminal.Terminor_parameter_all.save_root_path)
}
inline ::std::string* Terminor_parameter_all::mutable_save_root_path() {
  set_has_save_root_path();
  // @@protoc_insertion_point(field_mutable:Terminal.Terminor_parameter_all.save_root_path)
  return save_root_path_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline ::std::string* Terminor_parameter_all::release_save_root_path() {
  // @@protoc_insertion_point(field_release:Terminal.Terminor_parameter_all.save_root_path)
  clear_has_save_root_path();
  return save_root_path_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
}
inline void Terminor_parameter_all::set_allocated_save_root_path(::std::string* save_root_path) {
  if (save_root_path != NULL) {
    set_has_save_root_path();
  } else {
    clear_has_save_root_path();
  }
  save_root_path_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), save_root_path);
  // @@protoc_insertion_point(field_set_allocated:Terminal.Terminor_parameter_all.save_root_path)
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------


// @@protoc_insertion_point(namespace_scope)

}  // namespace Terminal

// @@protoc_insertion_point(global_scope)

#endif  // PROTOBUF_Terminor_5fparameter_2eproto__INCLUDED
