Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
#ifndef _GAMA_CLIENT_EVENT_HANDLER_H_
|
||||
#define _GAMA_CLIENT_EVENT_HANDLER_H_
|
||||
|
||||
namespace ClientNet
|
||||
{
|
||||
// forward decl.
|
||||
class CSession;
|
||||
class CNetworkMsgBlock;
|
||||
|
||||
class CEventHandler
|
||||
{
|
||||
public:
|
||||
|
||||
CEventHandler(DWORD dwTimeoutSec = 1)
|
||||
: m_dwTimeoutSec(dwTimeoutSec), m_dwLastCalled(0)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
virtual ~CEventHandler() { }
|
||||
|
||||
virtual int OnReceived(CNetworkMsgBlock& msg_block) = 0; // <20><>Ŷ<EFBFBD><C5B6> <20><EFBFBD><DEBE><EFBFBD> <20><> <20>Ҹ<EFBFBD><D2B8><EFBFBD>.
|
||||
|
||||
virtual int OnOpen(CSession& ConnSession, int iErrorCode) = 0; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>Ϸ<EFBFBD><CFB7>Ǿ<EFBFBD><C7BE><EFBFBD> <20><> <20>Ҹ<EFBFBD><D2B8><EFBFBD>. (<28><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>. UDP<44><50> <20>ش<EFBFBD> <20><><EFBFBD><EFBFBD>)
|
||||
virtual int OnClose(CSession& CloseSession) = 0; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>Ҹ<EFBFBD><D2B8><EFBFBD>. (UDP<44><50> <20>ش<EFBFBD> <20><><EFBFBD><EFBFBD>)
|
||||
virtual int OnDispatch(CSession& ReceivedSession) = 0; // <20><EFBFBD><DEBD><EFBFBD><EFBFBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20><> <20>Ҹ<EFBFBD><D2B8><EFBFBD>.
|
||||
|
||||
virtual int OnTimeout(CSession& Session) = 0; // <20><><EFBFBD><EFBFBD> <20>ð<EFBFBD><C3B0><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>ȴ<EFBFBD>. <20>⺻<EFBFBD><E2BABB> <20><><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD> <20>Ҹ<EFBFBD><D2B8><EFBFBD>.
|
||||
|
||||
bool IsTimeout(DWORD dwCurrentTime) const
|
||||
{
|
||||
return (0 == m_dwLastCalled) ||
|
||||
(m_dwLastCalled + (m_dwTimeoutSec * 1000) < dwCurrentTime);
|
||||
}
|
||||
|
||||
void UpdateTimeoutCalled(DWORD dwCurrentTime)
|
||||
{
|
||||
m_dwLastCalled = dwCurrentTime;
|
||||
if (0 == m_dwLastCalled) { ++m_dwLastCalled; }
|
||||
}
|
||||
|
||||
protected:
|
||||
|
||||
DWORD m_dwTimeoutSec;
|
||||
DWORD m_dwLastCalled;
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user