コード例 #1
0
ファイル: RealTimeApp.cs プロジェクト: cd606/tm_infra
        public bool check(WithTime <Either <T1, T2> > data)
        {
            var t = data.timePoint;

            return(data.value.Match(
                       (T2 t2) => {
                if (t >= time2.Unwrap(0))
                {
                    time2 = t;
                    if (useVersionChecker[1])
                    {
                        return versionChecker[1].check(t2);
                    }
                    else
                    {
                        return true;
                    }
                }
                else
                {
                    return false;
                }
            },
                       (T1 t1) => {
                if (t >= time1.Unwrap(0))
                {
                    time1 = t;
                    if (useVersionChecker[0])
                    {
                        return versionChecker[0].check(t1);
                    }
                    else
                    {
                        return true;
                    }
                }
                else
                {
                    return false;
                }
            }
                       ));
        }
コード例 #2
0
ファイル: RealTimeApp.cs プロジェクト: cd606/tm_infra
 public bool check(WithTime <T> data)
 {
     lock (lockObj)
     {
         var t = data.timePoint;
         if (lastTime > t)
         {
             return(false);
         }
         if (useVersionChecker)
         {
             if (!versionChecker.check(data.value))
             {
                 return(false);
             }
         }
         lastTime = t;
         return(true);
     }
 }