#include "stdafx.h" #include "CustomerBeingFSM.h" CCustomerBeingFSM::CCustomerBeingFSM() { } CCustomerBeingFSM::~CCustomerBeingFSM() { } void CCustomerBeingFSM::OnStateTrans( int iSrcState, int iDstState ) { if (iSrcState != FSM_STATE_INIT && iDstState != FSM_STATE_EXIT) { SetSysState(iDstState); } } ErrorCodeEnum CCustomerBeingFSM::OnInit() { AddStateHooker(this); return Error_Succeed; } ErrorCodeEnum CCustomerBeingFSM::OnExit() { return Error_Succeed; } ErrorCodeEnum CCustomerBeingFSM::SetSysState( int state ) { static char *sts[] = { "N", // None "A", // Approach "F", // Front "L", // Lock "S", // Sleep }; return GetEntityBase()->GetFunction()->SetSysVar("CustomerBeing", sts[state]); } void CCustomerBeingFSM::s0_on_entry() { ScheduleTimer(0, 30000); } void CCustomerBeingFSM::s0_on_exit() { CancelTimer(0); } unsigned int CCustomerBeingFSM::s0_on_event(FSMEvent* event) { return 0; } void CCustomerBeingFSM::s1_on_entry() {} void CCustomerBeingFSM::s1_on_exit() {} unsigned int CCustomerBeingFSM::s1_on_event(FSMEvent* event) { return 0; } void CCustomerBeingFSM::s2_on_entry() {} void CCustomerBeingFSM::s2_on_exit() {} unsigned int CCustomerBeingFSM::s2_on_event(FSMEvent* event) { return 0; } void CCustomerBeingFSM::s3_on_entry() {} void CCustomerBeingFSM::s3_on_exit() {} unsigned int CCustomerBeingFSM::s3_on_event(FSMEvent* event) { return 0; } void CCustomerBeingFSM::s4_on_entry() {} void CCustomerBeingFSM::s4_on_exit() {} unsigned int CCustomerBeingFSM::s4_on_event(FSMEvent* event) { return 0; }