player_interfaces.h
00001 /* START OF AUTOGENERATED CODE */
00002 /* This file or section was automatically generated by playerinterfacegen.py
00003 To modify the interfaces in this file please edit their interface definition in libplayerinterface/interfaces/ */
00004 
00007 #define PLAYER_PLAYER_CODE 1
00008 
00011 #define PLAYER_PLAYER_STRING "player" 
00012 
00013 // /////////////////////////////////////////////////////////////////////////////
00032 #define PLAYER_PLAYER_REQ_DEVLIST 1
00033 
00035 #define PLAYER_PLAYER_REQ_DRIVERINFO 2
00036 
00038 #define PLAYER_PLAYER_REQ_DEV 3
00039 
00046 #define PLAYER_PLAYER_REQ_DATA 4
00047 
00048 
00049 #define PLAYER_PLAYER_REQ_DATAMODE 5
00050 
00051 
00052 #define PLAYER_PLAYER_REQ_AUTH 7
00053 
00054 
00055 #define PLAYER_PLAYER_REQ_NAMESERVICE 8
00056 
00057 
00058 #define PLAYER_PLAYER_REQ_ADD_REPLACE_RULE 10
00059 
00060 
00061 #define PLAYER_PLAYER_SYNCH_OK 1
00062 
00063 
00064 #define PLAYER_PLAYER_SYNCH_OVERFLOW 2
00065 
00066 
00067 
00069 #define PLAYER_OPEN_MODE   1
00070 
00071 #define PLAYER_CLOSE_MODE  2
00072 
00073 #define PLAYER_ERROR_MODE  3
00074 
00075 
00078 #define PLAYER_DATAMODE_PUSH  1
00079 
00083 #define PLAYER_DATAMODE_PULL   2
00084 
00085 
00086 
00089 #define PLAYER_PLAYER_MSG_REPLACE_RULE_ACCEPT  0
00090 #define PLAYER_PLAYER_MSG_REPLACE_RULE_REPLACE 1
00091 #define PLAYER_PLAYER_MSG_REPLACE_RULE_IGNORE  2
00092 
00099 typedef struct player_device_devlist
00100 {
00102   uint32_t devices_count;
00104   player_devaddr_t devices[PLAYER_MAX_DEVICES];
00105 } player_device_devlist_t;
00106 
00113 typedef struct player_device_driverinfo
00114 {
00116   player_devaddr_t addr;
00118   uint32_t driver_name_count;
00120   char driver_name[PLAYER_MAX_DRIVER_STRING_LEN];
00121 } player_device_driverinfo_t;
00122 
00140 typedef struct player_device_req
00141 {
00143   player_devaddr_t addr;
00145   uint8_t access;
00147   uint32_t driver_name_count;
00149   char driver_name[PLAYER_MAX_DRIVER_STRING_LEN];
00150 } player_device_req_t;
00151 
00152 
00159 typedef struct player_device_datamode_req
00160 {
00162   uint8_t mode;
00163 
00164 } player_device_datamode_req_t;
00165 
00166 
00198 typedef struct player_device_auth_req
00199 {
00201   uint32_t auth_key_count;
00203   uint8_t auth_key[PLAYER_KEYLEN];
00204 
00205 } player_device_auth_req_t;
00206 
00207 
00212 typedef struct player_device_nameservice_req
00213 {
00215   uint32_t name_count;
00217   uint8_t name[PLAYER_MAX_DRIVER_STRING_LEN];
00219   uint16_t port;
00220 } player_device_nameservice_req_t;
00221 
00232 typedef struct player_add_replace_rule_req
00233 {
00235   int32_t interf;
00237   int32_t index;
00239   int32_t type;
00241   int32_t subtype;
00243   int32_t replace ;
00244 } player_add_replace_rule_req_t;
00245 
00246  
00252 #define PLAYER_POWER_CODE 2
00253 
00256 #define PLAYER_POWER_STRING "power" 
00257 
00258 // /////////////////////////////////////////////////////////////////////////////
00274 #define PLAYER_POWER_DATA_STATE 1
00275 
00277 #define PLAYER_POWER_REQ_SET_CHARGING_POLICY_REQ 1
00278 
00279 
00280 
00282 #define PLAYER_POWER_MASK_VOLTS 1
00283 #define PLAYER_POWER_MASK_WATTS 2
00284 #define PLAYER_POWER_MASK_JOULES 4
00285 #define PLAYER_POWER_MASK_PERCENT 8
00286 #define PLAYER_POWER_MASK_CHARGING 16
00287 
00291 typedef struct player_power_data
00292 {
00296   uint32_t valid;
00297 
00299   float  volts;
00301   float percent;
00303   float joules;
00306   float watts;
00311   int32_t charging;
00312 
00313 } player_power_data_t;
00314 
00315 
00320 typedef struct player_power_chargepolicy_config
00321 {
00324   uint8_t enable_input;
00327   uint8_t enable_output;
00328 } player_power_chargepolicy_config_t;
00329 
00330 
00331  
00337 #define PLAYER_GRIPPER_CODE 3
00338 
00341 #define PLAYER_GRIPPER_STRING "gripper" 
00342 
00343 // /////////////////////////////////////////////////////////////////////////////
00365 #define PLAYER_GRIPPER_DATA_STATE 1
00366 
00368 #define PLAYER_GRIPPER_REQ_GET_GEOM 1
00369 
00373 #define PLAYER_GRIPPER_CMD_OPEN 1
00374 
00378 #define PLAYER_GRIPPER_CMD_CLOSE 2
00379 
00383 #define PLAYER_GRIPPER_CMD_STOP 3
00384 
00388 #define PLAYER_GRIPPER_CMD_STORE 4
00389 
00394 #define PLAYER_GRIPPER_CMD_RETRIEVE 5
00395 
00396 
00397 
00399 #define PLAYER_GRIPPER_STATE_OPEN 1
00400 
00401 #define PLAYER_GRIPPER_STATE_CLOSED 2
00402 
00403 #define PLAYER_GRIPPER_STATE_MOVING 3
00404 
00405 #define PLAYER_GRIPPER_STATE_ERROR 4
00406 
00407 
00418 typedef struct player_gripper_data
00419 {
00421   uint8_t state;
00423   uint32_t beams;
00425   uint8_t stored;
00426 } player_gripper_data_t;
00427 
00433 typedef struct player_gripper_geom
00434 {
00436   player_pose3d_t pose;
00438   player_bbox3d_t outer_size;
00441   player_bbox3d_t inner_size;
00443   uint8_t num_beams;
00445   uint8_t capacity;
00446 } player_gripper_geom_t;
00447 
00448 
00449 
00450 
00451 
00452 
00453  
00459 #define PLAYER_POSITION2D_CODE 4
00460 
00463 #define PLAYER_POSITION2D_STRING "position2d" 
00464 
00465 // /////////////////////////////////////////////////////////////////////////////
00483 #define PLAYER_POSITION2D_REQ_GET_GEOM 1
00484 
00496 #define PLAYER_POSITION2D_REQ_MOTOR_POWER 2
00497 
00522 #define PLAYER_POSITION2D_REQ_VELOCITY_MODE 3
00523 
00529 #define PLAYER_POSITION2D_REQ_POSITION_MODE 4
00530 
00535 #define PLAYER_POSITION2D_REQ_SET_ODOM 5
00536 
00541 #define PLAYER_POSITION2D_REQ_RESET_ODOM 6
00542 
00548 #define PLAYER_POSITION2D_REQ_SPEED_PID 7
00549 
00556 #define PLAYER_POSITION2D_REQ_POSITION_PID 8
00557 
00562 #define PLAYER_POSITION2D_REQ_SPEED_PROF 9
00563 
00568 #define PLAYER_POSITION2D_DATA_STATE 1
00569 
00574 #define PLAYER_POSITION2D_DATA_GEOM 2
00575 
00581 #define PLAYER_POSITION2D_CMD_VEL 1
00582 
00588 #define PLAYER_POSITION2D_CMD_POS 2
00589 
00594 #define PLAYER_POSITION2D_CMD_CAR 3
00595 
00599 #define PLAYER_POSITION2D_CMD_VEL_HEAD 4
00600 
00601 
00602 
00603 
00604 
00606 typedef struct player_position2d_data
00607 {
00609   player_pose2d_t pos;
00611   player_pose2d_t vel;
00613   uint8_t stall;
00614 } player_position2d_data_t;
00615 
00617 typedef struct player_position2d_cmd_vel
00618 {
00620   player_pose2d_t vel;
00622   uint8_t state;
00623 } player_position2d_cmd_vel_t;
00624 
00626 typedef struct player_position2d_cmd_pos
00627 {
00629   player_pose2d_t pos;
00631   player_pose2d_t vel;
00633   uint8_t state;
00634 } player_position2d_cmd_pos_t;
00635 
00637 typedef struct player_position2d_cmd_car
00638 {
00640   double velocity;
00642   double angle;
00643 } player_position2d_cmd_car_t;
00644 
00646 typedef struct player_position2d_cmd_vel_head
00647 {
00649   double velocity;
00651   double angle;
00652 } player_position2d_cmd_vel_head_t;
00653 
00655 typedef struct player_position2d_geom
00656 {
00658   player_pose3d_t pose;
00660   player_bbox3d_t size;
00661 } player_position2d_geom_t;
00662 
00664 typedef struct player_position2d_power_config
00665 {
00667   uint8_t state;
00668 } player_position2d_power_config_t;
00669 
00671 typedef struct player_position2d_velocity_mode_config
00672 {
00674   uint32_t value;
00675 } player_position2d_velocity_mode_config_t;
00676 
00677 
00679 typedef struct player_position2d_position_mode_req
00680 {
00682   uint32_t state;
00683 } player_position2d_position_mode_req_t;
00684 
00686 typedef struct player_position2d_set_odom_req
00687 {
00689   player_pose2d_t pose;
00690 } player_position2d_set_odom_req_t;
00691 
00693 typedef struct player_position2d_speed_pid_req
00694 {
00696   float kp;
00698   float ki;
00700   float kd;
00701 } player_position2d_speed_pid_req_t;
00702 
00704 typedef struct player_position2d_position_pid_req
00705 {
00707   float kp;
00709   float ki;
00711   float kd;
00712 } player_position2d_position_pid_req_t;
00713 
00715 typedef struct player_position2d_speed_prof_req
00716 {
00718   float speed;
00720   float acc;
00721 } player_position2d_speed_prof_req_t;
00731 #define PLAYER_SONAR_CODE 5
00732 
00735 #define PLAYER_SONAR_STRING "sonar" 
00736 
00737 // /////////////////////////////////////////////////////////////////////////////
00755 #define PLAYER_SONAR_REQ_GET_GEOM 1
00756 
00758 #define PLAYER_SONAR_REQ_POWER 2
00759 
00761 #define PLAYER_SONAR_DATA_RANGES 1
00762 
00764 #define PLAYER_SONAR_DATA_GEOM 2
00765 
00766 
00767 
00772 typedef struct player_sonar_data
00773 {
00775   uint32_t ranges_count;
00777   float *ranges;
00778 } player_sonar_data_t;
00779 
00786 typedef struct player_sonar_geom
00787 {
00789   uint32_t poses_count;
00791   player_pose3d_t *poses;
00792 } player_sonar_geom_t;
00793 
00798 typedef struct player_sonar_power_config
00799 {
00801   uint8_t state;
00802 } player_sonar_power_config_t;
00803 
00812 #define PLAYER_LASER_CODE 6
00813 
00816 #define PLAYER_LASER_STRING "laser" 
00817 
00818 // /////////////////////////////////////////////////////////////////////////////
00848 #define PLAYER_LASER_DATA_SCAN 1
00849 
00851 #define PLAYER_LASER_DATA_SCANPOSE 2
00852 
00854 #define PLAYER_LASER_DATA_SCANANGLE 3
00855 
00857 #define PLAYER_LASER_REQ_GET_GEOM 1
00858 
00860 #define PLAYER_LASER_REQ_SET_CONFIG 2
00861 
00863 #define PLAYER_LASER_REQ_GET_CONFIG 3
00864 
00866 #define PLAYER_LASER_REQ_POWER 4
00867 
00869 #define PLAYER_LASER_REQ_GET_ID 5
00870 
00872 #define PLAYER_LASER_REQ_SET_FILTER 6
00873 
00874 
00875 
00877 #define PLAYER_LASER_MAX_FILTER_PARAMS 8
00878 #define PLAYER_LASER_FILTER_MEDIAN 1
00879 #define PLAYER_LASER_FILTER_EDGE   2
00880 #define PLAYER_LASER_FILTER_RANGE  3
00881 #define PLAYER_LASER_FILTER_MEAN   4
00882 
00886 typedef struct player_laser_data
00887 {
00889   float min_angle;
00891   float max_angle;
00893   float resolution;
00895   float max_range;
00897   uint32_t ranges_count;
00899   float *ranges;
00901   uint32_t intensity_count;
00903   uint8_t *intensity;
00905   uint32_t id;
00906 } player_laser_data_t;
00907 
00912 typedef struct player_laser_data_scanpose
00913 {
00915   player_laser_data_t scan;
00917   player_pose2d_t pose;
00918 } player_laser_data_scanpose_t;
00919 
00923 typedef struct player_laser_data_scanangle
00924 {
00926   float max_range;
00928   uint32_t ranges_count;
00930   float *ranges;
00932   uint32_t angles_count;
00934   float *angles;
00936   uint32_t intensity_count;
00938   uint8_t *intensity;
00940   uint32_t id;
00941 } player_laser_data_scanangle_t;
00942 
00943 
00948 typedef struct player_laser_geom
00949 {
00951   player_pose3d_t pose;
00953   player_bbox3d_t size;
00954 } player_laser_geom_t;
00955 
00964 typedef struct player_laser_config
00965 {
00967   float min_angle;
00969   float max_angle;
00971   float resolution;
00973   float max_range;
00975   float range_res;
00977   uint8_t  intensity;
00979   float scanning_frequency;
00980 } player_laser_config_t;
00981 
00986 typedef struct player_laser_power_config
00987 {
00989   uint8_t state;
00990 } player_laser_power_config_t;
00991 
00996 typedef struct player_laser_get_id_config
00997 {
00999   uint32_t serial_number;
01000 } player_laser_get_id_config_t;
01001 
01019 typedef struct player_laser_set_filter_config
01020 {
01022   uint8_t filter_type;
01024   uint32_t parameters_count;
01026   float parameters[PLAYER_LASER_MAX_FILTER_PARAMS];
01027 } player_laser_set_filter_config_t;
01028 
01029 
01030  
01036 #define PLAYER_BLOBFINDER_CODE 7
01037 
01040 #define PLAYER_BLOBFINDER_STRING "blobfinder" 
01041 
01042 // /////////////////////////////////////////////////////////////////////////////
01058 #define PLAYER_BLOBFINDER_DATA_BLOBS 1
01059 
01060 
01061 #define PLAYER_BLOBFINDER_REQ_SET_COLOR 1
01062 
01063 
01064 #define PLAYER_BLOBFINDER_REQ_SET_IMAGER_PARAMS 2
01065 
01066 
01067 #define PLAYER_BLOBFINDER_REQ_GET_COLOR 3
01068 
01069 
01071 typedef struct player_blobfinder_blob
01072 {
01074   uint32_t id;
01077   uint32_t color;
01079   uint32_t area;
01081   uint32_t x;
01083   uint32_t y;
01085   uint32_t left;
01087   uint32_t right;
01089   uint32_t top;
01091   uint32_t bottom;
01093   float range;
01094 } player_blobfinder_blob_t;
01095 
01099 typedef struct player_blobfinder_data
01100 {
01102   uint32_t width;
01104   uint32_t height;
01106   uint32_t blobs_count;
01108   player_blobfinder_blob_t *blobs;
01109 } player_blobfinder_data_t;
01110 
01111 
01121 typedef struct player_blobfinder_color_config
01122 {
01126   uint32_t channel;
01128   uint32_t rmin;
01130   uint32_t rmax;
01132   uint32_t gmin;
01134   uint32_t gmax;
01136   uint32_t bmin;
01138   uint32_t bmax;
01139 } player_blobfinder_color_config_t;
01140 
01141 
01156 typedef struct player_blobfinder_imager_config
01157 {
01159   int32_t brightness;
01161   int32_t contrast;
01166   int32_t  colormode;
01168   int32_t  autogain;
01169 } player_blobfinder_imager_config_t;
01170 
01171 
01172  
01178 #define PLAYER_PTZ_CODE 8
01179 
01182 #define PLAYER_PTZ_STRING "ptz" 
01183 
01184 // /////////////////////////////////////////////////////////////////////////////
01199 #define PLAYER_PTZ_REQ_GENERIC 1
01200 
01202 #define PLAYER_PTZ_REQ_CONTROL_MODE 2
01203 
01205 #define PLAYER_PTZ_REQ_GEOM 4
01206 
01208 #define PLAYER_PTZ_REQ_STATUS 5
01209 
01211 #define PLAYER_PTZ_DATA_STATE 1
01212 
01214 #define PLAYER_PTZ_DATA_GEOM 2
01215 
01217 #define PLAYER_PTZ_CMD_STATE 1
01218 
01219 
01220 
01222 #define PLAYER_PTZ_VELOCITY_CONTROL 0
01223 
01224 #define PLAYER_PTZ_POSITION_CONTROL 1
01225 
01226 
01231 typedef struct player_ptz_data
01232 {
01234   float pan;
01236   float tilt;
01238   float zoom;
01240   float panspeed;
01242   float tiltspeed;
01244   uint32_t status;
01245 } player_ptz_data_t;
01246 
01251 typedef struct player_ptz_cmd
01252 {
01254   float pan;
01256   float tilt;
01258   float zoom;
01260   float panspeed;
01262   float tiltspeed;
01263 } player_ptz_cmd_t;
01264 
01268 typedef struct player_ptz_req_status
01269 {
01270   uint32_t status;
01271 } player_ptz_req_status_t;
01272 
01276 typedef struct player_ptz_geom
01277 {
01279   player_pose3d_t pos;
01281   player_bbox3d_t size;
01282 } player_ptz_geom_t;
01283 
01290 typedef struct player_ptz_req_generic
01291 {
01293   uint32_t  config_count;
01295   uint32_t  *config;
01296 } player_ptz_req_generic_t;
01297 
01304 typedef struct player_ptz_req_control_mode
01305 {
01308   uint32_t mode;
01309 } player_ptz_req_control_mode_t;
01310 
01311  
01317 #define PLAYER_AUDIO_CODE 9
01318 
01321 #define PLAYER_AUDIO_STRING "audio" 
01322 
01323 // /////////////////////////////////////////////////////////////////////////////
01347 #define PLAYER_AUDIO_DATA_WAV_REC 1
01348 
01352 #define PLAYER_AUDIO_DATA_SEQ 2
01353 
01357 #define PLAYER_AUDIO_DATA_MIXER_CHANNEL 3
01358 
01362 #define PLAYER_AUDIO_DATA_STATE 4
01363 
01367 #define PLAYER_AUDIO_CMD_WAV_PLAY 1
01368 
01372 #define PLAYER_AUDIO_CMD_WAV_STREAM_REC 2
01373 
01377 #define PLAYER_AUDIO_CMD_SAMPLE_PLAY 3
01378 
01382 #define PLAYER_AUDIO_CMD_SEQ_PLAY 4
01383 
01387 #define PLAYER_AUDIO_CMD_MIXER_CHANNEL 5
01388 
01392 #define PLAYER_AUDIO_REQ_WAV_REC 1
01393 
01397 #define PLAYER_AUDIO_REQ_SAMPLE_LOAD 2
01398 
01402 #define PLAYER_AUDIO_REQ_SAMPLE_RETRIEVE 3
01403 
01407 #define PLAYER_AUDIO_REQ_SAMPLE_REC 4
01408 
01412 #define PLAYER_AUDIO_REQ_MIXER_CHANNEL_LIST 5
01413 
01417 #define PLAYER_AUDIO_REQ_MIXER_CHANNEL_LEVEL 6
01418 
01419 
01420 
01423 #define PLAYER_AUDIO_STATE_STOPPED            0x00
01424 #define PLAYER_AUDIO_STATE_PLAYING            0x01
01425 #define PLAYER_AUDIO_STATE_RECORDING          0x02
01426 
01430 #define PLAYER_AUDIO_DESCRIPTION_BITS         0xFF
01431 #define PLAYER_AUDIO_BITS                     0x03
01432 
01433 #define PLAYER_AUDIO_8BIT                     0
01434 
01435 #define PLAYER_AUDIO_16BIT                    1
01436 
01437 #define PLAYER_AUDIO_24BIT                    2
01438 
01439 #define PLAYER_AUDIO_MONO                     0
01440 
01441 #define PLAYER_AUDIO_STEREO                   4
01442 
01443 #define PLAYER_AUDIO_FREQ                     0x18
01444 #define PLAYER_AUDIO_FREQ_44k                 0
01445 #define PLAYER_AUDIO_FREQ_11k                 8
01446 #define PLAYER_AUDIO_FREQ_22k                 16
01447 #define PLAYER_AUDIO_FREQ_48k                 24
01448 
01450 #define PLAYER_AUDIO_FORMAT_BITS              0xFF00
01451 
01452 #define PLAYER_AUDIO_FORMAT_NULL              0x0000
01453 #define PLAYER_AUDIO_FORMAT_RAW               0x0100
01454 #define PLAYER_AUDIO_FORMAT_MP3               0x0200
01455 #define PLAYER_AUDIO_FORMAT_OGG               0x0300
01456 #define PLAYER_AUDIO_FORMAT_FLAC              0x0400
01457 #define PLAYER_AUDIO_FORMAT_AAC               0x0500
01458 
01459 
01460 
01466 typedef struct player_audio_wav
01467 {
01469   uint32_t data_count;
01471   uint8_t *data;
01473   uint32_t format;
01474 } player_audio_wav_t;
01475 
01476 
01484 typedef struct player_audio_seq_item
01485 {
01487   float freq;
01489   float duration;
01491   float amplitude;
01493   player_bool_t link;
01494 } player_audio_seq_item_t;
01495 
01496 
01502 typedef struct player_audio_seq
01503 {
01505   uint32_t tones_count;
01507   player_audio_seq_item_t *tones;
01508 } player_audio_seq_t;
01509 
01510 
01516 typedef struct player_audio_mixer_channel
01517 {
01519   float amplitude;
01521   player_bool_t active;
01523   uint32_t index;
01524 } player_audio_mixer_channel_t;
01525 
01526 
01527 
01533 typedef struct player_audio_mixer_channel_list
01534 {
01536   uint32_t channels_count;
01538   player_audio_mixer_channel_t *channels;
01539 } player_audio_mixer_channel_list_t;
01540 
01541 
01542 
01544 #define PLAYER_AUDIO_MIXER_CHANNEL_TYPE_INPUT 1
01545 
01546 #define PLAYER_AUDIO_MIXER_CHANNEL_TYPE_OUTPUT 2
01547 
01548 #define PLAYER_AUDIO_MIXER_CHANNEL_TYPE_SPECIAL 4
01549 
01555 typedef struct player_audio_mixer_channel_detail
01556 {
01558   uint32_t name_count;
01560   char *name;
01562   uint8_t caps;
01563 } player_audio_mixer_channel_detail_t;
01564 
01565 
01566 
01572 typedef struct player_audio_mixer_channel_list_detail
01573 {
01575   uint32_t details_count;
01577   player_audio_mixer_channel_detail_t *details;
01579   int32_t default_output;
01581   int32_t default_input;
01582 } player_audio_mixer_channel_list_detail_t;
01583 
01584 
01585 
01592 typedef struct player_audio_sample
01593 {
01595   player_audio_wav_t sample;
01597   int32_t index;
01598 } player_audio_sample_t;
01599 
01605 typedef struct player_audio_sample_item
01606 {
01608   int32_t index;
01609 } player_audio_sample_item_t;
01610 
01616 typedef struct player_audio_sample_rec_req
01617 {
01620   int32_t index;
01622   uint32_t length;
01623 } player_audio_sample_rec_req_t;
01624 
01631 typedef struct player_audio_state
01632 {
01634   uint32_t state;
01635 } player_audio_state_t;
01636 
01637  
01643 #define PLAYER_FIDUCIAL_CODE 10
01644 
01647 #define PLAYER_FIDUCIAL_STRING "fiducial" 
01648 
01649 // /////////////////////////////////////////////////////////////////////////////
01666 #define PLAYER_FIDUCIAL_DATA_SCAN 1
01667 
01668 
01669 #define PLAYER_FIDUCIAL_REQ_GET_GEOM 1
01670 
01671 
01672 #define PLAYER_FIDUCIAL_REQ_GET_FOV 2
01673 
01674 
01675 #define PLAYER_FIDUCIAL_REQ_SET_FOV 3
01676 
01677 
01678 #define PLAYER_FIDUCIAL_REQ_GET_ID 7
01679 
01680 
01681 #define PLAYER_FIDUCIAL_REQ_SET_ID 8
01682 
01683 
01688 typedef struct player_fiducial_item
01689 {
01692   int32_t id;
01694   player_pose3d_t pose;
01696   player_pose3d_t upose;
01697 } player_fiducial_item_t;
01698 
01699 
01703 typedef struct player_fiducial_data
01704 {
01706   uint32_t fiducials_count;
01708   player_fiducial_item_t *fiducials;
01709 
01710 } player_fiducial_data_t;
01711 
01717 typedef struct player_fiducial_geom
01718 {
01720   player_pose3d_t pose;
01722   player_bbox3d_t size;
01724   player_bbox2d_t fiducial_size;
01725 } player_fiducial_geom_t;
01726 
01733 typedef struct player_fiducial_fov
01734 {
01736   float min_range;
01738   float max_range;
01740   float view_angle;
01741 } player_fiducial_fov_t;
01742 
01758 typedef struct player_fiducial_id
01759 {
01761   uint32_t id;
01762 } player_fiducial_id_t;
01763 
01764 
01765  
01771 #define PLAYER_SPEECH_CODE 12
01772 
01775 #define PLAYER_SPEECH_STRING "speech" 
01776 
01777 // /////////////////////////////////////////////////////////////////////////////
01792 #define PLAYER_SPEECH_CMD_SAY 1
01793 
01794 
01795 
01800 typedef struct player_speech_cmd
01801 {
01803   uint32_t string_count;
01805   char *string;
01806 } player_speech_cmd_t;
01807 
01808 
01809  
01815 #define PLAYER_GPS_CODE 13
01816 
01819 #define PLAYER_GPS_STRING "gps" 
01820 
01821 // /////////////////////////////////////////////////////////////////////////////
01837 #define PLAYER_GPS_DATA_STATE 1
01838 
01839 
01844 typedef struct player_gps_data
01845 {
01847   uint32_t time_sec;
01849   uint32_t time_usec;
01853   int32_t latitude;
01857   int32_t longitude;
01860   int32_t altitude;
01862   double utm_e;
01864   double utm_n;
01866   uint32_t quality;
01868   uint32_t num_sats;
01870   uint32_t hdop;
01872   uint32_t vdop;
01874   double err_horz;
01876   double err_vert;
01877 } player_gps_data_t;
01878 
01879 
01880  
01886 #define PLAYER_BUMPER_CODE 14
01887 
01890 #define PLAYER_BUMPER_STRING "bumper" 
01891 
01892 // /////////////////////////////////////////////////////////////////////////////
01908 #define PLAYER_BUMPER_DATA_STATE 1
01909 
01910 
01911 #define PLAYER_BUMPER_DATA_GEOM 2
01912 
01913 
01914 #define PLAYER_BUMPER_REQ_GET_GEOM 1
01915 
01916 
01920 typedef struct player_bumper_data
01921 {
01923   uint32_t bumpers_count;
01925   uint8_t *bumpers;
01926 } player_bumper_data_t;
01927 
01929 typedef struct player_bumper_define
01930 {
01932   player_pose3d_t pose;
01934   float length;
01936   float radius;
01937 } player_bumper_define_t;
01938 
01946 typedef struct player_bumper_geom
01947 {
01949   uint32_t bumper_def_count;
01951   player_bumper_define_t *bumper_def;
01952 } player_bumper_geom_t;
01953 
01954 
01955  
01961 #define PLAYER_DIO_CODE 20
01962 
01965 #define PLAYER_DIO_STRING "dio" 
01966 
01967 // /////////////////////////////////////////////////////////////////////////////
01982 #define PLAYER_DIO_DATA_VALUES 1
01983 
01984 
01985 #define PLAYER_DIO_CMD_VALUES 1
01986 
01987 
01992 typedef struct player_dio_data
01993 {
01995   uint32_t count;
01997   uint32_t bits;
01998 } player_dio_data_t;
01999 
02004 typedef struct player_dio_cmd
02005 {
02007   uint32_t count;
02009   uint32_t digout;
02010 } player_dio_cmd_t;
02011 
02020 #define PLAYER_AIO_CODE 21
02021 
02024 #define PLAYER_AIO_STRING "aio" 
02025 
02026 // /////////////////////////////////////////////////////////////////////////////
02041 #define PLAYER_AIO_CMD_STATE 1
02042 
02043 
02044 #define PLAYER_AIO_DATA_STATE 1
02045 
02046 
02051 typedef struct player_aio_data
02052 {
02054   uint32_t voltages_count;
02056   float *voltages;
02057 } player_aio_data_t;
02058 
02062 typedef struct player_aio_cmd
02063 {
02065   uint32_t id;
02067   float voltage;
02068 } player_aio_cmd_t;
02069 
02070  
02076 #define PLAYER_IR_CODE 22
02077 
02080 #define PLAYER_IR_STRING "ir" 
02081 
02082 // /////////////////////////////////////////////////////////////////////////////
02100 #define PLAYER_IR_REQ_POSE 1
02101 
02103 #define PLAYER_IR_REQ_POWER 2
02104 
02106 #define PLAYER_IR_DATA_RANGES 1
02107 
02108 
02109 
02113 typedef struct player_ir_data
02114 {
02116   uint32_t voltages_count;
02118   float *voltages;
02120   uint32_t ranges_count;
02122   float *ranges;
02123 } player_ir_data_t;
02124 
02128 typedef struct player_ir_pose
02129 {
02131   uint32_t poses_count;
02133   player_pose3d_t *poses;
02134 } player_ir_pose_t;
02135 
02140 typedef struct player_ir_power_req
02141 {
02143   uint8_t state;
02144 } player_ir_power_req_t;
02145 
02146  
02152 #define PLAYER_WIFI_CODE 23
02153 
02156 #define PLAYER_WIFI_STRING "wifi" 
02157 
02158 // /////////////////////////////////////////////////////////////////////////////
02174 #define PLAYER_WIFI_REQ_MAC 1
02175 
02177 #define PLAYER_WIFI_REQ_IWSPY_ADD 2
02178 
02180 #define PLAYER_WIFI_REQ_IWSPY_DEL 3
02181 
02183 #define PLAYER_WIFI_REQ_IWSPY_PING 4
02184 
02186 #define PLAYER_WIFI_DATA_STATE 1
02187 
02188 
02189 
02191 #define PLAYER_WIFI_QUAL_DBM     1
02192 
02193 #define PLAYER_WIFI_QUAL_REL     2
02194 
02195 #define PLAYER_WIFI_QUAL_UNKNOWN 3
02196 
02198 #define PLAYER_WIFI_MODE_UNKNOWN 0
02199 
02200 #define PLAYER_WIFI_MODE_AUTO    1
02201 
02202 #define PLAYER_WIFI_MODE_ADHOC   2
02203 
02204 #define PLAYER_WIFI_MODE_INFRA   3
02205 
02206 #define PLAYER_WIFI_MODE_MASTER  4
02207 
02208 #define PLAYER_WIFI_MODE_REPEAT  5
02209 
02210 #define PLAYER_WIFI_MODE_SECOND  6
02211 
02217 typedef struct player_wifi_link
02218 {
02220   uint32_t mac_count;
02221   uint8_t mac[32];
02223   uint32_t ip_count;
02224   uint8_t ip[32];
02226   uint32_t essid_count;
02227   uint8_t essid[32];
02229   uint32_t mode;
02231   uint32_t freq;
02233   uint32_t encrypt;
02235   uint32_t qual;
02237   uint32_t level;
02239   uint32_t noise;
02240 } player_wifi_link_t;
02241 
02245 typedef struct player_wifi_data
02246 {
02248   uint32_t links_count;
02250   player_wifi_link_t *links;
02252   uint32_t throughput;
02254   uint32_t bitrate;
02256   uint32_t mode;
02258   uint32_t qual_type;
02260   uint32_t maxqual;
02262   uint32_t maxlevel;
02264   uint32_t maxnoise;
02266   char ap[32];
02267 } player_wifi_data_t;
02268 
02270 typedef struct player_wifi_mac_req
02271 {
02273   uint32_t mac_count;
02274   uint8_t mac[32];
02275 } player_wifi_mac_req_t;
02276 
02278 typedef struct player_wifi_iwspy_addr_req
02279 {
02281   char      address[32];
02282 } player_wifi_iwspy_addr_req_t;
02283 
02284 
02285  
02291 #define PLAYER_LOCALIZE_CODE 25
02292 
02295 #define PLAYER_LOCALIZE_STRING "localize" 
02296 
02297 // /////////////////////////////////////////////////////////////////////////////
02318 #define PLAYER_LOCALIZE_DATA_HYPOTHS 1
02319 
02321 #define PLAYER_LOCALIZE_REQ_SET_POSE 1
02322 
02324 #define PLAYER_LOCALIZE_REQ_GET_PARTICLES 2
02325 
02326 
02327 
02333 typedef struct player_localize_hypoth
02334 {
02336   player_pose2d_t mean;
02338   double cov[3];
02340   double alpha;
02341 } player_localize_hypoth_t;
02342 
02347 typedef struct player_localize_data
02348 {
02350   uint32_t pending_count;
02352   double pending_time;
02354   uint32_t hypoths_count;
02356   player_localize_hypoth_t *hypoths;
02357 } player_localize_data_t;
02358 
02363 typedef struct player_localize_set_pose
02364 {
02366   player_pose2d_t mean;
02369   double cov[3];
02370 } player_localize_set_pose_t;
02371 
02373 typedef struct player_localize_particle
02374 {
02376   player_pose2d_t pose;
02378   double alpha;
02379 } player_localize_particle_t;
02380 
02386 typedef struct player_localize_get_particles
02387 {
02389   player_pose2d_t mean;
02391   double variance;
02393   uint32_t particles_count;
02395   player_localize_particle_t *particles;
02396 } player_localize_get_particles_t;
02397 
02398  
02404 #define PLAYER_POSITION3D_CODE 30
02405 
02408 #define PLAYER_POSITION3D_STRING "position3d" 
02409 
02410 // /////////////////////////////////////////////////////////////////////////////
02426 #define PLAYER_POSITION3D_DATA_STATE 1
02427 
02429 #define PLAYER_POSITION3D_DATA_GEOMETRY 2
02430 
02432 #define PLAYER_POSITION3D_CMD_SET_VEL 1
02433 
02435 #define PLAYER_POSITION3D_CMD_SET_POS 2
02436 
02438 #define PLAYER_POSITION3D_REQ_GET_GEOM 1
02439 
02441 #define PLAYER_POSITION3D_REQ_MOTOR_POWER 2
02442 
02444 #define PLAYER_POSITION3D_REQ_VELOCITY_MODE 3
02445 
02447 #define PLAYER_POSITION3D_REQ_POSITION_MODE 4
02448 
02450 #define PLAYER_POSITION3D_REQ_RESET_ODOM 5
02451 
02453 #define PLAYER_POSITION3D_REQ_SET_ODOM 6
02454 
02456 #define PLAYER_POSITION3D_REQ_SPEED_PID 7
02457 
02459 #define PLAYER_POSITION3D_REQ_POSITION_PID 8
02460 
02462 #define PLAYER_POSITION3D_REQ_SPEED_PROF 9
02463 
02464 
02465 
02470 typedef struct player_position3d_data
02471 {
02473   player_pose3d_t pos;
02475   player_pose3d_t vel;
02477   uint8_t stall;
02478 } player_position3d_data_t;
02479 
02484 typedef struct player_position3d_cmd_pos
02485 {
02487   player_pose3d_t pos;
02489   player_pose3d_t vel;
02491   uint8_t state;
02492 } player_position3d_cmd_pos_t;
02493 
02498 typedef struct player_position3d_cmd_vel
02499 {
02501   player_pose3d_t vel;
02503   uint8_t state;
02504 } player_position3d_cmd_vel_t;
02505 
02509 typedef struct player_position3d_geom
02510 {
02512   player_pose3d_t pose;
02514   player_bbox3d_t size;
02515 } player_position3d_geom_t;
02516 
02527 typedef struct player_position3d_power_config
02528 {
02530   uint8_t state;
02531 } player_position3d_power_config_t;
02532 
02538 typedef struct player_position3d_position_mode_req
02539 {
02541   uint32_t value;
02542 } player_position3d_position_mode_req_t;
02543 
02551 typedef struct player_position3d_velocity_mode_config
02552 {
02554   uint32_t value;
02555 } player_position3d_velocity_mode_config_t;
02556 
02561 typedef struct player_position3d_set_odom_req
02562 {
02564   player_pose3d_t pos;
02565 } player_position3d_set_odom_req_t;
02566 
02576 typedef struct player_position3d_speed_pid_req
02577 {
02579   float kp;
02581   float ki;
02583   float kd;
02584 } player_position3d_speed_pid_req_t;
02585 
02590 typedef struct player_position3d_position_pid_req
02591 {
02593   float kp;
02595   float ki;
02597   float kd;
02598 } player_position3d_position_pid_req_t;
02599 
02604 typedef struct player_position3d_speed_prof_req
02605 {
02607   float speed;
02609   float acc;
02610 } player_position3d_speed_prof_req_t;
02611 
02612 
02613  
02619 #define PLAYER_SIMULATION_CODE 31
02620 
02623 #define PLAYER_SIMULATION_STRING "simulation" 
02624 
02625 // /////////////////////////////////////////////////////////////////////////////
02649 #define PLAYER_SIMULATION_REQ_GET_POSE2D 1
02650 
02652 #define PLAYER_SIMULATION_REQ_SET_POSE2D 2
02653 
02655 #define PLAYER_SIMULATION_REQ_GET_POSE3D 3
02656 
02658 #define PLAYER_SIMULATION_REQ_SET_POSE3D 4
02659 
02661 #define PLAYER_SIMULATION_REQ_GET_PROPERTY 5
02662 
02664 #define PLAYER_SIMULATION_REQ_SET_PROPERTY 6
02665 
02667 #define PLAYER_SIMULATION_CMD_PAUSE 1
02668 
02670 #define PLAYER_SIMULATION_CMD_RESET 2
02671 
02673 #define PLAYER_SIMULATION_CMD_SAVE 3
02674 
02675 
02676 
02677 
02682 typedef struct player_simulation_data
02683 {
02685   uint8_t data;
02686 } player_simulation_data_t;
02687 
02692 typedef struct player_simulation_cmd
02693 {
02695   uint8_t cmd;
02696 } player_simulation_cmd_t;
02697 
02704 typedef struct player_simulation_pose2d_req
02705 {
02707   uint32_t name_count;
02709   char *name;
02711   player_pose2d_t pose;
02712 } player_simulation_pose2d_req_t;
02713 
02720 typedef struct player_simulation_pose3d_req
02721 {
02723   uint32_t name_count;
02725   char *name;
02727   player_pose3d_t pose;
02729   double simtime;
02730 } player_simulation_pose3d_req_t;
02731 
02752 typedef struct player_simulation_property_req
02753 {
02755   uint32_t name_count;
02757   char *name;
02759   uint32_t prop_count;
02761   char *prop;
02763   uint32_t index;
02765   uint32_t value_count;
02767   char *value;
02768 } player_simulation_property_req_t;
02769 
02770 
02771  
02777 #define PLAYER_BLINKENLIGHT_CODE 33
02778 
02781 #define PLAYER_BLINKENLIGHT_STRING "blinkenlight" 
02782 
02783 // /////////////////////////////////////////////////////////////////////////////
02802 #define PLAYER_BLINKENLIGHT_DATA_STATE 1
02803 
02804 
02805 #define PLAYER_BLINKENLIGHT_CMD_STATE 1
02806 
02807 
02808 #define PLAYER_BLINKENLIGHT_CMD_POWER 2
02809 
02810 
02811 #define PLAYER_BLINKENLIGHT_CMD_COLOR 3
02812 
02813 
02814 #define PLAYER_BLINKENLIGHT_CMD_FLASH 4
02815 
02816 
02820 typedef struct player_blinkenlight_data
02821 {
02823   uint8_t enable;
02825   float period;
02827   float dutycycle;
02829   player_color_t color;
02830 } player_blinkenlight_data_t;
02831 
02835 typedef struct player_blinkenlight_cmd
02836 {
02838   uint16_t id;  
02840   uint8_t enable;
02842   float period;
02844   float dutycycle;
02846   player_color_t color;
02847 } player_blinkenlight_cmd_t;
02848 
02852 typedef struct player_blinkenlight_cmd_power
02853 {
02855   uint16_t id;  
02857   uint8_t enable;
02858 } player_blinkenlight_cmd_power_t;
02859 
02863 typedef struct player_blinkenlight_cmd_color
02864 {
02866   uint16_t id;  
02868   player_color_t color;
02869 } player_blinkenlight_cmd_color_t;
02870         
02874 typedef struct player_blinkenlight_cmd_flash
02875 {
02877   uint16_t id;  
02879   float period;
02881   float dutycycle;  
02882 } player_blinkenlight_cmd_flash_t;
02883 
02884 
02885  
02891 #define PLAYER_CAMERA_CODE 40
02892 
02895 #define PLAYER_CAMERA_STRING "camera" 
02896 
02897 // /////////////////////////////////////////////////////////////////////////////
02916 #define PLAYER_CAMERA_DATA_STATE 1
02917 
02918 
02920 #define PLAYER_CAMERA_FORMAT_MONO8  1
02921 
02922 #define PLAYER_CAMERA_FORMAT_MONO16 2
02923 
02924 #define PLAYER_CAMERA_FORMAT_RGB565 4
02925 
02926 #define PLAYER_CAMERA_FORMAT_RGB888 5
02927 
02929 #define PLAYER_CAMERA_COMPRESS_RAW  0
02930 
02931 #define PLAYER_CAMERA_COMPRESS_JPEG 1
02932 
02934 typedef struct player_camera_data
02935 {
02937   uint32_t width;
02939   uint32_t height;
02941   uint32_t bpp;
02943   uint32_t format;
02947   uint32_t fdiv;
02950   uint32_t compression;
02952   uint32_t image_count;
02956   uint8_t *image;
02957 } player_camera_data_t;
02958 
02959  
02965 #define PLAYER_MAP_CODE 42
02966 
02969 #define PLAYER_MAP_STRING "map" 
02970 
02971 // /////////////////////////////////////////////////////////////////////////////
02990 #define PLAYER_MAP_DATA_INFO 1
02991 
02993 #define PLAYER_MAP_REQ_GET_INFO 1
02994 
02996 #define PLAYER_MAP_REQ_GET_DATA 2
02997 
02999 #define PLAYER_MAP_REQ_GET_VECTOR 3
03000 
03001 
03002 
03003 
03005 #define PLAYER_MAP_DATA_INFO               1
03011 typedef struct player_map_info
03012 {
03014   float scale;
03016   uint32_t width;
03018   uint32_t height;
03021   player_pose2d_t origin;
03022 } player_map_info_t;
03023 
03032 typedef struct player_map_data
03033 {
03035   uint32_t col;
03037   uint32_t row;
03039   uint32_t width;
03041   uint32_t height;
03043   uint32_t data_count;
03045   int8_t *data;
03046 } player_map_data_t;
03047 
03052 typedef struct player_map_data_vector
03053 {
03055   float minx;
03057   float maxx;
03059   float miny;
03061   float maxy;
03063   uint32_t segments_count;
03065   player_segment_t *segments;
03066 } player_map_data_vector_t;
03067 
03068 
03069  
03075 #define PLAYER_PLANNER_CODE 44
03076 
03079 #define PLAYER_PLANNER_STRING "planner" 
03080 
03081 // /////////////////////////////////////////////////////////////////////////////
03096 #define PLAYER_PLANNER_DATA_STATE 1
03097 
03099 #define PLAYER_PLANNER_CMD_GOAL 1
03100 
03102 #define PLAYER_PLANNER_REQ_GET_WAYPOINTS 1
03103 
03105 #define PLAYER_PLANNER_REQ_ENABLE 2
03106 
03107 
03108 
03109 
03114 typedef struct player_planner_data
03115 {
03117   uint8_t valid;
03119   uint8_t done;
03121   player_pose2d_t pos;
03123   player_pose2d_t goal;
03125   player_pose2d_t waypoint;
03129   int32_t waypoint_idx;
03131   uint32_t waypoints_count;
03132 } player_planner_data_t;
03133 
03137 typedef struct player_planner_cmd
03138 {
03140   player_pose2d_t goal;
03141 } player_planner_cmd_t;
03142 
03148 typedef struct player_planner_waypoints_req
03149 {
03151   uint32_t waypoints_count;
03153   player_pose2d_t *waypoints;
03154 } player_planner_waypoints_req_t;
03155 
03161 typedef struct player_planner_enable_req
03162 {
03164   uint8_t state;
03165 } player_planner_enable_req_t;
03166 
03167 
03168  
03174 #define PLAYER_LOG_CODE 45
03175 
03178 #define PLAYER_LOG_STRING "log" 
03179 
03180 // /////////////////////////////////////////////////////////////////////////////
03198 #define PLAYER_LOG_REQ_SET_WRITE_STATE 1
03199 
03201 #define PLAYER_LOG_REQ_SET_READ_STATE 2
03202 
03204 #define PLAYER_LOG_REQ_GET_STATE 3
03205 
03207 #define PLAYER_LOG_REQ_SET_READ_REWIND 4
03208 
03210 #define PLAYER_LOG_REQ_SET_FILENAME 5
03211 
03212 
03213 
03215 #define  PLAYER_LOG_TYPE_READ       1
03216 
03217 #define  PLAYER_LOG_TYPE_WRITE      2
03218 
03219 
03224 typedef struct player_log_set_write_state
03225 {
03227   uint8_t state;
03228 } player_log_set_write_state_t;
03229 
03234 typedef struct player_log_set_read_state
03235 {
03237   uint8_t state;
03238 } player_log_set_read_state_t;
03239 
03251 typedef struct player_log_get_state
03252 {
03255   uint8_t type;
03257   uint8_t state;
03258 } player_log_get_state_t;
03259 
03264 typedef struct player_log_set_filename
03265 {
03267   uint32_t filename_count;
03269   char filename[256];
03270 } player_log_set_filename_t;
03271 
03272 
03273  
03279 #define PLAYER_JOYSTICK_CODE 49
03280 
03283 #define PLAYER_JOYSTICK_STRING "joystick" 
03284 
03285 // /////////////////////////////////////////////////////////////////////////////
03302 #define PLAYER_JOYSTICK_DATA_STATE 1
03303 
03304 
03305 
03306 
03311  typedef struct player_joystick_data
03312  {
03314   int32_t pos[8];
03316   int32_t scale[8];
03318    uint32_t buttons;
03320    uint32_t axes_count;
03321  } player_joystick_data_t;
03322  
03323 
03324 
03325  
03331 #define PLAYER_SPEECH_RECOGNITION_CODE 50
03332 
03335 #define PLAYER_SPEECH_RECOGNITION_STRING "speech_recognition" 
03336 
03337 // /////////////////////////////////////////////////////////////////////////////
03353 #define PLAYER_SPEECH_RECOGNITION_DATA_STRING 1
03354 
03355 
03356 
03360 typedef struct player_speech_recognition_data
03361 {
03363   uint32_t text_count;
03365   char *text;
03366 } player_speech_recognition_data_t;
03367 
03368 
03369  
03375 #define PLAYER_OPAQUE_CODE 51
03376 
03379 #define PLAYER_OPAQUE_STRING "opaque" 
03380 
03381 // /////////////////////////////////////////////////////////////////////////////
03399 #define PLAYER_OPAQUE_DATA_STATE 1
03400 
03402 #define PLAYER_OPAQUE_CMD_DATA 1
03403 
03405 #define PLAYER_OPAQUE_REQ_DATA 1
03406 
03407 
03408 
03409 /* for backwards compatibility */
03410 #define PLAYER_OPAQUE_REQ PLAYER_OPAQUE_REQ_DATA
03411 #define PLAYER_OPAQUE_CMD PLAYER_OPAQUE_CMD_DATA
03412 
03414 typedef struct player_opaque_data
03415 {
03417   uint32_t data_count;
03419   uint8_t *data;
03420 } player_opaque_data_t;
03421 
03422 
03423  
03429 #define PLAYER_POSITION1D_CODE 52
03430 
03433 #define PLAYER_POSITION1D_STRING "position1d" 
03434 
03435 // /////////////////////////////////////////////////////////////////////////////
03450 #define PLAYER_POSITION1D_REQ_GET_GEOM 1
03451 
03453 #define PLAYER_POSITION1D_REQ_MOTOR_POWER 2
03454 
03456 #define PLAYER_POSITION1D_REQ_VELOCITY_MODE 3
03457 
03459 #define PLAYER_POSITION1D_REQ_POSITION_MODE 4
03460 
03462 #define PLAYER_POSITION1D_REQ_SET_ODOM 5
03463 
03465 #define PLAYER_POSITION1D_REQ_RESET_ODOM 6
03466 
03468 #define PLAYER_POSITION1D_REQ_SPEED_PID 7
03469 
03471 #define PLAYER_POSITION1D_REQ_POSITION_PID 8
03472 
03474 #define PLAYER_POSITION1D_REQ_SPEED_PROF 9
03475 
03477 #define PLAYER_POSITION1D_DATA_STATE 1
03478 
03480 #define PLAYER_POSITION1D_DATA_GEOM 2
03481 
03483 #define PLAYER_POSITION1D_CMD_VEL 1
03484 
03486 #define PLAYER_POSITION1D_CMD_POS 2
03487 
03488 
03489 
03491 #define PLAYER_POSITION1D_STATUS_LIMIT_MIN 0
03492 
03493 #define PLAYER_POSITION1D_STATUS_LIMIT_CEN 1
03494 
03495 #define PLAYER_POSITION1D_STATUS_LIMIT_MAX 2
03496 
03497 #define PLAYER_POSITION1D_STATUS_OC 3
03498 
03499 #define PLAYER_POSITION1D_STATUS_TRAJ_COMPLETE 4
03500 
03501 #define PLAYER_POSITION1D_STATUS_ENABLED 5
03502 
03507 typedef struct player_position1d_data
03508 {
03510   float pos;
03512   float vel;
03514   uint8_t stall;
03526   uint8_t status;
03527 
03528 } player_position1d_data_t;
03529 
03535 typedef struct player_position1d_cmd_vel
03536 {
03538   float vel;
03540   uint8_t state;
03541 } player_position1d_cmd_vel_t;
03542 
03548 typedef struct player_position1d_cmd_pos
03549 {
03551   float pos;
03553   float vel;
03555   uint8_t state;
03556 } player_position1d_cmd_pos_t;
03557 
03562 typedef struct player_position1d_geom
03563 {
03565   player_pose3d_t pose;
03567   player_bbox3d_t size;
03568 } player_position1d_geom_t;
03569 
03581 typedef struct player_position1d_power_config
03582 {
03584   uint8_t state;
03585 } player_position1d_power_config_t;
03586 
03595 typedef struct player_position1d_velocity_mode_config
03596 {
03598   uint32_t value;
03599 } player_position1d_velocity_mode_config_t;
03600 
03605 typedef struct player_position1d_reset_odom_config
03606 {
03608   uint32_t value;
03609 } player_position1d_reset_odom_config_t;
03610 
03616 typedef struct player_position1d_position_mode_req
03617 {
03619   uint32_t state;
03620 } player_position1d_position_mode_req_t;
03621 
03627 typedef struct player_position1d_set_odom_req
03628 {
03630   float pos;
03631 } player_position1d_set_odom_req_t;
03632 
03638 typedef struct player_position1d_speed_pid_req
03639 {
03641   float kp;
03643   float ki;
03645   float kd;
03646 } player_position1d_speed_pid_req_t;
03647 
03653 typedef struct player_position1d_position_pid_req
03654 {
03656   float kp;
03658   float ki;
03660   float kd;
03661 } player_position1d_position_pid_req_t;
03662 
03668 typedef struct player_position1d_speed_prof_req
03669 {
03671   float speed;
03673   float acc;
03674 } player_position1d_speed_prof_req_t;
03675 
03676  
03682 #define PLAYER_ACTARRAY_CODE 53
03683 
03686 #define PLAYER_ACTARRAY_STRING "actarray" 
03687 
03688 // /////////////////////////////////////////////////////////////////////////////
03703 #define PLAYER_ACTARRAY_REQ_POWER 1
03704 
03705 
03706 #define PLAYER_ACTARRAY_REQ_BRAKES 2
03707 
03708 
03709 #define PLAYER_ACTARRAY_REQ_GET_GEOM 3
03710 
03711 
03712 #define PLAYER_ACTARRAY_REQ_SPEED 4
03713 
03714 
03715 #define PLAYER_ACTARRAY_REQ_ACCEL 5
03716 
03717 
03718 #define PLAYER_ACTARRAY_CMD_POS 1
03719 
03720 
03721 #define PLAYER_ACTARRAY_CMD_MULTI_POS 2
03722 
03723 
03724 #define PLAYER_ACTARRAY_CMD_SPEED 3
03725 
03726 
03727 #define PLAYER_ACTARRAY_CMD_MULTI_SPEED 4
03728 
03729 
03730 #define PLAYER_ACTARRAY_CMD_HOME 5
03731 
03732 
03733 #define PLAYER_ACTARRAY_CMD_CURRENT 6
03734 
03735 
03736 #define PLAYER_ACTARRAY_CMD_MULTI_CURRENT 7
03737 
03738 
03739 #define PLAYER_ACTARRAY_DATA_STATE 1
03740 
03741 
03743 #define PLAYER_ACTARRAY_ACTSTATE_IDLE     1
03744 
03745 #define PLAYER_ACTARRAY_ACTSTATE_MOVING   2
03746 
03747 #define PLAYER_ACTARRAY_ACTSTATE_BRAKED   4
03748 
03749 #define PLAYER_ACTARRAY_ACTSTATE_STALLED  8
03750 
03752 #define PLAYER_ACTARRAY_TYPE_LINEAR       1
03753 
03754 #define PLAYER_ACTARRAY_TYPE_ROTARY       2
03755 
03756 
03758 typedef struct player_actarray_actuator
03759 {
03761   float position;
03763   float speed;
03765   float acceleration;
03767   float current;
03769   uint8_t state;
03770 } player_actarray_actuator_t;
03771 
03775 typedef struct player_actarray_data
03776 {
03778   uint32_t actuators_count;
03780   player_actarray_actuator_t *actuators;
03782   uint8_t motor_state;
03783 } player_actarray_data_t;
03784 
03786 typedef struct player_actarray_actuatorgeom
03787 {
03789   uint8_t type;
03792   float length;
03797   player_orientation_3d_t orientation;
03800   player_point_3d_t axis;
03802   float min;
03804   float centre;
03806   float max;
03808   float home;
03810   float config_speed;
03812   uint8_t hasbrakes;
03813 } player_actarray_actuatorgeom_t;
03814 
03819 typedef struct player_actarray_geom
03820 {
03822   uint32_t actuators_count;
03824   player_actarray_actuatorgeom_t *actuators;
03827   player_point_3d_t base_pos;
03830   player_orientation_3d_t base_orientation;
03831 } player_actarray_geom_t;
03832 
03833 
03837 typedef struct player_actarray_position_cmd
03838 {
03840   int32_t joint;
03842   float position;
03843 } player_actarray_position_cmd_t;
03844 
03848 typedef struct player_actarray_multi_position_cmd
03849 {
03851   uint32_t positions_count;
03853   float *positions;
03854 } player_actarray_multi_position_cmd_t;
03855 
03859 typedef struct player_actarray_speed_cmd
03860 {
03862   int32_t joint;
03864   float speed;
03865 } player_actarray_speed_cmd_t;
03866 
03870 typedef struct player_actarray_multi_speed_cmd
03871 {
03873   uint32_t speeds_count;
03875   float *speeds;
03876 } player_actarray_multi_speed_cmd_t;
03877 
03881 typedef struct player_actarray_home_cmd
03882 {
03884   int32_t joint;
03885 } player_actarray_home_cmd_t;
03886 
03890 typedef struct player_actarray_current_cmd
03891 {
03893   int32_t joint;
03895   float current;
03896 } player_actarray_current_cmd_t;
03897 
03901 typedef struct player_actarray_multi_current_cmd
03902 {
03904   uint32_t currents_count;
03906   float *currents;
03907 } player_actarray_multi_current_cmd_t;
03908 
03909 
03910 
03911 
03918 typedef struct player_actarray_power_config
03919 {
03921   uint8_t value;
03922 } player_actarray_power_config_t;
03923 
03928 typedef struct player_actarray_brakes_config
03929 {
03931   uint8_t value;
03932 } player_actarray_brakes_config_t;
03933 
03938 typedef struct player_actarray_speed_config
03939 {
03941   int32_t joint;
03943   float speed;
03944 } player_actarray_speed_config_t;
03945 
03946 
03951 typedef struct player_actarray_accel_config
03952 {
03954   int32_t joint;
03956   float accel;
03957 } player_actarray_accel_config_t;
03958 
03959 
03960 
03961  
03967 #define PLAYER_LIMB_CODE 54
03968 
03971 #define PLAYER_LIMB_STRING "limb" 
03972 
03973 // /////////////////////////////////////////////////////////////////////////////
03988 #define PLAYER_LIMB_STATE_IDLE        1
03989 
03990 #define PLAYER_LIMB_STATE_BRAKED      2
03991 
03992 #define PLAYER_LIMB_STATE_MOVING      3
03993 
03994 #define PLAYER_LIMB_STATE_OOR         4
03995 
03996 #define PLAYER_LIMB_STATE_COLL        5
03997 
03999 #define PLAYER_LIMB_DATA_STATE 1
04000 
04004 #define PLAYER_LIMB_CMD_HOME 1
04005 
04009 #define PLAYER_LIMB_CMD_STOP 2
04010 
04012 #define PLAYER_LIMB_CMD_SETPOSE 3
04013 
04015 #define PLAYER_LIMB_CMD_SETPOSITION 4
04016 
04018 #define PLAYER_LIMB_CMD_VECMOVE 5
04019 
04021 #define PLAYER_LIMB_REQ_POWER 1
04022 
04024 #define PLAYER_LIMB_REQ_BRAKES 2
04025 
04027 #define PLAYER_LIMB_REQ_GEOM 3
04028 
04030 #define PLAYER_LIMB_REQ_SPEED 4
04031 
04032 
04033 
04037 typedef struct player_limb_data
04038 {
04040   player_point_3d_t position;
04042   player_point_3d_t approach;
04046   player_point_3d_t orientation;
04048   uint8_t state;
04049 } player_limb_data_t;
04050 
04051 
04056 typedef struct player_limb_setpose_cmd
04057 {
04059   player_point_3d_t position;
04061   player_point_3d_t approach;
04063   player_point_3d_t orientation;
04064 } player_limb_setpose_cmd_t;
04065 
04070 typedef struct player_limb_setposition_cmd
04071 {
04073   player_point_3d_t position;
04074 } player_limb_setposition_cmd_t;
04075 
04080 typedef struct player_limb_vecmove_cmd
04081 {
04083   player_point_3d_t direction;
04085   float length;
04086 } player_limb_vecmove_cmd_t;
04087 
04093 typedef struct player_limb_power_req
04094 {
04096   uint8_t value;
04097 } player_limb_power_req_t;
04098 
04103 typedef struct player_limb_brakes_req
04104 {
04106   uint8_t value;
04107 } player_limb_brakes_req_t;
04108 
04112 typedef struct player_limb_geom_req
04113 {
04115   player_point_3d_t basePos;
04116 } player_limb_geom_req_t;
04117 
04122 typedef struct player_limb_speed_req
04123 {
04125   float speed;
04126 } player_limb_speed_req_t;
04127 
04128 
04129  
04135 #define PLAYER_GRAPHICS2D_CODE 55
04136 
04139 #define PLAYER_GRAPHICS2D_STRING "graphics2d" 
04140 
04141 // /////////////////////////////////////////////////////////////////////////////
04159 #define PLAYER_GRAPHICS2D_CMD_CLEAR 1
04160 
04162 #define PLAYER_GRAPHICS2D_CMD_POINTS 2
04163 
04165 #define PLAYER_GRAPHICS2D_CMD_POLYLINE 3
04166 
04168 #define PLAYER_GRAPHICS2D_CMD_POLYGON 4
04169 
04170 
04171 
04179 typedef struct player_graphics2d_cmd_points
04180 {
04182   uint32_t points_count;
04184   player_point_2d_t *points;
04186   player_color_t color;
04187 } player_graphics2d_cmd_points_t;
04188 
04192 typedef struct player_graphics2d_cmd_polyline
04193 {
04195   uint32_t points_count;
04197   player_point_2d_t *points;
04199   player_color_t color;
04200 } player_graphics2d_cmd_polyline_t;
04201 
04205 typedef struct player_graphics2d_cmd_polygon
04206 {
04208   uint32_t points_count;
04210   player_point_2d_t *points;
04212   player_color_t color;
04214   player_color_t fill_color;
04216   uint8_t filled;
04217 } player_graphics2d_cmd_polygon_t;
04218 
04219  
04225 #define PLAYER_RFID_CODE 56
04226 
04229 #define PLAYER_RFID_STRING "rfid" 
04230 
04231 // /////////////////////////////////////////////////////////////////////////////
04247 #define PLAYER_RFID_DATA_TAGS 1
04248 
04250 #define PLAYER_RFID_REQ_POWER 1
04251 
04253 #define PLAYER_RFID_REQ_READTAG 2
04254 
04256 #define PLAYER_RFID_REQ_WRITETAG 3
04257 
04259 #define PLAYER_RFID_REQ_LOCKTAG 4
04260 
04261 
04262 
04263 
04265 typedef struct player_rfid_tag
04266 {
04268   uint32_t type;
04270   uint32_t guid_count;
04272   char *guid;
04273 } player_rfid_tag_t;
04274 
04278 typedef struct player_rfid_data
04279 {
04281   uint32_t tags_count;
04283   player_rfid_tag_t *tags;
04284 } player_rfid_data_t;
04285 
04286  
04292 #define PLAYER_WSN_CODE 57
04293 
04296 #define PLAYER_WSN_STRING "wsn" 
04297 
04298 // /////////////////////////////////////////////////////////////////////////////
04318 #define PLAYER_WSN_DATA_STATE 1
04319 
04321 #define PLAYER_WSN_CMD_DEVSTATE 1
04322 
04324 #define PLAYER_WSN_REQ_POWER 1
04325 
04327 #define PLAYER_WSN_REQ_DATATYPE 2
04328 
04330 #define PLAYER_WSN_REQ_DATAFREQ 3
04331 
04332 
04333 
04335 typedef struct player_wsn_node_data
04336 {
04338   float light;
04340   float mic;
04342   float accel_x;
04344   float accel_y;
04346   float accel_z;
04348   float magn_x;
04350   float magn_y;
04352   float magn_z;
04354   float temperature;
04356   float battery;
04357 } player_wsn_node_data_t;
04358 
04362 typedef struct player_wsn_data
04363 {
04365   uint32_t node_type;
04367   uint32_t node_id;
04369   uint32_t node_parent_id;
04371   player_wsn_node_data_t data_packet;
04372 } player_wsn_data_t;
04373 
04377 typedef struct player_wsn_cmd
04378 {
04380   int32_t node_id;
04382   int32_t group_id;
04384   uint32_t device;
04386   uint8_t enable;
04387 } player_wsn_cmd_t;
04388 
04393 typedef struct player_wsn_power_config
04394 {
04396   int32_t node_id;
04398   int32_t group_id;
04400   uint8_t value;
04401 } player_wsn_power_config_t;
04402 
04408 typedef struct player_wsn_datatype_config
04409 {
04411   uint8_t value;
04412 } player_wsn_datatype_config_t;
04413 
04419 typedef struct player_wsn_datafreq_config
04420 {
04422   int32_t node_id;
04424   int32_t group_id;
04426   double  frequency;
04427 } player_wsn_datafreq_config_t;
04428 
04429  
04435 #define PLAYER_GRAPHICS3D_CODE 58
04436 
04439 #define PLAYER_GRAPHICS3D_STRING "graphics3d" 
04440 
04441 // /////////////////////////////////////////////////////////////////////////////
04463 #define PLAYER_GRAPHICS3D_CMD_CLEAR 1
04464 
04466 #define PLAYER_GRAPHICS3D_CMD_DRAW 2
04467 
04469 #define PLAYER_GRAPHICS3D_CMD_TRANSLATE 3
04470 
04472 #define PLAYER_GRAPHICS3D_CMD_ROTATE 4
04473 
04475 #define PLAYER_GRAPHICS3D_CMD_PUSH 5
04476 
04478 #define PLAYER_GRAPHICS3D_CMD_POP 6
04479 
04480 
04481 
04483 typedef enum player_graphics3d_draw_mode
04484 {
04485   PLAYER_DRAW_POINTS,
04486   PLAYER_DRAW_LINES,
04487   PLAYER_DRAW_LINE_STRIP,
04488   PLAYER_DRAW_LINE_LOOP,
04489   PLAYER_DRAW_TRIANGLES,
04490   PLAYER_DRAW_TRIANGLE_STRIP,
04491   PLAYER_DRAW_TRIANGLE_FAN,
04492   PLAYER_DRAW_QUADS,
04493   PLAYER_DRAW_QUAD_STRIP,
04494   PLAYER_DRAW_POLYGON
04495 } player_graphics3d_draw_mode_t;
04496 
04497 
04505 typedef struct player_graphics3d_cmd_draw
04506 {
04508   uint32_t draw_mode;
04510   uint32_t points_count;
04512   player_point_3d_t *points;
04514   player_color_t color;
04515 
04516 } player_graphics3d_cmd_draw_t;
04517 
04521 typedef struct player_graphics3d_cmd_translate
04522 {
04523   double x; 
04524   double y; 
04525   double z; 
04526 } player_graphics3d_cmd_translate_t;
04527 
04531 typedef struct player_graphics3d_cmd_rotate
04532 {
04533   double a; 
04534   double x; 
04535   double y; 
04536   double z; 
04537 } player_graphics3d_cmd_rotate_t;
04538 
04539 
04540  
04546 #define PLAYER_HEALTH_CODE 59
04547 
04550 #define PLAYER_HEALTH_STRING "health" 
04551 
04552 // /////////////////////////////////////////////////////////////////////////////
04568 #define PLAYER_HEALTH_DATA_STATE 1
04569 
04570 
04572 typedef struct player_health_cpu
04573 {
04575     float idle;
04577     float system;
04579     float user;
04580 } player_health_cpu_t;
04581 
04583 typedef struct player_health_memory
04584 {
04586     int64_t total;
04588     int64_t used;
04590     int64_t free;
04591 } player_health_memory_t;
04594 typedef struct player_health_data
04595 {
04597     player_health_cpu_t cpu_usage;
04599     player_health_memory_t mem;
04601     player_health_memory_t swap;
04602 
04603 } player_health_data_t;
04604 
04605  
04611 #define PLAYER_IMU_CODE 60
04612 
04615 #define PLAYER_IMU_STRING "imu" 
04616 
04617 // /////////////////////////////////////////////////////////////////////////////
04633 #define PLAYER_IMU_DATA_STATE 1
04634 
04636 #define PLAYER_IMU_DATA_CALIB 2
04637 
04639 #define PLAYER_IMU_DATA_QUAT 3
04640 
04642 #define PLAYER_IMU_DATA_EULER 4
04643 
04645 #define PLAYER_IMU_DATA_FULLSTATE 5
04646 
04648 #define PLAYER_IMU_REQ_SET_DATATYPE 1
04649 
04651 #define PLAYER_IMU_REQ_RESET_ORIENTATION 2
04652 
04653 
04654 
04655 
04660 typedef struct player_imu_data_state
04661 {
04663     player_pose3d_t pose;
04664 } player_imu_data_state_t;
04665 
04670 typedef struct player_imu_data_calib
04671 {
04673     float accel_x;
04675     float accel_y;
04677     float accel_z;
04679     float gyro_x;
04681     float gyro_y;
04683     float gyro_z;
04685     float magn_x;
04687     float magn_y;
04689     float magn_z;
04690 } player_imu_data_calib_t;
04691 
04696 typedef struct player_imu_data_quat
04697 {
04699     player_imu_data_calib_t calib_data;
04700 
04702     float q0;
04703     float q1;
04704     float q2;
04705     float q3;
04706 } player_imu_data_quat_t;
04707 
04712 typedef struct player_imu_data_euler
04713 {
04715     player_imu_data_calib_t calib_data;
04716 
04718     player_orientation_3d_t orientation;
04719 } player_imu_data_euler_t;
04720 
04721 
04726 typedef struct player_imu_data_fullstate
04727 {
04729     player_pose3d_t pose;
04731     player_pose3d_t vel;
04733     player_pose3d_t acc;
04734 } player_imu_data_fullstate_t;
04735 
04736 
04737 
04738 
04745 typedef struct player_imu_datatype_config
04746 {
04750     uint8_t value;
04751 } player_imu_datatype_config_t;
04752 
04757 typedef struct player_imu_reset_orientation_config
04758 {
04760   uint32_t value;
04761 } player_imu_reset_orientation_config_t;
04762 
04763  
04769 #define PLAYER_POINTCLOUD3D_CODE 61
04770 
04773 #define PLAYER_POINTCLOUD3D_STRING "pointcloud3d" 
04774 
04775 // /////////////////////////////////////////////////////////////////////////////
04791 #define PLAYER_POINTCLOUD3D_DATA_STATE 1
04792 
04793 
04794 
04798 typedef struct player_pointcloud3d_element
04799 {
04800   player_point_3d_t point;
04801   player_color_t color;
04811 } player_pointcloud3d_element_t;
04812 
04816 typedef struct player_pointcloud3d_data
04817 {
04818   uint32_t points_count;
04819   player_pointcloud3d_element_t *points;
04820 } player_pointcloud3d_data_t;
04821 
04822 
04823  
04829 #define PLAYER_RANGER_CODE 62
04830 
04833 #define PLAYER_RANGER_STRING "ranger" 
04834 
04835 // /////////////////////////////////////////////////////////////////////////////
04886 #define PLAYER_RANGER_DATA_RANGE 1
04887 
04889 #define PLAYER_RANGER_DATA_RANGESTAMPED 2
04890 
04892 #define PLAYER_RANGER_DATA_INTNS 3
04893 
04895 #define PLAYER_RANGER_DATA_INTNSSTAMPED 4
04896 
04898 #define PLAYER_RANGER_DATA_GEOM 5
04899 
04901 #define PLAYER_RANGER_REQ_GET_GEOM 1
04902 
04904 #define PLAYER_RANGER_REQ_POWER 2
04905 
04907 #define PLAYER_RANGER_REQ_INTNS 3
04908 
04910 #define PLAYER_RANGER_REQ_SET_CONFIG 4
04911 
04913 #define PLAYER_RANGER_REQ_GET_CONFIG 5
04914 
04915 
04916 
04920 typedef struct player_ranger_config
04921 {
04923   double min_angle;
04925   double max_angle;
04927   double angular_res;
04930   double min_range;
04932   double max_range;
04934   double range_res;
04936   double frequency;
04937 } player_ranger_config_t;
04938 
04942 typedef struct player_ranger_geom
04943 {
04945   player_pose3d_t pose;
04947   player_bbox3d_t size;
04949   uint32_t element_poses_count;
04951   player_pose3d_t *element_poses;
04953   uint32_t element_sizes_count;
04955   player_bbox3d_t *element_sizes;
04956 } player_ranger_geom_t;
04957 
04961 typedef struct player_ranger_data_range
04962 {
04964   uint32_t ranges_count;
04966   double *ranges;
04967 } player_ranger_data_range_t;
04968 
04973 typedef struct player_ranger_data_rangestamped
04974 {
04976   player_ranger_data_range_t data;
04978   uint8_t have_geom;
04980   player_ranger_geom_t geom;
04982   uint8_t have_config;
04984   player_ranger_config_t config;
04985 } player_ranger_data_rangestamped_t;
04986 
04990 typedef struct player_ranger_data_intns
04991 {
04993   uint32_t intensities_count;
04995   double *intensities;
04996 } player_ranger_data_intns_t;
04997 
05002 typedef struct player_ranger_data_intnsstamped
05003 {
05005   player_ranger_data_intns_t data;
05007   uint8_t have_geom;
05009   player_ranger_geom_t geom;
05011   uint8_t have_config;
05013   player_ranger_config_t config;
05014 } player_ranger_data_intnsstamped_t;
05015 
05019 typedef struct player_ranger_power_config
05020 {
05022   uint8_t state;
05023 } player_ranger_power_config_t;
05024 
05031 typedef struct player_ranger_intns_config
05032 {
05034   uint8_t state;
05035 } player_ranger_intns_config_t;
05036 
05037 
05038  
05044 #define PLAYER_VECTORMAP_CODE 63
05045 
05048 #define PLAYER_VECTORMAP_STRING "vectormap" 
05049 
05050 // /////////////////////////////////////////////////////////////////////////////
05063 
05074 #define PLAYER_VECTORMAP_REQ_GET_MAP_INFO 1
05075 
05077 #define PLAYER_VECTORMAP_REQ_GET_LAYER_DATA 3
05078 
05080 #define PLAYER_VECTORMAP_REQ_WRITE_LAYER 4
05081 
05082 
05083 
05085 typedef struct player_vectormap_feature_data
05086 {
05088   uint32_t name_count;
05090   char* name;
05092   uint32_t wkb_count;
05094   uint8_t* wkb;
05095 
05097   uint32_t attrib_count;
05099   char* attrib;
05100 } player_vectormap_feature_data_t;
05101 
05102 typedef struct player_vectormap_layer_info
05103 {
05105   uint32_t name_count;
05107   char* name;
05109   player_extent2d_t extent;
05110 } player_vectormap_layer_info_t;
05111 
05113 typedef struct player_vectormap_layer_data
05114 {
05116   uint32_t name_count;
05118   char* name;
05120   uint32_t features_count;
05122   player_vectormap_feature_data_t* features;
05123 } player_vectormap_layer_data_t;
05124 
05126 typedef struct player_vectormap_info
05127 {
05129   uint32_t srid;
05131   uint32_t layers_count;
05133   player_vectormap_layer_info_t* layers;
05135   player_extent2d_t extent;
05136 } player_vectormap_info_t;
05137 
05138 
05139  
05145 #define PLAYER_BLACKBOARD_CODE 64
05146 
05149 #define PLAYER_BLACKBOARD_STRING "blackboard" 
05150 
05151 // /////////////////////////////////////////////////////////////////////////////
05165 #define PLAYER_BLACKBOARD_REQ_SUBSCRIBE_TO_KEY 1
05166 
05168 #define PLAYER_BLACKBOARD_REQ_UNSUBSCRIBE_FROM_KEY 2
05169 
05171 #define PLAYER_BLACKBOARD_REQ_SET_ENTRY 3
05172 
05174 #define PLAYER_BLACKBOARD_REQ_SUBSCRIBE_TO_GROUP 4
05175 
05177 #define PLAYER_BLACKBOARD_REQ_UNSUBSCRIBE_FROM_GROUP 5
05178 
05180 #define PLAYER_BLACKBOARD_REQ_GET_ENTRY 6
05181 
05183 #define PLAYER_BLACKBOARD_DATA_UPDATE 1
05184 
05185 
05186 
05187 
05188  
05194 #define PLAYER_STEREO_CODE 65
05195 
05198 #define PLAYER_STEREO_STRING "stereo" 
05199 
05200 // /////////////////////////////////////////////////////////////////////////////
05218 #define PLAYER_STEREO_DATA_STATE 1
05219 
05220 
05221 typedef struct player_pointcloud3d_stereo_element
05222 {
05224   float px;
05226   float py;
05228   float pz;
05230   uint8_t red;
05232   uint8_t green;
05234   uint8_t blue;
05235 } player_pointcloud3d_stereo_element_t;
05236 
05238 typedef struct player_stereo_data
05239 {
05240   /* Left channel image */
05241   player_camera_data_t left_channel;
05242   /* Right channel image */
05243   player_camera_data_t right_channel;
05244 
05245   /* Disparity image */
05246   player_camera_data_t disparity;
05247   
05248   /* 3-D stereo point cloud */
05249   uint32_t points_count;
05250   player_pointcloud3d_stereo_element_t *points;
05251 
05252 
05253   /* Special mode flags: define what images are being sent */
05254   uint32_t mode;
05255 } player_stereo_data_t;
05256 
05257  
05260 /* END OF AUTOGENERATED CODE */

Last updated 25 May 2011 21:17:00