ruby-player 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +1 -0
- data/.travis.yml +5 -0
- data/Guardfile +5 -0
- data/README.md +10 -17
- data/TODO.md +1 -12
- data/examples/simple_example.rb +27 -0
- data/{spec → examples}/world/test.cfg +0 -0
- data/{spec → examples}/world/test.world +5 -5
- data/lib/ruby-player.rb +12 -5
- data/lib/ruby-player/client.rb +136 -42
- data/lib/ruby-player/common.rb +44 -7
- data/lib/ruby-player/constants.rb +584 -0
- data/lib/ruby-player/dev_addr.rb +59 -0
- data/lib/ruby-player/device.rb +60 -0
- data/lib/ruby-player/header.rb +81 -0
- data/lib/ruby-player/position2d.rb +161 -91
- data/lib/ruby-player/ranger.rb +118 -88
- data/lib/ruby-player/version.rb +1 -1
- data/ruby-player.gemspec +3 -1
- data/spec/client_spec.rb +145 -11
- data/spec/position2d_spec.rb +115 -46
- data/spec/ranger_spec.rb +132 -41
- metadata +36 -28
- data/lib/ruby-player/c_type.rb +0 -36
- data/lib/ruby-player/c_type/bbox3d_t.rb +0 -24
- data/lib/ruby-player/c_type/client_t.rb +0 -36
- data/lib/ruby-player/c_type/devaddr.rb +0 -24
- data/lib/ruby-player/c_type/device_t.rb +0 -35
- data/lib/ruby-player/c_type/diagnostic.rb +0 -22
- data/lib/ruby-player/c_type/pose3d_t.rb +0 -27
- data/lib/ruby-player/c_type/position2d_t.rb +0 -32
- data/lib/ruby-player/c_type/ranger_t.rb +0 -42
- data/lib/ruby-player/c_type/sockaddr_in_t.rb +0 -24
@@ -0,0 +1,584 @@
|
|
1
|
+
module Player
|
2
|
+
PLAYERXDR_DEVADDR_SIZE = 16
|
3
|
+
PLAYERXDR_MSGHDR_SIZE = PLAYERXDR_DEVADDR_SIZE + 24
|
4
|
+
# The player message types (see player.h)
|
5
|
+
|
6
|
+
# A data message. Such messages are asynchronously published from
|
7
|
+
# devices, and are usually used to reflect some part of the device's
|
8
|
+
|
9
|
+
PLAYER_MSGTYPE_DATA = 1
|
10
|
+
|
11
|
+
# A command message. Such messages are asynchronously published to
|
12
|
+
# devices, and are usually used to change some aspect of the device's
|
13
|
+
# state.
|
14
|
+
|
15
|
+
PLAYER_MSGTYPE_CMD = 2
|
16
|
+
|
17
|
+
# A request message. Such messages are published synchronously to
|
18
|
+
# devices, usually to get or set some aspect of the device's state that is
|
19
|
+
# not available in data or command messages. Every request message gets
|
20
|
+
# a response message (either PLAYER_MSGTYPE_RESP_ACK or
|
21
|
+
# PLAYER_MSGTYPE_RESP_NACK).
|
22
|
+
|
23
|
+
PLAYER_MSGTYPE_REQ = 3
|
24
|
+
|
25
|
+
# A positive response message. Such messages are published in response
|
26
|
+
# to a PLAYER_MSGTYPE_REQ. This message indicates that the underlying
|
27
|
+
# driver received, interpreted, and processed the request. Any requested
|
28
|
+
#data is in the body of this response message.
|
29
|
+
|
30
|
+
PLAYER_MSGTYPE_RESP_ACK = 4
|
31
|
+
|
32
|
+
# A synch message. @todo Deprecate this message type? */
|
33
|
+
PLAYER_MSGTYPE_SYNCH = 5
|
34
|
+
|
35
|
+
# A negative response message. Such messages are published in response
|
36
|
+
# to a PLAYER_MSGTYPE_REQ. This messages indicates that the underlying
|
37
|
+
# driver did not process the message. Possible causes include: the
|
38
|
+
# driver's message queue was full, the driver failed to interpret the
|
39
|
+
# request, or the driver does not support the request. This message will
|
40
|
+
#have no data in the body.
|
41
|
+
|
42
|
+
PLAYER_MSGTYPE_RESP_NACK = 6
|
43
|
+
|
44
|
+
|
45
|
+
# The request subtypes (see player.h)
|
46
|
+
|
47
|
+
PLAYER_PLAYER_REQ_DEVLIST = 1
|
48
|
+
PLAYER_PLAYER_REQ_DRIVERINFO = 2
|
49
|
+
PLAYER_PLAYER_REQ_DEV = 3
|
50
|
+
PLAYER_PLAYER_REQ_DATA = 4
|
51
|
+
PLAYER_PLAYER_REQ_DATAMODE = 5
|
52
|
+
PLAYER_PLAYER_REQ_DATAFREQ = 6
|
53
|
+
PLAYER_PLAYER_REQ_AUTH = 7
|
54
|
+
PLAYER_PLAYER_REQ_NAMESERVICE = 8
|
55
|
+
PLAYER_PLAYER_REQ_IDENT = 9
|
56
|
+
PLAYER_PLAYER_REQ_ADD_REPLACE_RULE = 10
|
57
|
+
|
58
|
+
|
59
|
+
PLAYER_NULL_CODE = 256 # /dev/null analogue
|
60
|
+
PLAYER_PLAYER_CODE = 1 # the server itself
|
61
|
+
PLAYER_POWER_CODE = 2 # power subsystem
|
62
|
+
PLAYER_GRIPPER_CODE = 3 # gripper
|
63
|
+
PLAYER_POSITION2D_CODE = 4 # device that moves
|
64
|
+
PLAYER_SONAR_CODE = 5 # Ultra-sound range-finder
|
65
|
+
PLAYER_LASER_CODE = 6 # scanning range-finder
|
66
|
+
PLAYER_BLOBFINDER_CODE = 7 # visual blobfinder
|
67
|
+
PLAYER_PTZ_CODE = 8 # pan-tilt-zoom unit
|
68
|
+
PLAYER_AUDIO_CODE = 9 # audio system
|
69
|
+
PLAYER_FIDUCIAL_CODE = 10 # fiducial detector
|
70
|
+
PLAYER_SPEECH_CODE = 12 # speech I/O
|
71
|
+
PLAYER_GPS_CODE = 13 # GPS unit
|
72
|
+
PLAYER_BUMPER_CODE = 14 # bumper array
|
73
|
+
PLAYER_TRUTH_CODE = 15 # ground-truth (Stage)
|
74
|
+
PLAYER_DIO_CODE = 20 # digital I/O
|
75
|
+
PLAYER_AIO_CODE = 21 # analog I/O
|
76
|
+
PLAYER_IR_CODE = 22 # IR array
|
77
|
+
PLAYER_WIFI_CODE = 23 # wifi card status
|
78
|
+
PLAYER_WAVEFORM_CODE = 24 # fetch raw waveforms
|
79
|
+
PLAYER_LOCALIZE_CODE = 25 # localization
|
80
|
+
PLAYER_MCOM_CODE = 26 # multicoms
|
81
|
+
PLAYER_SOUND_CODE = 27 # sound file playback
|
82
|
+
PLAYER_AUDIODSP_CODE = 28 # audio dsp I/O
|
83
|
+
PLAYER_AUDIOMIXER_CODE = 29 # audio I/O
|
84
|
+
PLAYER_POSITION3D_CODE = 30 # 3-D position
|
85
|
+
PLAYER_SIMULATION_CODE = 31 # simulators
|
86
|
+
PLAYER_SERVICE_ADV_CODE = 32 # LAN advertisement
|
87
|
+
PLAYER_BLINKENLIGHT_CODE = 33 # blinking lights
|
88
|
+
PLAYER_NOMAD_CODE = 34 # Nomad robot
|
89
|
+
PLAYER_CAMERA_CODE = 40 # camera device
|
90
|
+
PLAYER_MAP_CODE = 42 # get a map
|
91
|
+
PLAYER_PLANNER_CODE = 44 # 2D motion planner
|
92
|
+
PLAYER_LOG_CODE = 45 # log R/W control
|
93
|
+
PLAYER_ENERGY_CODE = 46 # energy charging
|
94
|
+
PLAYER_JOYSTICK_CODE = 49 # Joystick
|
95
|
+
PLAYER_SPEECH_RECOGNITION_CODE = 50 # speech I/O
|
96
|
+
PLAYER_OPAQUE_CODE = 51 # user-defined messages
|
97
|
+
PLAYER_POSITION1D_CODE = 52 # 1-D position
|
98
|
+
PLAYER_ACTARRAY_CODE = 53 # Actuators array interface
|
99
|
+
PLAYER_LIMB_CODE = 54 # Limb interface
|
100
|
+
PLAYER_GRAPHICS2D_CODE = 55 # Graphics2D interface
|
101
|
+
PLAYER_RFID_CODE = 56 # RFID reader interface
|
102
|
+
PLAYER_WSN_CODE = 57 # WSN interface
|
103
|
+
PLAYER_GRAPHICS3D_CODE = 58 # Graphics3D interface
|
104
|
+
PLAYER_HEALTH_CODE = 59 # Statgrab Health interface
|
105
|
+
PLAYER_IMU_CODE = 60 # Inertial Measurement Unit
|
106
|
+
PLAYER_POINTCLOUD3D_CODE = 61 # 3-D point cloud
|
107
|
+
PLAYER_RANGER_CODE = 62 # Generic range-finders array
|
108
|
+
PLAYER_STEREO_CODE = 65 # Stereo imagery
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
# Device access mode: open.
|
113
|
+
PLAYER_OPEN_MODE = 1
|
114
|
+
|
115
|
+
# Device access mode: close.
|
116
|
+
PLAYER_CLOSE_MODE = 2
|
117
|
+
|
118
|
+
# Device access mode: error.
|
119
|
+
PLAYER_ERROR_MODE = 3
|
120
|
+
|
121
|
+
|
122
|
+
# Data delivery modes
|
123
|
+
|
124
|
+
# Data delivery mode: Send data from all subscribed devices all the time
|
125
|
+
# (i.e. when it's ready on the server).
|
126
|
+
PLAYER_DATAMODE_PUSH = 1
|
127
|
+
|
128
|
+
# Data delivery mode: Only on request, send data from all subscribed
|
129
|
+
# devices. A PLAYER_MSGTYPE_SYNCH packet follows each set of data.
|
130
|
+
# Request should be made automatically by client libraries when they
|
131
|
+
# begin reading.
|
132
|
+
PLAYER_DATAMODE_PULL = 2
|
133
|
+
|
134
|
+
|
135
|
+
# Generic constants
|
136
|
+
|
137
|
+
# The largest possible message
|
138
|
+
PLAYER_MAX_MESSAGE_SIZE = 8388608 # 8MB
|
139
|
+
|
140
|
+
# Maximum length for a driver name
|
141
|
+
PLAYER_MAX_DRIVER_STRING_LEN = 64
|
142
|
+
|
143
|
+
# The maximum number of devices the server will support.
|
144
|
+
PLAYER_MAX_DEVICES = 10
|
145
|
+
|
146
|
+
# Default maximum length for a message queue
|
147
|
+
PLAYER_MSGQUEUE_DEFAULT_MAXLEN = 32
|
148
|
+
|
149
|
+
# Length of string that is spit back as a banner on connection
|
150
|
+
PLAYER_IDENT_STRLEN = 32
|
151
|
+
|
152
|
+
# Length of authentication
|
153
|
+
PLAYER_KEYLEN = 32
|
154
|
+
|
155
|
+
# Maximum size for request/reply.
|
156
|
+
# this is a convenience so that the PlayerQueue can used fixed size elements.
|
157
|
+
PLAYER_MAX_REQREP_SIZE = 4096 # 4KB
|
158
|
+
|
159
|
+
|
160
|
+
# Interface-specific constants
|
161
|
+
|
162
|
+
PLAYER_ACTARRAY_REQ_POWER = 1
|
163
|
+
PLAYER_ACTARRAY_REQ_BRAKES = 2
|
164
|
+
PLAYER_ACTARRAY_REQ_GET_GEOM = 3
|
165
|
+
PLAYER_ACTARRAY_REQ_SPEED = 4
|
166
|
+
PLAYER_ACTARRAY_REQ_ACCEL = 5
|
167
|
+
PLAYER_ACTARRAY_CMD_POS = 1
|
168
|
+
PLAYER_ACTARRAY_CMD_MULTI_POS = 2
|
169
|
+
PLAYER_ACTARRAY_CMD_SPEED = 3
|
170
|
+
PLAYER_ACTARRAY_CMD_MULTI_SPEED = 4
|
171
|
+
PLAYER_ACTARRAY_CMD_HOME = 5
|
172
|
+
PLAYER_ACTARRAY_CMD_CURRENT = 6
|
173
|
+
PLAYER_ACTARRAY_CMD_MULTI_CURRENT = 7
|
174
|
+
PLAYER_ACTARRAY_DATA_STATE = 1
|
175
|
+
PLAYER_ACTARRAY_ACTSTATE_IDLE = 1
|
176
|
+
PLAYER_ACTARRAY_ACTSTATE_MOVING = 2
|
177
|
+
PLAYER_ACTARRAY_ACTSTATE_BRAKED = 5
|
178
|
+
PLAYER_ACTARRAY_ACTSTATE_STALLED = 8
|
179
|
+
PLAYER_ACTARRAY_TYPE_LINEAR = 1
|
180
|
+
PLAYER_ACTARRAY_TYPE_ROTARY = 2
|
181
|
+
|
182
|
+
PLAYER_AIO_MAX_INPUTS = 8
|
183
|
+
PLAYER_AIO_MAX_OUTPUTS = 8
|
184
|
+
PLAYER_AIO_CMD_STATE = 1
|
185
|
+
PLAYER_AIO_DATA_STATE = 1
|
186
|
+
|
187
|
+
# Driver states
|
188
|
+
PLAYER_AUDIO_STATE_STOPPED = 0x00
|
189
|
+
PLAYER_AUDIO_STATE_PLAYING = 0x01
|
190
|
+
PLAYER_AUDIO_STATE_RECORDING = 0x02
|
191
|
+
|
192
|
+
# Audio formats
|
193
|
+
|
194
|
+
# Raw Audio bit flags
|
195
|
+
PLAYER_AUDIO_DESCRIPTION_BITS = 0xFF
|
196
|
+
PLAYER_AUDIO_BITS = 0x03
|
197
|
+
# 8 bit
|
198
|
+
PLAYER_AUDIO_8BIT = 0
|
199
|
+
# 16 bit
|
200
|
+
PLAYER_AUDIO_16BIT = 1
|
201
|
+
# 24 bit
|
202
|
+
PLAYER_AUDIO_24BIT = 2
|
203
|
+
# Mono
|
204
|
+
PLAYER_AUDIO_MONO = 0
|
205
|
+
# Stereo
|
206
|
+
PLAYER_AUDIO_STEREO = 4
|
207
|
+
# Frequency
|
208
|
+
PLAYER_AUDIO_FREQ = 18
|
209
|
+
PLAYER_AUDIO_FREQ_44k = 0
|
210
|
+
PLAYER_AUDIO_FREQ_11k = 8
|
211
|
+
PLAYER_AUDIO_FREQ_22k = 16
|
212
|
+
PLAYER_AUDIO_FREQ_48k = 24
|
213
|
+
|
214
|
+
# AUDIO format */
|
215
|
+
PLAYER_AUDIO_FORMAT_BITS = 0xFF00
|
216
|
+
|
217
|
+
PLAYER_AUDIO_FORMAT_NULL = 0x0000
|
218
|
+
PLAYER_AUDIO_FORMAT_RAW = 0x0100
|
219
|
+
PLAYER_AUDIO_FORMAT_MP3 = 0x0200
|
220
|
+
PLAYER_AUDIO_FORMAT_OGG = 0x0300
|
221
|
+
PLAYER_AUDIO_FORMAT_FLAC = 0x0400
|
222
|
+
PLAYER_AUDIO_FORMAT_AAC = 0x0500
|
223
|
+
|
224
|
+
|
225
|
+
PLAYER_AUDIO_DATA_WAV_REC = 1
|
226
|
+
PLAYER_AUDIO_DATA_SEQ = 2
|
227
|
+
PLAYER_AUDIO_DATA_MIXER_CHANNEL = 3
|
228
|
+
PLAYER_AUDIO_DATA_STATE = 4
|
229
|
+
PLAYER_AUDIO_CMD_WAV_PLAY = 1
|
230
|
+
PLAYER_AUDIO_CMD_WAV_STREAM_REC = 2
|
231
|
+
PLAYER_AUDIO_CMD_SAMPLE_PLAY = 3
|
232
|
+
PLAYER_AUDIO_CMD_SEQ_PLAY = 4
|
233
|
+
PLAYER_AUDIO_CMD_MIXER_CHANNEL = 5
|
234
|
+
PLAYER_AUDIO_REQ_WAV_REC = 1
|
235
|
+
PLAYER_AUDIO_REQ_SAMPLE_LOAD = 2
|
236
|
+
PLAYER_AUDIO_REQ_SAMPLE_RETRIEVE = 3
|
237
|
+
PLAYER_AUDIO_REQ_SAMPLE_REC = 4
|
238
|
+
PLAYER_AUDIO_REQ_MIXER_CHANNEL_LIST = 5
|
239
|
+
PLAYER_AUDIO_REQ_MIXER_CHANNEL_LEVEL = 6
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
PLAYER_AUDIO_DATA_BUFFER_SIZE = 20
|
244
|
+
PLAYER_AUDIO_COMMAND_BUFFER_SIZE = 6
|
245
|
+
PLAYER_AUDIO_PAIRS = 5
|
246
|
+
|
247
|
+
PLAYER_AUDIODSP_MAX_FREQS = 8
|
248
|
+
PLAYER_AUDIODSP_MAX_BITSTRING_LEN = 64
|
249
|
+
PLAYER_AUDIODSP_SET_CONFIG = 1
|
250
|
+
PLAYER_AUDIODSP_GET_CONFIG = 2
|
251
|
+
PLAYER_AUDIODSP_PLAY_TONE = 1
|
252
|
+
PLAYER_AUDIODSP_PLAY_CHIRP = 2
|
253
|
+
PLAYER_AUDIODSP_REPLAY = 3
|
254
|
+
PLAYER_AUDIODSP_DATA_TONES = 1
|
255
|
+
|
256
|
+
PLAYER_AUDIOMIXER_SET_MASTER = 1
|
257
|
+
PLAYER_AUDIOMIXER_SET_PCM = 2
|
258
|
+
PLAYER_AUDIOMIXER_SET_LINE = 3
|
259
|
+
PLAYER_AUDIOMIXER_SET_MIC = 4
|
260
|
+
PLAYER_AUDIOMIXER_SET_IGAIN = 5
|
261
|
+
PLAYER_AUDIOMIXER_SET_OGAIN = 6
|
262
|
+
PLAYER_AUDIOMIXER_GET_LEVELS = 1
|
263
|
+
|
264
|
+
PLAYER_WAVEFORM_DATA_MAX = 4096
|
265
|
+
PLAYER_WAVEFORM_DATA_SAMPLE = 1
|
266
|
+
|
267
|
+
|
268
|
+
PLAYER_SOUND_CMD_IDX = 1
|
269
|
+
|
270
|
+
|
271
|
+
|
272
|
+
PLAYER_BLINKENLIGHT_DATA_STATE = 1
|
273
|
+
PLAYER_BLINKENLIGHT_CMD_STATE = 1
|
274
|
+
PLAYER_BLINKENLIGHT_CMD_POWER = 2
|
275
|
+
PLAYER_BLINKENLIGHT_CMD_COLOR = 3
|
276
|
+
PLAYER_BLINKENLIGHT_CMD_PERIOD = 4
|
277
|
+
PLAYER_BLINKENLIGHT_CMD_DUTYCYCLE = 5
|
278
|
+
|
279
|
+
PLAYER_BLOBFINDER_REQ_SET_COLOR = 1
|
280
|
+
PLAYER_BLOBFINDER_REQ_SET_IMAGER_PARAMS = 2
|
281
|
+
PLAYER_BLOBFINDER_DATA_BLOBS = 1
|
282
|
+
|
283
|
+
PLAYER_BUMPER_REQ_GET_GEOM = 1
|
284
|
+
PLAYER_BUMPER_DATA_STATE = 1
|
285
|
+
PLAYER_BUMPER_DATA_GEOM = 2
|
286
|
+
|
287
|
+
PLAYER_CAMERA_DATA_STATE = 1
|
288
|
+
PLAYER_CAMERA_REQ_GET_SOURCE = 1
|
289
|
+
PLAYER_CAMERA_REQ_SET_SOURCE = 2
|
290
|
+
PLAYER_CAMERA_REQ_GET_IMAGE = 3
|
291
|
+
PLAYER_CAMERA_FORMAT_MONO8 = 1
|
292
|
+
PLAYER_CAMERA_FORMAT_MONO16 = 2
|
293
|
+
PLAYER_CAMERA_FORMAT_RGB565 = 4
|
294
|
+
PLAYER_CAMERA_FORMAT_RGB888 = 5
|
295
|
+
PLAYER_CAMERA_COMPRESS_RAW = 0
|
296
|
+
PLAYER_CAMERA_COMPRESS_JPEG = 1
|
297
|
+
|
298
|
+
PLAYER_DIO_DATA_VALUES = 1
|
299
|
+
PLAYER_DIO_CMD_VALUES = 1
|
300
|
+
|
301
|
+
PLAYER_ENERGY_DATA_STATE = 1
|
302
|
+
PLAYER_ENERGY_SET_CHARGING_POLICY_REQ = 1
|
303
|
+
|
304
|
+
PLAYER_FIDUCIAL_MAX_SAMPLES = 32
|
305
|
+
PLAYER_FIDUCIAL_DATA_SCAN = 1
|
306
|
+
PLAYER_FIDUCIAL_REQ_GET_GEOM = 1
|
307
|
+
PLAYER_FIDUCIAL_REQ_GET_FOV = 2
|
308
|
+
PLAYER_FIDUCIAL_REQ_SET_FOV = 3
|
309
|
+
PLAYER_FIDUCIAL_REQ_GET_ID = 7
|
310
|
+
PLAYER_FIDUCIAL_REQ_SET_ID = 8
|
311
|
+
|
312
|
+
PLAYER_GPS_DATA_STATE = 1
|
313
|
+
|
314
|
+
PLAYER_GRIPPER_STATE_OPEN = 1
|
315
|
+
PLAYER_GRIPPER_STATE_CLOSED = 2
|
316
|
+
PLAYER_GRIPPER_STATE_MOVING = 3
|
317
|
+
PLAYER_GRIPPER_STATE_ERROR = 4
|
318
|
+
PLAYER_GRIPPER_DATA_STATE = 1
|
319
|
+
PLAYER_GRIPPER_REQ_GET_GEOM = 1
|
320
|
+
PLAYER_GRIPPER_CMD_OPEN = 1
|
321
|
+
PLAYER_GRIPPER_CMD_CLOSE = 2
|
322
|
+
PLAYER_GRIPPER_CMD_STOP = 3
|
323
|
+
PLAYER_GRIPPER_CMD_STORE = 4
|
324
|
+
PLAYER_GRIPPER_CMD_RETRIEVE = 5
|
325
|
+
|
326
|
+
PLAYER_IR_REQ_POSE = 1
|
327
|
+
PLAYER_IR_REQ_POWER = 2
|
328
|
+
PLAYER_IR_DATA_RANGES = 1
|
329
|
+
|
330
|
+
PLAYER_JOYSTICK_X_AXIS = 0
|
331
|
+
PLAYER_JOYSTICK_Y_AXIS = 1
|
332
|
+
PLAYER_JOYSTICK_MAX_AXES = 8
|
333
|
+
PLAYER_JOYSTICK_DATA_STATE = 1
|
334
|
+
|
335
|
+
PLAYER_LASER_MAX_SAMPLES = 1024
|
336
|
+
PLAYER_LASER_DATA_SCAN = 1
|
337
|
+
PLAYER_LASER_DATA_SCANPOSE = 2
|
338
|
+
PLAYER_LASER_REQ_GET_GEOM = 1
|
339
|
+
PLAYER_LASER_REQ_SET_CONFIG = 2
|
340
|
+
PLAYER_LASER_REQ_GET_CONFIG = 3
|
341
|
+
PLAYER_LASER_REQ_POWER = 4
|
342
|
+
|
343
|
+
PLAYER_LIMB_STATE_IDLE = 1
|
344
|
+
PLAYER_LIMB_STATE_BRAKED = 2
|
345
|
+
PLAYER_LIMB_STATE_MOVING = 3
|
346
|
+
PLAYER_LIMB_STATE_OOR = 4
|
347
|
+
PLAYER_LIMB_STATE_COLL = 5
|
348
|
+
PLAYER_LIMB_DATA_STATE = 1
|
349
|
+
PLAYER_LIMB_CMD_HOME = 1
|
350
|
+
PLAYER_LIMB_CMD_STOP = 2
|
351
|
+
PLAYER_LIMB_CMD_SETPOSE = 3
|
352
|
+
PLAYER_LIMB_CMD_SETPOSITION = 4
|
353
|
+
PLAYER_LIMB_CMD_VECMOVE = 5
|
354
|
+
PLAYER_LIMB_REQ_POWER = 1
|
355
|
+
PLAYER_LIMB_REQ_BRAKES = 2
|
356
|
+
PLAYER_LIMB_REQ_GEOM = 3
|
357
|
+
PLAYER_LIMB_REQ_SPEED = 4
|
358
|
+
|
359
|
+
PLAYER_LOCALIZE_DATA_HYPOTHS = 1
|
360
|
+
PLAYER_LOCALIZE_REQ_SET_POSE = 1
|
361
|
+
PLAYER_LOCALIZE_REQ_GET_PARTICLES = 2
|
362
|
+
PLAYER_LOG_TYPE_READ = 1
|
363
|
+
PLAYER_LOG_TYPE_WRITE = 2
|
364
|
+
PLAYER_LOG_REQ_SET_WRITE_STATE = 1
|
365
|
+
PLAYER_LOG_REQ_SET_READ_STATE = 2
|
366
|
+
PLAYER_LOG_REQ_GET_STATE = 3
|
367
|
+
PLAYER_LOG_REQ_SET_READ_REWIND = 4
|
368
|
+
PLAYER_LOG_REQ_SET_FILENAME = 5
|
369
|
+
PLAYER_MAP_DATA_INFO = 1
|
370
|
+
PLAYER_MAP_REQ_GET_INFO = 1
|
371
|
+
PLAYER_MAP_REQ_GET_DATA = 2
|
372
|
+
PLAYER_MAP_REQ_GET_VECTOR = 3
|
373
|
+
MCOM_DATA_LEN = 128
|
374
|
+
MCOM_DATA_BUFFER_SIZE = 0
|
375
|
+
MCOM_N_BUFS = 10
|
376
|
+
MCOM_CHANNEL_LEN = 8
|
377
|
+
PLAYER_MCOM_PUSH = 0
|
378
|
+
PLAYER_MCOM_POP = 1
|
379
|
+
PLAYER_MCOM_READ = 2
|
380
|
+
PLAYER_MCOM_CLEAR = 3
|
381
|
+
PLAYER_MCOM_SET_CAPACITY = 4
|
382
|
+
|
383
|
+
PLAYER_OPAQUE_DATA_STATE = 1
|
384
|
+
PLAYER_OPAQUE_CMD_DATA = 1
|
385
|
+
PLAYER_OPAQUE_REQ_DATA = 1
|
386
|
+
|
387
|
+
PLAYER_PLANNER_DATA_STATE = 1
|
388
|
+
PLAYER_PLANNER_CMD_GOAL = 1
|
389
|
+
PLAYER_PLANNER_REQ_GET_WAYPOINTS = 1
|
390
|
+
PLAYER_PLANNER_REQ_ENABLE = 2
|
391
|
+
PLAYER_POSITION1D_REQ_GET_GEOM = 1
|
392
|
+
PLAYER_POSITION1D_REQ_MOTOR_POWER = 2
|
393
|
+
PLAYER_POSITION1D_REQ_VELOCITY_MODE = 3
|
394
|
+
PLAYER_POSITION1D_REQ_POSITION_MODE = 4
|
395
|
+
PLAYER_POSITION1D_REQ_SET_ODOM = 5
|
396
|
+
PLAYER_POSITION1D_REQ_RESET_ODOM = 6
|
397
|
+
PLAYER_POSITION1D_REQ_SPEED_PID = 7
|
398
|
+
PLAYER_POSITION1D_REQ_POSITION_PID = 8
|
399
|
+
PLAYER_POSITION1D_REQ_SPEED_PROF = 9
|
400
|
+
PLAYER_POSITION1D_DATA_STATE = 1
|
401
|
+
PLAYER_POSITION1D_DATA_GEOM = 2
|
402
|
+
PLAYER_POSITION1D_CMD_VEL = 1
|
403
|
+
PLAYER_POSITION1D_CMD_POS = 2
|
404
|
+
# Status byte: limit min
|
405
|
+
PLAYER_POSITION1D_STATUS_LIMIT_MIN = 0
|
406
|
+
# Status byte: limit center
|
407
|
+
PLAYER_POSITION1D_STATUS_LIMIT_CEN = 1
|
408
|
+
# Status byte: limit max
|
409
|
+
PLAYER_POSITION1D_STATUS_LIMIT_MAX = 2
|
410
|
+
# Status byte: limit over current
|
411
|
+
PLAYER_POSITION1D_STATUS_OC = 3
|
412
|
+
# Status byte: limit trajectory complete
|
413
|
+
PLAYER_POSITION1D_STATUS_TRAJ_COMPLETE = 4
|
414
|
+
# Status byte: enabled
|
415
|
+
PLAYER_POSITION1D_STATUS_ENABLED = 5
|
416
|
+
|
417
|
+
|
418
|
+
PLAYER_POSITION2D_REQ_GET_GEOM = 1
|
419
|
+
PLAYER_POSITION2D_REQ_MOTOR_POWER = 2
|
420
|
+
PLAYER_POSITION2D_REQ_VELOCITY_MODE = 3
|
421
|
+
PLAYER_POSITION2D_REQ_POSITION_MODE = 4
|
422
|
+
PLAYER_POSITION2D_REQ_SET_ODOM = 5
|
423
|
+
PLAYER_POSITION2D_REQ_RESET_ODOM = 6
|
424
|
+
PLAYER_POSITION2D_REQ_SPEED_PID = 7
|
425
|
+
PLAYER_POSITION2D_REQ_POSITION_PID = 8
|
426
|
+
PLAYER_POSITION2D_REQ_SPEED_PROF = 9
|
427
|
+
PLAYER_POSITION2D_DATA_STATE = 1
|
428
|
+
PLAYER_POSITION2D_DATA_GEOM = 2
|
429
|
+
PLAYER_POSITION2D_CMD_VEL = 1
|
430
|
+
PLAYER_POSITION2D_CMD_POS = 2
|
431
|
+
PLAYER_POSITION2D_CMD_CAR = 3
|
432
|
+
PLAYER_POSITION2D_CMD_VEL_HEAD = 4
|
433
|
+
|
434
|
+
PLAYER_POSITION3D_DATA_STATE = 1
|
435
|
+
PLAYER_POSITION3D_DATA_GEOMETRY = 2
|
436
|
+
PLAYER_POSITION3D_CMD_SET_VEL = 1
|
437
|
+
PLAYER_POSITION3D_CMD_SET_POS = 2
|
438
|
+
PLAYER_POSITION3D_GET_GEOM = 1
|
439
|
+
PLAYER_POSITION3D_MOTOR_POWER = 2
|
440
|
+
PLAYER_POSITION3D_VELOCITY_MODE = 3
|
441
|
+
PLAYER_POSITION3D_POSITION_MODE = 4
|
442
|
+
PLAYER_POSITION3D_RESET_ODOM = 5
|
443
|
+
PLAYER_POSITION3D_SET_ODOM = 6
|
444
|
+
PLAYER_POSITION3D_SPEED_PID = 7
|
445
|
+
PLAYER_POSITION3D_POSITION_PID = 8
|
446
|
+
PLAYER_POSITION3D_SPEED_PROF = 9
|
447
|
+
|
448
|
+
PLAYER_POWER_DATA_STATE = 1
|
449
|
+
PLAYER_POWER_SET_CHARGING_POLICY_REQ = 1
|
450
|
+
PLAYER_POWER_MASK_VOLTS = 1
|
451
|
+
PLAYER_POWER_MASK_WATTS = 2
|
452
|
+
PLAYER_POWER_MASK_JOULES = 4
|
453
|
+
PLAYER_POWER_MASK_PERCENT = 8
|
454
|
+
PLAYER_POWER_MASK_CHARGING = 16
|
455
|
+
|
456
|
+
PLAYER_PTZ_MAX_CONFIG_LEN = 32
|
457
|
+
PLAYER_PTZ_VELOCITY_CONTROL = 0
|
458
|
+
PLAYER_PTZ_POSITION_CONTROL = 1
|
459
|
+
PLAYER_PTZ_REQ_GENERIC = 1
|
460
|
+
PLAYER_PTZ_REQ_CONTROL_MODE = 2
|
461
|
+
PLAYER_PTZ_REQ_GEOM = 4
|
462
|
+
PLAYER_PTZ_REQ_STATUS = 5
|
463
|
+
PLAYER_PTZ_DATA_STATE = 1
|
464
|
+
PLAYER_PTZ_DATA_GEOM = 2
|
465
|
+
PLAYER_PTZ_CMD_STATE = 1
|
466
|
+
|
467
|
+
PLAYER_RANGER_REQ_GET_GEOM = 1
|
468
|
+
PLAYER_RANGER_REQ_POWER = 2
|
469
|
+
PLAYER_RANGER_REQ_INTNS = 3
|
470
|
+
PLAYER_RANGER_REQ_SET_CONFIG = 4
|
471
|
+
PLAYER_RANGER_REQ_GET_CONFIG = 5
|
472
|
+
PLAYER_RANGER_DATA_RANGE = 1
|
473
|
+
PLAYER_RANGER_DATA_RANGESTAMPED = 2
|
474
|
+
PLAYER_RANGER_DATA_INTNS = 3
|
475
|
+
PLAYER_RANGER_DATA_INTNSSTAMPED = 4
|
476
|
+
PLAYER_RANGER_DATA_GEOM = 5
|
477
|
+
|
478
|
+
PLAYER_SIMULATION_IDENTIFIER_MAXLEN = 64
|
479
|
+
PLAYER_SIMULATION_PROP_VALUE_MAXLEN = 64
|
480
|
+
PLAYER_SIMULATION_REQ_GET_POSE2D = 1
|
481
|
+
PLAYER_SIMULATION_REQ_SET_POSE2D = 2
|
482
|
+
PLAYER_SIMULATION_REQ_GET_POSE3D = 3
|
483
|
+
PLAYER_SIMULATION_REQ_SET_POSE3D = 4
|
484
|
+
PLAYER_SIMULATION_REQ_GET_PROPERTY = 5
|
485
|
+
PLAYER_SIMULATION_REQ_SET_PROPERTY = 6
|
486
|
+
PLAYER_SIMULATION_CMD_PAUSE = 1
|
487
|
+
PLAYER_SIMULATION_CMD_RESET = 2
|
488
|
+
PLAYER_SIMULATION_CMD_SAVE = 3
|
489
|
+
|
490
|
+
PLAYER_SONAR_REQ_GET_GEOM = 1
|
491
|
+
PLAYER_SONAR_REQ_POWER = 2
|
492
|
+
PLAYER_SONAR_DATA_RANGES = 1
|
493
|
+
PLAYER_SONAR_DATA_GEOM = 2
|
494
|
+
|
495
|
+
PLAYER_SPEECH_MAX_STRING_LEN = 256
|
496
|
+
PLAYER_SPEECH_CMD_SAY = 1
|
497
|
+
|
498
|
+
SPEECH_RECOGNITION_TEXT_LEN = 256
|
499
|
+
SPEECH_RECOGNITION_DATA_STRING = 1
|
500
|
+
|
501
|
+
PLAYER_STEREO_DATA_STATE = 1
|
502
|
+
|
503
|
+
PLAYER_TRUTH_DATA_POSE = 0x01
|
504
|
+
PLAYER_TRUTH_DATA_FIDUCIAL_ID = 0x02
|
505
|
+
PLAYER_TRUTH_REQ_SET_POSE = 0x03
|
506
|
+
PLAYER_TRUTH_REQ_SET_FIDUCIAL_ID = 0x04
|
507
|
+
PLAYER_TRUTH_REQ_GET_FIDUCIAL_ID = 0x05
|
508
|
+
|
509
|
+
PLAYER_WIFI_MAX_LINKS = 32
|
510
|
+
PLAYER_WIFI_QUAL_DBM = 1
|
511
|
+
PLAYER_WIFI_QUAL_REL = 2
|
512
|
+
PLAYER_WIFI_QUAL_UNKNOWN = 3
|
513
|
+
PLAYER_WIFI_MODE_UNKNOWN = 0
|
514
|
+
PLAYER_WIFI_MODE_AUTO = 1
|
515
|
+
PLAYER_WIFI_MODE_ADHOC = 2
|
516
|
+
PLAYER_WIFI_MODE_INFRA = 3
|
517
|
+
PLAYER_WIFI_MODE_MASTER = 4
|
518
|
+
PLAYER_WIFI_MODE_REPEAT = 5
|
519
|
+
PLAYER_WIFI_MODE_SECOND = 6
|
520
|
+
PLAYER_WIFI_REQ_MAC = 1
|
521
|
+
PLAYER_WIFI_REQ_IWSPY_ADD = 2
|
522
|
+
PLAYER_WIFI_REQ_IWSPY_DEL = 3
|
523
|
+
PLAYER_WIFI_REQ_IWSPY_PING = 4
|
524
|
+
PLAYER_WIFI_DATA_STATE = 1
|
525
|
+
|
526
|
+
PLAYER_RFID_DATA_TAGS = 1
|
527
|
+
PLAYER_RFID_REQ_POWER = 1
|
528
|
+
PLAYER_RFID_REQ_READTAG = 2
|
529
|
+
PLAYER_RFID_REQ_WRITETAG = 3
|
530
|
+
PLAYER_RFID_REQ_LOCKTAG = 4
|
531
|
+
|
532
|
+
# The maximum number of points that can be described in a packet
|
533
|
+
PLAYER_GRAPHICS2D_MAX_POINTS = 64
|
534
|
+
# Command subtype: clear the drawing area (send an empty message)
|
535
|
+
PLAYER_GRAPHICS2D_CMD_CLEAR = 1
|
536
|
+
# Command subtype: draw points
|
537
|
+
PLAYER_GRAPHICS2D_CMD_POINTS = 2
|
538
|
+
# Command subtype: draw a polyline
|
539
|
+
PLAYER_GRAPHICS2D_CMD_POLYLINE = 3
|
540
|
+
# Command subtype: draw a polygon
|
541
|
+
PLAYER_GRAPHICS2D_CMD_POLYGON = 4
|
542
|
+
|
543
|
+
# The maximum number of nodes that can work together in the WSN.
|
544
|
+
PLAYER_WSN_MAX_NODES = 100
|
545
|
+
PLAYER_WSN_DATA_STATE = 1
|
546
|
+
PLAYER_WSN_CMD_DEVSTATE = 1
|
547
|
+
|
548
|
+
# Request/reply: put the reader in sleep mode (0) or wake it up (1).
|
549
|
+
PLAYER_WSN_REQ_POWER = 1
|
550
|
+
# Request/reply: change the data type to RAW or converted engineering units
|
551
|
+
PLAYER_WSN_REQ_DATATYPE = 2
|
552
|
+
# Request/reply: change the receiving data frequency
|
553
|
+
PLAYER_WSN_REQ_DATAFREQ = 3
|
554
|
+
|
555
|
+
# The maximum number of points that can be described in a packet
|
556
|
+
PLAYER_GRAPHICS3D_MAX_POINTS = 1024
|
557
|
+
# Command subtype: clear the drawing area (send an empty message)
|
558
|
+
PLAYER_GRAPHICS3D_CMD_CLEAR = 1
|
559
|
+
# Command subtype: draw subitems
|
560
|
+
PLAYER_GRAPHICS2D_CMD_DRAW = 2
|
561
|
+
|
562
|
+
# Data subtype: Health's data packet
|
563
|
+
PLAYER_HEALTH_DATA_STATE = 1
|
564
|
+
|
565
|
+
# Data subtype: IMU position/orientation data
|
566
|
+
PLAYER_IMU_DATA_STATE = 1
|
567
|
+
# Data subtype: Calibrated IMU data
|
568
|
+
PLAYER_IMU_DATA_CALIB = 2
|
569
|
+
# Data subtype: Quaternions orientation data
|
570
|
+
PLAYER_IMU_DATA_QUAT = 3
|
571
|
+
# Data subtype: Euler orientation data
|
572
|
+
PLAYER_IMU_DATA_EULER = 4
|
573
|
+
# Data subtype: All the calibrated IMU data
|
574
|
+
PLAYER_IMU_DATA_FULLSTATE = 5
|
575
|
+
# Request/reply subtype: set data type
|
576
|
+
PLAYER_IMU_REQ_SET_DATATYPE = 1
|
577
|
+
# Request/reply subtype: reset orientation
|
578
|
+
PLAYER_IMU_REQ_RESET_ORIENTATION = 2
|
579
|
+
|
580
|
+
# Maximum number of points that can be included in a data packet
|
581
|
+
PLAYER_POINTCLOUD3D_MAX_POINTS = 8192
|
582
|
+
# Data subtype: state
|
583
|
+
PLAYER_POINTCLOUD3D_DATA_STATE = 1
|
584
|
+
end
|