#pragma once #include "IServerInfo.h" #include #include #include // // // // // ÆÄÀϷκÎÅÍ ¸¶½ºÅͺ° ¼­¹öÁ¤º¸¸¦ Àд´Ù. class ServerListFromFile : public IServerInfo { public: ServerListFromFile(); ~ServerListFromFile(); public: virtual VOID Init( PSERVERLIST_ARGS arguments ); virtual VOID Release(); virtual BOOL Load( const CHAR* pszFileName, DWORD dwMasterIP, ServerTreeINFO*& OUT rPServerTreeInfo, BOOL bReload ); VOID LoadDataHandler( ACCEPTABLE_MASTER_SERVER_INFO_DELEGATOR rINFO ); private: static INT ParseInfoSection( PVOID pPassingPtr, AttrTag tagName ); private: BOOL m_bInited; CHAR m_TagName[32]; }; struct MSG_SX_CONNECTION_REQ_SERVER_INFO_ACK; struct sSERVERLISTFROMDB_ARGS : public sSERVERLIST_ARGS { sSERVERLISTFROMDB_ARGS() { m_MAGIC = this->FROMDB; } MSG_SX_CONNECTION_REQ_SERVER_INFO_ACK* m_SVR_LIST; }; // // DB·ÎºÎÅÍ ¸¶½ºÅͺ° ¼­¹öÁ¤º¸¸¦ Àд´Ù. class ServerListFromDB : public IServerInfo { public: ServerListFromDB(); ~ServerListFromDB(); public: virtual VOID Init( PSERVERLIST_ARGS arguments ); virtual VOID Release(); virtual BOOL Load( const CHAR* pszFileName, DWORD dwMasterIP, ServerTreeINFO*& OUT rPServerTreeInfo, BOOL bReload ); private: BOOL m_bInited; MSG_SX_CONNECTION_REQ_SERVER_INFO_ACK* m_pMsgACK; };