예제 #1
0
        public void FilterData()
        {
            calibrationVal = DataInterface.GetCalibrateValue();

            while (!ShallStop)
            {
                for (int i = 0; i < 60; i++)
                {
                    BPRawList.Add(new RawData(0, _filterCollection.Take().Pressure));
                }

                for (int i = 2; i < BPRawList.Count; i++)
                {
                    if (i + 2 < BPRawList.Count)
                    {
                        FilteredVoltage = (BPRawList[i - 2].Voltage + BPRawList[i - 1].Voltage + BPRawList[i].Voltage + BPRawList[i + 1].Voltage + BPRawList[i + 2].Voltage) / 5;
                        BPFilterList.Add(new ConvertedData(0, convertAlgo.ConvertData(FilteredVoltage, calibrationVal)));
                    }
                }

                Done();
            }
        }
예제 #2
0
        public void FilterData()
        {
            //calibrationVal = DataInterface.GetCalibrateValue();
            calibrationVal = new CalibrationValue(0.0189, -1.975);

            while (!ShallStop)
            {
                if (BPRawList.Count < 300)
                {
                    for (int i = 0; i < 60; i++)                 // Adds 60 datapoints at a time
                    {
                        BPRawList.Add(_filterCollection.Take()); // Takes from graphCollection and converts to mmHg

                        //if (i + 2 < BPRawList.Count)

                        //{
                        //    FilteredVoltage = (BPRawList[i - 2] + BPRawList[i - 1] + BPRawList[i] + BPRawList[i + 1] + BPRawList[i + 2]) / 5;
                        //    BPFilterList.Add(convertAlgo.ConvertData(FilteredVoltage, calibrationVal));
                        //}
                    }
                    for (int i = 2; i < 58; i++)
                    {
                        FilteredVoltage = (BPRawList[i - 2] + BPRawList[i - 1] + BPRawList[i] + BPRawList[i + 1] + BPRawList[i + 2]) / 5;
                        BPFilterList.Add(convertAlgo.ConvertData(FilteredVoltage, calibrationVal));
                    }

                    Done(); // Updates graph
                }

                if (BPFilterList.Count == 300)
                {
                    Done();

                    for (int i = 0; i < 60; i++)
                    {
                        BPFilterList.RemoveAt(i); // Removes the earliest 60 points
                    }
                }

                //for (int i = 2; i < BPRawList.Count; i++)
                //{
                //    if (i + 2 < BPRawList.Count)
                //    {
                //        FilteredVoltage = (BPRawList[i - 2] + BPRawList[i - 1] + BPRawList[i] + BPRawList[i + 1] + BPRawList[i + 2]) / 5;
                //        BPFilterList.Add(convertAlgo.ConvertData(FilteredVoltage, calibrationVal));
                //    }
                //}

                //Done();

                //if (graphList.Count < 300)
                //{
                //    for (int i = 0; i < 60; i++) // Adds 60 datapoints at a time
                //    {
                //        ConvertedValue = ConvertAlgorithm.ConvertData(_graphCollection.Take(), calibrationVal);
                //        graphList.Add(ConvertedValue); // Takes from graphCollection and converts to mmHg
                //        _alarmCollection.Add(ConvertedValue);
                //    }

                //    Done(); // Updates graph
                //}


                //if (graphList.Count == 300)
                //{
                //    for (int i = 0; i < 60; i++)
                //    {
                //        graphList.RemoveAt(i); // Removes the earliest 60 points
                //    }
                //}
            }
        }