@@ -42,7 +42,6 @@ RecordNode::RecordNode()
4242 isRecording = false ;
4343 setFirstBlock = false ;
4444
45- settings.numInputs = 8 ;
4645 settings.numOutputs = 0 ;
4746
4847 recordingNumber = -1 ;
@@ -53,8 +52,6 @@ RecordNode::RecordNode()
5352 hasRecorded = false ;
5453 settingsNeeded = false ;
5554
56- // 128 inputs, 0 outputs
57- setPlayConfigDetails (getNumInputs (),getNumOutputs (),44100.0 ,128 );
5855 m_recordThread = new RecordThread (engineArray);
5956 m_dataQueue = new DataQueue (WRITE_BLOCK_LENGTH, DATA_BUFFER_NBLOCKS);
6057 m_eventQueue = new EventMsgQueue (EVENT_BUFFER_NEVENTS);
@@ -82,6 +79,7 @@ void RecordNode::resetConnections()
8279 nextAvailableChannel = 0 ;
8380 wasConnected = false ;
8481 spikeElectrodeIndex = 0 ;
82+ settings.numInputs = 0 ;
8583
8684 dataChannelArray.clear ();
8785 eventChannelArray.clear ();
@@ -130,11 +128,10 @@ void RecordNode::addInputChannel(const GenericProcessor* sourceNode, int chan)
130128 {
131129 int channelIndex = getNextChannel (false );
132130
133- const DataChannel* orig = sourceNode->getDataChannel (chan);
134- DataChannel* newChannel = new DataChannel (*orig);
135- newChannel->setRecordState (orig->getRecordState ());
131+ const DataChannel* orig = sourceNode->getDataChannel (chan);
132+ DataChannel* newChannel = new DataChannel (*orig);
133+ newChannel->setRecordState (orig->getRecordState ());
136134 dataChannelArray.add (newChannel);
137- setPlayConfigDetails (channelIndex+1 ,0 ,44100.0 ,128 );
138135
139136
140137 EVERY_ENGINE->addDataChannel (channelIndex,dataChannelArray[channelIndex]);
@@ -510,6 +507,9 @@ void RecordNode::process(AudioSampleBuffer& buffer)
510507
511508void RecordNode::registerProcessor (const GenericProcessor* sourceNode)
512509{
510+ settings.numInputs += sourceNode->getNumOutputs ();
511+ setPlayConfigDetails (getNumInputs (), getNumOutputs (), 44100.0 , 128 );
512+
513513 EVERY_ENGINE->registerProcessor (sourceNode);
514514}
515515
0 commit comments