Revision: 8487 http://playerstage.svn.sourceforge.net/playerstage/?rev=8487&view=rev Author: thjc Date: 2010-01-10 15:41:33 +0000 (Sun, 10 Jan 2010)
Log Message: ----------- applied patch 2923028: requests on roomba opaque commands Modified Paths: -------------- code/player/trunk/server/drivers/mixed/irobot/roomba/roomba_driver.cc Modified: code/player/trunk/server/drivers/mixed/irobot/roomba/roomba_driver.cc =================================================================== --- code/player/trunk/server/drivers/mixed/irobot/roomba/roomba_driver.cc 2010-01-10 15:24:26 UTC (rev 8486) +++ code/player/trunk/server/drivers/mixed/irobot/roomba/roomba_driver.cc 2010-01-10 15:41:33 UTC (rev 8487) @@ -333,7 +333,7 @@ this->Publish(this->position_addr, PLAYER_MSGTYPE_DATA, PLAYER_POSITION2D_DATA_STATE, - (void*)&posdata, sizeof(posdata), NULL); + reinterpret_cast<void *>(&posdata), sizeof posdata, NULL); //////////////////////////// // Update power data @@ -355,7 +355,7 @@ this->Publish(this->power_addr, PLAYER_MSGTYPE_DATA, PLAYER_POWER_DATA_STATE, - (void*)&powerdata, sizeof(powerdata), NULL); + reinterpret_cast<void *>(&powerdata), sizeof powerdata, NULL); //////////////////////////// // Update bumper data @@ -374,7 +374,7 @@ this->Publish(this->bumper_addr, PLAYER_MSGTYPE_DATA, PLAYER_BUMPER_DATA_STATE, - (void*)&bumperdata); + reinterpret_cast<void *>(&bumperdata)); delete [] bumperdata.bumpers; } @@ -404,7 +404,7 @@ this->Publish(this->ir_addr, PLAYER_MSGTYPE_DATA, PLAYER_IR_DATA_RANGES, - (void*)&irdata); + reinterpret_cast<void *>(&irdata)); delete [] irdata.ranges; } @@ -421,7 +421,7 @@ this->Publish(this->gripper_addr, PLAYER_MSGTYPE_DATA, PLAYER_GRIPPER_DATA_STATE, - (void*) &gripperdata, sizeof(gripperdata), NULL); + reinterpret_cast<void *>(&gripperdata), sizeof gripperdata, NULL); //////////////////////////// // Update Opaque-Control data @@ -443,7 +443,7 @@ this->Publish(this->opaque_addr, PLAYER_MSGTYPE_DATA,PLAYER_OPAQUE_DATA_STATE, - (void*)&cpdata); + reinterpret_cast<void *>(&cpdata)); delete [] cpdata.data; } @@ -509,7 +509,7 @@ this->Publish(this->position_addr, resp_queue, PLAYER_MSGTYPE_RESP_ACK, PLAYER_POSITION2D_REQ_GET_GEOM, - (void*)&pos_geom, sizeof pos_geom, NULL); + reinterpret_cast<void *>(&pos_geom), sizeof pos_geom, NULL); return 0; } else if(Message::MatchMessage(hdr,PLAYER_MSGTYPE_REQ, @@ -541,7 +541,7 @@ this->Publish(this->bumper_addr, resp_queue, PLAYER_MSGTYPE_RESP_ACK, PLAYER_BUMPER_REQ_GET_GEOM, - (void*)&bump_geom); + reinterpret_cast<void *>(&bump_geom)); delete []bump_geom.bumper_def; bump_geom.bumper_def = NULL; @@ -572,14 +572,18 @@ this->Publish(this->ir_addr, resp_queue, PLAYER_MSGTYPE_RESP_ACK, PLAYER_IR_REQ_POSE, - (void*)&poses); + reinterpret_cast<void *>(&poses)); delete []poses.poses; poses.poses = NULL; return 0; } - else if(Message::MatchMessage(hdr,PLAYER_MSGTYPE_CMD, - PLAYER_OPAQUE_CMD, - this->opaque_addr)) + else if ((Message::MatchMessage(hdr,PLAYER_MSGTYPE_CMD, + PLAYER_OPAQUE_CMD, + this->opaque_addr)) + || + (Message::MatchMessage(hdr,PLAYER_MSGTYPE_REQ, + PLAYER_OPAQUE_REQ, + this->opaque_addr))) { if (!data) { @@ -650,7 +654,15 @@ return -1; } } - + if (Message::MatchMessage(hdr,PLAYER_MSGTYPE_REQ, + PLAYER_OPAQUE_REQ, + this->opaque_addr)) + { + this->Publish(this->opaque_addr, resp_queue, + PLAYER_MSGTYPE_RESP_ACK, + PLAYER_OPAQUE_REQ, + reinterpret_cast<void *>(&opaque_data)); + } return 0; } else if (Message::MatchMessage(hdr, PLAYER_MSGTYPE_CMD, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ Playerstage-commit mailing list Playerstage-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/playerstage-commit