48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include "LogicFlowController.h"
|
|
|
|
class IPeriodicWork : public IWorkNode
|
|
{
|
|
public: DECL_CONST_MEMBER SECOND = 1000;
|
|
DECL_CONST_MEMBER INTERVAL_HEARTBEAT = 20*SECOND;
|
|
DECL_CONST_MEMBER INTERVAL_WORLD_CONNECT_SYN = 15*SECOND;
|
|
|
|
public: IPeriodicWork(WiseUser* pUser) : m_pUser(pUser)
|
|
{ }
|
|
|
|
~IPeriodicWork() {}
|
|
|
|
public: virtual BOOL DoInit();
|
|
virtual BOOL DoProcess();
|
|
virtual BOOL IsComplete();
|
|
virtual BOOL DoRelease();
|
|
|
|
virtual void OnMsg(sSIG_MSG* pSIG_MSG);
|
|
|
|
private: WiseUser* m_pUser;
|
|
ITimeout m_HEARTBEAT_TIMER_forAGENT;
|
|
ITimeout m_HEARTBEAT_TIMER_forWORLD;
|
|
ITimeout m_CONNECTION_TIMER_forWORLD;
|
|
};
|
|
|
|
class IWorldSessionControl : public IWorkNode
|
|
{
|
|
public:
|
|
|
|
public: IWorldSessionControl(WiseUser* pUser) : m_pUser(pUser)
|
|
{ }
|
|
|
|
~IWorldSessionControl() {}
|
|
|
|
public: virtual BOOL DoInit();
|
|
virtual BOOL DoProcess();
|
|
virtual BOOL IsComplete();
|
|
virtual BOOL DoRelease();
|
|
|
|
virtual void OnMsg(sSIG_MSG* pSIG_MSG);
|
|
|
|
private: WiseUser* m_pUser;
|
|
ITimeout m_CONNECTION_TIMER_forWORLD;
|
|
};
|