示例#1
0
 protected virtual void AddPoint(double val)
 {
     //qPoints.Enqueue( val );
     if (slPoints.ContainsKey(val))
     {
         PointStat ps = (PointStat)slPoints[val];
         ps.PriceCount++;
     }
     else
     {
         slPoints.Add(val, new PointStat());
         Max = (double)slPoints.GetKey(slPoints.Count - 1);
         Min = (double)slPoints.GetKey(0);
     }
     //PointCount++;
 }
示例#2
0
 protected virtual void RemovePoint(double val)
 {
     //double t = (double) qPoints.Dequeue();
     if (slPoints.ContainsKey(val))
     {
         PointStat ps = (PointStat)slPoints[val];
         ps.PriceCount--;
         if (0 == ps.PriceCount)
         {
             slPoints.Remove(val);
             if (0 < slPoints.Count)
             {
                 Min = (double)slPoints.GetKey(0);
                 Max = (double)slPoints.GetKey(slPoints.Count - 1);
                 //Console.Write( "  Min {0:#.00} Max {1:#.00}", Min, Max );
             }
         }
         //PointCount--;
     }
     else
     {
         throw new Exception("slPoints doesn't have a point to remove");
     }
 }