コード例 #1
0
        private void calcTiming(object sender, EventArgs e)
        {
            if (mTimingCalcualting)
            {
                return;
            }

            try
            {
                mTimingCalcualting = true;
                NumericUpDown upDown = (NumericUpDown)sender;

                var param = new TimingParam();
                param.Set((double)uiRefresh.Value, (int)uiRate.Value, (double)uiReadTime.Value);

                if (upDown == uiRate)
                {
                    uiBw.Value = (decimal)param.Bw;
                }
                else if (upDown == uiReadTime)
                {
                    uiDeltaF.Value = (decimal)param.DeltaF;
                }
                else if (upDown == uiRefresh)
                {
                    uiRefresh.Value = (decimal)param.Refresh;
                }
            }
            finally
            {
                mTimingCalcualting = false;
            }
        }
コード例 #2
0
ファイル: AppLogic.cs プロジェクト: free302/EcgDev
        public void TestFilter()
        {
            mTimingParam = new TimingParam();
            mTimingParam.Set(1.0 / 10, 200, 10);

            var chs = new string[] { "CH1", "CH2", "Diff" };

            //data storage for graph, log
            mData.SetupTime(chs, mTimingParam.DeltaT * 1, mTimingParam.NumDpFft);
            mData.SetupFrequency(chs, mTimingParam.DeltaF, mTimingParam.NumDpFftFreq);

            //fft
            Filter.SetupPlan(mTimingParam.NumDpFft);
            Filter.TimingParam = mTimingParam;

            double[][][] timeData = new double[1][][];
            var          diff     = mTimeData.Zip(testData2, (x, y) => (x - y)).ToArray();

            timeData[0] = new double[][] { mTimeData, testData2 };            //, diff };

            onNewData(timeData);
        }