コード例 #1
0
void* MMsgRoutingCreateGroup::Pack(void)
{
	WTRACE("MMsgRoutingCreateGroup::Pack");

	SetServiceType(WONMsg::MiniRoutingServer);
	SetMessageType(WONMsg::RoutingCreateGroup);
	RoutingServerMessage::Pack();

	WDBG_LL("MMsgRoutingCreateGroup::Pack Appending message data");

	// append group name
	AppendGroupName(mGroupName);

	// append flags
	unsigned char aFlags = 0;
	if (mIsPublic)             aFlags |= 0x01;
	if (mAnnounceGroupChanges) aFlags |= 0x02;
	AppendByte(aFlags);

	// append client count
	_ASSERT(mClientList.size() <= USHRT_MAX);
	AppendShort(mClientList.size());

	// append client list
	std::list<unsigned short>::iterator itr = mClientList.begin();
	while (itr != mClientList.end())
		AppendClientId(*(itr++));

	return GetDataPtr();
}
コード例 #2
0
void* RoutingServerClientIdFlagMessage::Pack(void)
{
	WTRACE("RoutingServerClientIdFlagMessage::Pack");
	RoutingServerFlagMessage::Pack();

	WDBG_LL("RoutingServerClientIdFlagMessage::Pack Appending message data");

	AppendClientId(mClientId);

	return GetDataPtr();
}
コード例 #3
0
void* MMsgRoutingRemoveSuccessor::Pack(void)
{
	WTRACE("MMsgRoutingRemoveSuccessor::Pack");

	SetServiceType(WONMsg::MiniRoutingServer);
	SetMessageType(WONMsg::RoutingRemoveSuccessor);
	RoutingServerMessage::Pack();

	WDBG_LL("MMsgRoutingRemoveSuccessor::Pack Appending message data");

	AppendClientId(mClientId);

	return GetDataPtr();
}
コード例 #4
0
ファイル: MMsgRoutingPeerData.cpp プロジェクト: vgck/opendr2
void* MMsgRoutingPeerData::Pack(void)
{
	WTRACE("MMsgRoutingPeerData::Pack");

	SetServiceType(WONMsg::MiniRoutingServer);
	SetMessageType(WONMsg::RoutingPeerData);
	RoutingServerMessage::Pack();

	WDBG_LL("MMsgRoutingPeerData::Pack Appending message data");

	// append the client id
	AppendClientId(mClientId);

	// append the data
	AppendBytes(mData.size(), mData.data());

	return GetDataPtr();
}
コード例 #5
0
void* MMsgRoutingRemoveFromGroup::Pack(void)
{
	WTRACE("MMsgRoutingRemoveFromGroup::Pack");

	SetServiceType(WONMsg::MiniRoutingServer);
	SetMessageType(WONMsg::RoutingRemoveFromGroup);
	RoutingServerMessage::Pack();

	WDBG_LL("MMsgRoutingRemoveFromGroup::Pack Appending message data");

	// append group id
	AppendGroupId(mGroupId);

	// append client id
	AppendClientId(mClientId);

	return GetDataPtr();
}
コード例 #6
0
void* RoutingServerGenericFlagMessage::Pack(void)
{
	WTRACE("RoutingServerGenericFlagMessage::Pack");
	RoutingServerFlagMessage::Pack();

	WDBG_LL("RoutingServerGenericFlagMessage::Pack Appending message data");

	AppendByte(mContentType);
	switch (mContentType)
	{
		case CONTENTTYPE_CLIENTID:
			AppendClientId(mClientId); break;
		case CONTENTTYPE_CLIENTNAME:
			AppendClientName(mClientName); break;
		case CONTENTTYPE_WONUSERID:
			AppendLong(mWONUserId); break;
	}

	return GetDataPtr();
}
コード例 #7
0
void MMsgRoutingClientChange::SimplePack(void)
{
	AppendClientId(mClientId);
	AppendByte(mReason);
}