diff --git a/Builds/MacOSX/open-ephys.xcodeproj/project.xcworkspace/xcuserdata/Josh.xcuserdatad/UserInterfaceState.xcuserstate b/Builds/MacOSX/open-ephys.xcodeproj/project.xcworkspace/xcuserdata/Josh.xcuserdatad/UserInterfaceState.xcuserstate index 120f08ba407cad0f998c821c1c158a5c9a36dfac..650660544b11bbcadfe93f15926969abffb103fa 100755 Binary files a/Builds/MacOSX/open-ephys.xcodeproj/project.xcworkspace/xcuserdata/Josh.xcuserdatad/UserInterfaceState.xcuserstate and b/Builds/MacOSX/open-ephys.xcodeproj/project.xcworkspace/xcuserdata/Josh.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Source/Audio/AudioComponent.cpp b/Source/Audio/AudioComponent.cpp index e2dfac3c1c9c07e59accca7550d0f3a8aed7461a..5c729673fb4a36b5b58abeb537395ae165837556 100644 --- a/Source/Audio/AudioComponent.cpp +++ b/Source/Audio/AudioComponent.cpp @@ -157,7 +157,7 @@ void AudioComponent::beginCallbacks() restartDevice(); - const MessageManagerLock mmLock; // add a lock to prevent crashes + //const MessageManagerLock mmLock; // add a lock to prevent crashes std::cout << std::endl << "Adding audio callback." << std::endl; deviceManager.addAudioCallback(graphPlayer); @@ -167,6 +167,8 @@ void AudioComponent::beginCallbacks() void AudioComponent::endCallbacks() { + + // const MessageManagerLock mmLock; // add a lock to prevent crashes std::cout << std::endl << "Removing audio callback." << std::endl; deviceManager.removeAudioCallback(graphPlayer); diff --git a/Source/Processors/ProcessorGraph.cpp b/Source/Processors/ProcessorGraph.cpp index e083058c82f250b002301c4678f492fceea30898..58cc463532475806ef36b3dfcc3bef3ed0512899 100644 --- a/Source/Processors/ProcessorGraph.cpp +++ b/Source/Processors/ProcessorGraph.cpp @@ -710,28 +710,28 @@ void ProcessorGraph::setRecordState(bool isRecording) // inform other processors that recording will begin -// for (int i = 0; i < getNumNodes(); i++) -// { -// Node* node = getNode(i); -// if (node->nodeId != OUTPUT_NODE_ID) -// { -// GenericProcessor* p = (GenericProcessor*) node->getProcessor(); -// -// if (isRecording) -// p->startRecording(); -// else -// p->stopRecording(); -// -// } -// } -// -// // actually start recording -// if (isRecording) -// { -// getRecordNode()->setParameter(1,10.0f); -// } else { -// getRecordNode()->setParameter(0,10.0f); -// } + for (int i = 0; i < getNumNodes(); i++) + { + Node* node = getNode(i); + if (node->nodeId != OUTPUT_NODE_ID) + { + GenericProcessor* p = (GenericProcessor*) node->getProcessor(); + + if (isRecording) + p->startRecording(); + else + p->stopRecording(); + + } + } + + // actually start recording + if (isRecording) + { + getRecordNode()->setParameter(1,10.0f); + } else { + getRecordNode()->setParameter(0,10.0f); + } } diff --git a/Source/Processors/SpikeDisplayNode.cpp b/Source/Processors/SpikeDisplayNode.cpp index 9fa35f4c93108f3a6f8e55e54fdc634822b11dc6..5b1274ee723f436fd7076d697434fa3ca6799c48 100755 --- a/Source/Processors/SpikeDisplayNode.cpp +++ b/Source/Processors/SpikeDisplayNode.cpp @@ -63,7 +63,7 @@ AudioProcessorEditor* SpikeDisplayNode::createEditor() bool SpikeDisplayNode::enable() { - std::cout<<"SpikeDisplayNode::enable()"<<std::endl; + std::cout << "SpikeDisplayNode::enable()" << std::endl; SpikeDisplayEditor* editor = (SpikeDisplayEditor*) getEditor(); editor->enable(); return true; @@ -72,7 +72,7 @@ bool SpikeDisplayNode::enable() bool SpikeDisplayNode::disable() { - std::cout<<"SpikeDisplayNode disabled!"<<std::endl; + std::cout << "SpikeDisplayNode disabled!" << std::endl; SpikeDisplayEditor* editor = (SpikeDisplayEditor*) getEditor(); editor->disable(); return true; @@ -174,7 +174,7 @@ void SpikeDisplayNode::handleEvent(int eventType, MidiMessage& event, int sample if (eventType == SPIKE) { - const MessageManagerLock mmLock; // get the lock to prevent the midi buffer from being read + // const MessageManagerLock mmLock; // get the lock to prevent the midi buffer from being read eventBuffer->addEvent(event, 0); } diff --git a/Source/Processors/Visualization/SpikeDisplayCanvas.cpp b/Source/Processors/Visualization/SpikeDisplayCanvas.cpp index 025b9dad184a4a634a9b0245e8f74bef1daea23c..9ad5fa0a945e6bda8b302b62717c01ab2a3a25e7 100755 --- a/Source/Processors/Visualization/SpikeDisplayCanvas.cpp +++ b/Source/Processors/Visualization/SpikeDisplayCanvas.cpp @@ -137,7 +137,7 @@ RecordNode* SpikeDisplayCanvas::getRecordNode() void SpikeDisplayCanvas::processSpikeEvents() { - const MessageManagerLock mmLock; // get the lock to prevent the midi buffer from being updated + //const MessageManagerLock mmLock; // get the lock to prevent the midi buffer from being updated if (spikeBuffer->getNumEvents() > 0) { @@ -505,29 +505,33 @@ void SpikePlot::processSpikeObject(const SpikeObject& s) if (aboveThreshold && isRecording) { // write spike to disk - // writeSpike(s); + writeSpike(s); } } void SpikePlot::startRecording() { - //openFile(); + + openFile(); isRecording = true; - + + } void SpikePlot::stopRecording() { - // closeFile(); + + closeFile(); isRecording = false; + } void SpikePlot::openFile() { //const MessageManagerLock mmLock; - dataDirectory = File("/Users/Josh/Programming/open-ephys/GUI/Builds/MacOSX/build/Debug");//recordNode->getDataDirectory(); + dataDirectory = recordNode->getDataDirectory();//File("/Users/Josh/Programming/open-ephys/GUI/Builds/MacOSX/build/Debug"); //recordNode->getDataDirectory(); filename = dataDirectory.getFullPathName(); filename += File::separator;