void ControlPanel::disableCallbacks() { std::cout << "Control panel received signal to disable callbacks." << std::endl; if (audio->callbacksAreActive()) { std::cout << "Stopping audio." << std::endl; audio->endCallbacks(); std::cout << "Disabling processors." << std::endl; graph->disableProcessors(); std::cout << "Updating control panel." << std::endl; refreshMeters(); stopTimer(); startTimer(60000); // back to refresh every 10 seconds } playButton->setToggleState(false, dontSendNotification); recordButton->setToggleState(false, dontSendNotification); masterClock->stopRecording(); masterClock->stop(); }
void ControlPanel::timerCallback() { //std::cout << "Message Received." << std::endl; refreshMeters(); }
void ControlPanel::buttonClicked(Button* button) { if (button == newDirectoryButton && newDirectoryButton->getEnabledState()) { graph->getRecordNode()->newDirectoryNeeded = true; newDirectoryButton->setEnabledState(false); masterClock->resetRecordTime(); dateText->setColour(Label::textColourId, Colours::grey); return; } if (button == playButton) { if (playButton->getToggleState()) { if (graph->enableProcessors()) // start the processor graph { audio->beginCallbacks(); masterClock->start(); audioEditor->disable(); stopTimer(); startTimer(250); // refresh every 250 ms } } else { if (recordButton->getToggleState()) { stopRecording(); } audio->endCallbacks(); graph->disableProcessors(); refreshMeters(); masterClock->stop(); stopTimer(); startTimer(60000); // back to refresh every minute audioEditor->enable(); } return; } if (button == recordButton) { if (recordButton->getToggleState()) { if (playButton->getToggleState()) { startRecording(); } else { if (graph->enableProcessors()) // start the processor graph { audio->beginCallbacks(); masterClock->start(); audioEditor->disable(); stopTimer(); startTimer(250); // refresh every 250 ms startRecording(); playButton->setToggleState(true, dontSendNotification); } } } else { stopRecording(); } } }
void ControlPanel::buttonClicked(Button* button) { if (button == recordButton) { std::cout << "Record button pressed." << std::endl; if (recordButton->getToggleState()) { startRecording(); } else { stopRecording(); } dateText->setColour(Label::textColourId, Colours::black); } else if (button == playButton) { std::cout << "Play button pressed." << std::endl; if (!playButton->getToggleState()) { if (recordButton->getToggleState()) { recordButton->setToggleState(false,false); newDirectoryButton->setEnabledState(true); } } } else if (button == newDirectoryButton && newDirectoryButton->getEnabledState()) { graph->getRecordNode()->newDirectoryNeeded = true; newDirectoryButton->setEnabledState(false); masterClock->resetRecordTime(); dateText->setColour(Label::textColourId, Colours::grey); return; } if (playButton->getToggleState()) { if (!audio->callbacksAreActive()) { if (graph->enableProcessors()) { //std::cout << "Enabling processors from " << getThreadName() << " thread." << std::endl; if (recordButton->getToggleState()) graph->setRecordState(true); stopTimer(); audio->beginCallbacks(); masterClock->start(); startTimer(250); // refresh every 250 ms } } else { if (recordButton->getToggleState()) { graph->setRecordState(true); //getRecordNode()->setParameter(1,10.0f); } } } else { if (audio->callbacksAreActive()) { std::cout << "Control panel requesting to end callbacks." << std::endl; audio->endCallbacks(); std::cout << "Control panel requesting to disable processors." << std::endl; graph->disableProcessors(); refreshMeters(); masterClock->stop(); stopTimer(); startTimer(60000); // back to refresh every minute } } }