本文整理汇总了C++中CommData::SetClientID方法的典型用法代码示例。如果您正苦于以下问题:C++ CommData::SetClientID方法的具体用法?C++ CommData::SetClientID怎么用?C++ CommData::SetClientID使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CommData
的用法示例。
在下文中一共展示了CommData::SetClientID方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CreateEmptyPacket
void CommManager::CreateEmptyPacket(ByteBuffer& buffer)
{
CommData data;
data.SetClientID(m_clientid.c_str());
data.SetMsgID(MSGID_AVAILABLE_COMM);
data.Serialize(buffer);
}
示例2: HandleMessage
BOOL CommManager::HandleMessage( SOCKADDR_IN fromAddr, const LPBYTE pData, DWORD dwDataSize, COMM_NAME commName, CPGUID& cpguid )
{
ByteBuffer dataBuffer;
dataBuffer.Alloc(dwDataSize);
if (! XorFibonacciCrypt(pData, dwDataSize, (LPBYTE)dataBuffer, 2, 7))
{
return FALSE;
}
BOOL bRet = m_cp.AddRecvPacket(dataBuffer, dataBuffer.Size(), commName, &cpguid);
if (m_cp.HasReceivedMsg())
{
CPGUID from;
ByteBuffer recvMsgData;
if (m_cp.RecvMsg(recvMsgData, from))
{
//解析数据
CommData recvCommdata;
if (recvCommdata.Parse(recvMsgData, recvMsgData.Size()))
{
debugLog(_T("recv msg msgid[%I64u] serial[%I64u]"), recvCommdata.GetMsgID(), recvCommdata.GetSerialID());
tstring clientid;
CutupProtocol::CPGuid2Str(from, clientid);
recvCommdata.SetClientID(clientid.c_str());
SetMessageToAnswer(recvCommdata);
HandleMsgByMsgHandler(recvCommdata.GetMsgID(), recvCommdata);
}
else
{
errorLog(_T("parse message failed"));
}
}
}
if (bRet)
{
//更新心跳数据
tstring clientid;
CutupProtocol::CPGuid2Str(cpguid, clientid);
UpdateHeartbeat(clientid.c_str(), fromAddr);
}
return bRet;
}
示例3: PushMsgToMaster
BOOL CommManager::PushMsgToMaster( COMM_NAME commName, CommData& data )
{
BOOL ret = FALSE;
if (NULL == m_commList[commName]) return FALSE;
//将消息序列化为byteData
ByteBuffer byteData;
data.SetClientID(m_clientid.c_str());
data.Serialize(byteData);
m_cspd.Enter();
m_pd.push_back(byteData);
m_cspd.Leave();
return ret;
}