Network - Id on client and == operator.

This commit is contained in:
Pontus Fransson 2013-12-12 15:33:11 +01:00
parent 94651ec77a
commit 092f83a084
2 changed files with 15 additions and 2 deletions

View File

@ -52,9 +52,15 @@ struct NetworkClient::PrivateData : public IThreadObject
std::mutex postBoxMutex;
Translator translator;
//ID
static unsigned int currID;
const unsigned int ID;
};
NetworkClient::PrivateData::PrivateData()
unsigned int NetworkClient::PrivateData::currID = 0;
NetworkClient::PrivateData::PrivateData() : ID(currID++)
{
InitWinSock();
@ -67,7 +73,7 @@ NetworkClient::PrivateData::PrivateData()
Start();
}
NetworkClient::PrivateData::PrivateData(unsigned int socket)
NetworkClient::PrivateData::PrivateData(unsigned int socket) : ID(currID++)
{
InitWinSock();
@ -260,3 +266,8 @@ void NetworkClient::SetRecieverObject(RecieverObject recvObj, NetworkProtocolCal
privateData->callbackType = type;
privateData->recvObjMutex.unlock();
}
bool NetworkClient::operator ==(const NetworkClient& obj)
{
return (this->privateData->ID == obj.privateData->ID);
}

View File

@ -41,6 +41,8 @@ namespace Oyster
void SetRecieverObject(RecieverObject recvObj, NetworkProtocolCallbackType type);
bool operator ==(const NetworkClient& obj);
private:
struct PrivateData;
PrivateData* privateData;