Skip to content

Commit a35fef5

Browse files
authored
Merge pull request #331 from tne-lab/car-fix
CAR fix because of xml being loaded twice
2 parents 9853535 + e92627c commit a35fef5

2 files changed

Lines changed: 30 additions & 30 deletions

File tree

Plugins/CAR/CAR.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ void CAR::setAffectedChannelState (int channel, bool newState)
135135
if (! newState)
136136
m_affectedChannels.removeFirstMatchingValue (channel);
137137
else
138-
m_affectedChannels.add (channel);
138+
m_affectedChannels.addIfNotAlreadyThere (channel);
139139
}
140140

141141
void CAR::saveCustomChannelParametersToXml(XmlElement* channelElement,

Source/Processors/GenericProcessor/GenericProcessor.cpp

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1038,38 +1038,38 @@ void GenericProcessor::loadFromXml()
10381038
update(); // make sure settings are updated
10391039
if (parametersAsXml != nullptr)
10401040
{
1041-
if (!m_isParamsWereLoaded)
1042-
{
1043-
std::cout << "Loading parameters for " << m_name << std::endl;
1041+
if (!m_isParamsWereLoaded)
1042+
{
1043+
std::cout << "Loading parameters for " << m_name << std::endl;
10441044

1045-
// use parametersAsXml to restore state
1046-
loadCustomParametersFromXml();
1045+
// use parametersAsXml to restore state
1046+
loadCustomParametersFromXml();
10471047

1048-
// load editor parameters
1049-
forEachXmlChildElement(*parametersAsXml, xmlNode)
1050-
{
1051-
if (xmlNode->hasTagName("EDITOR"))
1052-
{
1053-
getEditor()->loadEditorParameters(xmlNode);
1054-
}
1055-
}
1056-
}
1057-
forEachXmlChildElement(*parametersAsXml, xmlNode)
1058-
{
1059-
if (xmlNode->hasTagName("CHANNEL"))
1060-
{
1061-
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::DATA_CHANNEL);
1062-
}
1063-
else if (xmlNode->hasTagName("EVENTCHANNEL"))
1064-
{
1065-
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::EVENT_CHANNEL);
1066-
}
1067-
else if (xmlNode->hasTagName("SPIKECHANNEL"))
1068-
{
1069-
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::SPIKE_CHANNEL);
1070-
}
1071-
}
1048+
// load editor parameters
1049+
forEachXmlChildElement(*parametersAsXml, xmlNode)
1050+
{
1051+
if (xmlNode->hasTagName("EDITOR"))
1052+
{
1053+
getEditor()->loadEditorParameters(xmlNode);
1054+
}
1055+
}
10721056

1057+
forEachXmlChildElement(*parametersAsXml, xmlNode)
1058+
{
1059+
if (xmlNode->hasTagName("CHANNEL"))
1060+
{
1061+
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::DATA_CHANNEL);
1062+
}
1063+
else if (xmlNode->hasTagName("EVENTCHANNEL"))
1064+
{
1065+
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::EVENT_CHANNEL);
1066+
}
1067+
else if (xmlNode->hasTagName("SPIKECHANNEL"))
1068+
{
1069+
loadChannelParametersFromXml(xmlNode, InfoObjectCommon::SPIKE_CHANNEL);
1070+
}
1071+
}
1072+
}
10731073
}
10741074

10751075
m_isParamsWereLoaded = true;

0 commit comments

Comments
 (0)