From 95971b830326026ee02aa878922a9cf3649473fe Mon Sep 17 00:00:00 2001 From: Stephen Birarda <commit@birarda.com> Date: Fri, 7 Jun 2013 14:12:42 -0700 Subject: [PATCH] rename AGENT_TYPE_VOXEL and PACKET_HEADER_DOMAIN_RFD --- animation-server/src/main.cpp | 14 +++++++------- domain-server/src/main.cpp | 6 +++--- libraries/shared/src/Agent.cpp | 6 +++--- libraries/shared/src/AgentList.cpp | 20 ++++++++------------ libraries/shared/src/AgentList.h | 11 +++++++---- libraries/shared/src/AgentTypes.h | 6 ++---- libraries/shared/src/PacketHeaders.h | 2 +- 7 files changed, 31 insertions(+), 34 deletions(-) diff --git a/animation-server/src/main.cpp b/animation-server/src/main.cpp index c29521ec7d..9878d2e6a4 100644 --- a/animation-server/src/main.cpp +++ b/animation-server/src/main.cpp @@ -59,7 +59,7 @@ static void sendVoxelEditMessage(PACKET_HEADER header, VoxelDetail& detail) { printf("sending packet of size=%d\n",sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } } @@ -168,7 +168,7 @@ static void renderMovingBug() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n", sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } @@ -238,7 +238,7 @@ static void renderMovingBug() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n", sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } } @@ -345,7 +345,7 @@ static void sendBlinkingStringOfLights() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n",sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } @@ -387,7 +387,7 @@ static void sendBlinkingStringOfLights() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n",sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } } @@ -510,7 +510,7 @@ void sendDanceFloor() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n", sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } } @@ -607,7 +607,7 @@ static void sendBillboard() { if (::shouldShowPacketsPerSecond) { printf("sending packet of size=%d\n", sizeOut); } - AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL, 1); + AgentList::getInstance()->broadcastToAgents(bufferOut, sizeOut, &AGENT_TYPE_VOXEL_SERVER, 1); delete[] bufferOut; } } diff --git a/domain-server/src/main.cpp b/domain-server/src/main.cpp index 968057623f..b38ae5b824 100644 --- a/domain-server/src/main.cpp +++ b/domain-server/src/main.cpp @@ -98,7 +98,7 @@ int main(int argc, const char * argv[]) while (true) { if (agentList->getAgentSocket()->receive((sockaddr *)&agentPublicAddress, packetData, &receivedBytes) && - (packetData[0] == PACKET_HEADER_DOMAIN_RFD || packetData[0] == PACKET_HEADER_DOMAIN_LIST_REQUEST)) { + (packetData[0] == PACKET_HEADER_DOMAIN_REPORT_FOR_DUTY || packetData[0] == PACKET_HEADER_DOMAIN_LIST_REQUEST)) { std::map<char, Agent *> newestSoloAgents; agentType = packetData[1]; @@ -153,10 +153,10 @@ int main(int argc, const char * argv[]) // grab the ID for this agent so we can send it back with the packet packetAgentID = agent->getAgentID(); - if (packetData[0] == PACKET_HEADER_DOMAIN_RFD + if (packetData[0] == PACKET_HEADER_DOMAIN_REPORT_FOR_DUTY && memchr(SOLO_AGENT_TYPES, agentType, sizeof(SOLO_AGENT_TYPES))) { agent->setWakeMicrostamp(timeNow); - } + } } } diff --git a/libraries/shared/src/Agent.cpp b/libraries/shared/src/Agent.cpp index 09fe6a1459..4556f670d6 100644 --- a/libraries/shared/src/Agent.cpp +++ b/libraries/shared/src/Agent.cpp @@ -62,7 +62,7 @@ Agent::~Agent() { // Names of Agent Types const char* AGENT_TYPE_NAME_DOMAIN = "Domain"; -const char* AGENT_TYPE_NAME_VOXEL = "Voxel Server"; +const char* AGENT_TYPE_NAME_VOXEL_SERVER = "Voxel Server"; const char* AGENT_TYPE_NAME_INTERFACE = "Client Interface"; const char* AGENT_TYPE_NAME_AUDIO_MIXER = "Audio Mixer"; const char* AGENT_TYPE_NAME_AVATAR_MIXER = "Avatar Mixer"; @@ -74,8 +74,8 @@ const char* Agent::getTypeName() const { switch (this->_type) { case AGENT_TYPE_DOMAIN: return AGENT_TYPE_NAME_DOMAIN; - case AGENT_TYPE_VOXEL: - return AGENT_TYPE_NAME_VOXEL; + case AGENT_TYPE_VOXEL_SERVER: + return AGENT_TYPE_NAME_VOXEL_SERVER; case AGENT_TYPE_AVATAR: return AGENT_TYPE_NAME_INTERFACE; case AGENT_TYPE_AUDIO_MIXER: diff --git a/libraries/shared/src/AgentList.cpp b/libraries/shared/src/AgentList.cpp index 51ef88794b..53aad60cd3 100644 --- a/libraries/shared/src/AgentList.cpp +++ b/libraries/shared/src/AgentList.cpp @@ -26,7 +26,7 @@ const char SOLO_AGENT_TYPES[3] = { AGENT_TYPE_AVATAR_MIXER, AGENT_TYPE_AUDIO_MIXER, - AGENT_TYPE_VOXEL + AGENT_TYPE_VOXEL_SERVER }; char DOMAIN_HOSTNAME[] = "highfidelity.below92.com"; @@ -60,9 +60,9 @@ AgentList* AgentList::getInstance() { AgentList::AgentList(char newOwnerType, unsigned int newSocketListenPort) : _agentBuckets(), _numAgents(0), - agentSocket(newSocketListenPort), + _agentSocket(newSocketListenPort), _ownerType(newOwnerType), - socketListenPort(newSocketListenPort), + _socketListenPort(newSocketListenPort), _ownerID(UNKNOWN_AGENT_ID), _lastAgentID(0) { pthread_mutex_init(&mutex, 0); @@ -77,10 +77,6 @@ AgentList::~AgentList() { pthread_mutex_destroy(&mutex); } -unsigned int AgentList::getSocketListenPort() { - return socketListenPort; -} - void AgentList::processAgentData(sockaddr *senderAddress, unsigned char *packetData, size_t dataBytes) { switch (((char *)packetData)[0]) { case PACKET_HEADER_DOMAIN: { @@ -88,7 +84,7 @@ void AgentList::processAgentData(sockaddr *senderAddress, unsigned char *packetD break; } case PACKET_HEADER_PING: { - agentSocket.send(senderAddress, &PACKET_HEADER_PING_REPLY, 1); + _agentSocket.send(senderAddress, &PACKET_HEADER_PING_REPLY, 1); break; } case PACKET_HEADER_PING_REPLY: { @@ -233,7 +229,7 @@ Agent* AgentList::addOrUpdateAgent(sockaddr* publicSocket, sockaddr* localSocket newAgent->activatePublicSocket(); } - if (newAgent->getType() == AGENT_TYPE_VOXEL || + if (newAgent->getType() == AGENT_TYPE_VOXEL_SERVER || newAgent->getType() == AGENT_TYPE_AVATAR_MIXER || newAgent->getType() == AGENT_TYPE_AUDIO_MIXER) { // this is currently the cheat we use to talk directly to our test servers on EC2 @@ -247,7 +243,7 @@ Agent* AgentList::addOrUpdateAgent(sockaddr* publicSocket, sockaddr* localSocket } else { if (agent->getType() == AGENT_TYPE_AUDIO_MIXER || - agent->getType() == AGENT_TYPE_VOXEL || + agent->getType() == AGENT_TYPE_VOXEL_SERVER || agent->getType() == AGENT_TYPE_ANIMATION_SERVER || agent->getType() == AGENT_TYPE_AUDIO_INJECTOR) { // until the Audio class also uses our agentList, we need to update @@ -281,7 +277,7 @@ void AgentList::broadcastToAgents(unsigned char *broadcastData, size_t dataBytes // only send to the AgentTypes we are asked to send to. if (agent->getActiveSocket() != NULL && memchr(agentTypes, agent->getType(), numAgentTypes)) { // we know which socket is good for this agent, send there - agentSocket.send(agent->getActiveSocket(), broadcastData, dataBytes); + _agentSocket.send(agent->getActiveSocket(), broadcastData, dataBytes); } } } @@ -362,7 +358,7 @@ void *removeSilentAgents(void *args) { for(AgentList::iterator agent = agentList->begin(); agent != agentList->end(); ++agent) { if ((checkTimeUSecs - agent->getLastHeardMicrostamp()) > AGENT_SILENCE_THRESHOLD_USECS - && agent->getType() != AGENT_TYPE_VOXEL) { + && agent->getType() != AGENT_TYPE_VOXEL_SERVER) { printLog("Killed "); Agent::printLog(*agent); diff --git a/libraries/shared/src/AgentList.h b/libraries/shared/src/AgentList.h index 3ac7cf1f8d..e5db88569c 100644 --- a/libraries/shared/src/AgentList.h +++ b/libraries/shared/src/AgentList.h @@ -24,6 +24,7 @@ const int AGENTS_PER_BUCKET = 100; const int MAX_PACKET_SIZE = 1500; const unsigned int AGENT_SOCKET_LISTEN_PORT = 40103; + const int AGENT_SILENCE_THRESHOLD_USECS = 2 * 1000000; extern const char SOLO_AGENT_TYPES[3]; @@ -49,8 +50,6 @@ public: int size() { return _numAgents; } - UDPSocket* getAgentSocket() { return &agentSocket; } - void lock() { pthread_mutex_lock(&mutex); } void unlock() { pthread_mutex_unlock(&mutex); } @@ -78,6 +77,10 @@ public: uint16_t getOwnerID() const { return _ownerID; } void setOwnerID(uint16_t ownerID) { _ownerID = ownerID; } + UDPSocket* getAgentSocket() { return &_agentSocket; } + + unsigned int getSocketListenPort() const { return _socketListenPort; }; + Agent* soloAgentOfType(char agentType); void startSilentAgentRemovalThread(); @@ -100,9 +103,9 @@ private: Agent** _agentBuckets[MAX_NUM_AGENTS / AGENTS_PER_BUCKET]; int _numAgents; - UDPSocket agentSocket; + UDPSocket _agentSocket; char _ownerType; - unsigned int socketListenPort; + unsigned int _socketListenPort; uint16_t _ownerID; uint16_t _lastAgentID; pthread_t removeSilentAgentsThread; diff --git a/libraries/shared/src/AgentTypes.h b/libraries/shared/src/AgentTypes.h index 4f3100fe03..8bc97b5ba3 100644 --- a/libraries/shared/src/AgentTypes.h +++ b/libraries/shared/src/AgentTypes.h @@ -3,11 +3,10 @@ // hifi // // Created by Brad Hefta-Gaub on 2013/04/09 -// +// Copyright (c) 2013 HighFidelity, Inc. All rights reserved. // // Single byte/character Agent Types used to identify various agents in the system. // For example, an agent whose is 'V' is always a voxel server. -// #ifndef hifi_AgentTypes_h #define hifi_AgentTypes_h @@ -17,9 +16,8 @@ // If you don't then it will make things harder on your co-developers in debugging because the Agent // class won't know the name and will report it as "Unknown". -// Agent Type Codes const char AGENT_TYPE_DOMAIN = 'D'; -const char AGENT_TYPE_VOXEL = 'V'; +const char AGENT_TYPE_VOXEL_SERVER = 'V'; const char AGENT_TYPE_AVATAR = 'I'; const char AGENT_TYPE_AUDIO_MIXER = 'M'; const char AGENT_TYPE_AVATAR_MIXER = 'W'; diff --git a/libraries/shared/src/PacketHeaders.h b/libraries/shared/src/PacketHeaders.h index f40c8abea7..89f6fbaf54 100644 --- a/libraries/shared/src/PacketHeaders.h +++ b/libraries/shared/src/PacketHeaders.h @@ -32,7 +32,7 @@ const PACKET_HEADER PACKET_HEADER_AVATAR_VOXEL_URL = 'U'; const PACKET_HEADER PACKET_HEADER_TRANSMITTER_DATA_V2 = 'T'; const PACKET_HEADER PACKET_HEADER_ENVIRONMENT_DATA = 'e'; const PACKET_HEADER PACKET_HEADER_DOMAIN_LIST_REQUEST = 'L'; -const PACKET_HEADER PACKET_HEADER_DOMAIN_RFD = 'C'; +const PACKET_HEADER PACKET_HEADER_DOMAIN_REPORT_FOR_DUTY = 'C'; // These are supported Z-Command