Example #1
0
        public void MoveFilter(FilterBase filter, GenericProviderData.DataKey key, int direction)
        {
            int index = filters[(int)key].IndexOf(filter);

            int newIndex = Math.Min(filters[(int)key].Count - 1, Math.Max(0, index + direction));

            filters[(int)key].RemoveAt(index);
            filters[(int)key].Insert(newIndex, filter);
        }
Example #2
0
        public FilterBase AddFilter(FilterType filterType, GenericProviderData.DataKey key, bool updateUI = false)
        {
            List <FilterBase> filterList = filters[(int)key];

            if (filterList == null)
            {
                filterList = filters[(int)key] = new List <FilterBase>();
            }

            FilterBase newFilter = null;

            switch (filterType)
            {
            case FilterType.Smooth:
            {
                NestedSmoothFilter newSmoothFilter = new NestedSmoothFilter();
                newSmoothFilter.SetParameters(0, 10, 1000.0f);

                filterList.Add(newSmoothFilter);
                newFilter = newSmoothFilter;

                break;
            }

            case FilterType.Kalman:
            {
                KalmanNoiseFilter newKalmanFilter = new KalmanNoiseFilter();
                newKalmanFilter.SetParameters(1, 1, 0.02f, 1, 0.02f, 0.0f);

                filterList.Add(newKalmanFilter);
                newFilter = newKalmanFilter;

                break;
            }

            case FilterType.SavitzkyGolay:
            {
                break;
            }

            case FilterType.FIR:
            {
                break;
            }
            }

            if (updateUI && FilterUI.Instance != null)
            {
//                FilterUI.Instance.InitChartForKey(key);
            }



            return(newFilter);
        }
Example #3
0
 public void DeleteFilter(FilterBase filter, GenericProviderData.DataKey key)
 {
     filters[(int)key].Remove(filter);
 }