Skip to content
Snippets Groups Projects
Commit f629b638 authored by jvoigts's avatar jvoigts
Browse files

Merge branch 'master' of github.com:open-ephys/GUI

parents c70566db f3fe5ba2
No related branches found
No related tags found
No related merge requests found
...@@ -84,9 +84,7 @@ void ChannelMappingNode::process(AudioSampleBuffer& buffer, ...@@ -84,9 +84,7 @@ void ChannelMappingNode::process(AudioSampleBuffer& buffer,
{ {
// use copy constructor to set the data to refer to // use copy constructor to set the data to refer to
channelBuffer = buffer; //.setDataToReferTo(buffer.getArrayOfChannels(), channelBuffer = buffer;
// buffer.getNumChannels(),
// buffer.getNumSamples());
// copy it back into the buffer according to the channel mapping // copy it back into the buffer according to the channel mapping
buffer.clear(); buffer.clear();
......
...@@ -335,7 +335,7 @@ void SpikeDetector::addSpikeEvent(SpikeObject* s, MidiBuffer& eventBuffer, int p ...@@ -335,7 +335,7 @@ void SpikeDetector::addSpikeEvent(SpikeObject* s, MidiBuffer& eventBuffer, int p
s->eventType = SPIKE_EVENT_CODE; s->eventType = SPIKE_EVENT_CODE;
int numBytes = packSpike(s, spikeBuffer, 256); int numBytes = packSpike(s, spikeBuffer, MAX_SPIKE_BUFFER_LEN);
eventBuffer.addEvent(spikeBuffer, numBytes, peakIndex); eventBuffer.addEvent(spikeBuffer, numBytes, peakIndex);
...@@ -349,10 +349,7 @@ void SpikeDetector::addWaveformToSpikeObject(SpikeObject* s, ...@@ -349,10 +349,7 @@ void SpikeDetector::addWaveformToSpikeObject(SpikeObject* s,
int spikeLength = electrodes[electrodeNumber]->prePeakSamples + int spikeLength = electrodes[electrodeNumber]->prePeakSamples +
+ electrodes[electrodeNumber]->postPeakSamples; + electrodes[electrodeNumber]->postPeakSamples;
//uint8 dataSize = spikeLength*2; s->timestamp = timestamp + peakIndex;
// uint8 data[dataSize];
// uint8* dataptr = data;
s->nSamples = spikeLength; s->nSamples = spikeLength;
...@@ -399,6 +396,19 @@ void SpikeDetector::addWaveformToSpikeObject(SpikeObject* s, ...@@ -399,6 +396,19 @@ void SpikeDetector::addWaveformToSpikeObject(SpikeObject* s,
sampleIndex -= spikeLength; // reset sample index sampleIndex -= spikeLength; // reset sample index
}
void SpikeDetector::handleEvent(int eventType, MidiMessage& event, int sampleNum)
{
if (eventType == TIMESTAMP)
{
const uint8* dataptr = event.getRawData();
memcpy(&timestamp, dataptr + 4, 8); // remember to skip first four bytes
}
} }
void SpikeDetector::process(AudioSampleBuffer& buffer, void SpikeDetector::process(AudioSampleBuffer& buffer,
...@@ -410,6 +420,8 @@ void SpikeDetector::process(AudioSampleBuffer& buffer, ...@@ -410,6 +420,8 @@ void SpikeDetector::process(AudioSampleBuffer& buffer,
Electrode* electrode; Electrode* electrode;
dataBuffer = buffer; dataBuffer = buffer;
checkForEvents(events);
//std::cout << dataBuffer.getMagnitude(0,nSamples) << std::endl; //std::cout << dataBuffer.getMagnitude(0,nSamples) << std::endl;
for (int i = 0; i < electrodes.size(); i++) for (int i = 0; i < electrodes.size(); i++)
......
...@@ -167,6 +167,7 @@ private: ...@@ -167,6 +167,7 @@ private:
}; };
uint8_t* spikeBuffer;///[256]; uint8_t* spikeBuffer;///[256];
uint64_t timestamp;
Array<Electrode*> electrodes; Array<Electrode*> electrodes;
...@@ -175,6 +176,8 @@ private: ...@@ -175,6 +176,8 @@ private:
// int& currentChannel, // int& currentChannel,
// MidiBuffer& eventBuffer); // MidiBuffer& eventBuffer);
void handleEvent(int eventType, MidiMessage& event, int sampleNum);
void addSpikeEvent(SpikeObject* s, MidiBuffer& eventBuffer, int peakIndex); void addSpikeEvent(SpikeObject* s, MidiBuffer& eventBuffer, int peakIndex);
void addWaveformToSpikeObject(SpikeObject* s, void addWaveformToSpikeObject(SpikeObject* s,
int& peakIndex, int& peakIndex,
......
...@@ -540,9 +540,9 @@ void SpikePlot::writeSpike(const SpikeObject& s) ...@@ -540,9 +540,9 @@ void SpikePlot::writeSpike(const SpikeObject& s)
{ {
packSpike(&s, spikeBuffer, 256); packSpike(&s, spikeBuffer, MAX_SPIKE_BUFFER_LEN);
fwrite(spikeBuffer, 1, 256, file); fwrite(spikeBuffer, 1, MAX_SPIKE_BUFFER_LEN, file);
} }
...@@ -565,7 +565,13 @@ String SpikePlot::generateHeader() ...@@ -565,7 +565,13 @@ String SpikePlot::generateHeader()
header += name; header += name;
header += "';\n"; header += "';\n";
header += "header.channelType = 'Electrode';\n"; header += "header.num_channels = ";
header += nChannels;
header += ";\n";
header += "header.sampleRate = ";
header += String(canvas->processor->settings.sampleRate);
header += ";\n";
header = header.paddedRight(' ', HEADER_SIZE); header = header.paddedRight(' ', HEADER_SIZE);
......
...@@ -97,10 +97,10 @@ public: ...@@ -97,10 +97,10 @@ public:
void buttonClicked(Button* button); void buttonClicked(Button* button);
RecordNode* getRecordNode(); RecordNode* getRecordNode();
SpikeDisplayNode* processor;
private: private:
SpikeDisplayNode* processor;
MidiBuffer* spikeBuffer; MidiBuffer* spikeBuffer;
ScopedPointer<SpikeDisplay> spikeDisplay; ScopedPointer<SpikeDisplay> spikeDisplay;
......
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