#ifndef _AUTH_AGENT_SERVER_TABLE_H_ #define _AUTH_AGENT_SERVER_TABLE_H_ #include #include #include #include "AuthAgentDispatch.h" // Àü¹æ ÂüÁ¶ class CSession; class CAuthAgentDispatch; class CAuthClientDispatch; // MultiThread °¡´É. class CAuthAgentServerTable { public: static CAuthAgentServerTable& GetInstance(); void Destroy(); // Get Data void GetPatchServerAddress(unsigned long& dwClientVer, char* szPatchAddress_Out, size_t nBufferLen); void SetAgentServerInfo(RylServerInfo& ServerInfo); void GetAgentServerInfo(RylServerInfo& ServerInfo); unsigned long GetServerVersion(); unsigned long GetServerChecksum(); // Update Data void UpdateServerData(unsigned long dwChecksum, unsigned long dwClientVer, const char* szPatchAddress); void UpdateChannelUserNum(unsigned short* lpdwClientChannelNum, unsigned short usChannelNum); private: CAuthAgentServerTable(); ~CAuthAgentServerTable(); typedef CCSLock AuthAgentLock; AuthAgentLock m_AuthAgentLock; CACHE_PAD(PaddingAgent, sizeof(AuthAgentLock)); RylServerInfo m_AgentServerInfo; }; #endif