Skip to content
Snippets Groups Projects
Commit a1885371 authored by Aaron Cuevas Lopez's avatar Aaron Cuevas Lopez
Browse files

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

parents 7882d8e1 4f3fbd4b
Branches
Tags
No related merge requests found
......@@ -727,19 +727,20 @@ void GenericProcessor::addEvent(MidiBuffer& eventBuffer,
uint8 numBytes,
uint8* eventData)
{
uint8* data = new uint8[5+numBytes];
uint8* data = new uint8[6+numBytes];
data[0] = type; // event type
data[1] = nodeId; // processor ID automatically added
data[2] = eventId; // event ID (1 = on, 0 = off, usually)
data[3] = eventChannel; // event channel
data[4] = 1; // saving flag
memcpy(data + 5, eventData, numBytes);
data[5] = (uint8) channels[0]->sourceNodeId; // source node ID (for nSamples)
memcpy(data + 6, eventData, numBytes);
//std::cout << "Node id: " << data[1] << std::endl;
eventBuffer.addEvent(data, // raw data
5 + numBytes, // total bytes
6 + numBytes, // total bytes
sampleNum); // sample index
//if (type == TTL)
......
......@@ -155,28 +155,30 @@ void LfpDisplayNode::handleEvent(int eventType, MidiMessage& event, int sampleNu
{
const uint8* dataptr = event.getRawData();
int eventSourceNode = *(dataptr+1);
int eventNodeId = *(dataptr+1);
int eventId = *(dataptr+2);
int eventChannel = *(dataptr+3);
int eventTime = event.getTimeStamp();
int nSamples = numSamples.at(eventSourceNode);
int eventSourceNodeId = *(dataptr+5);
int nSamples = numSamples.at(eventSourceNodeId);
int samplesToFill = nSamples - eventTime;
// std::cout << "Received event from " << eventSourceNode << ", channel "
// << eventChannel << ", with ID " << eventId << ", copying to "
// << channelForEventSource[eventSourceNode] << std::endl;
// << channelForEventSource[eventSourceNode] << std::endl;
////
int bufferIndex = (displayBufferIndex[channelForEventSource[eventSourceNode]] + eventTime) % displayBuffer->getNumSamples();
int bufferIndex = (displayBufferIndex[channelForEventSource[eventSourceNodeId]] + eventTime) % displayBuffer->getNumSamples();
if (eventId == 1)
{
ttlState[eventSourceNode] |= (1L << eventChannel);
ttlState[eventSourceNodeId] |= (1L << eventChannel);
}
else
{
ttlState[eventSourceNode] &= ~(1L << eventChannel);
ttlState[eventSourceNodeId] &= ~(1L << eventChannel);
}
if (samplesToFill + bufferIndex < displayBuffer->getNumSamples())
......@@ -184,11 +186,11 @@ void LfpDisplayNode::handleEvent(int eventType, MidiMessage& event, int sampleNu
//std::cout << bufferIndex << " " << samplesToFill << " " << ttlState[eventSourceNode] << std::endl;
displayBuffer->copyFrom(channelForEventSource[eventSourceNode], // destChannel
displayBuffer->copyFrom(channelForEventSource[eventSourceNodeId], // destChannel
bufferIndex, // destStartSample
arrayOfOnes, // source
samplesToFill, // numSamples
float(ttlState[eventSourceNode])); // gain
float(ttlState[eventSourceNodeId])); // gain
}
else
{
......@@ -200,19 +202,19 @@ void LfpDisplayNode::handleEvent(int eventType, MidiMessage& event, int sampleNu
//std::cout << bufferIndex << " " << block1Size << " " << ttlState << std::endl;
displayBuffer->copyFrom(channelForEventSource[eventSourceNode], // destChannel
displayBuffer->copyFrom(channelForEventSource[eventSourceNodeId], // destChannel
bufferIndex, // destStartSample
arrayOfOnes, // source
block1Size, // numSamples
float(ttlState[eventSourceNode])); // gain
float(ttlState[eventSourceNodeId])); // gain
//std::cout << 0 << " " << block2Size << " " << ttlState << std::endl;
displayBuffer->copyFrom(channelForEventSource[eventSourceNode], // destChannel
displayBuffer->copyFrom(channelForEventSource[eventSourceNodeId], // destChannel
0, // destStartSample
arrayOfOnes, // source
block2Size, // numSamples
float(ttlState[eventSourceNode])); // gain
float(ttlState[eventSourceNodeId])); // gain
}
......
......@@ -182,8 +182,7 @@ void PhaseDetector::process(AudioSampleBuffer& buffer,
module.inputChan >= 0 &&
module.inputChan < buffer.getNumChannels())
{
for (int i = 0; i < getNumSamples(channels[module.inputChan]->sourceNodeId); i++)
for (int i = 0; i < getNumSamples(module.inputChan); i++)
{
const float sample = *buffer.getReadPointer(module.inputChan, i);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment