예제 #1
0
파일: Peer.cs 프로젝트: lancao008/Adaptive
 public void Enqueue(UnacknowledgedData data)
 {
     if (Max.HasValue)
     {
         Set(data, Max.GetValueOrDefault() + 1);
     }
     else
     {
         Set(data, 0);
     }
 }
예제 #2
0
파일: Peer.cs 프로젝트: lancao008/Adaptive
        void CheckMinAndMax()
        {
            if (Max.HasValue &&
                !UnacknowledgedData.ContainsKey(Max.GetValueOrDefault()))
            {
                Max = null;
            }

            if (Min.HasValue &&
                !UnacknowledgedData.ContainsKey(Min.GetValueOrDefault()))
            {
                Min = null;
            }
        }
예제 #3
0
파일: Peer.cs 프로젝트: lancao008/Adaptive
        public void Set(UnacknowledgedData data, int frameIndex)
        {
            UnacknowledgedData [frameIndex] = data;
            if (Max.HasValue)
            {
                Max = Math.Max(Max.GetValueOrDefault(), frameIndex);
            }
            else
            {
                Max = frameIndex;
            }
            if (Min.HasValue)
            {
                Min = Math.Min(Min.GetValueOrDefault(), frameIndex);
            }
            else
            {
                Min = frameIndex;
            }

            CheckMinAndMax();
        }