Main Page
Namespaces
Classes
Files
File List
File Members
include
motoman_driver
simple_message
motoman_write_single_io_reply.h
Go to the documentation of this file.
1
/*
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2016, Delft Robotics Institute
5
* All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions are met:
9
*
10
* * Redistributions of source code must retain the above copyright
11
* notice, this list of conditions and the following disclaimer.
12
* * Redistributions in binary form must reproduce the above copyright
13
* notice, this list of conditions and the following disclaimer in the
14
* documentation and/or other materials provided with the distribution.
15
* * Neither the name of the Delft Robotics Institute, nor the names
16
* of its contributors may be used to endorse or promote products derived
17
* from this software without specific prior written permission.
18
*
19
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
* POSSIBILITY OF SUCH DAMAGE.
30
*
31
* \author G.A. vd. Hoorn (TU Delft Robotics Institute)
32
*/
33
34
#ifndef MOTOMAN_DRIVER_SIMPLE_MESSAGE_MOTOMAN_WRITE_SINGLE_IO_REPLY_H
35
#define MOTOMAN_DRIVER_SIMPLE_MESSAGE_MOTOMAN_WRITE_SINGLE_IO_REPLY_H
36
37
#include <string>
38
#ifdef ROS
39
#include "
simple_message/simple_serialize.h
"
40
#include "
simple_message/shared_types.h
"
41
#include "
simple_message/log_wrapper.h
"
42
#endif
43
44
#ifdef MOTOPLUS
45
#include "
simple_serialize.h
"
// NOLINT(build/include)
46
#include "
shared_types.h
"
// NOLINT(build/include)
47
#include "
log_wrapper.h
"
// NOLINT(build/include)
48
#endif
49
50
namespace
motoman
51
{
52
namespace
simple_message
53
{
54
namespace
io_ctrl_reply
55
{
56
60
namespace
WriteSingleIOReplyResultCodes
61
{
62
enum
WriteSingleIOReplyResultCode
63
{
64
SUCCESS
= 0,
65
READ_ADDRESS_INVALID
= 1001,
// The ioAddress cannot be read on this controller
66
WRITE_ADDRESS_INVALID
= 1002,
// The ioAddress cannot be written to on this controller
67
WRITE_VALUE_INVALID
= 1003,
// The value supplied is not a valid value for the addressed IO element
68
READ_API_ERROR
= 1004,
// mpReadIO returned -1
69
WRITE_API_ERROR
= 1005,
// mpWriteIO returned -1
70
};
71
}
// namespace WriteSingleIOReplyResultCodes
72
typedef
WriteSingleIOReplyResultCodes::WriteSingleIOReplyResultCode
WriteSingleIOReplyResultCode
;
73
90
class
WriteSingleIOReply
:
public
industrial::simple_serialize::SimpleSerialize
91
{
92
public
:
99
WriteSingleIOReply
(
void
);
104
~
WriteSingleIOReply
(
void
);
105
110
void
init();
111
116
void
init(WriteSingleIOReplyResultCode result_code);
117
123
void
setResultCode
(
industrial::shared_types::shared_int
result_code)
124
{
125
this->result_code_ = result_code;
126
}
127
133
industrial::shared_types::shared_int
getResultCode
()
const
134
{
135
return
this->result_code_;
136
}
137
138
/*
139
* \brief Returns a string interpretation of a result code
140
* \param code result code
141
* \return string message associated with result code
142
*/
143
static
std::string getResultString(
industrial::shared_types::shared_int
code);
144
std::string
getResultString
()
const
145
{
146
return
getResultString(this->result_code_);
147
}
148
149
155
void
copyFrom(
WriteSingleIOReply
&src);
156
162
bool
operator==
(
WriteSingleIOReply
&rhs);
163
164
// Overrides - SimpleSerialize
165
bool
load(
industrial::byte_array::ByteArray
*buffer);
166
bool
unload(
industrial::byte_array::ByteArray
*buffer);
167
unsigned
int
byteLength
()
168
{
169
return
1 *
sizeof
(
industrial::shared_types::shared_int
);
170
}
171
172
private
:
176
industrial::shared_types::shared_int
result_code_
;
177
};
178
}
// namespace io_ctrl_reply
179
}
// namespace simple_message
180
}
// namespace motoman
181
182
#endif // MOTOMAN_DRIVER_SIMPLE_MESSAGE_MOTOMAN_WRITE_SINGLE_IO_REPLY_H
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply
Class encapsulated write single io reply data. These messages are sent by the FS100 controller in res...
Definition:
motoman_write_single_io_reply.h:90
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply::setResultCode
void setResultCode(industrial::shared_types::shared_int result_code)
Sets the result code.
Definition:
motoman_write_single_io_reply.h:123
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply::byteLength
unsigned int byteLength()
Definition:
motoman_write_single_io_reply.h:167
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply::result_code_
industrial::shared_types::shared_int result_code_
The result code.
Definition:
motoman_write_single_io_reply.h:176
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::WRITE_ADDRESS_INVALID
Definition:
motoman_write_single_io_reply.h:66
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::WriteSingleIOReplyResultCode
WriteSingleIOReplyResultCode
Definition:
motoman_write_single_io_reply.h:62
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::SUCCESS
Definition:
motoman_write_single_io_reply.h:64
industrial::simple_serialize::SimpleSerialize
motoman
Definition:
io_ctrl.h:44
log_wrapper.h
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply::getResultCode
industrial::shared_types::shared_int getResultCode() const
Returns the result code.
Definition:
motoman_write_single_io_reply.h:133
industrial::byte_array::ByteArray
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::WRITE_VALUE_INVALID
Definition:
motoman_write_single_io_reply.h:67
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes
Enumeration of Write Single IO reply result codes.
Definition:
motoman_write_single_io_reply.h:60
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::READ_API_ERROR
Definition:
motoman_write_single_io_reply.h:68
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::READ_ADDRESS_INVALID
Definition:
motoman_write_single_io_reply.h:65
motoman::simple_message::io_ctrl_reply::WriteSingleIOReplyResultCodes::WRITE_API_ERROR
Definition:
motoman_write_single_io_reply.h:69
industrial::shared_types::shared_int
int shared_int
motoman::simple_message::io_ctrl_reply::WriteSingleIOReply::getResultString
std::string getResultString() const
Definition:
motoman_write_single_io_reply.h:144
shared_types.h
simple_serialize.h
operator==
bool operator==(const Rotation &a, const Rotation &b)
motoman_driver
Author(s): Jeremy Zoss (Southwest Research Institute), Ted Miller (MotoROS) (Yaskawa Motoman), Eric Marcil (MotoROS) (Yaskawa Motoman)
autogenerated on Sat May 8 2021 02:27:44