kroledbheader.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma once
  2. #define MAX_BLOCK_SIZE 350
  3. #define TRACEE
  4. #include "KProtocol.h"
  5. #ifdef TRACEE
  6. #include "windows.h"
  7. #endif
  8. extern void ShowTrace(char* pMsg);
  9. #pragma pack(push)
  10. #pragma pack(1)
  11. struct  TRoleHeader
  12. {
  13. unsigned char nProtoId;
  14. size_t nDataLen;//TRoleNetMsg时表示该Block的实际数据长度,TProcessData时表示Stream的实际数据长度
  15. unsigned long ulIdentity;
  16. };
  17. struct  TRoleNetMsg :TRoleHeader // 每个数据包的结构
  18. {
  19. unsigned char bDataState;// 1 表示是新的第一段,0表示是上一次的包的继续
  20. size_t nOffset;//When First ,it means TotalLen;Later, it means offset;
  21. char  pDataBuffer[1];
  22. };
  23. /*
  24. struct TProcessData: TRoleHeader //调用DB或游戏服务器的结构
  25. {
  26. unsigned long   ulNetId; //网络ID
  27. char pDataBuffer[1];//实际的数据
  28. };
  29. */
  30. struct TCmd 
  31. {
  32. unsigned long  ulNetId;
  33. TProcessData ProcessData;
  34. };
  35. typedef TProcessData TStreamData ;
  36. typedef TRoleNetMsg KBlock;
  37. #pragma pack(pop)