From e71f21b7bf0efc10142b2b8780b5290f8182d2c7 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 16 Apr 2013 11:59:03 -0700 Subject: [PATCH] fix broken builds from last commit, pull new avatar data in VoxelAgentData --- avatar-mixer/src/main.cpp | 4 ++-- interface/src/Audio.cpp | 2 +- interface/src/Head.cpp | 2 +- interface/src/Head.h | 2 +- libraries/shared/src/AgentList.cpp | 4 ++-- voxel-server/src/VoxelAgentData.cpp | 9 +++++---- 6 files changed, 12 insertions(+), 11 deletions(-) diff --git a/avatar-mixer/src/main.cpp b/avatar-mixer/src/main.cpp index b92cff6783..e674156151 100644 --- a/avatar-mixer/src/main.cpp +++ b/avatar-mixer/src/main.cpp @@ -63,7 +63,7 @@ int main(int argc, char* argv[]) agentList->startPingUnknownAgentsThread(); sockaddr *agentAddress = new sockaddr; - char *packetData = new char[MAX_PACKET_SIZE]; + unsigned char *packetData = new unsigned char[MAX_PACKET_SIZE]; ssize_t receivedBytes = 0; unsigned char *broadcastPacket = new unsigned char[MAX_PACKET_SIZE]; @@ -101,7 +101,7 @@ int main(int argc, char* argv[]) break; default: // hand this off to the AgentList - agentList->processAgentData(agentAddress, (void *)packetData, receivedBytes); + agentList->processAgentData(agentAddress, packetData, receivedBytes); break; } } diff --git a/interface/src/Audio.cpp b/interface/src/Audio.cpp index 4300418856..578e1368c8 100644 --- a/interface/src/Audio.cpp +++ b/interface/src/Audio.cpp @@ -411,7 +411,7 @@ void *receiveAudioViaUDP(void *args) { } if (packetsReceivedThisPlayback == 1) gettimeofday(&firstPlaybackTimer, NULL); - ringBuffer->parseData(receivedData, PACKET_LENGTH_BYTES); + ringBuffer->parseData((unsigned char *)receivedData, PACKET_LENGTH_BYTES); previousReceiveTime = currentReceiveTime; } diff --git a/interface/src/Head.cpp b/interface/src/Head.cpp index 4589636f77..06ebdad0f3 100644 --- a/interface/src/Head.cpp +++ b/interface/src/Head.cpp @@ -1174,7 +1174,7 @@ void Head::SetNewHeadTarget(float pitch, float yaw) { YawTarget = yaw; } -void Head::processTransmitterData(unsigned char *packetData, int numBytes) { +void Head::processTransmitterData(unsigned char* packetData, int numBytes) { // Read a packet from a transmitter app, process the data float accX, accY, accZ, graX, graY, graZ, diff --git a/interface/src/Head.h b/interface/src/Head.h index ad4f1f665f..3d34b2defa 100644 --- a/interface/src/Head.h +++ b/interface/src/Head.h @@ -139,7 +139,7 @@ class Head : public AvatarData { void renderBody(); void renderHead( int faceToFace, int isMine ); - void renderOrientataionDirections( glm::vec3 position, Orientation orientation, float size ); + void renderOrientationDirections( glm::vec3 position, Orientation orientation, float size ); void simulate(float); diff --git a/libraries/shared/src/AgentList.cpp b/libraries/shared/src/AgentList.cpp index 092ce6de3f..0dfcad1c58 100644 --- a/libraries/shared/src/AgentList.cpp +++ b/libraries/shared/src/AgentList.cpp @@ -81,10 +81,10 @@ unsigned int AgentList::getSocketListenPort() { return socketListenPort; } -void AgentList::processAgentData(sockaddr *senderAddress, void *packetData, size_t dataBytes) { +void AgentList::processAgentData(sockaddr *senderAddress, unsigned char *packetData, size_t dataBytes) { switch (((char *)packetData)[0]) { case PACKET_HEADER_DOMAIN: { - updateList((unsigned char *)packetData, dataBytes); + updateList(packetData, dataBytes); break; } case PACKET_HEADER_PING: { diff --git a/voxel-server/src/VoxelAgentData.cpp b/voxel-server/src/VoxelAgentData.cpp index e54ce0df89..8f9b41e4ca 100644 --- a/voxel-server/src/VoxelAgentData.cpp +++ b/voxel-server/src/VoxelAgentData.cpp @@ -27,9 +27,10 @@ VoxelAgentData* VoxelAgentData::clone() const { return new VoxelAgentData(*this); } -void VoxelAgentData::parseData(void *data, int size) { +void VoxelAgentData::parseData(unsigned char* sourceBuffer, int numBytes) { + // push past the packet header + sourceBuffer++; + // pull the position from the interface agent data packet - sscanf((char *)data, - "H%*f,%*f,%*f,%f,%f,%f", - &position[0], &position[1], &position[2]); + memcpy(&position, sourceBuffer, sizeof(float) * 3); }