www.pudn.com > Five_QT_by_CT.rar > pub.h


#ifndef PUB_HEADER
#define PUB_HEADER

#include "defs.h"


#include 
#include 



class Message;
class PlayerTableNode;
class DeskTableNode;


//各种消息的打包,解包工具类
class PackDisposer
{
public:
	int MsgPacker(Message, char * buffer);//打包后放到buffer里
	bool MsgUnPacker(Message &, char * buffer);//把buffer还原成格式

	int TablePacker(PlayerTableNode node, char *buffer);
	bool TableUnPacker(PlayerTableNode &node, char *buffer);
	
	int DeskTablePacker(DeskTableNode, char *buffer);
	bool DeskTableUnPacker(DeskTableNode &node, char *buffer); 	
};




class PlayerTableNode
{
public:
	QString mPlayerID;     //5位数的ID号
	QString mPlayerState;   	  //客户状态 'F'为空闲,'B'为游戏中
	QString mPlayerOpID;  //对手ID
	QString mAddr;
	QString mPort;
	QString mDeskNumber; //所在桌号, 0表示没在
	QString mSide;		//所在白放黑放

	PlayerTableNode()
	{
		mPlayerID=QString("-1");
		
	}
};





class Message//发送的消息格式
{
public:
	QString mID;
	QString mRequest;
	QString mContent;	
	QString mContent2;
};


class DeskTableNode
{
public:
	QString mWhiteID;
	QString mBlackID;

	DeskTableNode()
	{
		mWhiteID=QString("-1");
		mBlackID=QString("-1");
	}	
};


#endif