Commit be27f950 authored by Pavel Vainerman's avatar Pavel Vainerman

(UNetUDP): добавил возможность задавать свою секцию со списком узлов

(--prefix-nodes-confnode name)
parent 0630e30e
...@@ -167,6 +167,12 @@ ...@@ -167,6 +167,12 @@
<item rra="RRA:MAX:0.5:1:4320"/> <item rra="RRA:MAX:0.5:1:4320"/>
</rrd> </rrd>
</RRDServer1> </RRDServer1>
<specnet unet_broadcast_ip="192.168.1.255" unet_broadcast_ip2="192.168.122.255">
<item id="3100" ip="127.0.0.1" name="LocalhostNode" textname="Локальный узел" unet_ignore="0" unet_port="2048"/>
<item id="3101" ip="127.0.0.1" name="LocalhostNode" textname="Локальный узел" unet_ignore="0" unet_port="2048"/>
</specnet>
</settings> </settings>
<ObjectsMap idfromfile="1"> <ObjectsMap idfromfile="1">
<!-- <!--
...@@ -342,6 +348,23 @@ ...@@ -342,6 +348,23 @@
<item id="6061" name="TestProc50"/> <item id="6061" name="TestProc50"/>
<item id="6062" name="MBSlave2"/> <item id="6062" name="MBSlave2"/>
<item id="6063" name="MBMultiSlave1"/> <item id="6063" name="MBMultiSlave1"/>
<item id="6064" name="MBMultiSlave2"/>
<item id="6065" name="MBMultiSlave3"/>
<item id="6066" name="MBMultiSlave4"/>
<item id="6067" name="MBMultiSlave5"/>
<item id="6068" name="MBMultiSlave6"/>
<item id="6069" name="MBMultiSlave7"/>
<item id="6070" name="MBMultiSlave8"/>
<item id="6071" name="MBMultiSlave9"/>
<item id="6072" name="MBMultiSlave10"/>
<item id="6080" name="MBSlave3"/>
<item id="6081" name="MBSlave4"/>
<item id="6082" name="MBSlave5"/>
<item id="6083" name="MBSlave6"/>
<item id="6084" name="MBSlave7"/>
<item id="6085" name="MBSlave8"/>
<item id="6086" name="MBSlave9"/>
<item id="6087" name="MBSlave10"/>
</objects> </objects>
</ObjectsMap> </ObjectsMap>
<messages idfromfile="1" name="messages"> <messages idfromfile="1" name="messages">
......
...@@ -50,10 +50,22 @@ UNetExchange::UNetExchange( UniSetTypes::ObjectId objId, UniSetTypes::ObjectId s ...@@ -50,10 +50,22 @@ UNetExchange::UNetExchange( UniSetTypes::ObjectId objId, UniSetTypes::ObjectId s
no_sender = conf->getArgInt("--" + prefix + "-nosender", it.getProp("nosender")); no_sender = conf->getArgInt("--" + prefix + "-nosender", it.getProp("nosender"));
xmlNode* nodes = conf->getXMLNodesSection(); std::string nconfname = conf->getArg2Param("--" + prefix + "-nodes-confnode", it.getProp("nodesConfNode"),"nodes");
xmlNode* nodes = 0;
if( nconfname == "nodes" )
nodes = conf->getXMLNodesSection();
else
{
auto xml = conf->getConfXML();
nodes = conf->findNode(xml->getFirstNode(), nconfname);
}
dinfo << myname << "(init): init from <" << nconfname << ">" << endl;
if( !nodes ) if( !nodes )
throw UniSetTypes::SystemError("(UNetExchange): Not found <nodes>"); throw UniSetTypes::SystemError("(UNetExchange): Not found confnode <" + nconfname +">");
UniXML::iterator n_it(nodes); UniXML::iterator n_it(nodes);
......
...@@ -52,6 +52,9 @@ ...@@ -52,6 +52,9 @@
</nodes> </nodes>
\endcode \endcode
\note Имеется возможность задавать отдельную настроечную секцию для "списка узлов" при помощи параметра
--prefix-nodes-confnode name. По умолчанию настройка ведётся по секции <nodes>
\section pgUNetUDP_Reserv Настройка резервного канала связи \section pgUNetUDP_Reserv Настройка резервного канала связи
В текущей реализации поддерживается возможность обмена по двум подсетям (эзернет-каналам). В текущей реализации поддерживается возможность обмена по двум подсетям (эзернет-каналам).
Она основана на том, что, для каждого узла помимо основного "читателя", Она основана на том, что, для каждого узла помимо основного "читателя",
......
...@@ -3,4 +3,6 @@ ...@@ -3,4 +3,6 @@
uniset2-start.sh -f ./uniset2-unetexchange --unet-name UNetExchange \ uniset2-start.sh -f ./uniset2-unetexchange --unet-name UNetExchange \
--confile test.xml --smemory-id SharedMemory \ --confile test.xml --smemory-id SharedMemory \
--unet-filter-field rs --unet-filter-value 2 --unet-maxdifferense 40 \ --unet-filter-field rs --unet-filter-value 2 --unet-maxdifferense 40 \
--dlog-add-levels info,crit,warn --dlog-add-levels info,crit,warn
#--unet-nodes-confnode specnet
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment