diff --git a/audio/drain/Process.cpp b/audio/drain/Process.cpp index 58147de..9fe3c40 100644 --- a/audio/drain/Process.cpp +++ b/audio/drain/Process.cpp @@ -440,46 +440,46 @@ bool audio::drain::Process::processIn(void* _inData, return false; } -static void link(etk::FSNode& _node, const etk::String& _first, const etk::String& _op, const etk::String& _second, bool _isLink=true) { +static void link(ememory::SharedPtr& _io, const etk::String& _first, const etk::String& _op, const etk::String& _second, bool _isLink=true) { if (_op == "->") { if (_isLink) { - _node << " " << _first << " -> " << _second << ";\n"; + *_io << " " << _first << " -> " << _second << ";\n"; } else { - _node << " " << _first << " -> " << _second << " [style=dashed];\n"; + *_io << " " << _first << " -> " << _second << " [style=dashed];\n"; } } else if (_op == "<-") { - _node << " " << _first << " -> " <<_second<< " [color=transparent];\n"; + *_io << " " << _first << " -> " <<_second<< " [color=transparent];\n"; if (_isLink) { - _node << " " << _second << " -> " << _first << " [constraint=false];\n"; + *_io << " " << _second << " -> " << _first << " [constraint=false];\n"; } else { - _node << " " << _second << " -> " << _first << " [constraint=false, style=dashed];\n"; + *_io << " " << _second << " -> " << _first << " [constraint=false, style=dashed];\n"; } } } -void audio::drain::Process::generateDot(etk::FSNode& _node, +void audio::drain::Process::generateDot(ememory::SharedPtr& _io, int32_t _offset, int32_t _basicID, etk::String& _nameIn, etk::String& _nameOut, bool _reserseGraph) { - _node << " subgraph clusterNode_" << _basicID << "_process {\n"; - _node << " label=\"Drain::Process" << (_reserseGraph?"_R":"_N") << "\";\n"; - _node << " node [shape=ellipse];\n"; + *_io << " subgraph clusterNode_" << _basicID << "_process {\n"; + *_io << " label=\"Drain::Process" << (_reserseGraph?"_R":"_N") << "\";\n"; + *_io << " node [shape=ellipse];\n"; if (_reserseGraph == false) { // ---------------------- // -- STEP 1 -- // ---------------------- _nameIn = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_in"; - _node << " " << _nameIn << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) + *_io << " " << _nameIn << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) << "\\n freq=" << getInputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getInputConfig().getMap()) << "\\n in\" ];\n"; // ---------------------- // -- STEP 2 -- // ---------------------- etk::String connectString = _nameIn; - _node << " node [shape=box];\n"; + *_io << " node [shape=box];\n"; // ---------------------- // -- STEP 3 -- // ---------------------- @@ -488,46 +488,46 @@ void audio::drain::Process::generateDot(etk::FSNode& _node, continue; } etk::String connectStringSecond = "ALGO_" + etk::toString(_basicID) + "__" + etk::toString(iii); - _node << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; + *_io << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; if (m_listAlgo[iii]->getName() != "") { - _node << "\\nname='" << m_listAlgo[iii]->getName() << "'"; + *_io << "\\nname='" << m_listAlgo[iii]->getName() << "'"; } etk::String tmpDesc = m_listAlgo[iii]->getDotDesc(); if (tmpDesc.size() != 0) { - _node << tmpDesc; + *_io << tmpDesc; } - _node << "\" ];\n"; - link(_node, connectString, "->", connectStringSecond); + *_io << "\" ];\n"; + link(_io, connectString, "->", connectStringSecond); connectString = connectStringSecond; } // ---------------------- // -- STEP 4 -- // ---------------------- - _node << " node [shape=ellipse];\n"; + *_io << " node [shape=ellipse];\n"; // ---------------------- // -- STEP 5 -- // ---------------------- _nameOut = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_out"; - _node << " " << _nameOut << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) + *_io << " " << _nameOut << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) << "\\n freq=" << getOutputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getOutputConfig().getMap()) << "\\n out\" ];\n"; // ---------------------- // -- STEP 6 -- // ---------------------- - link(_node, connectString, "->", _nameOut); + link(_io, connectString, "->", _nameOut); } else { // ---------------------- // -- STEP 1 -- // ---------------------- _nameIn = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_out"; - _node << " " << _nameIn << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) + *_io << " " << _nameIn << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) << "\\n freq=" << getOutputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getOutputConfig().getMap()) << "\\n out\" ];\n"; // ---------------------- // -- STEP 2 -- // ---------------------- etk::String connectString = _nameIn; - _node << " node [shape=box];\n"; + *_io << " node [shape=box];\n"; // ---------------------- // -- STEP 3 -- // ---------------------- @@ -537,73 +537,73 @@ void audio::drain::Process::generateDot(etk::FSNode& _node, continue; } etk::String connectStringSecond = "ALGO_" + etk::toString(_basicID) + "__" + etk::toString(iii); - _node << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; + *_io << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; if (m_listAlgo[iii]->getName() != "") { - _node << "\\nname='" << m_listAlgo[iii]->getName() << "'"; + *_io << "\\nname='" << m_listAlgo[iii]->getName() << "'"; } etk::String tmpDesc = m_listAlgo[iii]->getDotDesc(); if (tmpDesc.size() != 0) { - _node << tmpDesc; + *_io << tmpDesc; } - _node << "\" ];\n"; - //link(_node, connectStringSecond, "<-", connectString); - link(_node, connectString, "<-", connectStringSecond); - //link(_node, connectStringSecond, "->", connectString); + *_io << "\" ];\n"; + //link(_io, connectStringSecond, "<-", connectString); + link(_io, connectString, "<-", connectStringSecond); + //link(_io, connectStringSecond, "->", connectString); connectString = connectStringSecond; } // ---------------------- // -- STEP 4 -- // ---------------------- - _node << " node [shape=ellipse];\n"; + *_io << " node [shape=ellipse];\n"; // ---------------------- // -- STEP 5 -- // ---------------------- _nameOut = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_in"; - _node << " " << _nameOut << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) + *_io << " " << _nameOut << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) << "\\n freq=" << getInputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getInputConfig().getMap()) << "\\n in\" ];\n"; // ---------------------- // -- STEP 6 -- // ---------------------- - link(_node, connectString, "<-", _nameOut); + link(_io, connectString, "<-", _nameOut); } - _node << " }\n"; + *_io << " }\n"; } -void audio::drain::Process::generateDotProcess(etk::FSNode& _node, int32_t _offset, int32_t _basicID, etk::String& _nameIn, etk::String& _nameOut, bool _reserseGraph) { - _node << " subgraph clusterNode_" << _basicID << "_process {\n"; - _node << " label=\"Drain::Process" << (_reserseGraph?"_R":"_N") << "\";\n"; - _node << " node [shape=ellipse];\n"; +void audio::drain::Process::generateDotProcess(ememory::SharedPtr& _io, int32_t _offset, int32_t _basicID, etk::String& _nameIn, etk::String& _nameOut, bool _reserseGraph) { + *_io << " subgraph clusterNode_" << _basicID << "_process {\n"; + *_io << " label=\"Drain::Process" << (_reserseGraph?"_R":"_N") << "\";\n"; + *_io << " node [shape=ellipse];\n"; if (_reserseGraph == true) { _nameIn = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_in"; - _node << " " << _nameIn << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) + *_io << " " << _nameIn << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) << "\\n freq=" << getInputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getInputConfig().getMap()) << "\\n in\" ];\n"; } else { _nameIn = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_out"; - _node << " " << _nameIn << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) + *_io << " " << _nameIn << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) << "\\n freq=" << getOutputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getOutputConfig().getMap()) << "\\n out\" ];\n"; } etk::String connectString = _nameIn; - _node << " node [shape=box];\n"; + *_io << " node [shape=box];\n"; if (_reserseGraph == false) { for (size_t iii=0; iiigetType() << "'"; + *_io << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; if (m_listAlgo[iii]->getName() != "") { - _node << "\\nname='" << m_listAlgo[iii]->getName() << "'"; + *_io << "\\nname='" << m_listAlgo[iii]->getName() << "'"; } etk::String tmpDesc = m_listAlgo[iii]->getDotDesc(); if (tmpDesc.size() != 0) { - _node << tmpDesc; + *_io << tmpDesc; } - _node << "\" ];\n"; - link(_node, connectString, "->", connectStringSecond); + *_io << "\" ];\n"; + link(_io, connectString, "->", connectStringSecond); connectString = connectStringSecond; } } else { @@ -613,37 +613,37 @@ void audio::drain::Process::generateDotProcess(etk::FSNode& _node, int32_t _offs continue; } etk::String connectStringSecond = "ALGO_" + etk::toString(_basicID) + "__" + etk::toString(iii); - _node << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; + *_io << " " << connectStringSecond << " [label=\"ALGO\\ntype='" << m_listAlgo[iii]->getType() << "'"; if (m_listAlgo[iii]->getName() != "") { - _node << "\\nname='" << m_listAlgo[iii]->getName() << "'"; + *_io << "\\nname='" << m_listAlgo[iii]->getName() << "'"; } etk::String tmpDesc = m_listAlgo[iii]->getDotDesc(); if (tmpDesc.size() != 0) { - _node << tmpDesc; + *_io << tmpDesc; } - _node << "\" ];\n"; - link(_node, connectStringSecond, "<-", connectString); + *_io << "\" ];\n"; + link(_io, connectStringSecond, "<-", connectString); connectString = connectStringSecond; } } - _node << " node [shape=ellipse];\n"; + *_io << " node [shape=ellipse];\n"; if (_reserseGraph == true) { _nameOut = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_out"; - _node << " " << _nameOut << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) + *_io << " " << _nameOut << " [ label=\"format=" << etk::toString(getOutputConfig().getFormat()) << "\\n freq=" << getOutputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getOutputConfig().getMap()) << "\\n out\" ];\n"; } else { _nameOut = "INTERFACE_ALGO_" + etk::toString(_basicID) + "_in"; - _node << " " << _nameOut << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) + *_io << " " << _nameOut << " [ label=\"format=" << etk::toString(getInputConfig().getFormat()) << "\\n freq=" << getInputConfig().getFrequency() << "\\n channelMap=" << etk::toString(getInputConfig().getMap()) << "\\n in\" ];\n"; } if (_reserseGraph == false) { - link(_node, connectString, "->", _nameOut); + link(_io, connectString, "->", _nameOut); } else { - link(_node, _nameOut, "<-", connectString); + link(_io, _nameOut, "<-", connectString); } - _node << " }\n"; + *_io << " }\n"; } diff --git a/audio/drain/Process.hpp b/audio/drain/Process.hpp index 1246b28..2e119bd 100644 --- a/audio/drain/Process.hpp +++ b/audio/drain/Process.hpp @@ -7,12 +7,12 @@ #include #include +#include #include