Skip to content
Snippets Groups Projects
Commit 44cbddc9 authored by jsiegle's avatar jsiegle
Browse files

Reduced ControlPanel CPU usage

parent c78f8fb4
No related branches found
No related tags found
No related merge requests found
......@@ -104,14 +104,14 @@ bool AudioComponent::callbacksAreActive() {
void AudioComponent::restartDevice()
{
//deviceManager.restartLastAudioDevice();
deviceManager.restartLastAudioDevice();
}
void AudioComponent::stopDevice()
{
//deviceManager.closeAudioDevice();
deviceManager.closeAudioDevice();
}
void AudioComponent::beginCallbacks() {
......
......@@ -398,7 +398,7 @@ GenericProcessor* ProcessorGraph::createProcessorFromDescription(String& descrip
}
sendActionMessage("New source node created.");
//sendActionMessage("New source node created.");
} else if (processorType.equalsIgnoreCase("Filters")) {
......@@ -417,7 +417,7 @@ GenericProcessor* ProcessorGraph::createProcessorFromDescription(String& descrip
processor = new SpikeDetector();
}
sendActionMessage("New filter node created.");
//sendActionMessage("New filter node created.");
} else if (processorType.equalsIgnoreCase("Utilities")) {
......@@ -426,14 +426,14 @@ GenericProcessor* ProcessorGraph::createProcessorFromDescription(String& descrip
std::cout << "Creating a new splitter." << std::endl;
processor = new Splitter();
sendActionMessage("New splitter created.");
//sendActionMessage("New splitter created.");
} else if (subProcessorType.equalsIgnoreCase("Merger")) {
std::cout << "Creating a new merger." << std::endl;
processor = new Merger();
sendActionMessage("New merger created.");
//sendActionMessage("New merger created.");
}
......@@ -456,7 +456,7 @@ GenericProcessor* ProcessorGraph::createProcessorFromDescription(String& descrip
processor = new WiFiOutput();
}
sendActionMessage("New sink created.");
//sendActionMessage("New sink created.");
}
return processor;
......
......@@ -429,9 +429,10 @@ ControlPanel::ControlPanel(ProcessorGraph* graph_, AudioComponent* audio_) :
"");
addChildComponent(filenameComponent);
startTimer(100);
//diskMeter->updateDiskSpace(graph->getRecordNode()->getFreeSpace());
//diskMeter->repaint();
refreshMeters();
startTimer(5000); // update disk space every 10 seconds
setWantsKeyboardFocus(true);
......@@ -557,10 +558,12 @@ void ControlPanel::buttonClicked(Button* button)
std::cout << "Record button pressed." << std::endl;
if (recordButton->getToggleState())
{
playButton->setToggleState(true,false);
graph->getRecordNode()->setParameter(1,10.0f);
masterClock->startRecording(); // turn on recording
} else {
graph->getRecordNode()->setParameter(0,10.0f); // turn off recording
masterClock->stopRecording();
......@@ -598,6 +601,8 @@ void ControlPanel::buttonClicked(Button* button)
if (recordButton->getToggleState())
graph->getRecordNode()->setParameter(1,10.0f);
stopTimer();
startTimer(250); // refresh every 250 ms
audio->beginCallbacks();
masterClock->start();
}
......@@ -609,8 +614,10 @@ void ControlPanel::buttonClicked(Button* button)
if (audio->callbacksAreActive()) {
audio->endCallbacks();
graph->disableProcessors();
cpuMeter->updateCPU(0.0f);
refreshMeters();
masterClock->stop();
stopTimer();
startTimer(10000); // back to refresh every 10 seconds
}
......@@ -630,7 +637,9 @@ void ControlPanel::disableCallbacks()
std::cout << "Disabling processors." << std::endl;
graph->disableProcessors();
std::cout << "Updating control panel." << std::endl;
cpuMeter->updateCPU(0.0f);
refreshMeters();
stopTimer();
startTimer(10000); // back to refresh every 10 seconds
}
......@@ -642,26 +651,35 @@ void ControlPanel::disableCallbacks()
}
void ControlPanel::actionListenerCallback(const String & msg)
{
//std::cout << "Message Received." << std::endl;
if (playButton->getToggleState()) {
cpuMeter->updateCPU(audio->deviceManager.getCpuUsage());
}
// void ControlPanel::actionListenerCallback(const String & msg)
// {
// //std::cout << "Message Received." << std::endl;
// if (playButton->getToggleState()) {
// cpuMeter->updateCPU(audio->deviceManager.getCpuUsage());
// }
cpuMeter->repaint();
// cpuMeter->repaint();
diskMeter->updateDiskSpace(graph->getRecordNode()->getFreeSpace());
diskMeter->repaint();
// diskMeter->updateDiskSpace(graph->getRecordNode()->getFreeSpace());
// diskMeter->repaint();
}
// }
void ControlPanel::timerCallback()
{
//std::cout << "Message Received." << std::endl;
refreshMeters();
}
void ControlPanel::refreshMeters()
{
if (playButton->getToggleState()) {
cpuMeter->updateCPU(audio->deviceManager.getCpuUsage());
} else {
cpuMeter->updateCPU(0.0f);
}
cpuMeter->repaint();
......@@ -670,8 +688,6 @@ void ControlPanel::timerCallback()
diskMeter->updateDiskSpace(graph->getRecordNode()->getFreeSpace());
diskMeter->repaint();
}
bool ControlPanel::keyPressed(const KeyPress& key)
......
......@@ -209,7 +209,7 @@ class UtilityButton;
class ControlPanel : public Component,
public Button::Listener,
public ActionListener,
// public ActionListener,
public Timer,
public AccessClass
......@@ -247,11 +247,12 @@ private:
void resized();
void buttonClicked(Button* button);
void actionListenerCallback(const String& msg);
//void actionListenerCallback(const String& msg);
void updateChildComponents();
void timerCallback();
void refreshMeters();
bool keyPressed(const KeyPress &key);
......
......@@ -228,9 +228,13 @@ const PopupMenu UIComponent::getMenuForIndex(int menuIndex, const String& menuNa
{
menu.addCommandItem (commandManager, openConfiguration);
menu.addCommandItem (commandManager, saveConfiguration);
menu.addSeparator();
menu.addCommandItem (commandManager, StandardApplicationCommandIDs::quit);
} else if (menuIndex == 1)
#if !JUCE_MAC
menu.addSeparator();
menu.addCommandItem (commandManager, StandardApplicationCommandIDs::quit);
#endif
} else if (menuIndex == 1)
{
menu.addCommandItem (commandManager, undo);
menu.addCommandItem (commandManager, redo);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment