aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Native/Tango.ProtoTest/PMR/HardwareMotor.pb.cc
blob: bb52a2a13d965a747aa4942fe698860a1a232cb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: AnalyzeOutput.proto

#ifndef PROTOBUF_AnalyzeOutput_2eproto__INCLUDED
#define PROTOBUF_AnalyzeOutput_2eproto__INCLUDED

#include <string>

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

#if GOOGLE_PROTOBUF_VERSION < 3004000
#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 3004000 < 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>
#include "EmbroideryFile.pb.h"
// @@protoc_insertion_point(includes)
namespace Tango {
namespace PMR {
namespace Embroidery {
class AnalyzeOutput;
class AnalyzeOutputDefaultTypeInternal;
extern AnalyzeOutputDefaultTypeInternal _AnalyzeOutput_default_instance_;
}  // namespace Embroidery
}  // namespace PMR
}  // namespace Tango

namespace Tango {
namespace PMR {
namespace Embroidery {

namespace protobuf_AnalyzeOutput_2eproto {
// Internal implementation detail -- do not call these.
struct TableStruct {
  static const ::google::protobuf::internal::ParseTableField entries[];
  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
  static const ::google::protobuf::internal::ParseTable schema[];
  static const ::google::protobuf::uint32 offsets[];
  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
  static const ::google::protobuf::internal::SerializationTable serialization_table[];
  static void InitDefaultsImpl();
};
void AddDescriptors();
void InitDefaults();
}  // namespace protobuf_AnalyzeOutput_2eproto

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

class AnalyzeOutput : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Tango.PMR.Embroidery.AnalyzeOutput) */ {
 public:
  AnalyzeOutput();
  virtual ~AnalyzeOutput();

  AnalyzeOutput(const AnalyzeOutput& from);

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

  inline AnalyzeOutput& operator=(AnalyzeOutput&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }
  #endif
  static const ::google::protobuf::Descriptor* descriptor();
  static const AnalyzeOutput& default_instance();

  static inline const AnalyzeOutput* internal_default_instance() {
    return reinterpret_cast<const AnalyzeOutput*>(
               &_AnalyzeOutput_default_instance_);
  }
  static PROTOBUF_CONSTEXPR int const kIndexInFileMessages =
    0;

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

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

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

  AnalyzeOutput* 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 AnalyzeOutput& from);
  void MergeFrom(const AnalyzeOutput& 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(AnalyzeOutput* 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 -------------------------------------------------------

  // .Tango.PMR.Embroidery.EmbroideryFile EmbroideryFile = 1;
  bool has_embroideryfile() const;
  void clear_embroideryfile();
  static const int kEmbroideryFileFieldNumber = 1;
  const ::Tango::PMR::Embroidery::EmbroideryFile& embroideryfile() const;
  ::Tango::PMR::Embroidery::EmbroideryFile* mutable_embroideryfile();
  ::Tango::PMR::Embroidery::EmbroideryFile* release_embroideryfile();
  void set_allocated_embroideryfile(::Tango::PMR::Embroidery::EmbroideryFile* embroideryfile);

  // @@protoc_insertion_point(class_scope:Tango.PMR.Embroidery.AnalyzeOutput)
 private:

  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
  ::Tango::PMR::Embroidery::EmbroideryFile* embroideryfile_;
  mutable int _cached_size_;
  friend struct protobuf_AnalyzeOutput_2eproto::TableStruct;
};
// ===================================================================


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

#if !PROTOBUF_INLINE_NOT_IN_HEADERS
#ifdef __GNUC__
  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// AnalyzeOutput

// .Tango.PMR.Embroidery.EmbroideryFile EmbroideryFile = 1;
inline bool AnalyzeOutput::has_embroideryfile() const {
  return this != internal_default_instance() && embroideryfile_ != NULL;
}
inline void AnalyzeOutput::clear_embroideryfile() {
  if (GetArenaNoVirtual() == NULL && embroideryfile_ != NULL) delete embroideryfile_;
  embroideryfile_ = NULL;
}
inline const ::Tango::PMR::Embroidery::EmbroideryFile& AnalyzeOutput::embroideryfile() const {
  const ::Tango::PMR::Embroidery::EmbroideryFile* p = embroideryfile_;
  // @@protoc_insertion_point(field_get:Tango.PMR.Embroidery.AnalyzeOutput.EmbroideryFile)
  return p != NULL ? *p : *reinterpret_cast<const ::Tango::PMR::Embroidery::EmbroideryFile*>(
      &::Tango::PMR::Embroidery::_EmbroideryFile_default_instance_);
}
inline ::Tango::PMR::Embroidery::EmbroideryFile* AnalyzeOutput::mutable_embroideryfile() {
  
  if (embroideryfile_ == NULL) {
    embroideryfile_ = new ::Tango::PMR::Embroidery::EmbroideryFile;
  }
  // @@protoc_insertion_point(field_mutable:Tango.PMR.Embroidery.AnalyzeOutput.EmbroideryFile)
  return embroideryfile_;
}
inline ::Tango::PMR::Embroidery::EmbroideryFile* AnalyzeOutput::release_embroideryfile() {
  // @@protoc_insertion_point(field_release:Tango.PMR.Embroidery.AnalyzeOutput.EmbroideryFile)
  
  ::Tango::PMR::Embroidery::EmbroideryFile* temp = embroideryfile_;
  embroideryfile_ = NULL;
  return temp;
}
inline void AnalyzeOutput::set_allocated_embroideryfile(::Tango::PMR::Embroidery::EmbroideryFile* embroideryfile) {
  delete embroideryfile_;
  embroideryfile_ = embroideryfile;
  if (embroideryfile) {
    
  } else {
    
  }
  // @@protoc_insertion_point(field_set_allocated:Tango.PMR.Embroidery.AnalyzeOutput.EmbroideryFile)
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
#endif  // !PROTOBUF_INLINE_NOT_IN_HEADERS

// @@protoc_insertion_point(namespace_scope)


}  // namespace Embroidery
}  // namespace PMR
}  // namespace Tango

// @@protoc_insertion_point(global_scope)

#endif  // PROTOBUF_AnalyzeOutput_2eproto__INCLUDED
#n1510'>1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: HardwareMotor.proto

#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
#include "HardwareMotor.pb.h"

#include <algorithm>

#include <google/protobuf/stubs/common.h>
#include <google/protobuf/stubs/port.h>
#include <google/protobuf/stubs/once.h>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/wire_format_lite_inl.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)

namespace Tango {
namespace PMR {
namespace Hardware {
class HardwareMotorDefaultTypeInternal {
public:
 ::google::protobuf::internal::ExplicitlyConstructed<HardwareMotor>
     _instance;
} _HardwareMotor_default_instance_;

namespace protobuf_HardwareMotor_2eproto {


namespace {

::google::protobuf::Metadata file_level_metadata[1];

}  // namespace

PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTableField
    const TableStruct::entries[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  {0, 0, 0, ::google::protobuf::internal::kInvalidMask, 0, 0},
};

PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::AuxillaryParseTableField
    const TableStruct::aux[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  ::google::protobuf::internal::AuxillaryParseTableField(),
};
PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTable const
    TableStruct::schema[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  { NULL, NULL, 0, -1, -1, -1, -1, NULL, false },
};

const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, hardwaremotortype_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, minfrequency_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, maxfrequency_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, setmicrostep_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, microstep_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, maxchangeslope_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, highlengthmicrosecond_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, speedmaster_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, pulseperround_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, pulleyradius_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, configword_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, directionthreadwize_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, kvalhold_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, kvalrun_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, kvalacc_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, kvaldec_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, overcurrentthreshold_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, stallthreshold_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, thermalcompensationfactor_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, lowspeedoptimization_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, stslp_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, intspd_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, fnslpacc_),
  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(HardwareMotor, fnslpdec_),
};
static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, sizeof(HardwareMotor)},
};

static ::google::protobuf::Message const * const file_default_instances[] = {
  reinterpret_cast<const ::google::protobuf::Message*>(&_HardwareMotor_default_instance_),
};

namespace {

void protobuf_AssignDescriptors() {
  AddDescriptors();
  ::google::protobuf::MessageFactory* factory = NULL;
  AssignDescriptors(
      "HardwareMotor.proto", schemas, file_default_instances, TableStruct::offsets, factory,
      file_level_metadata, NULL, NULL);
}

void protobuf_AssignDescriptorsOnce() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &protobuf_AssignDescriptors);
}

void protobuf_RegisterTypes(const ::std::string&) GOOGLE_ATTRIBUTE_COLD;
void protobuf_RegisterTypes(const ::std::string&) {
  protobuf_AssignDescriptorsOnce();
  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 1);
}

}  // namespace
void TableStruct::InitDefaultsImpl() {
  GOOGLE_PROTOBUF_VERIFY_VERSION;

  ::google::protobuf::internal::InitProtobufDefaults();
  ::Tango::PMR::Hardware::protobuf_HardwareMotorType_2eproto::InitDefaults();
  _HardwareMotor_default_instance_._instance.DefaultConstruct();
  ::google::protobuf::internal::OnShutdownDestroyMessage(
      &_HardwareMotor_default_instance_);}

void InitDefaults() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &TableStruct::InitDefaultsImpl);
}
namespace {
void AddDescriptorsImpl() {
  InitDefaults();
  static const char descriptor[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
      "\n\023HardwareMotor.proto\022\022Tango.PMR.Hardwar"
      "e\032\027HardwareMotorType.proto\"\317\004\n\rHardwareM"
      "otor\022@\n\021HardwareMotorType\030\001 \001(\0162%.Tango."
      "PMR.Hardware.HardwareMotorType\022\024\n\014MinFre"
      "quency\030\002 \001(\005\022\024\n\014MaxFrequency\030\003 \001(\005\022\024\n\014Se"
      "tMicroStep\030\004 \001(\005\022\021\n\tMicroStep\030\005 \001(\005\022\026\n\016M"
      "axChangeSlope\030\006 \001(\001\022\035\n\025HighLengthMicroSe"
      "cond\030\007 \001(\001\022\023\n\013SpeedMaster\030\010 \001(\010\022\025\n\rPulse"
      "PerRound\030\t \001(\005\022\024\n\014PulleyRadius\030\n \001(\001\022\022\n\n"
      "ConfigWord\030\013 \001(\005\022\033\n\023DirectionThreadWize\030"
      "\014 \001(\010\022\020\n\010KvalHold\030\r \001(\005\022\017\n\007KvalRun\030\016 \001(\005"
      "\022\017\n\007KvalAcc\030\017 \001(\005\022\017\n\007KvalDec\030\020 \001(\005\022\034\n\024Ov"
      "erCurrentThreshold\030\021 \001(\005\022\026\n\016StallThresho"
      "ld\030\022 \001(\005\022!\n\031ThermalCompensationFactor\030\023 "
      "\001(\005\022\034\n\024LowSpeedOptimization\030\024 \001(\010\022\r\n\005StS"
      "lp\030\025 \001(\005\022\016\n\006IntSpd\030\026 \001(\005\022\020\n\010FnSlpAcc\030\027 \001"
      "(\005\022\020\n\010FnSlpDec\030\030 \001(\005B\036\n\034com.twine.tango."
      "pmr.hardwareb\006proto3"
  };
  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
      descriptor, 700);
  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
    "HardwareMotor.proto", &protobuf_RegisterTypes);
  ::Tango::PMR::Hardware::protobuf_HardwareMotorType_2eproto::AddDescriptors();
}
} // anonymous namespace

void AddDescriptors() {
  static GOOGLE_PROTOBUF_DECLARE_ONCE(once);
  ::google::protobuf::GoogleOnceInit(&once, &AddDescriptorsImpl);
}
// Force AddDescriptors() to be called at dynamic initialization time.
struct StaticDescriptorInitializer {
  StaticDescriptorInitializer() {
    AddDescriptors();
  }
} static_descriptor_initializer;

}  // namespace protobuf_HardwareMotor_2eproto


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

#if !defined(_MSC_VER) || _MSC_VER >= 1900
const int HardwareMotor::kHardwareMotorTypeFieldNumber;
const int HardwareMotor::kMinFrequencyFieldNumber;
const int HardwareMotor::kMaxFrequencyFieldNumber;
const int HardwareMotor::kSetMicroStepFieldNumber;
const int HardwareMotor::kMicroStepFieldNumber;
const int HardwareMotor::kMaxChangeSlopeFieldNumber;
const int HardwareMotor::kHighLengthMicroSecondFieldNumber;
const int HardwareMotor::kSpeedMasterFieldNumber;
const int HardwareMotor::kPulsePerRoundFieldNumber;
const int HardwareMotor::kPulleyRadiusFieldNumber;
const int HardwareMotor::kConfigWordFieldNumber;
const int HardwareMotor::kDirectionThreadWizeFieldNumber;
const int HardwareMotor::kKvalHoldFieldNumber;
const int HardwareMotor::kKvalRunFieldNumber;
const int HardwareMotor::kKvalAccFieldNumber;
const int HardwareMotor::kKvalDecFieldNumber;
const int HardwareMotor::kOverCurrentThresholdFieldNumber;
const int HardwareMotor::kStallThresholdFieldNumber;
const int HardwareMotor::kThermalCompensationFactorFieldNumber;
const int HardwareMotor::kLowSpeedOptimizationFieldNumber;
const int HardwareMotor::kStSlpFieldNumber;
const int HardwareMotor::kIntSpdFieldNumber;
const int HardwareMotor::kFnSlpAccFieldNumber;
const int HardwareMotor::kFnSlpDecFieldNumber;
#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900

HardwareMotor::HardwareMotor()
  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
  if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) {
    protobuf_HardwareMotor_2eproto::InitDefaults();
  }
  SharedCtor();
  // @@protoc_insertion_point(constructor:Tango.PMR.Hardware.HardwareMotor)
}
HardwareMotor::HardwareMotor(const HardwareMotor& from)
  : ::google::protobuf::Message(),
      _internal_metadata_(NULL),
      _cached_size_(0) {
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::memcpy(&hardwaremotortype_, &from.hardwaremotortype_,
    static_cast<size_t>(reinterpret_cast<char*>(&fnslpdec_) -
    reinterpret_cast<char*>(&hardwaremotortype_)) + sizeof(fnslpdec_));
  // @@protoc_insertion_point(copy_constructor:Tango.PMR.Hardware.HardwareMotor)
}

void HardwareMotor::SharedCtor() {
  ::memset(&hardwaremotortype_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&fnslpdec_) -
      reinterpret_cast<char*>(&hardwaremotortype_)) + sizeof(fnslpdec_));
  _cached_size_ = 0;
}

HardwareMotor::~HardwareMotor() {
  // @@protoc_insertion_point(destructor:Tango.PMR.Hardware.HardwareMotor)
  SharedDtor();
}

void HardwareMotor::SharedDtor() {
}

void HardwareMotor::SetCachedSize(int size) const {
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
}
const ::google::protobuf::Descriptor* HardwareMotor::descriptor() {
  protobuf_HardwareMotor_2eproto::protobuf_AssignDescriptorsOnce();
  return protobuf_HardwareMotor_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
}

const HardwareMotor& HardwareMotor::default_instance() {
  protobuf_HardwareMotor_2eproto::InitDefaults();
  return *internal_default_instance();
}

HardwareMotor* HardwareMotor::New(::google::protobuf::Arena* arena) const {
  HardwareMotor* n = new HardwareMotor;
  if (arena != NULL) {
    arena->Own(n);
  }
  return n;
}

void HardwareMotor::Clear() {
// @@protoc_insertion_point(message_clear_start:Tango.PMR.Hardware.HardwareMotor)
  ::google::protobuf::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  ::memset(&hardwaremotortype_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&fnslpdec_) -
      reinterpret_cast<char*>(&hardwaremotortype_)) + sizeof(fnslpdec_));
  _internal_metadata_.Clear();
}

bool HardwareMotor::MergePartialFromCodedStream(
    ::google::protobuf::io::CodedInputStream* input) {
#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
  ::google::protobuf::uint32 tag;
  // @@protoc_insertion_point(parse_start:Tango.PMR.Hardware.HardwareMotor)
  for (;;) {
    ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
    tag = p.first;
    if (!p.second) goto handle_unusual;
    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
      // .Tango.PMR.Hardware.HardwareMotorType HardwareMotorType = 1;
      case 1: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
          int value;
          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
                 input, &value)));
          set_hardwaremotortype(static_cast< ::Tango::PMR::Hardware::HardwareMotorType >(value));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 MinFrequency = 2;
      case 2: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &minfrequency_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 MaxFrequency = 3;
      case 3: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &maxfrequency_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 SetMicroStep = 4;
      case 4: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &setmicrostep_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 MicroStep = 5;
      case 5: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &microstep_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // double MaxChangeSlope = 6;
      case 6: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(49u /* 49 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                 input, &maxchangeslope_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // double HighLengthMicroSecond = 7;
      case 7: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(57u /* 57 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                 input, &highlengthmicrosecond_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // bool SpeedMaster = 8;
      case 8: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &speedmaster_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 PulsePerRound = 9;
      case 9: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &pulseperround_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // double PulleyRadius = 10;
      case 10: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(81u /* 81 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                 input, &pulleyradius_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 ConfigWord = 11;
      case 11: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(88u /* 88 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &configword_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // bool DirectionThreadWize = 12;
      case 12: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(96u /* 96 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &directionthreadwize_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 KvalHold = 13;
      case 13: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(104u /* 104 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &kvalhold_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 KvalRun = 14;
      case 14: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(112u /* 112 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &kvalrun_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 KvalAcc = 15;
      case 15: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(120u /* 120 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &kvalacc_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 KvalDec = 16;
      case 16: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(128u /* 128 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &kvaldec_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 OverCurrentThreshold = 17;
      case 17: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(136u /* 136 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &overcurrentthreshold_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 StallThreshold = 18;
      case 18: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(144u /* 144 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &stallthreshold_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 ThermalCompensationFactor = 19;
      case 19: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(152u /* 152 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &thermalcompensationfactor_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // bool LowSpeedOptimization = 20;
      case 20: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(160u /* 160 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                 input, &lowspeedoptimization_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 StSlp = 21;
      case 21: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(168u /* 168 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &stslp_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 IntSpd = 22;
      case 22: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(176u /* 176 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &intspd_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 FnSlpAcc = 23;
      case 23: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(184u /* 184 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &fnslpacc_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      // int32 FnSlpDec = 24;
      case 24: {
        if (static_cast< ::google::protobuf::uint8>(tag) ==
            static_cast< ::google::protobuf::uint8>(192u /* 192 & 0xFF */)) {

          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                 input, &fnslpdec_)));
        } else {
          goto handle_unusual;
        }
        break;
      }

      default: {
      handle_unusual:
        if (tag == 0) {
          goto success;
        }
        DO_(::google::protobuf::internal::WireFormat::SkipField(
              input, tag, _internal_metadata_.mutable_unknown_fields()));
        break;
      }
    }
  }
success:
  // @@protoc_insertion_point(parse_success:Tango.PMR.Hardware.HardwareMotor)
  return true;
failure:
  // @@protoc_insertion_point(parse_failure:Tango.PMR.Hardware.HardwareMotor)
  return false;
#undef DO_
}

void HardwareMotor::SerializeWithCachedSizes(
    ::google::protobuf::io::CodedOutputStream* output) const {
  // @@protoc_insertion_point(serialize_start:Tango.PMR.Hardware.HardwareMotor)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // .Tango.PMR.Hardware.HardwareMotorType HardwareMotorType = 1;
  if (this->hardwaremotortype() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteEnum(
      1, this->hardwaremotortype(), output);
  }

  // int32 MinFrequency = 2;
  if (this->minfrequency() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->minfrequency(), output);
  }

  // int32 MaxFrequency = 3;
  if (this->maxfrequency() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->maxfrequency(), output);
  }

  // int32 SetMicroStep = 4;
  if (this->setmicrostep() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->setmicrostep(), output);
  }

  // int32 MicroStep = 5;
  if (this->microstep() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->microstep(), output);
  }

  // double MaxChangeSlope = 6;
  if (this->maxchangeslope() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteDouble(6, this->maxchangeslope(), output);
  }

  // double HighLengthMicroSecond = 7;
  if (this->highlengthmicrosecond() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteDouble(7, this->highlengthmicrosecond(), output);
  }

  // bool SpeedMaster = 8;
  if (this->speedmaster() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(8, this->speedmaster(), output);
  }

  // int32 PulsePerRound = 9;
  if (this->pulseperround() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->pulseperround(), output);
  }

  // double PulleyRadius = 10;
  if (this->pulleyradius() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteDouble(10, this->pulleyradius(), output);
  }

  // int32 ConfigWord = 11;
  if (this->configword() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(11, this->configword(), output);
  }

  // bool DirectionThreadWize = 12;
  if (this->directionthreadwize() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(12, this->directionthreadwize(), output);
  }

  // int32 KvalHold = 13;
  if (this->kvalhold() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(13, this->kvalhold(), output);
  }

  // int32 KvalRun = 14;
  if (this->kvalrun() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(14, this->kvalrun(), output);
  }

  // int32 KvalAcc = 15;
  if (this->kvalacc() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(15, this->kvalacc(), output);
  }

  // int32 KvalDec = 16;
  if (this->kvaldec() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(16, this->kvaldec(), output);
  }

  // int32 OverCurrentThreshold = 17;
  if (this->overcurrentthreshold() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->overcurrentthreshold(), output);
  }

  // int32 StallThreshold = 18;
  if (this->stallthreshold() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(18, this->stallthreshold(), output);
  }

  // int32 ThermalCompensationFactor = 19;
  if (this->thermalcompensationfactor() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(19, this->thermalcompensationfactor(), output);
  }

  // bool LowSpeedOptimization = 20;
  if (this->lowspeedoptimization() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteBool(20, this->lowspeedoptimization(), output);
  }

  // int32 StSlp = 21;
  if (this->stslp() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(21, this->stslp(), output);
  }

  // int32 IntSpd = 22;
  if (this->intspd() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(22, this->intspd(), output);
  }

  // int32 FnSlpAcc = 23;
  if (this->fnslpacc() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(23, this->fnslpacc(), output);
  }

  // int32 FnSlpDec = 24;
  if (this->fnslpdec() != 0) {
    ::google::protobuf::internal::WireFormatLite::WriteInt32(24, this->fnslpdec(), output);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), output);
  }
  // @@protoc_insertion_point(serialize_end:Tango.PMR.Hardware.HardwareMotor)
}

::google::protobuf::uint8* HardwareMotor::InternalSerializeWithCachedSizesToArray(
    bool deterministic, ::google::protobuf::uint8* target) const {
  (void)deterministic; // Unused
  // @@protoc_insertion_point(serialize_to_array_start:Tango.PMR.Hardware.HardwareMotor)
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  // .Tango.PMR.Hardware.HardwareMotorType HardwareMotorType = 1;
  if (this->hardwaremotortype() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
      1, this->hardwaremotortype(), target);
  }

  // int32 MinFrequency = 2;
  if (this->minfrequency() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->minfrequency(), target);
  }

  // int32 MaxFrequency = 3;
  if (this->maxfrequency() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->maxfrequency(), target);
  }

  // int32 SetMicroStep = 4;
  if (this->setmicrostep() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->setmicrostep(), target);
  }

  // int32 MicroStep = 5;
  if (this->microstep() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->microstep(), target);
  }

  // double MaxChangeSlope = 6;
  if (this->maxchangeslope() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(6, this->maxchangeslope(), target);
  }

  // double HighLengthMicroSecond = 7;
  if (this->highlengthmicrosecond() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(7, this->highlengthmicrosecond(), target);
  }

  // bool SpeedMaster = 8;
  if (this->speedmaster() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(8, this->speedmaster(), target);
  }

  // int32 PulsePerRound = 9;
  if (this->pulseperround() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->pulseperround(), target);
  }

  // double PulleyRadius = 10;
  if (this->pulleyradius() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(10, this->pulleyradius(), target);
  }

  // int32 ConfigWord = 11;
  if (this->configword() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(11, this->configword(), target);
  }

  // bool DirectionThreadWize = 12;
  if (this->directionthreadwize() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(12, this->directionthreadwize(), target);
  }

  // int32 KvalHold = 13;
  if (this->kvalhold() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(13, this->kvalhold(), target);
  }

  // int32 KvalRun = 14;
  if (this->kvalrun() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(14, this->kvalrun(), target);
  }

  // int32 KvalAcc = 15;
  if (this->kvalacc() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(15, this->kvalacc(), target);
  }

  // int32 KvalDec = 16;
  if (this->kvaldec() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(16, this->kvaldec(), target);
  }

  // int32 OverCurrentThreshold = 17;
  if (this->overcurrentthreshold() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(17, this->overcurrentthreshold(), target);
  }

  // int32 StallThreshold = 18;
  if (this->stallthreshold() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(18, this->stallthreshold(), target);
  }

  // int32 ThermalCompensationFactor = 19;
  if (this->thermalcompensationfactor() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(19, this->thermalcompensationfactor(), target);
  }

  // bool LowSpeedOptimization = 20;
  if (this->lowspeedoptimization() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(20, this->lowspeedoptimization(), target);
  }

  // int32 StSlp = 21;
  if (this->stslp() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(21, this->stslp(), target);
  }

  // int32 IntSpd = 22;
  if (this->intspd() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(22, this->intspd(), target);
  }

  // int32 FnSlpAcc = 23;
  if (this->fnslpacc() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(23, this->fnslpacc(), target);
  }

  // int32 FnSlpDec = 24;
  if (this->fnslpdec() != 0) {
    target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(24, this->fnslpdec(), target);
  }

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:Tango.PMR.Hardware.HardwareMotor)
  return target;
}

size_t HardwareMotor::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:Tango.PMR.Hardware.HardwareMotor)
  size_t total_size = 0;

  if ((_internal_metadata_.have_unknown_fields() &&  ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) {
    total_size +=
      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
        (::google::protobuf::internal::GetProto3PreserveUnknownsDefault()   ? _internal_metadata_.unknown_fields()   : _internal_metadata_.default_instance()));
  }
  // .Tango.PMR.Hardware.HardwareMotorType HardwareMotorType = 1;
  if (this->hardwaremotortype() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::EnumSize(this->hardwaremotortype());
  }

  // int32 MinFrequency = 2;
  if (this->minfrequency() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->minfrequency());
  }

  // int32 MaxFrequency = 3;
  if (this->maxfrequency() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->maxfrequency());
  }

  // int32 SetMicroStep = 4;
  if (this->setmicrostep() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->setmicrostep());
  }

  // double MaxChangeSlope = 6;
  if (this->maxchangeslope() != 0) {
    total_size += 1 + 8;
  }

  // double HighLengthMicroSecond = 7;
  if (this->highlengthmicrosecond() != 0) {
    total_size += 1 + 8;
  }

  // int32 MicroStep = 5;
  if (this->microstep() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->microstep());
  }

  // int32 PulsePerRound = 9;
  if (this->pulseperround() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->pulseperround());
  }

  // double PulleyRadius = 10;
  if (this->pulleyradius() != 0) {
    total_size += 1 + 8;
  }

  // int32 ConfigWord = 11;
  if (this->configword() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->configword());
  }

  // int32 KvalHold = 13;
  if (this->kvalhold() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->kvalhold());
  }

  // bool SpeedMaster = 8;
  if (this->speedmaster() != 0) {
    total_size += 1 + 1;
  }

  // bool DirectionThreadWize = 12;
  if (this->directionthreadwize() != 0) {
    total_size += 1 + 1;
  }

  // bool LowSpeedOptimization = 20;
  if (this->lowspeedoptimization() != 0) {
    total_size += 2 + 1;
  }

  // int32 KvalRun = 14;
  if (this->kvalrun() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->kvalrun());
  }

  // int32 KvalAcc = 15;
  if (this->kvalacc() != 0) {
    total_size += 1 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->kvalacc());
  }

  // int32 KvalDec = 16;
  if (this->kvaldec() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->kvaldec());
  }

  // int32 OverCurrentThreshold = 17;
  if (this->overcurrentthreshold() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->overcurrentthreshold());
  }

  // int32 StallThreshold = 18;
  if (this->stallthreshold() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->stallthreshold());
  }

  // int32 ThermalCompensationFactor = 19;
  if (this->thermalcompensationfactor() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->thermalcompensationfactor());
  }

  // int32 StSlp = 21;
  if (this->stslp() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->stslp());
  }

  // int32 IntSpd = 22;
  if (this->intspd() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->intspd());
  }

  // int32 FnSlpAcc = 23;
  if (this->fnslpacc() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->fnslpacc());
  }

  // int32 FnSlpDec = 24;
  if (this->fnslpdec() != 0) {
    total_size += 2 +
      ::google::protobuf::internal::WireFormatLite::Int32Size(
        this->fnslpdec());
  }

  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
  _cached_size_ = cached_size;
  GOOGLE_SAFE_CONCURRENT_WRITES_END();
  return total_size;
}

void HardwareMotor::MergeFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:Tango.PMR.Hardware.HardwareMotor)
  GOOGLE_DCHECK_NE(&from, this);
  const HardwareMotor* source =
      ::google::protobuf::internal::DynamicCastToGenerated<const HardwareMotor>(
          &from);
  if (source == NULL) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:Tango.PMR.Hardware.HardwareMotor)
    ::google::protobuf::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:Tango.PMR.Hardware.HardwareMotor)
    MergeFrom(*source);
  }
}

void HardwareMotor::MergeFrom(const HardwareMotor& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:Tango.PMR.Hardware.HardwareMotor)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom(from._internal_metadata_);
  ::google::protobuf::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  if (from.hardwaremotortype() != 0) {
    set_hardwaremotortype(from.hardwaremotortype());
  }
  if (from.minfrequency() != 0) {
    set_minfrequency(from.minfrequency());
  }
  if (from.maxfrequency() != 0) {
    set_maxfrequency(from.maxfrequency());
  }
  if (from.setmicrostep() != 0) {
    set_setmicrostep(from.setmicrostep());
  }
  if (from.maxchangeslope() != 0) {
    set_maxchangeslope(from.maxchangeslope());
  }
  if (from.highlengthmicrosecond() != 0) {
    set_highlengthmicrosecond(from.highlengthmicrosecond());
  }
  if (from.microstep() != 0) {
    set_microstep(from.microstep());
  }
  if (from.pulseperround() != 0) {
    set_pulseperround(from.pulseperround());
  }
  if (from.pulleyradius() != 0) {
    set_pulleyradius(from.pulleyradius());
  }
  if (from.configword() != 0) {
    set_configword(from.configword());
  }
  if (from.kvalhold() != 0) {
    set_kvalhold(from.kvalhold());
  }
  if (from.speedmaster() != 0) {
    set_speedmaster(from.speedmaster());
  }
  if (from.directionthreadwize() != 0) {
    set_directionthreadwize(from.directionthreadwize());
  }
  if (from.lowspeedoptimization() != 0) {
    set_lowspeedoptimization(from.lowspeedoptimization());
  }
  if (from.kvalrun() != 0) {
    set_kvalrun(from.kvalrun());
  }
  if (from.kvalacc() != 0) {
    set_kvalacc(from.kvalacc());
  }
  if (from.kvaldec() != 0) {
    set_kvaldec(from.kvaldec());
  }
  if (from.overcurrentthreshold() != 0) {
    set_overcurrentthreshold(from.overcurrentthreshold());
  }
  if (from.stallthreshold() != 0) {
    set_stallthreshold(from.stallthreshold());
  }
  if (from.thermalcompensationfactor() != 0) {
    set_thermalcompensationfactor(from.thermalcompensationfactor());
  }
  if (from.stslp() != 0) {
    set_stslp(from.stslp());
  }
  if (from.intspd() != 0) {
    set_intspd(from.intspd());
  }
  if (from.fnslpacc() != 0) {
    set_fnslpacc(from.fnslpacc());
  }
  if (from.fnslpdec() != 0) {
    set_fnslpdec(from.fnslpdec());
  }
}

void HardwareMotor::CopyFrom(const ::google::protobuf::Message& from) {
// @@protoc_insertion_point(generalized_copy_from_start:Tango.PMR.Hardware.HardwareMotor)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

void HardwareMotor::CopyFrom(const HardwareMotor& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:Tango.PMR.Hardware.HardwareMotor)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool HardwareMotor::IsInitialized() const {
  return true;
}

void HardwareMotor::Swap(HardwareMotor* other) {
  if (other == this) return;
  InternalSwap(other);
}
void HardwareMotor::InternalSwap(HardwareMotor* other) {
  using std::swap;
  swap(hardwaremotortype_, other->hardwaremotortype_);
  swap(minfrequency_, other->minfrequency_);
  swap(maxfrequency_, other->maxfrequency_);
  swap(setmicrostep_, other->setmicrostep_);
  swap(maxchangeslope_, other->maxchangeslope_);
  swap(highlengthmicrosecond_, other->highlengthmicrosecond_);
  swap(microstep_, other->microstep_);
  swap(pulseperround_, other->pulseperround_);
  swap(pulleyradius_, other->pulleyradius_);
  swap(configword_, other->configword_);
  swap(kvalhold_, other->kvalhold_);
  swap(speedmaster_, other->speedmaster_);
  swap(directionthreadwize_, other->directionthreadwize_);
  swap(lowspeedoptimization_, other->lowspeedoptimization_);
  swap(kvalrun_, other->kvalrun_);
  swap(kvalacc_, other->kvalacc_);
  swap(kvaldec_, other->kvaldec_);
  swap(overcurrentthreshold_, other->overcurrentthreshold_);
  swap(stallthreshold_, other->stallthreshold_);
  swap(thermalcompensationfactor_, other->thermalcompensationfactor_);
  swap(stslp_, other->stslp_);
  swap(intspd_, other->intspd_);
  swap(fnslpacc_, other->fnslpacc_);
  swap(fnslpdec_, other->fnslpdec_);
  _internal_metadata_.Swap(&other->_internal_metadata_);
  swap(_cached_size_, other->_cached_size_);
}

::google::protobuf::Metadata HardwareMotor::GetMetadata() const {
  protobuf_HardwareMotor_2eproto::protobuf_AssignDescriptorsOnce();
  return protobuf_HardwareMotor_2eproto::file_level_metadata[kIndexInFileMessages];
}

#if PROTOBUF_INLINE_NOT_IN_HEADERS
// HardwareMotor

// .Tango.PMR.Hardware.HardwareMotorType HardwareMotorType = 1;
void HardwareMotor::clear_hardwaremotortype() {
  hardwaremotortype_ = 0;
}
::Tango::PMR::Hardware::HardwareMotorType HardwareMotor::hardwaremotortype() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.HardwareMotorType)
  return static_cast< ::Tango::PMR::Hardware::HardwareMotorType >(hardwaremotortype_);
}
void HardwareMotor::set_hardwaremotortype(::Tango::PMR::Hardware::HardwareMotorType value) {
  
  hardwaremotortype_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.HardwareMotorType)
}

// int32 MinFrequency = 2;
void HardwareMotor::clear_minfrequency() {
  minfrequency_ = 0;
}
::google::protobuf::int32 HardwareMotor::minfrequency() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.MinFrequency)
  return minfrequency_;
}
void HardwareMotor::set_minfrequency(::google::protobuf::int32 value) {
  
  minfrequency_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.MinFrequency)
}

// int32 MaxFrequency = 3;
void HardwareMotor::clear_maxfrequency() {
  maxfrequency_ = 0;
}
::google::protobuf::int32 HardwareMotor::maxfrequency() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.MaxFrequency)
  return maxfrequency_;
}
void HardwareMotor::set_maxfrequency(::google::protobuf::int32 value) {
  
  maxfrequency_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.MaxFrequency)
}

// int32 SetMicroStep = 4;
void HardwareMotor::clear_setmicrostep() {
  setmicrostep_ = 0;
}
::google::protobuf::int32 HardwareMotor::setmicrostep() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.SetMicroStep)
  return setmicrostep_;
}
void HardwareMotor::set_setmicrostep(::google::protobuf::int32 value) {
  
  setmicrostep_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.SetMicroStep)
}

// int32 MicroStep = 5;
void HardwareMotor::clear_microstep() {
  microstep_ = 0;
}
::google::protobuf::int32 HardwareMotor::microstep() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.MicroStep)
  return microstep_;
}
void HardwareMotor::set_microstep(::google::protobuf::int32 value) {
  
  microstep_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.MicroStep)
}

// double MaxChangeSlope = 6;
void HardwareMotor::clear_maxchangeslope() {
  maxchangeslope_ = 0;
}
double HardwareMotor::maxchangeslope() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.MaxChangeSlope)
  return maxchangeslope_;
}
void HardwareMotor::set_maxchangeslope(double value) {
  
  maxchangeslope_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.MaxChangeSlope)
}

// double HighLengthMicroSecond = 7;
void HardwareMotor::clear_highlengthmicrosecond() {
  highlengthmicrosecond_ = 0;
}
double HardwareMotor::highlengthmicrosecond() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.HighLengthMicroSecond)
  return highlengthmicrosecond_;
}
void HardwareMotor::set_highlengthmicrosecond(double value) {
  
  highlengthmicrosecond_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.HighLengthMicroSecond)
}

// bool SpeedMaster = 8;
void HardwareMotor::clear_speedmaster() {
  speedmaster_ = false;
}
bool HardwareMotor::speedmaster() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.SpeedMaster)
  return speedmaster_;
}
void HardwareMotor::set_speedmaster(bool value) {
  
  speedmaster_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.SpeedMaster)
}

// int32 PulsePerRound = 9;
void HardwareMotor::clear_pulseperround() {
  pulseperround_ = 0;
}
::google::protobuf::int32 HardwareMotor::pulseperround() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.PulsePerRound)
  return pulseperround_;
}
void HardwareMotor::set_pulseperround(::google::protobuf::int32 value) {
  
  pulseperround_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.PulsePerRound)
}

// double PulleyRadius = 10;
void HardwareMotor::clear_pulleyradius() {
  pulleyradius_ = 0;
}
double HardwareMotor::pulleyradius() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.PulleyRadius)
  return pulleyradius_;
}
void HardwareMotor::set_pulleyradius(double value) {
  
  pulleyradius_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.PulleyRadius)
}

// int32 ConfigWord = 11;
void HardwareMotor::clear_configword() {
  configword_ = 0;
}
::google::protobuf::int32 HardwareMotor::configword() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.ConfigWord)
  return configword_;
}
void HardwareMotor::set_configword(::google::protobuf::int32 value) {
  
  configword_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.ConfigWord)
}

// bool DirectionThreadWize = 12;
void HardwareMotor::clear_directionthreadwize() {
  directionthreadwize_ = false;
}
bool HardwareMotor::directionthreadwize() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.DirectionThreadWize)
  return directionthreadwize_;
}
void HardwareMotor::set_directionthreadwize(bool value) {
  
  directionthreadwize_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.DirectionThreadWize)
}

// int32 KvalHold = 13;
void HardwareMotor::clear_kvalhold() {
  kvalhold_ = 0;
}
::google::protobuf::int32 HardwareMotor::kvalhold() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.KvalHold)
  return kvalhold_;
}
void HardwareMotor::set_kvalhold(::google::protobuf::int32 value) {
  
  kvalhold_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.KvalHold)
}

// int32 KvalRun = 14;
void HardwareMotor::clear_kvalrun() {
  kvalrun_ = 0;
}
::google::protobuf::int32 HardwareMotor::kvalrun() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.KvalRun)
  return kvalrun_;
}
void HardwareMotor::set_kvalrun(::google::protobuf::int32 value) {
  
  kvalrun_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.KvalRun)
}

// int32 KvalAcc = 15;
void HardwareMotor::clear_kvalacc() {
  kvalacc_ = 0;
}
::google::protobuf::int32 HardwareMotor::kvalacc() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.KvalAcc)
  return kvalacc_;
}
void HardwareMotor::set_kvalacc(::google::protobuf::int32 value) {
  
  kvalacc_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.KvalAcc)
}

// int32 KvalDec = 16;
void HardwareMotor::clear_kvaldec() {
  kvaldec_ = 0;
}
::google::protobuf::int32 HardwareMotor::kvaldec() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.KvalDec)
  return kvaldec_;
}
void HardwareMotor::set_kvaldec(::google::protobuf::int32 value) {
  
  kvaldec_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.KvalDec)
}

// int32 OverCurrentThreshold = 17;
void HardwareMotor::clear_overcurrentthreshold() {
  overcurrentthreshold_ = 0;
}
::google::protobuf::int32 HardwareMotor::overcurrentthreshold() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.OverCurrentThreshold)
  return overcurrentthreshold_;
}
void HardwareMotor::set_overcurrentthreshold(::google::protobuf::int32 value) {
  
  overcurrentthreshold_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.OverCurrentThreshold)
}

// int32 StallThreshold = 18;
void HardwareMotor::clear_stallthreshold() {
  stallthreshold_ = 0;
}
::google::protobuf::int32 HardwareMotor::stallthreshold() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.StallThreshold)
  return stallthreshold_;
}
void HardwareMotor::set_stallthreshold(::google::protobuf::int32 value) {
  
  stallthreshold_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.StallThreshold)
}

// int32 ThermalCompensationFactor = 19;
void HardwareMotor::clear_thermalcompensationfactor() {
  thermalcompensationfactor_ = 0;
}
::google::protobuf::int32 HardwareMotor::thermalcompensationfactor() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.ThermalCompensationFactor)
  return thermalcompensationfactor_;
}
void HardwareMotor::set_thermalcompensationfactor(::google::protobuf::int32 value) {
  
  thermalcompensationfactor_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.ThermalCompensationFactor)
}

// bool LowSpeedOptimization = 20;
void HardwareMotor::clear_lowspeedoptimization() {
  lowspeedoptimization_ = false;
}
bool HardwareMotor::lowspeedoptimization() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.LowSpeedOptimization)
  return lowspeedoptimization_;
}
void HardwareMotor::set_lowspeedoptimization(bool value) {
  
  lowspeedoptimization_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.LowSpeedOptimization)
}

// int32 StSlp = 21;
void HardwareMotor::clear_stslp() {
  stslp_ = 0;
}
::google::protobuf::int32 HardwareMotor::stslp() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.StSlp)
  return stslp_;
}
void HardwareMotor::set_stslp(::google::protobuf::int32 value) {
  
  stslp_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.StSlp)
}

// int32 IntSpd = 22;
void HardwareMotor::clear_intspd() {
  intspd_ = 0;
}
::google::protobuf::int32 HardwareMotor::intspd() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.IntSpd)
  return intspd_;
}
void HardwareMotor::set_intspd(::google::protobuf::int32 value) {
  
  intspd_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.IntSpd)
}

// int32 FnSlpAcc = 23;
void HardwareMotor::clear_fnslpacc() {
  fnslpacc_ = 0;
}
::google::protobuf::int32 HardwareMotor::fnslpacc() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.FnSlpAcc)
  return fnslpacc_;
}
void HardwareMotor::set_fnslpacc(::google::protobuf::int32 value) {
  
  fnslpacc_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.FnSlpAcc)
}

// int32 FnSlpDec = 24;
void HardwareMotor::clear_fnslpdec() {
  fnslpdec_ = 0;
}
::google::protobuf::int32 HardwareMotor::fnslpdec() const {
  // @@protoc_insertion_point(field_get:Tango.PMR.Hardware.HardwareMotor.FnSlpDec)
  return fnslpdec_;
}
void HardwareMotor::set_fnslpdec(::google::protobuf::int32 value) {
  
  fnslpdec_ = value;
  // @@protoc_insertion_point(field_set:Tango.PMR.Hardware.HardwareMotor.FnSlpDec)
}

#endif  // PROTOBUF_INLINE_NOT_IN_HEADERS

// @@protoc_insertion_point(namespace_scope)

}  // namespace Hardware
}  // namespace PMR
}  // namespace Tango

// @@protoc_insertion_point(global_scope)