summaryrefslogtreecommitdiffstats
path: root/src/effects/effectchainmanager.cpp
diff options
context:
space:
mode:
authorKshitij Gupta <kgupta119@gmail.com>2018-06-16 15:34:51 +0530
committerKshitij Gupta <kgupta119@gmail.com>2018-10-18 06:41:11 +0530
commit5502ecd5ff0f462049c18ff855e9299fd368438d (patch)
tree1b89de62577161ea48ffddbf769f60e2b44b4bb1 /src/effects/effectchainmanager.cpp
parent052fd744c53e167148fe12ef16c2c3b6b2dfc579 (diff)
Removed EffectChainManager layer
- Removed the superfluous class `EffectChainManager` whose functionality is now shifted to `EffectsManager` - Updated EffectProcessor to fix the circular include problem during compilation NOTE: XML saving/loading of effects is broken and will be re-implemented in the new architecture
Diffstat (limited to 'src/effects/effectchainmanager.cpp')
-rw-r--r--src/effects/effectchainmanager.cpp237
1 files changed, 0 insertions, 237 deletions
diff --git a/src/effects/effectchainmanager.cpp b/src/effects/effectchainmanager.cpp
deleted file mode 100644
index 682fc71f0a..0000000000
--- a/src/effects/effectchainmanager.cpp
+++ /dev/null
@@ -1,237 +0,0 @@
-#include "effects/effectchainmanager.h"
-#include "effects/effectsmanager.h"
-#include "effects/effectxmlelements.h"
-
-#include <QtDebug>
-#include <QDomDocument>
-#include <QFile>
-#include <QDir>
-
-EffectChainManager::EffectChainManager(UserSettingsPointer pConfig,
- EffectsManager* pEffectsManager)
- : QObject(pEffectsManager),
- m_pConfig(pConfig),
- m_pEffectsManager(pEffectsManager) {
-}
-
-EffectChainManager::~EffectChainManager() {
- //qDebug() << debugString() << "destroyed";
-}
-
-void EffectChainManager::registerInputChannel(const ChannelHandleAndGroup& handle_group) {
- VERIFY_OR_DEBUG_ASSERT(!m_registeredInputChannels.contains(handle_group)) {
- return;
- }
- m_registeredInputChannels.insert(handle_group);
-
- for (auto& pRack : m_standardEffectRacks) {
- pRack->registerInputChannel(handle_group);
- }
-}
-
-void EffectChainManager::registerOutputChannel(const ChannelHandleAndGroup& handle_group) {
- VERIFY_OR_DEBUG_ASSERT(!m_registeredOutputChannels.contains(handle_group)) {
- return;
- }
- m_registeredOutputChannels.insert(handle_group);
-}
-
-StandardEffectRackPointer EffectChainManager::addStandardEffectRack() {
- StandardEffectRackPointer pRack(new StandardEffectRack(
- m_pEffectsManager, this, m_standardEffectRacks.size()));
- m_standardEffectRacks.append(pRack);
- m_effectRacksByGroup.insert(pRack->getGroup(), pRack);
- return pRack;
-}
-
-StandardEffectRackPointer EffectChainManager::getStandardEffectRack(int i) {
- if (i < 0 || i >= m_standardEffectRacks.size()) {
- return StandardEffectRackPointer();
- }
- return m_standardEffectRacks[i];
-}
-
-EqualizerRackPointer EffectChainManager::addEqualizerRack() {
- EqualizerRackPointer pRack(new EqualizerRack(
- m_pEffectsManager, this, m_equalizerEffectRacks.size()));
- m_equalizerEffectRacks.append(pRack);
- m_effectRacksByGroup.insert(pRack->getGroup(), pRack);
- return pRack;
-}
-
-EqualizerRackPointer EffectChainManager::getEqualizerRack(int i) {
- if (i < 0 || i >= m_equalizerEffectRacks.size()) {
- return EqualizerRackPointer();
- }
- return m_equalizerEffectRacks[i];
-}
-
-QuickEffectRackPointer EffectChainManager::addQuickEffectRack() {
- QuickEffectRackPointer pRack(new QuickEffectRack(
- m_pEffectsManager, this, m_quickEffectRacks.size()));
- m_quickEffectRacks.append(pRack);
- m_effectRacksByGroup.insert(pRack->getGroup(), pRack);
- return pRack;
-}
-
-QuickEffectRackPointer EffectChainManager::getQuickEffectRack(int i) {
- if (i < 0 || i >= m_quickEffectRacks.size()) {
- return QuickEffectRackPointer();
- }
- return m_quickEffectRacks[i];
-}
-
-OutputEffectRackPointer EffectChainManager::addOutputsEffectRack() {
- OutputEffectRackPointer pRack(new OutputEffectRack(
- m_pEffectsManager, this));
- m_pOutputEffectRack = pRack;
- m_effectRacksByGroup.insert(pRack->getGroup(), pRack);
- return m_pOutputEffectRack;
-}
-
-OutputEffectRackPointer EffectChainManager::getMasterEffectRack() {
- return m_pOutputEffectRack;
-}
-
-EffectRackPointer EffectChainManager::getEffectRack(const QString& group) {
- return m_effectRacksByGroup.value(group);
-}
-
-void EffectChainManager::addEffectChain(EffectChainSlotPointer pEffectChainSlot) {
- if (pEffectChainSlot) {
- m_effectChainSlots.append(pEffectChainSlot);
- }
-}
-
-void EffectChainManager::removeEffectChain(EffectChainSlotPointer pEffectChainSlot) {
- if (pEffectChainSlot) {
- m_effectChainSlots.removeAll(pEffectChainSlot);
- }
-}
-
-EffectChainSlotPointer EffectChainManager::getNextEffectChain(EffectChainSlotPointer pEffectChainSlot) {
- if (m_effectChainSlots.isEmpty())
- return EffectChainSlotPointer();
-
- if (!pEffectChainSlot) {
- return m_effectChainSlots[0];
- }
-
- int indexOf = m_effectChainSlots.lastIndexOf(pEffectChainSlot);
- if (indexOf == -1) {
- qWarning() << debugString() << "WARNING: getNextEffectChain called for an unmanaged EffectChain";
- return m_effectChainSlots[0];
- }
-
- return m_effectChainSlots[(indexOf + 1) % m_effectChainSlots.size()];
-}
-
-EffectChainSlotPointer EffectChainManager::getPrevEffectChain(EffectChainSlotPointer pEffectChainSlot) {
- if (m_effectChainSlots.isEmpty())
- return EffectChainSlotPointer();
-
- if (!pEffectChainSlot) {
- return m_effectChainSlots[m_effectChainSlots.size()-1];
- }
-
- int indexOf = m_effectChainSlots.lastIndexOf(pEffectChainSlot);
- if (indexOf == -1) {
- qWarning() << debugString() << "WARNING: getPrevEffectChain called for an unmanaged EffectChain";
- return m_effectChainSlots[m_effectChainSlots.size()-1];
- }
-
- return m_effectChainSlots[(indexOf - 1 + m_effectChainSlots.size()) % m_effectChainSlots.size()];
-}
-
-void EffectChainManager::refeshAllRacks() {
- for (const auto& pRack: m_standardEffectRacks) {
- pRack->refresh();
- }
- for (const auto& pRack: m_equalizerEffectRacks) {
- pRack->refresh();
- }
- for (const auto& pRack: m_quickEffectRacks) {
- pRack->refresh();
- }
-}
-
-// NOTE(Kshitij) : Use Effect Preset in constructor
-// bool EffectChainManager::saveEffectChains() {
-// QDomDocument doc("MixxxEffects");
-
-// QString blank = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
-// "<" + EffectXml::Root + " schemaVersion=\"" +
-// QString::number(EffectXml::kXmlSchemaVersion) + "\">\n"
-// "</" + EffectXml::Root + ">\n";
-// doc.setContent(blank);
-
-// QDomElement rootNode = doc.documentElement();
-
-// for (EffectRackPointer pRack : m_standardEffectRacks) {
-// rootNode.appendChild(pRack->toXml(&doc));
-// }
-// // TODO? Save QuickEffects in effects.xml too, or keep stored in ConfigObjects?
-// // foreach(EffectRackPointer pRack, m_quickEffectRacks) {
-// // rootNode.appendChild(pRack->toXML(&doc));
-// // }
-
-// QDir settingsPath(m_pConfig->getSettingsPath());
-
-// if (!settingsPath.exists()) {
-// return false;
-// }
-
-// QFile file(settingsPath.absoluteFilePath("effects.xml"));
-
-// // TODO(rryan): overwrite the right way.
-// if (!file.open(QIODevice::Truncate | QIODevice::WriteOnly)) {
-// return false;
-// }
-
-// QString effectsXml = doc.toString();
-// file.write(effectsXml.toUtf8());
-// file.close();
-// return true;
-// }
-
-// NOTE(Kshitij) : Use EffectPreset to load effect chains
-// void EffectChainManager::loadEffectChains() {
-// QDir settingsPath(m_pConfig->getSettingsPath());
-// QFile file(settingsPath.absoluteFilePath("effects.xml"));
-// QDomDocument doc;
-
-// QDomElement emptyChainElement = doc.createElement(EffectXml::Chain);
-// // Check that XML file can be opened and is valid XML
-// if (!file.open(QIODevice::ReadOnly) || !doc.setContent(&file)) {
-// return;
-// }
-
-// QDomElement root = doc.documentElement();
-// QDomElement rackElement = XmlParse::selectElement(root, EffectXml::Rack);
-// QDomElement chainsElement = XmlParse::selectElement(rackElement, EffectXml::ChainsRoot);
-// QDomNodeList chainsList = chainsElement.elementsByTagName(EffectXml::Chain);
-
-// for (int i = 0; i < chainsList.count(); ++i) {
-// QDomNode chainNode = chainsList.at(i);
-
-// if (chainNode.isElement()) {
-// QDomElement chainElement = chainNode.toElement();
-// EffectChainPointer pChain = EffectChain::createFromXml(
-// m_pEffectsManager, chainElement);
-// if (pChain) { // null = ejected chains.
-// // Note(Kshitij) : Add the effect chain to standardEffectRack
-// EffectChainSlotPointer pChainSlot = getStandardEffectRack(0)->getEffectChainSlot(i);
-// if (pChainSlot) {
-// pChainSlot->loadEffectChainToSlot(pChain);
-// pChainSlot->loadChainSlotFromXml(chainElement);
-// pChain->addToEngine(getStandardEffectRack(0)->getEngineEffectRack(), i);
-// pChain->updateEngineState();
-// }
-// }
-// }
-// }
-// }
-
-bool EffectChainManager::isAdoptMetaknobValueEnabled() const {
- return m_pConfig->getValue(ConfigKey("[Effects]", "AdoptMetaknobValue"), true);
-}