67 lines
2.0 KiB
C
67 lines
2.0 KiB
C
#ifndef _RUNGATE_H_
|
|
#define _RUNGATE_H_
|
|
|
|
#ifndef EXPORTCALL
|
|
#define EXPORTCALL __stdcall
|
|
#endif
|
|
|
|
|
|
/*作为插件导出函数中查询发送线程状态的结构*/
|
|
typedef struct tagRunGateSendThreadQueryStruct
|
|
{
|
|
#ifdef _MSC_VER
|
|
HANDLE hThread;
|
|
#else
|
|
pthread_t hThread;
|
|
#endif
|
|
DWORD dwThreadId;
|
|
TICKCOUNT dwProcTick;
|
|
TICKCOUNT dwSleepTick;
|
|
}RUNGATESENDTHREADQUERYSTRUCT, *PRUNGATESENDTHREADQUERYSTRUCT;
|
|
|
|
|
|
/*作为插件导出函数中枚举会话信息的结构*/
|
|
typedef struct tagRunGateQuerySessionStruct
|
|
{
|
|
SOCKET nSocket;
|
|
PRUNGATEUSERSESSION pSession;
|
|
SOCKADDRIN SockAddr;
|
|
int nRecvPacketCount;
|
|
int nSendPacketCount;
|
|
WORD wPacketError;
|
|
BYTE btPacketIdx;
|
|
bool boSendAvaliable;
|
|
unsigned long long nVerifyIdx;
|
|
int nRecvBufSize;
|
|
int nRecvCacheSize;
|
|
int nSendBufSize;
|
|
int nSendCacheSize;
|
|
TICKCOUNT dwActiveTick;
|
|
TICKCOUNT dwClientMsgTick;
|
|
TICKCOUNT dwServerMsgTick;
|
|
//CHAR sLoginAccount[32];
|
|
//CHAR sLoginCharName[32];
|
|
int nSessionId;
|
|
}RUNGATEQUERYSESSIONSTRUCT, *PRUNGATEQUERYSESSIONSTRUCT;
|
|
|
|
/*作为插件导出函数中枚举会话信息的回调函数类型*/
|
|
typedef INT (CALLBACK *RUNGATE_ENUMSESSION_ROUTINE) (LPVOID lpRunSockProcesser, PRUNGATEQUERYSESSIONSTRUCT pSessionInfo);
|
|
|
|
/*作为插件导出函数中查询数据统计信息的结构*/
|
|
typedef struct tagRunDataStatics
|
|
{
|
|
SIZE_T dwProcessRecvSize; //处理客户端接收数据大小
|
|
SIZE_T dwWaitSendUserSize; //待发送给用户的数据包大小
|
|
SIZE_T dwWaitSendQueueSize; //待发给用户的数据包队列大小
|
|
SIZE_T dwRecvSeverSize; //接收服务器数据大小
|
|
SIZE_T dwSendUserSize; //发送用户数据大小
|
|
TICKCOUNT dwLastProcUsrMsgTime; //上次处理用户数据时间
|
|
TICKCOUNT dwLastProcSrvMsgTime; //上次处理服务器数据时间
|
|
TICKCOUNT dwLastRecvSrvMsgTime; //上次接收服务器数据时间
|
|
TICKCOUNT dwProcSrvThreadSleep; //处理服务器数据线程休眠时间
|
|
SIZE_T dwSendQueueSize; //待发数据队列数据包大小
|
|
}RUNDATASTATICS, *PRUNDATASTATICS;
|
|
|
|
#endif
|
|
|