Commit 1edb174c authored by Pavel Vainerman's avatar Pavel Vainerman

Исправил ошибку в порядоке обработки параметров командой строки и конф. файла

в IOControl.
parent dc139884
......@@ -3,7 +3,7 @@
Name: libuniset
Version: 1.0
Release: alt39
Release: alt40
Summary: UniSet - library for building distributed industrial control systems
License: GPL
Group: Development/C++
......
......@@ -65,8 +65,14 @@ IOControl::IOControl( UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID,
UniXML_iterator it(cnode);
noCards = true;
for( unsigned int i=1; i<cards.size(); i++ )
cards[i] = NULL;
buildCardsList();
for( unsigned int i=1; i<cards.size(); i++ )
{
stringstream s1;
s1 << "--" << prefix << "-dev" << i;
......@@ -76,12 +82,14 @@ IOControl::IOControl( UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID,
string iodev = conf->getArgParam(s1.str(),it.getProp(s2.str()));
if( iodev.empty() || iodev == "/dev/null" )
{
if( cards[i] == NULL )
{
unideb[Debug::LEVEL3] << myname << "(init): КАРТА N" << i
<< " ОТКЛЮЧЕНА (TestMode)!!! в КАЧЕСТВЕ УСТРОЙСТВА УКАЗАНО '"
<< iodev << "'" << endl;
cards[i] = NULL;
cout << "******************** CARD" << i << ": IO IMITATOR MODE ****************" << endl;
}
}
else
{
noCards = false;
......@@ -95,17 +103,15 @@ IOControl::IOControl( UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID,
{
stringstream t1;
t1 << s1.str() << "-subdev" << s << "-type";
stringstream t2;
t2 << s2.str() << "-subdev" << s << "-type";
string stype = conf->getArgParam(t1.str(),it.getProp(t2.str()));
string stype = conf->getArgParam(t1.str());
if( !stype.empty() )
{
ComediInterface::SubdevType st = ComediInterface::str2type(stype.c_str());
if( !stype.empty() && st == ComediInterface::Unknown )
{
ostringstream err;
err << "Unknown subdev type '" << stype << " for " << t1 << " OR " << t2;
err << "Unknown subdev type '" << stype << " for " << t1;
throw SystemError(err.str());
}
......@@ -122,7 +128,7 @@ IOControl::IOControl( UniSetTypes::ObjectId id, UniSetTypes::ObjectId icID,
}
}
buildCardsList();
unideb[Debug::INFO] << myname << "(init): result numcards=" << cards.size() << endl;
......
......@@ -151,9 +151,7 @@ class NCRestorer_XML:
*/
void setDependsFilter( const std::string filterField, const std::string filterValue="" );
/*! Установить фильтр на чтение списка 'порогов')
\note Функцию необходимо вызывать до вызова buildDependsList(...)
*/
/*! Установить фильтр на чтение списка 'порогов' */
void setThresholdsFilter( const std::string filterField, const std::string filterValue="" );
bool setFileName( const std::string& file, bool create );
......
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