Commit da30e9ae authored by Pavel Vainerman's avatar Pavel Vainerman

Небольшая оптимизация...

parent 1fd3e894
......@@ -28,8 +28,6 @@ Version 2.0
- сделать MultiChannelSlave (слушает несколько каналов, но в SM сохраняет данные
только от одного, при пропаже связи переключается на другой и т.д. по кругу)
- Сделать поддержку threshold_aid (порогов) для процесса ModbusMaster
// --- Оптимизация.. --- //
- сделать ли ObjectId short?
- "продумать" функцию key()... может наложить ограничение на диапазон id..
......
......@@ -74,7 +74,7 @@ bool DBInterface::insert( const string& q )
queryok=false;
return false;
}
queryok=true;
return true;
}
......@@ -90,7 +90,6 @@ bool DBInterface::query( const string& q )
return false;
}
lastQ = q;
result = mysql_store_result(mysql); // _use_result - некорректно работает с _num_rows
if( numRows()==0 )
......@@ -200,7 +199,7 @@ MYSQL_RES* DBInterface::listFields( const string& table, const string& wild )
// MYSQL_FIELD *field = mysql_fetch_fields(res);
// cout << field << " | ";
for( unsigned int i = 0; i<cols; i++)
{
{
cout << row[i] << " | ";
}
......@@ -241,6 +240,6 @@ string DBInterface::addslashes( const string& str )
tmp << "\\";
tmp << str[i];
}
return tmp.str();
return tmp.str();
}
......@@ -33,7 +33,7 @@
class DBInterface
{
public:
DBInterface();
~DBInterface();
......@@ -45,13 +45,13 @@ class DBInterface
bool connect( const std::string& host, const std::string& user, const std::string& pswd,
const std::string& dbname);
bool close();
bool query(const std::string& q);
const std::string lastQuery();
bool insert(const std::string& q);
std::string addslashes(const std::string& str);
/*!
проверка связи с БД.
в случае отсутсвия попытка восстановить...
......@@ -60,7 +60,7 @@ class DBInterface
/*! связь с БД установлена (была) */
bool isConnection();
bool nextRecord();
void freeResult();
......@@ -68,20 +68,20 @@ class DBInterface
unsigned int numRows();
bool moveToRow(int ind);
int insert_id();
const MYSQL_ROW getRow();
const std::string error();
MYSQL_ROW Row;
// *******************
const char* gethostinfo();
protected:
private:
MYSQL_RES *result;
MYSQL *mysql;
std::string lastQ;
......
......@@ -31,8 +31,6 @@
#include <sqlite3.h>
#include "PassiveTimer.h"
// ----------------------------------------------------------------------------
class SQLiteResult;
// ----------------------------------------------------------------------------
/*! \page SQLiteIntarface Интерфейс к SQLite
Пример использования:
......@@ -83,6 +81,8 @@ class SQLiteResult;
// PRAGMA journal_mode = MEMORY
// При этом конечно есть риск потерять данные при выключении..
// ----------------------------------------------------------------------------
class SQLiteResult;
// ----------------------------------------------------------------------------
class SQLiteInterface
{
public:
......
......@@ -25,8 +25,8 @@ class PID
\param Ts - интервал расчёта данных, [сек] (интервал между шагами расчёта).
Ts - должно быть больше нуля
*/
void step( double X, double Z, double Ts );
void step( const double& X, const double& Z, const double& Ts );
/*! рестарт регулятора... */
void reset();
......@@ -41,7 +41,6 @@ class PID
double vlim; /*!< максимальное(минимальное) разрешённое значение (для любого растущего во времени коэффициента)
защита от переполнения
*/
double d0;
double d1;
double d2;
......@@ -51,7 +50,7 @@ class PID
double prevTs;
friend std::ostream& operator<<(std::ostream& os, PID& p );
friend std::ostream& operator<<(std::ostream& os, PID* p )
{
return os << (*p);
......
......@@ -23,7 +23,7 @@ PID::~PID()
}
// -----------------------------------------------------------------------------
void PID::step( double X, double Z, double Ts )
void PID::step( const double& X, const double& Z, const double& Ts )
{
// Чтобы не пересчитывать коэффициенты на каждом шаге
......@@ -39,9 +39,9 @@ void PID::step( double X, double Z, double Ts )
recalc();
}
sub2 = sub1; // ошибка 2 шага назад
sub1 = sub; // ошибка 1 шаг назад
sub = Z-X; // текущая ошибка
sub2 = sub1;// ошибка 2 шага назад
sub1 = sub; // ошибка 1 шаг назад
sub = Z-X; // текущая ошибка
// NOTE: в первоисточнике было "текущее"(X) - "заданное"(Z),
// но правильно именно Z-X (проверено!)
......
......@@ -70,12 +70,6 @@ void PassiveObject::setID( UniSetTypes::ObjectId id_ )
// ------------------------------------------------------------------------------------------
void PassiveObject::init( ProxyManager* _mngr )
{
if(mngr)
mngr->detachObject(id);
mngr->attachObject(this,id);
#if 0
if( _mngr == mngr || !_mngr )
return;
......@@ -85,7 +79,6 @@ void PassiveObject::init( ProxyManager* _mngr )
mngr = _mngr;
mngr->attachObject(this,id);
#endif
}
// ------------------------------------------------------------------------------------------
......
......@@ -783,7 +783,7 @@ string Configuration::getRepSectionName( const string& sec, xmlNode* secnode )
ucrit << msg.str() << endl;
throw SystemError(msg.str());
}
secnode = node;
string ret(unixml.getProp(node,"section"));
......
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