Files
Sun1602/Tools/WiseClient/ScriptLogic/VEntryRouter.cpp
T
2022-10-26 12:25:11 +08:00

41 lines
881 B
C++

#include "stdafx.h"
#include <Application/VEntryRouter.h>
// TODO: 필요한 추가 헤더는
// 이 파일이 아닌 stdafx.h에서 참조합니다.
static SolutionRouter* s_SolutionInstance = NULL;
SolutionRouter* SolutionRouter::Instance()
{
if( s_SolutionInstance )
return s_SolutionInstance;
s_SolutionInstance = new SolutionRouter;
return s_SolutionInstance;
};
BOOL SolutionRouter::Register( eWISE_ROUTINES eList, BaseCodeHandler handler )
{
SolutionRouter* ROUTER = SolutionRouter::Instance();
ROUTER->m_HANDLER_MAP[eList] = handler;
return TRUE;
}
BOOL SolutionRouter::Execute( eWISE_ROUTINES eList )
{
SolutionRouter* ROUTER = SolutionRouter::Instance();
HANDLER_MAP& fnHASH = ROUTER->m_HANDLER_MAP;
HANDLER_MAP_IT itFIND = fnHASH.find( eList );
if( itFIND == fnHASH.end() )
return FALSE;
BaseCodeHandler handler = itFIND->second;
handler();
return TRUE;
}