Files
Sun1602/Server/AuthSystem/RTT/RTTService/RTTServer.h
T
2022-10-26 12:25:11 +08:00

42 lines
930 B
C++

#pragma once
#include <eXtreme/net/ServerSession.h>
#define TIME_HEARTBEAT 10000
class RTTServer : public eXtreme::ServerSession
{
public:
RTTServer();
virtual ~RTTServer();
void SendMessage( MSG_HEADER8& packet, int size = 0 );
protected:
virtual void OnConnect( bool success, DWORD error );
virtual void OnReceive( char* buffer, int size );
virtual void OnClose( DWORD error );
virtual void Update();
virtual bool IsValidPacket( char* ptr, DWORD recvBytes, DWORD* totalSize )
{
*totalSize = *( DWORD* )ptr + sizeof( MSG_HEADER8 );
return ( recvBytes >= *totalSize );
}
private:
void CheckDisconnected();
void SendHeartBeat();
void OnRTTAStartNTF( char* buffer, int size );
void OnRTTAStopNTF( char* buffer, int size );
void OnRTTAPatchNTF( char* buffer, int size );
int m_connectState;
DWORD m_disconnTick;
DWORD m_dwTicHeartBeat;
};