void OutputPatch_Test::dump() { QByteArray uni(513, char(0)); uni[0] = 100; uni[169] = 50; uni[511] = 25; OutputMap om(m_doc, 4); OutputPatch* op = new OutputPatch(this); OutputPluginStub* stub = static_cast<OutputPluginStub*> (m_doc->ioPluginCache()->plugins().at(0)); QVERIFY(stub != NULL); op->set(stub, 0); QVERIFY(stub->m_universe[0] == (char) 0); QVERIFY(stub->m_universe[169] == (char) 0); QVERIFY(stub->m_universe[511] == (char) 0); op->dump(uni); QVERIFY(stub->m_universe[0] == (char) 100); QVERIFY(stub->m_universe[169] == (char) 50); QVERIFY(stub->m_universe[511] == (char) 25); delete op; }
void OutputPatch_Test::patch() { OutputMap om(m_doc, 4); OutputPluginStub* stub = static_cast<OutputPluginStub*> (m_doc->ioPluginCache()->plugins().at(0)); QVERIFY(stub != NULL); OutputPatch* op = new OutputPatch(this); op->set(stub, 0); QVERIFY(op->m_plugin == stub); QVERIFY(op->m_output == 0); QVERIFY(op->pluginName() == stub->name()); QVERIFY(op->outputName() == stub->outputs()[0]); QVERIFY(stub->m_openOutputs.size() == 1); QVERIFY(stub->m_openOutputs.at(0) == 0); op->set(stub, 3); QVERIFY(op->m_plugin == stub); QVERIFY(op->m_output == 3); QVERIFY(op->pluginName() == stub->name()); QVERIFY(op->outputName() == stub->outputs()[3]); QVERIFY(stub->m_openOutputs.size() == 1); QVERIFY(stub->m_openOutputs.at(0) == 3); op->reconnect(); QVERIFY(op->m_plugin == stub); QVERIFY(op->m_output == 3); QVERIFY(op->pluginName() == stub->name()); QVERIFY(op->outputName() == stub->outputs()[3]); QVERIFY(stub->m_openOutputs.size() == 1); QVERIFY(stub->m_openOutputs.at(0) == 3); delete op; QVERIFY(stub->m_openOutputs.size() == 0); }
void OutputMap::initPatch() { /* Create a dummy output plugin and put it to the plugins list */ m_dummyOut = new DummyOutPlugin(); m_dummyOut->init(); appendPlugin(m_dummyOut); for (int i = 0; i < m_universes; i++) { OutputPatch* outputPatch; /* The dummy output plugin provides always as many outputs as QLC has supported universes. So, assign each of these outputs, by default, to each universe */ outputPatch = new OutputPatch(this); outputPatch->set(m_dummyOut, i); m_patch.insert(i, outputPatch); } }