summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormbennice <mbennice@google.com>2019-05-07 11:18:11 -0700
committermbennice <mbennice@google.com>2019-05-07 11:18:11 -0700
commit1d2a1c093d406a0f2ba61d66824829dfbddaa607 (patch)
tree80e9a25b55a8378b5fa396ef1a2eff36e1b92b82
parentcf16c5c51fc1387b131a605ff18ae98200d7644a (diff)
downloadbullet3-1d2a1c093d406a0f2ba61d66824829dfbddaa607.tar.gz
Update GRPC conversion of SDF and State Update
-rw-r--r--examples/SharedMemory/grpc/ConvertGRPCBullet.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/examples/SharedMemory/grpc/ConvertGRPCBullet.cpp b/examples/SharedMemory/grpc/ConvertGRPCBullet.cpp
index f23ce858f..2596a3465 100644
--- a/examples/SharedMemory/grpc/ConvertGRPCBullet.cpp
+++ b/examples/SharedMemory/grpc/ConvertGRPCBullet.cpp
@@ -1413,6 +1413,22 @@ bool convertGRPCToStatus(const PyBulletStatus& grpcReply, SharedMemoryStatus& se
break;
}
+ case CMD_SDF_LOADING_COMPLETED:
+ {
+ converted = true;
+ const ::pybullet_grpc::SdfLoadedStatus* stat = &grpcReply.sdfstatus();
+ int numBodies = stat->bodyuniqueids_size();
+ if (numBodies > MAX_SDF_BODIES)
+ {
+ printf("SDF exceeds body capacity: %d > %d", numBodies, MAX_SDF_BODIES);
+ }
+ serverStatus.m_sdfLoadedArgs.m_numBodies = numBodies;
+ for (int i = 0; i < numBodies; i++)
+ {
+ serverStatus.m_sdfLoadedArgs.m_bodyUniqueIds[i] = stat->bodyuniqueids(i);
+ }
+ break;
+ }
case CMD_DESIRED_STATE_RECEIVED_COMPLETED:
{
converted = true;
@@ -1681,7 +1697,10 @@ bool convertStatusToGRPC(const SharedMemoryStatus& serverStatus, char* bufferSer
case CMD_ACTUAL_STATE_UPDATE_COMPLETED:
{
converted = true;
- b3SharedMemoryStatusHandle statusHandle = (b3SharedMemoryStatusHandle)&serverStatus;
+ SharedMemoryStatus* status = (SharedMemoryStatus*)&serverStatus;
+ status->m_sendActualStateArgs.m_stateDetails = (SendActualStateSharedMemoryStorage*)bufferServerToClient;
+ b3SharedMemoryStatusHandle statusHandle = (b3SharedMemoryStatusHandle)status;
+
int bodyUniqueId;
int numLinks;