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
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit