コード例 #1
0
        /// <summary>
        /// 初始化流程管理器。
        /// </summary>
        /// <param name="fsmManager">有限状态机管理器。</param>
        /// <param name="procedures">流程管理器包含的流程。</param>
        public void Initialize(IFsmMethods fsmManager, params ProcedureState[] procedures)
        {
            if (fsmManager == null)
            {
                throw new Exception("FSM manager is invalid.");
            }

            m_FsmManager   = fsmManager;
            m_ProcedureFsm = m_FsmManager.CreateFsm(this, procedures);
        }
コード例 #2
0
        /// <summary>
        /// 关闭并清理流程管理器。
        /// </summary>
        public override void Dispose()
        {
            base.Dispose();
            if (m_FsmManager != null)
            {
                if (m_ProcedureFsm != null)
                {
                    m_FsmManager.DestroyFsm(m_ProcedureFsm);
                    m_ProcedureFsm = null;
                }

                m_FsmManager = null;
            }

            m_AvailableProcedureTypeNames = null;

            This = null;
        }