diff --git a/src/demoreader.cpp b/src/demoreader.cpp --- a/src/demoreader.cpp +++ b/src/demoreader.cpp @@ -1,5 +1,5 @@ /* - Copyright © 2016 Hasan Yavuz Özderya + Copyright © 2017 Hasan Yavuz Özderya This file is part of serialplot. @@ -25,8 +25,9 @@ #define M_PI 3.14159265358979323846 #endif -DemoReader::DemoReader(QIODevice* device, ChannelManager* channelMan, QObject *parent) : - AbstractReader(device, channelMan, parent) +DemoReader::DemoReader(QIODevice* device, ChannelManager* channelMan, + DataRecorder* recorder, QObject* parent) : + AbstractReader(device, channelMan, recorder, parent) { paused = false; _numOfChannels = 1; @@ -76,13 +77,13 @@ void DemoReader::demoTimerTimeout() if (!paused) { + double* samples = new double[_numOfChannels]; for (unsigned ci = 0; ci < _numOfChannels; ci++) { // we are calculating the fourier components of square wave - double value = 4*sin(2*M_PI*double((ci+1)*count)/period)/((2*(ci+1))*M_PI); - _channelMan->addChannelData(ci, &value, 1); - sampleCount++; + samples[ci] = 4*sin(2*M_PI*double((ci+1)*count)/period)/((2*(ci+1))*M_PI); } - emit dataAdded(); + addData(samples, _numOfChannels); + delete[] samples; } }