#pragma once #include "LogicFlowController.h" #define LF_HANDLER_PASSIVE_DECL(name) LF_RESULT name##_HANDLER(PASSING_ARG IN arguments) #define LF_HANDLER_PASSIVE_IMPL(name) LF_RESULT PassiveLogic::name##_HANDLER(PASSING_ARG IN arguments) #define LF_HANDLER_PASSIVE_IMPL_NULL(name) LF_RESULT PassiveLogic::name##_HANDLER(PASSING_ARG IN arguments) { DEBUGGING_CODE_L1(); return LFRET_SUCCESS_DEFAULT; } ////////////////////////////////////////////////////////////////////////// // class PassiveLogic { public: typedef LF_RESULT (PassiveLogic::*ProcessHandler)(PASSING_ARG IN arguments); public: PassiveLogic(); ~PassiveLogic(); static void CreateTable(); static void ReleaseTable(); inline void SetParentContainer(LogicFlowController* pContainer) { m_pContainer = pContainer; } inline LogicFlowController* GetParentContainer() { return m_pContainer; } virtual BOOL DoInit(); virtual BOOL DoProcess(); virtual BOOL IsComplete(); virtual BOOL DoRelease(); virtual void OnMsg(sSIG_MSG* pSIG_MSG); private: LogicFlowController* m_pContainer; // public: }; // ¼¼ºÎ ŸÀÔµéÀº ¿©±â¼­ Æ÷ÇÔ½ÃÄÑ »ç¿ëÇÒ °Í #include "Logic.Passive.IncludeList.h" //