ruby-player 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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