示例#1
0
文件: LQHsm.cs 项目: klhurley/qf4net
 public void Serialise(ISerialisationContext context)
 {
     context.Formatter.Serialize(context.Stream, _UniqueName);
     context.Formatter.Serialize(context.Stream, this.CurrentState);
     SaveHistoryStates(context);
     SaveFields(context);
 }
示例#2
0
文件: LQHsm.cs 项目: klhurley/qf4net
        public void Deserialise(ISerialisationContext context)
        {
            this._UniqueName  = (string)context.Formatter.Deserialize(context.Stream);
            this.CurrentState = (QState)context.Formatter.Deserialize(context.Stream);
            LoadHistoryStates(context);
            LoadFields(context);

            LogRestored();
        }
示例#3
0
 protected override void SaveHistoryStates(ISerialisationContext context)
 {
     base.SaveHistoryStates(context);
     if (null == _TimeKeeping_DeepHistory)
     {
         context.Formatter.Serialize(context.Stream, null);
     }
     else
     {
         context.Formatter.Serialize(context.Stream, _TimeKeeping_DeepHistory.Method.Name);
     }
 }
示例#4
0
        protected override void LoadHistoryStates(ISerialisationContext context)
        {
            base.LoadHistoryStates(context);
            string methodName_TimeKeeping = (string)context.Formatter.Deserialize(context.Stream);

            if (null == methodName_TimeKeeping)
            {
                _TimeKeeping_DeepHistory = null;
            }
            else
            {
                _TimeKeeping_DeepHistory = (QState)Delegate.CreateDelegate(typeof(QState), this, methodName_TimeKeeping);
            }
        }
示例#5
0
文件: LQHsm.cs 项目: klhurley/qf4net
 protected virtual void LoadFields(ISerialisationContext context)
 {
 }
示例#6
0
文件: LQHsm.cs 项目: klhurley/qf4net
 protected virtual void LoadHistoryStates(ISerialisationContext context)
 {
 }
示例#7
0
 protected virtual void SaveHistoryStates(ISerialisationContext context)
 {
 }
示例#8
0
 protected virtual void SaveFields(ISerialisationContext context)
 {
 }
示例#9
0
 public void Serialise(ISerialisationContext context)
 {
     context.Formatter.Serialize (context.Stream, _UniqueName);
     context.Formatter.Serialize (context.Stream, this.CurrentStateMethod);
     SaveHistoryStates (context);
     SaveFields (context);
 }
示例#10
0
        public void Deserialise(ISerialisationContext context)
        {
            this._UniqueName = (string) context.Formatter.Deserialize (context.Stream);
            this.CurrentStateMethod  = (System.Reflection.MethodInfo) context.Formatter.Deserialize (context.Stream);
            LoadHistoryStates (context);
            LoadFields (context);

            LogRestored ();
        }