Files
Sun1602/Tools/SunUpdateManager/SunUpdateServer/UnitServer.h
T
2022-10-26 12:25:11 +08:00

52 lines
1.6 KiB
C++

#pragma once
#include "ServerInfo.h"
#include "Constant.h"
class UnitServer
{
public:
UnitServer();
~UnitServer();
VOID Release();
VOID SetServerInfo( ServerInfo *pInfo ) { m_ServerInfo = *pInfo; }
ServerInfo & GetServerInfo() { return m_ServerInfo; }
VOID SetServerStatus( eSERVER_STATUS status );
eSERVER_STATUS GetServerStatus(){ return m_ServerInfo.GetServerStatus(); }
// ¼­¹ö ±¸µ¿, Á¾·á, ÆÐÄ¡
VOID ExecuteStart( DWORD dwUserKey );
VOID ExecuteEnd( DWORD dwUserKey );
BOOL ExecutePatch( DWORD dwUserKey );
VOID ExecuteForceDisconnect( DWORD dwUserKey );
VOID SerializeServerInfoStream( SERVER_TOTAL_INFO & OUT rServerTotInfo );
VOID SerializeServerInfoStreamForUser( SERVER_TOTAL_INFO & OUT rServerTotInfo, DWORD dwUserGUID );
VOID SerializeFtpInfoStreamForUser( FTP_TOTAL_INFO & OUT rFtpTotInfo, DWORD dwUserGUID );
#ifdef __20080312__SOLARAUTH_SERVER_PATCH
VOID SerializeScriptFolderInfoStream( SCRIPTFOLDER_TOTAL_INFO& OUT rSCFolderTotInfo, DWORD dwUserGUID );
#endif
public:
DWORD GetKey() { return m_ServerInfo.GetServerInfoEx().m_dwServerKey; }
BYTE GetWorld(){ return m_ServerInfo.GetServerInfoEx().m_byWorld; }
BYTE GetChannel(){ return m_ServerInfo.GetServerInfoEx().m_byChannel; }
BYTE GetServerType(){ return m_ServerInfo.GetServerInfoEx().m_byServerType; }
BYTE GetServerNum(){ return m_ServerInfo.GetServerInfoEx().m_byServerNum; }
private:
BOOL IsEnablePatch();
BOOL IsEnableEnd();
BOOL IsEnableStart();
BOOL IsEnableForceDisconnect();
eRC_SERVER_CONSTANT GetResultServerStatus( eSERVER_STATUS status );
private:
ServerInfo m_ServerInfo;
};