rosruby_msgs 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/actionlib_msgs/GoalID.rb +106 -0
- data/lib/actionlib_msgs/GoalStatus.rb +160 -0
- data/lib/actionlib_msgs/GoalStatusArray.rb +207 -0
- data/lib/actionlib_tutorials/AveragingAction.rb +322 -0
- data/lib/actionlib_tutorials/AveragingActionFeedback.rb +213 -0
- data/lib/actionlib_tutorials/AveragingActionGoal.rb +167 -0
- data/lib/actionlib_tutorials/AveragingActionResult.rb +209 -0
- data/lib/actionlib_tutorials/AveragingFeedback.rb +93 -0
- data/lib/actionlib_tutorials/AveragingGoal.rb +85 -0
- data/lib/actionlib_tutorials/AveragingResult.rb +87 -0
- data/lib/actionlib_tutorials/FibonacciAction.rb +334 -0
- data/lib/actionlib_tutorials/FibonacciActionFeedback.rb +216 -0
- data/lib/actionlib_tutorials/FibonacciActionGoal.rb +167 -0
- data/lib/actionlib_tutorials/FibonacciActionResult.rb +214 -0
- data/lib/actionlib_tutorials/FibonacciFeedback.rb +93 -0
- data/lib/actionlib_tutorials/FibonacciGoal.rb +85 -0
- data/lib/actionlib_tutorials/FibonacciResult.rb +91 -0
- data/lib/geometry_msgs/Point.rb +88 -0
- data/lib/geometry_msgs/Point32.rb +94 -0
- data/lib/geometry_msgs/PointStamped.rb +133 -0
- data/lib/geometry_msgs/Polygon.rb +112 -0
- data/lib/geometry_msgs/PolygonStamped.rb +159 -0
- data/lib/geometry_msgs/Pose.rb +110 -0
- data/lib/geometry_msgs/Pose2D.rb +88 -0
- data/lib/geometry_msgs/PoseArray.rb +174 -0
- data/lib/geometry_msgs/PoseStamped.rb +150 -0
- data/lib/geometry_msgs/PoseWithCovariance.rb +125 -0
- data/lib/geometry_msgs/PoseWithCovarianceStamped.rb +169 -0
- data/lib/geometry_msgs/Quaternion.rb +91 -0
- data/lib/geometry_msgs/QuaternionStamped.rb +136 -0
- data/lib/geometry_msgs/Transform.rb +111 -0
- data/lib/geometry_msgs/TransformStamped.rb +168 -0
- data/lib/geometry_msgs/Twist.rb +100 -0
- data/lib/geometry_msgs/TwistStamped.rb +140 -0
- data/lib/geometry_msgs/TwistWithCovariance.rb +115 -0
- data/lib/geometry_msgs/TwistWithCovarianceStamped.rb +158 -0
- data/lib/geometry_msgs/Vector3.rb +88 -0
- data/lib/geometry_msgs/Vector3Stamped.rb +133 -0
- data/lib/geometry_msgs/Wrench.rb +101 -0
- data/lib/geometry_msgs/WrenchStamped.rb +141 -0
- data/lib/nav_msgs/GetMap.rb +280 -0
- data/lib/nav_msgs/GetPlan.rb +406 -0
- data/lib/nav_msgs/GridCells.rb +153 -0
- data/lib/nav_msgs/MapMetaData.rb +130 -0
- data/lib/nav_msgs/OccupancyGrid.rb +187 -0
- data/lib/nav_msgs/Odometry.rb +223 -0
- data/lib/nav_msgs/Path.rb +205 -0
- data/lib/roscpp/Empty.rb +166 -0
- data/lib/roscpp/GetLoggers.rb +205 -0
- data/lib/roscpp/Logger.rb +98 -0
- data/lib/roscpp/SetLoggerLevel.rb +189 -0
- data/lib/roscpp_tutorials/TwoInts.rb +185 -0
- data/lib/rosgraph_msgs/Clock.rb +90 -0
- data/lib/rosgraph_msgs/Log.rb +210 -0
- data/lib/sensor_msgs/CameraInfo.rb +325 -0
- data/lib/sensor_msgs/ChannelFloat32.rb +122 -0
- data/lib/sensor_msgs/CompressedImage.rb +151 -0
- data/lib/sensor_msgs/Image.rb +179 -0
- data/lib/sensor_msgs/Imu.rb +193 -0
- data/lib/sensor_msgs/JointState.rb +195 -0
- data/lib/sensor_msgs/Joy.rb +141 -0
- data/lib/sensor_msgs/JoyFeedback.rb +104 -0
- data/lib/sensor_msgs/JoyFeedbackArray.rb +116 -0
- data/lib/sensor_msgs/LaserScan.rb +178 -0
- data/lib/sensor_msgs/NavSatFix.rb +215 -0
- data/lib/sensor_msgs/NavSatStatus.rb +115 -0
- data/lib/sensor_msgs/PointCloud.rb +222 -0
- data/lib/sensor_msgs/PointCloud2.rb +226 -0
- data/lib/sensor_msgs/PointField.rb +119 -0
- data/lib/sensor_msgs/Range.rb +157 -0
- data/lib/sensor_msgs/RegionOfInterest.rb +106 -0
- data/lib/sensor_msgs/SetCameraInfo.rb +437 -0
- data/lib/sensor_msgs/TimeReference.rb +140 -0
- data/lib/std_msgs/Bool.rb +83 -0
- data/lib/std_msgs/Byte.rb +83 -0
- data/lib/std_msgs/ByteMultiArray.rb +165 -0
- data/lib/std_msgs/Char.rb +82 -0
- data/lib/std_msgs/ColorRGBA.rb +89 -0
- data/lib/std_msgs/Duration.rb +87 -0
- data/lib/std_msgs/Empty.rb +75 -0
- data/lib/std_msgs/Float32.rb +82 -0
- data/lib/std_msgs/Float32MultiArray.rb +165 -0
- data/lib/std_msgs/Float64.rb +82 -0
- data/lib/std_msgs/Float64MultiArray.rb +165 -0
- data/lib/std_msgs/Header.rb +112 -0
- data/lib/std_msgs/Int16.rb +83 -0
- data/lib/std_msgs/Int16MultiArray.rb +165 -0
- data/lib/std_msgs/Int32.rb +82 -0
- data/lib/std_msgs/Int32MultiArray.rb +165 -0
- data/lib/std_msgs/Int64.rb +82 -0
- data/lib/std_msgs/Int64MultiArray.rb +165 -0
- data/lib/std_msgs/Int8.rb +83 -0
- data/lib/std_msgs/Int8MultiArray.rb +165 -0
- data/lib/std_msgs/MultiArrayDimension.rb +95 -0
- data/lib/std_msgs/MultiArrayLayout.rb +141 -0
- data/lib/std_msgs/String.rb +87 -0
- data/lib/std_msgs/Time.rb +87 -0
- data/lib/std_msgs/UInt16.rb +83 -0
- data/lib/std_msgs/UInt16MultiArray.rb +165 -0
- data/lib/std_msgs/UInt32.rb +81 -0
- data/lib/std_msgs/UInt32MultiArray.rb +165 -0
- data/lib/std_msgs/UInt64.rb +82 -0
- data/lib/std_msgs/UInt64MultiArray.rb +165 -0
- data/lib/std_msgs/UInt8.rb +83 -0
- data/lib/std_msgs/UInt8MultiArray.rb +168 -0
- data/lib/std_srvs/Empty.rb +166 -0
- data/lib/stereo_msgs/DisparityImage.rb +261 -0
- data/lib/tf/FrameGraph.rb +179 -0
- data/lib/tf/tfMessage.rb +202 -0
- data/lib/trajectory_msgs/JointTrajectory.rb +198 -0
- data/lib/trajectory_msgs/JointTrajectoryPoint.rb +125 -0
- data/lib/visualization_msgs/ImageMarker.rb +238 -0
- data/lib/visualization_msgs/InteractiveMarker.rb +651 -0
- data/lib/visualization_msgs/InteractiveMarkerControl.rb +469 -0
- data/lib/visualization_msgs/InteractiveMarkerFeedback.rb +235 -0
- data/lib/visualization_msgs/InteractiveMarkerInit.rb +707 -0
- data/lib/visualization_msgs/InteractiveMarkerPose.rb +166 -0
- data/lib/visualization_msgs/InteractiveMarkerUpdate.rb +825 -0
- data/lib/visualization_msgs/Marker.rb +318 -0
- data/lib/visualization_msgs/MarkerArray.rb +349 -0
- data/lib/visualization_msgs/MenuEntry.rb +168 -0
- metadata +123 -2
@@ -0,0 +1,187 @@
|
|
1
|
+
# autogenerated by genmsg_ruby from OccupancyGrid.msg. Do not edit.
|
2
|
+
require 'ros/message'
|
3
|
+
|
4
|
+
require "ros/time"
|
5
|
+
require "std_msgs/Header"
|
6
|
+
require "geometry_msgs/Point"
|
7
|
+
require "nav_msgs/MapMetaData"
|
8
|
+
require "geometry_msgs/Quaternion"
|
9
|
+
require "geometry_msgs/Pose"
|
10
|
+
|
11
|
+
module Nav_msgs
|
12
|
+
|
13
|
+
class OccupancyGrid <::ROS::Message
|
14
|
+
def self.md5sum
|
15
|
+
"3381f2d731d4076ec5c71b0759edbe4e"
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.type
|
19
|
+
"nav_msgs/OccupancyGrid"
|
20
|
+
end
|
21
|
+
|
22
|
+
def has_header?
|
23
|
+
true
|
24
|
+
end
|
25
|
+
|
26
|
+
def message_definition
|
27
|
+
"# This represents a 2-D grid map, in which each cell represents the probability of
|
28
|
+
# occupancy.
|
29
|
+
|
30
|
+
Header header
|
31
|
+
|
32
|
+
#MetaData for the map
|
33
|
+
MapMetaData info
|
34
|
+
|
35
|
+
# The map data, in row-major order, starting with (0,0). Occupancy
|
36
|
+
# probabilities are in the range [0,100]. Unknown is -1.
|
37
|
+
int8[] data
|
38
|
+
|
39
|
+
================================================================================
|
40
|
+
MSG: std_msgs/Header
|
41
|
+
# Standard metadata for higher-level stamped data types.
|
42
|
+
# This is generally used to communicate timestamped data
|
43
|
+
# in a particular coordinate frame.
|
44
|
+
#
|
45
|
+
# sequence ID: consecutively increasing ID
|
46
|
+
uint32 seq
|
47
|
+
#Two-integer timestamp that is expressed as:
|
48
|
+
# * stamp.secs: seconds (stamp_secs) since epoch
|
49
|
+
# * stamp.nsecs: nanoseconds since stamp_secs
|
50
|
+
# time-handling sugar is provided by the client library
|
51
|
+
time stamp
|
52
|
+
#Frame this data is associated with
|
53
|
+
# 0: no frame
|
54
|
+
# 1: global frame
|
55
|
+
string frame_id
|
56
|
+
|
57
|
+
================================================================================
|
58
|
+
MSG: nav_msgs/MapMetaData
|
59
|
+
# This hold basic information about the characterists of the OccupancyGrid
|
60
|
+
|
61
|
+
# The time at which the map was loaded
|
62
|
+
time map_load_time
|
63
|
+
# The map resolution [m/cell]
|
64
|
+
float32 resolution
|
65
|
+
# Map width [cells]
|
66
|
+
uint32 width
|
67
|
+
# Map height [cells]
|
68
|
+
uint32 height
|
69
|
+
# The origin of the map [m, m, rad]. This is the real-world pose of the
|
70
|
+
# cell (0,0) in the map.
|
71
|
+
geometry_msgs/Pose origin
|
72
|
+
================================================================================
|
73
|
+
MSG: geometry_msgs/Pose
|
74
|
+
# A representation of pose in free space, composed of postion and orientation.
|
75
|
+
Point position
|
76
|
+
Quaternion orientation
|
77
|
+
|
78
|
+
================================================================================
|
79
|
+
MSG: geometry_msgs/Point
|
80
|
+
# This contains the position of a point in free space
|
81
|
+
float64 x
|
82
|
+
float64 y
|
83
|
+
float64 z
|
84
|
+
|
85
|
+
================================================================================
|
86
|
+
MSG: geometry_msgs/Quaternion
|
87
|
+
# This represents an orientation in free space in quaternion form.
|
88
|
+
|
89
|
+
float64 x
|
90
|
+
float64 y
|
91
|
+
float64 z
|
92
|
+
float64 w
|
93
|
+
|
94
|
+
"
|
95
|
+
end
|
96
|
+
attr_accessor :header, :info, :data
|
97
|
+
|
98
|
+
@@struct_L3 = ::ROS::Struct.new("L3")
|
99
|
+
@@struct_L2fL2d7 = ::ROS::Struct.new("L2fL2d7")
|
100
|
+
|
101
|
+
@@struct_L = ::ROS::Struct.new("L")
|
102
|
+
@@slot_types = ['Header','nav_msgs/MapMetaData','int8[]']
|
103
|
+
|
104
|
+
def initialize
|
105
|
+
# Constructor. Any message fields that are implicitly/explicitly
|
106
|
+
# set to None will be assigned a default value. The recommend
|
107
|
+
# use is keyword arguments as this is more robust to future message
|
108
|
+
# changes. You cannot mix in-order arguments and keyword arguments.
|
109
|
+
#
|
110
|
+
# The available fields are:
|
111
|
+
# header,info,data
|
112
|
+
#
|
113
|
+
# @param args: complete set of field values, in .msg order
|
114
|
+
# @param kwds: use keyword arguments corresponding to message field names
|
115
|
+
# to set specific fields.
|
116
|
+
#
|
117
|
+
|
118
|
+
# message fields cannot be None, assign default values for those that are
|
119
|
+
@header = Std_msgs::Header.new
|
120
|
+
@info = Nav_msgs::MapMetaData.new
|
121
|
+
@data = []
|
122
|
+
end
|
123
|
+
|
124
|
+
def _get_types
|
125
|
+
# internal API method
|
126
|
+
return @slot_types
|
127
|
+
end
|
128
|
+
|
129
|
+
def serialize(buff)
|
130
|
+
# serialize message into buffer
|
131
|
+
# @param buff: buffer
|
132
|
+
# @type buff: StringIO
|
133
|
+
begin
|
134
|
+
buff.write(@@struct_L3.pack(@header.seq, @header.stamp.secs, @header.stamp.nsecs))
|
135
|
+
_x = @header.frame_id
|
136
|
+
length = _x.length
|
137
|
+
buff.write([length, _x].pack("La#{length}"))
|
138
|
+
buff.write(@@struct_L2fL2d7.pack(@info.map_load_time.secs, @info.map_load_time.nsecs, @info.resolution, @info.width, @info.height, @info.origin.position.x, @info.origin.position.y, @info.origin.position.z, @info.origin.orientation.x, @info.origin.orientation.y, @info.origin.orientation.z, @info.origin.orientation.w))
|
139
|
+
length = @data.length
|
140
|
+
buff.write(@@struct_L.pack(length))
|
141
|
+
pattern = "c#{length}"
|
142
|
+
buff.write(*@data.pack(pattern))
|
143
|
+
rescue => exception
|
144
|
+
raise "some erro in serialize: #{exception}"
|
145
|
+
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
def deserialize(str)
|
150
|
+
# unpack serialized message in str into this message instance
|
151
|
+
# @param str: byte array of serialized message
|
152
|
+
# @type str: str
|
153
|
+
|
154
|
+
begin
|
155
|
+
if @header == nil
|
156
|
+
@header = Std_msgs::Header.new
|
157
|
+
end
|
158
|
+
if @info == nil
|
159
|
+
@info = Nav_msgs::MapMetaData.new
|
160
|
+
end
|
161
|
+
end_point = 0
|
162
|
+
start = end_point
|
163
|
+
end_point += ROS::Struct::calc_size('L3')
|
164
|
+
(@header.seq, @header.stamp.secs, @header.stamp.nsecs,) = @@struct_L3.unpack(str[start..(end_point-1)])
|
165
|
+
start = end_point
|
166
|
+
end_point += 4
|
167
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
168
|
+
start = end_point
|
169
|
+
end_point += length
|
170
|
+
@header.frame_id = str[start..(end_point-1)]
|
171
|
+
start = end_point
|
172
|
+
end_point += ROS::Struct::calc_size('L2fL2d7')
|
173
|
+
(@info.map_load_time.secs, @info.map_load_time.nsecs, @info.resolution, @info.width, @info.height, @info.origin.position.x, @info.origin.position.y, @info.origin.position.z, @info.origin.orientation.x, @info.origin.orientation.y, @info.origin.orientation.z, @info.origin.orientation.w,) = @@struct_L2fL2d7.unpack(str[start..(end_point-1)])
|
174
|
+
start = end_point
|
175
|
+
end_point += 4
|
176
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
177
|
+
pattern = "c#{length}"
|
178
|
+
start = end_point
|
179
|
+
end_point += ROS::Struct::calc_size("#{pattern}")
|
180
|
+
@data = str[start..(end_point-1)].unpack(pattern)
|
181
|
+
return self
|
182
|
+
rescue => exception
|
183
|
+
raise "message DeserializationError: #{exception}" #most likely buffer underfill
|
184
|
+
end
|
185
|
+
end
|
186
|
+
end # end of class
|
187
|
+
end # end of module
|
@@ -0,0 +1,223 @@
|
|
1
|
+
# autogenerated by genmsg_ruby from Odometry.msg. Do not edit.
|
2
|
+
require 'ros/message'
|
3
|
+
|
4
|
+
require "geometry_msgs/TwistWithCovariance"
|
5
|
+
require "geometry_msgs/PoseWithCovariance"
|
6
|
+
require "std_msgs/Header"
|
7
|
+
require "geometry_msgs/Point"
|
8
|
+
require "geometry_msgs/Twist"
|
9
|
+
require "geometry_msgs/Quaternion"
|
10
|
+
require "geometry_msgs/Vector3"
|
11
|
+
require "geometry_msgs/Pose"
|
12
|
+
|
13
|
+
module Nav_msgs
|
14
|
+
|
15
|
+
class Odometry <::ROS::Message
|
16
|
+
def self.md5sum
|
17
|
+
"cd5e73d190d741a2f92e81eda573aca7"
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.type
|
21
|
+
"nav_msgs/Odometry"
|
22
|
+
end
|
23
|
+
|
24
|
+
def has_header?
|
25
|
+
true
|
26
|
+
end
|
27
|
+
|
28
|
+
def message_definition
|
29
|
+
"# This represents an estimate of a position and velocity in free space.
|
30
|
+
# The pose in this message should be specified in the coordinate frame given by header.frame_id.
|
31
|
+
# The twist in this message should be specified in the coordinate frame given by the child_frame_id
|
32
|
+
Header header
|
33
|
+
string child_frame_id
|
34
|
+
geometry_msgs/PoseWithCovariance pose
|
35
|
+
geometry_msgs/TwistWithCovariance twist
|
36
|
+
|
37
|
+
================================================================================
|
38
|
+
MSG: std_msgs/Header
|
39
|
+
# Standard metadata for higher-level stamped data types.
|
40
|
+
# This is generally used to communicate timestamped data
|
41
|
+
# in a particular coordinate frame.
|
42
|
+
#
|
43
|
+
# sequence ID: consecutively increasing ID
|
44
|
+
uint32 seq
|
45
|
+
#Two-integer timestamp that is expressed as:
|
46
|
+
# * stamp.secs: seconds (stamp_secs) since epoch
|
47
|
+
# * stamp.nsecs: nanoseconds since stamp_secs
|
48
|
+
# time-handling sugar is provided by the client library
|
49
|
+
time stamp
|
50
|
+
#Frame this data is associated with
|
51
|
+
# 0: no frame
|
52
|
+
# 1: global frame
|
53
|
+
string frame_id
|
54
|
+
|
55
|
+
================================================================================
|
56
|
+
MSG: geometry_msgs/PoseWithCovariance
|
57
|
+
# This represents a pose in free space with uncertainty.
|
58
|
+
|
59
|
+
Pose pose
|
60
|
+
|
61
|
+
# Row-major representation of the 6x6 covariance matrix
|
62
|
+
# The orientation parameters use a fixed-axis representation.
|
63
|
+
# In order, the parameters are:
|
64
|
+
# (x, y, z, rotation about X axis, rotation about Y axis, rotation about Z axis)
|
65
|
+
float64[36] covariance
|
66
|
+
|
67
|
+
================================================================================
|
68
|
+
MSG: geometry_msgs/Pose
|
69
|
+
# A representation of pose in free space, composed of postion and orientation.
|
70
|
+
Point position
|
71
|
+
Quaternion orientation
|
72
|
+
|
73
|
+
================================================================================
|
74
|
+
MSG: geometry_msgs/Point
|
75
|
+
# This contains the position of a point in free space
|
76
|
+
float64 x
|
77
|
+
float64 y
|
78
|
+
float64 z
|
79
|
+
|
80
|
+
================================================================================
|
81
|
+
MSG: geometry_msgs/Quaternion
|
82
|
+
# This represents an orientation in free space in quaternion form.
|
83
|
+
|
84
|
+
float64 x
|
85
|
+
float64 y
|
86
|
+
float64 z
|
87
|
+
float64 w
|
88
|
+
|
89
|
+
================================================================================
|
90
|
+
MSG: geometry_msgs/TwistWithCovariance
|
91
|
+
# This expresses velocity in free space with uncertianty.
|
92
|
+
|
93
|
+
Twist twist
|
94
|
+
|
95
|
+
# Row-major representation of the 6x6 covariance matrix
|
96
|
+
# The orientation parameters use a fixed-axis representation.
|
97
|
+
# In order, the parameters are:
|
98
|
+
# (x, y, z, rotation about X axis, rotation about Y axis, rotation about Z axis)
|
99
|
+
float64[36] covariance
|
100
|
+
|
101
|
+
================================================================================
|
102
|
+
MSG: geometry_msgs/Twist
|
103
|
+
# This expresses velocity in free space broken into it's linear and angular parts.
|
104
|
+
Vector3 linear
|
105
|
+
Vector3 angular
|
106
|
+
|
107
|
+
================================================================================
|
108
|
+
MSG: geometry_msgs/Vector3
|
109
|
+
# This represents a vector in free space.
|
110
|
+
|
111
|
+
float64 x
|
112
|
+
float64 y
|
113
|
+
float64 z
|
114
|
+
"
|
115
|
+
end
|
116
|
+
attr_accessor :header, :child_frame_id, :pose, :twist
|
117
|
+
|
118
|
+
@@struct_L3 = ::ROS::Struct.new("L3")
|
119
|
+
@@struct_d7 = ::ROS::Struct.new("d7")
|
120
|
+
@@struct_d6 = ::ROS::Struct.new("d6")
|
121
|
+
@@struct_d36 = ::ROS::Struct.new("d36")
|
122
|
+
|
123
|
+
@@struct_L = ::ROS::Struct.new("L")
|
124
|
+
@@slot_types = ['Header','string','geometry_msgs/PoseWithCovariance','geometry_msgs/TwistWithCovariance']
|
125
|
+
|
126
|
+
def initialize
|
127
|
+
# Constructor. Any message fields that are implicitly/explicitly
|
128
|
+
# set to None will be assigned a default value. The recommend
|
129
|
+
# use is keyword arguments as this is more robust to future message
|
130
|
+
# changes. You cannot mix in-order arguments and keyword arguments.
|
131
|
+
#
|
132
|
+
# The available fields are:
|
133
|
+
# header,child_frame_id,pose,twist
|
134
|
+
#
|
135
|
+
# @param args: complete set of field values, in .msg order
|
136
|
+
# @param kwds: use keyword arguments corresponding to message field names
|
137
|
+
# to set specific fields.
|
138
|
+
#
|
139
|
+
|
140
|
+
# message fields cannot be None, assign default values for those that are
|
141
|
+
@header = Std_msgs::Header.new
|
142
|
+
@child_frame_id = ''
|
143
|
+
@pose = Geometry_msgs::PoseWithCovariance.new
|
144
|
+
@twist = Geometry_msgs::TwistWithCovariance.new
|
145
|
+
end
|
146
|
+
|
147
|
+
def _get_types
|
148
|
+
# internal API method
|
149
|
+
return @slot_types
|
150
|
+
end
|
151
|
+
|
152
|
+
def serialize(buff)
|
153
|
+
# serialize message into buffer
|
154
|
+
# @param buff: buffer
|
155
|
+
# @type buff: StringIO
|
156
|
+
begin
|
157
|
+
buff.write(@@struct_L3.pack(@header.seq, @header.stamp.secs, @header.stamp.nsecs))
|
158
|
+
_x = @header.frame_id
|
159
|
+
length = _x.length
|
160
|
+
buff.write([length, _x].pack("La#{length}"))
|
161
|
+
_x = @child_frame_id
|
162
|
+
length = _x.length
|
163
|
+
buff.write([length, _x].pack("La#{length}"))
|
164
|
+
buff.write(@@struct_d7.pack(@pose.pose.position.x, @pose.pose.position.y, @pose.pose.position.z, @pose.pose.orientation.x, @pose.pose.orientation.y, @pose.pose.orientation.z, @pose.pose.orientation.w))
|
165
|
+
buff.write(@@struct_d36.pack(*@pose.covariance))
|
166
|
+
buff.write(@@struct_d6.pack(@twist.twist.linear.x, @twist.twist.linear.y, @twist.twist.linear.z, @twist.twist.angular.x, @twist.twist.angular.y, @twist.twist.angular.z))
|
167
|
+
buff.write(@@struct_d36.pack(*@twist.covariance))
|
168
|
+
rescue => exception
|
169
|
+
raise "some erro in serialize: #{exception}"
|
170
|
+
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
def deserialize(str)
|
175
|
+
# unpack serialized message in str into this message instance
|
176
|
+
# @param str: byte array of serialized message
|
177
|
+
# @type str: str
|
178
|
+
|
179
|
+
begin
|
180
|
+
if @header == nil
|
181
|
+
@header = Std_msgs::Header.new
|
182
|
+
end
|
183
|
+
if @pose == nil
|
184
|
+
@pose = Geometry_msgs::PoseWithCovariance.new
|
185
|
+
end
|
186
|
+
if @twist == nil
|
187
|
+
@twist = Geometry_msgs::TwistWithCovariance.new
|
188
|
+
end
|
189
|
+
end_point = 0
|
190
|
+
start = end_point
|
191
|
+
end_point += ROS::Struct::calc_size('L3')
|
192
|
+
(@header.seq, @header.stamp.secs, @header.stamp.nsecs,) = @@struct_L3.unpack(str[start..(end_point-1)])
|
193
|
+
start = end_point
|
194
|
+
end_point += 4
|
195
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
196
|
+
start = end_point
|
197
|
+
end_point += length
|
198
|
+
@header.frame_id = str[start..(end_point-1)]
|
199
|
+
start = end_point
|
200
|
+
end_point += 4
|
201
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
202
|
+
start = end_point
|
203
|
+
end_point += length
|
204
|
+
@child_frame_id = str[start..(end_point-1)]
|
205
|
+
start = end_point
|
206
|
+
end_point += ROS::Struct::calc_size('d7')
|
207
|
+
(@pose.pose.position.x, @pose.pose.position.y, @pose.pose.position.z, @pose.pose.orientation.x, @pose.pose.orientation.y, @pose.pose.orientation.z, @pose.pose.orientation.w,) = @@struct_d7.unpack(str[start..(end_point-1)])
|
208
|
+
start = end_point
|
209
|
+
end_point += 8
|
210
|
+
@pose.covariance = @@struct_d36.unpack(str[start..(end_point-1)])
|
211
|
+
start = end_point
|
212
|
+
end_point += ROS::Struct::calc_size('d6')
|
213
|
+
(@twist.twist.linear.x, @twist.twist.linear.y, @twist.twist.linear.z, @twist.twist.angular.x, @twist.twist.angular.y, @twist.twist.angular.z,) = @@struct_d6.unpack(str[start..(end_point-1)])
|
214
|
+
start = end_point
|
215
|
+
end_point += 8
|
216
|
+
@twist.covariance = @@struct_d36.unpack(str[start..(end_point-1)])
|
217
|
+
return self
|
218
|
+
rescue => exception
|
219
|
+
raise "message DeserializationError: #{exception}" #most likely buffer underfill
|
220
|
+
end
|
221
|
+
end
|
222
|
+
end # end of class
|
223
|
+
end # end of module
|
@@ -0,0 +1,205 @@
|
|
1
|
+
# autogenerated by genmsg_ruby from Path.msg. Do not edit.
|
2
|
+
require 'ros/message'
|
3
|
+
|
4
|
+
require "std_msgs/Header"
|
5
|
+
require "geometry_msgs/Quaternion"
|
6
|
+
require "geometry_msgs/Point"
|
7
|
+
require "geometry_msgs/Pose"
|
8
|
+
require "geometry_msgs/PoseStamped"
|
9
|
+
|
10
|
+
module Nav_msgs
|
11
|
+
|
12
|
+
class Path <::ROS::Message
|
13
|
+
def self.md5sum
|
14
|
+
"6227e2b7e9cce15051f669a5e197bbf7"
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.type
|
18
|
+
"nav_msgs/Path"
|
19
|
+
end
|
20
|
+
|
21
|
+
def has_header?
|
22
|
+
true
|
23
|
+
end
|
24
|
+
|
25
|
+
def message_definition
|
26
|
+
"#An array of poses that represents a Path for a robot to follow
|
27
|
+
Header header
|
28
|
+
geometry_msgs/PoseStamped[] poses
|
29
|
+
|
30
|
+
================================================================================
|
31
|
+
MSG: std_msgs/Header
|
32
|
+
# Standard metadata for higher-level stamped data types.
|
33
|
+
# This is generally used to communicate timestamped data
|
34
|
+
# in a particular coordinate frame.
|
35
|
+
#
|
36
|
+
# sequence ID: consecutively increasing ID
|
37
|
+
uint32 seq
|
38
|
+
#Two-integer timestamp that is expressed as:
|
39
|
+
# * stamp.secs: seconds (stamp_secs) since epoch
|
40
|
+
# * stamp.nsecs: nanoseconds since stamp_secs
|
41
|
+
# time-handling sugar is provided by the client library
|
42
|
+
time stamp
|
43
|
+
#Frame this data is associated with
|
44
|
+
# 0: no frame
|
45
|
+
# 1: global frame
|
46
|
+
string frame_id
|
47
|
+
|
48
|
+
================================================================================
|
49
|
+
MSG: geometry_msgs/PoseStamped
|
50
|
+
# A Pose with reference coordinate frame and timestamp
|
51
|
+
Header header
|
52
|
+
Pose pose
|
53
|
+
|
54
|
+
================================================================================
|
55
|
+
MSG: geometry_msgs/Pose
|
56
|
+
# A representation of pose in free space, composed of postion and orientation.
|
57
|
+
Point position
|
58
|
+
Quaternion orientation
|
59
|
+
|
60
|
+
================================================================================
|
61
|
+
MSG: geometry_msgs/Point
|
62
|
+
# This contains the position of a point in free space
|
63
|
+
float64 x
|
64
|
+
float64 y
|
65
|
+
float64 z
|
66
|
+
|
67
|
+
================================================================================
|
68
|
+
MSG: geometry_msgs/Quaternion
|
69
|
+
# This represents an orientation in free space in quaternion form.
|
70
|
+
|
71
|
+
float64 x
|
72
|
+
float64 y
|
73
|
+
float64 z
|
74
|
+
float64 w
|
75
|
+
|
76
|
+
"
|
77
|
+
end
|
78
|
+
attr_accessor :header, :poses
|
79
|
+
|
80
|
+
@@struct_d4 = ::ROS::Struct.new("d4")
|
81
|
+
@@struct_L3 = ::ROS::Struct.new("L3")
|
82
|
+
@@struct_L2 = ::ROS::Struct.new("L2")
|
83
|
+
@@struct_d3 = ::ROS::Struct.new("d3")
|
84
|
+
|
85
|
+
@@struct_L = ::ROS::Struct.new("L")
|
86
|
+
@@slot_types = ['Header','geometry_msgs/PoseStamped[]']
|
87
|
+
|
88
|
+
def initialize
|
89
|
+
# Constructor. Any message fields that are implicitly/explicitly
|
90
|
+
# set to None will be assigned a default value. The recommend
|
91
|
+
# use is keyword arguments as this is more robust to future message
|
92
|
+
# changes. You cannot mix in-order arguments and keyword arguments.
|
93
|
+
#
|
94
|
+
# The available fields are:
|
95
|
+
# header,poses
|
96
|
+
#
|
97
|
+
# @param args: complete set of field values, in .msg order
|
98
|
+
# @param kwds: use keyword arguments corresponding to message field names
|
99
|
+
# to set specific fields.
|
100
|
+
#
|
101
|
+
|
102
|
+
# message fields cannot be None, assign default values for those that are
|
103
|
+
@header = Std_msgs::Header.new
|
104
|
+
@poses = []
|
105
|
+
end
|
106
|
+
|
107
|
+
def _get_types
|
108
|
+
# internal API method
|
109
|
+
return @slot_types
|
110
|
+
end
|
111
|
+
|
112
|
+
def serialize(buff)
|
113
|
+
# serialize message into buffer
|
114
|
+
# @param buff: buffer
|
115
|
+
# @type buff: StringIO
|
116
|
+
begin
|
117
|
+
buff.write(@@struct_L3.pack(@header.seq, @header.stamp.secs, @header.stamp.nsecs))
|
118
|
+
_x = @header.frame_id
|
119
|
+
length = _x.length
|
120
|
+
buff.write([length, _x].pack("La#{length}"))
|
121
|
+
length = @poses.length
|
122
|
+
buff.write(@@struct_L.pack(length))
|
123
|
+
for val1 in @poses
|
124
|
+
_v1 = val1.header
|
125
|
+
buff.write(@@struct_L.pack(_v1.seq))
|
126
|
+
_v2 = _v1.stamp
|
127
|
+
_x = _v2
|
128
|
+
buff.write(@@struct_L2.pack(_x.secs, _x.nsecs))
|
129
|
+
_x = _v1.frame_id
|
130
|
+
length = _x.length
|
131
|
+
buff.write([length, _x].pack("La#{length}"))
|
132
|
+
_v3 = val1.pose
|
133
|
+
_v4 = _v3.position
|
134
|
+
_x = _v4
|
135
|
+
buff.write(@@struct_d3.pack(_x.x, _x.y, _x.z))
|
136
|
+
_v5 = _v3.orientation
|
137
|
+
_x = _v5
|
138
|
+
buff.write(@@struct_d4.pack(_x.x, _x.y, _x.z, _x.w))
|
139
|
+
end
|
140
|
+
rescue => exception
|
141
|
+
raise "some erro in serialize: #{exception}"
|
142
|
+
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
def deserialize(str)
|
147
|
+
# unpack serialized message in str into this message instance
|
148
|
+
# @param str: byte array of serialized message
|
149
|
+
# @type str: str
|
150
|
+
|
151
|
+
begin
|
152
|
+
if @header == nil
|
153
|
+
@header = Std_msgs::Header.new
|
154
|
+
end
|
155
|
+
end_point = 0
|
156
|
+
start = end_point
|
157
|
+
end_point += ROS::Struct::calc_size('L3')
|
158
|
+
(@header.seq, @header.stamp.secs, @header.stamp.nsecs,) = @@struct_L3.unpack(str[start..(end_point-1)])
|
159
|
+
start = end_point
|
160
|
+
end_point += 4
|
161
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
162
|
+
start = end_point
|
163
|
+
end_point += length
|
164
|
+
@header.frame_id = str[start..(end_point-1)]
|
165
|
+
start = end_point
|
166
|
+
end_point += 4
|
167
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
168
|
+
@poses = []
|
169
|
+
length.times do
|
170
|
+
val1 = Geometry_msgs::PoseStamped.new
|
171
|
+
_v6 = val1.header
|
172
|
+
start = end_point
|
173
|
+
end_point += ROS::Struct::calc_size('L')
|
174
|
+
(_v6.seq,) = @@struct_L.unpack(str[start..(end_point-1)])
|
175
|
+
_v7 = _v6.stamp
|
176
|
+
_x = _v7
|
177
|
+
start = end_point
|
178
|
+
end_point += ROS::Struct::calc_size('L2')
|
179
|
+
(_x.secs, _x.nsecs,) = @@struct_L2.unpack(str[start..(end_point-1)])
|
180
|
+
start = end_point
|
181
|
+
end_point += 4
|
182
|
+
(length,) = @@struct_L.unpack(str[start..(end_point-1)])
|
183
|
+
start = end_point
|
184
|
+
end_point += length
|
185
|
+
_v6.frame_id = str[start..(end_point-1)]
|
186
|
+
_v8 = val1.pose
|
187
|
+
_v9 = _v8.position
|
188
|
+
_x = _v9
|
189
|
+
start = end_point
|
190
|
+
end_point += ROS::Struct::calc_size('d3')
|
191
|
+
(_x.x, _x.y, _x.z,) = @@struct_d3.unpack(str[start..(end_point-1)])
|
192
|
+
_v10 = _v8.orientation
|
193
|
+
_x = _v10
|
194
|
+
start = end_point
|
195
|
+
end_point += ROS::Struct::calc_size('d4')
|
196
|
+
(_x.x, _x.y, _x.z, _x.w,) = @@struct_d4.unpack(str[start..(end_point-1)])
|
197
|
+
@poses.push(val1)
|
198
|
+
end
|
199
|
+
return self
|
200
|
+
rescue => exception
|
201
|
+
raise "message DeserializationError: #{exception}" #most likely buffer underfill
|
202
|
+
end
|
203
|
+
end
|
204
|
+
end # end of class
|
205
|
+
end # end of module
|