From f2ee78582f2ebd3f77b5fa4877a857095b3e4fd9 Mon Sep 17 00:00:00 2001 From: jsiegle <jsiegle@mit.edu> Date: Wed, 3 Apr 2013 21:11:47 -0400 Subject: [PATCH] Change visualizer refresh rate --- .../Visualization/LfpDisplayCanvas.cpp | 17 ++++++++++------- .../Processors/Visualization/LfpDisplayCanvas.h | 2 ++ Source/Processors/Visualization/Visualizer.h | 5 ++++- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/Source/Processors/Visualization/LfpDisplayCanvas.cpp b/Source/Processors/Visualization/LfpDisplayCanvas.cpp index 7917cd2f7..b106e07e8 100755 --- a/Source/Processors/Visualization/LfpDisplayCanvas.cpp +++ b/Source/Processors/Visualization/LfpDisplayCanvas.cpp @@ -82,14 +82,14 @@ void LfpDisplayCanvas::beginAnimation() screenBufferIndex = 0; - startTimer(500); + startCallbacks(); } void LfpDisplayCanvas::endAnimation() { std::cout << "Ending animation." << std::endl; - stopTimer(); + stopCallbacks(); } void LfpDisplayCanvas::update() @@ -254,19 +254,22 @@ void LfpDisplayCanvas::paint(Graphics& g) { //std::cout << "Painting" << std::endl; - - updateScreenBuffer(); - g.setColour(Colours::grey); g.fillRect(0, 0, getWidth(), getHeight()); - g.setColour(Colours::yellow); + // g.setColour(Colours::yellow); - g.drawLine(screenBufferIndex, 0, screenBufferIndex, getHeight()); + // g.drawLine(screenBufferIndex, 0, screenBufferIndex, getHeight()); } +void LfpDisplayCanvas::refresh() +{ + updateScreenBuffer(); + +} + // ------------------------------------------------------------- LfpTimescale::LfpTimescale(LfpDisplayCanvas* c) : canvas(c) diff --git a/Source/Processors/Visualization/LfpDisplayCanvas.h b/Source/Processors/Visualization/LfpDisplayCanvas.h index 8c0ce15eb..039ed1d0d 100755 --- a/Source/Processors/Visualization/LfpDisplayCanvas.h +++ b/Source/Processors/Visualization/LfpDisplayCanvas.h @@ -60,6 +60,8 @@ public: void paint(Graphics& g); + void refresh(); + void resized(); float getXCoord(int chan, int samp); diff --git a/Source/Processors/Visualization/Visualizer.h b/Source/Processors/Visualization/Visualizer.h index 96250ba10..fe0f15c72 100755 --- a/Source/Processors/Visualization/Visualizer.h +++ b/Source/Processors/Visualization/Visualizer.h @@ -48,6 +48,9 @@ public: /** Called when parameters of underlying data processor are changed.*/ virtual void update() = 0; + /** Called instead of "repaint" to avoid redrawing underlying components if not necessary.*/ + virtual void refresh() = 0; + /** Called when data acquisition is active.*/ virtual void beginAnimation() = 0; @@ -67,7 +70,7 @@ public: void stopCallbacks() { stopTimer(); } /** Called whenever the timer is triggered. */ - void timerCallback() { repaint(); } + void timerCallback() { refresh(); } /** Refresh rate in Hz. */ float refreshRate; -- GitLab