public override void AddPlotData(Array lineData, int sampleCount)
        {
            DateTime timeStamp = ParentManager.NextTimeStamp;

            if ((DateTime.MaxValue.Equals(timeStamp) || DateTime.MinValue.Equals(timeStamp)))
            {
                timeStamp = DateTime.Now;
            }
            _timeStamps.Add(timeStamp);
            int offset = 0;

            RefreshIsEvenFlag(sampleCount);
            for (int i = 0; i < _yBuffers.Count; i++)
            {
                OverLapWrapBuffer <TDataType> yBuffer = _yBuffers[i];
                bool removedDataInsideRange           = IsRemovedDataInsideRange(yBuffer, sampleCount, i);
                yBuffer.Add(lineData, sampleCount, offset);
                offset += sampleCount;
                RefreshMaxAndMinValue(yBuffer, i, sampleCount, removedDataInsideRange);
            }
            if (!_singleSamplePlotMode)
            {
                _blockCounts.Add(sampleCount);
            }
            int samplesToRemove = RefreshSamplesInChart(sampleCount);

            RemoveXDataExceedDisplayPoints(samplesToRemove);
        }
        public override void AddPlotData(DateTime[] startTime, Array lineData)
        {
            int sampleCount = startTime.Length;

            _timeStamps.AddRange(startTime);
            int offset = 0;

            RefreshIsEvenFlag(sampleCount);
            for (int i = 0; i < _yBuffers.Count; i++)
            {
                OverLapWrapBuffer <TDataType> yBuffer = _yBuffers[i];
                bool removedDataInsideRange           = IsRemovedDataInsideRange(yBuffer, sampleCount, i);
                yBuffer.Add(lineData, sampleCount, offset);
                offset += sampleCount;
                RefreshMaxAndMinValue(yBuffer, i, sampleCount, removedDataInsideRange);
            }
            if (!_singleSamplePlotMode)
            {
                for (int i = 0; i < sampleCount; i++)
                {
                    _blockCounts.Add(sampleCount);
                }
            }
            int samplesToRemove = RefreshSamplesInChart(sampleCount);

            RemoveXDataExceedDisplayPoints(samplesToRemove);
        }
예제 #3
0
        public override void AddPlotData(Array lineData, int sampleCount)
        {
            RefreshIndexData(sampleCount);
            int offset = 0;

            for (int i = 0; i < DataInfo.LineCount; i++)
            {
                OverLapWrapBuffer <TDataType> yBuffer = _yBuffers[i];
                bool removedDataInsideRange           = IsRemovedDataInsideRange(yBuffer, sampleCount, i);
                yBuffer.Add(lineData, sampleCount, offset);
                offset += sampleCount;
                RefreshMaxAndMinValue(yBuffer, i, sampleCount, removedDataInsideRange);
            }
        }