Commit b9666421 authored by Pavel Vainerman's avatar Pavel Vainerman

(codegen): добавил новый параметр no_vmonit="1" для секции <variables>,

т.к. по умолчанию для всех переменных "мониторинг" включён.
parent d215f501
...@@ -49,7 +49,6 @@ SQL: ...@@ -49,7 +49,6 @@ SQL:
Debug: Debug:
- дописать в codegen документацию по запуску и управлению логами через LogServer - дописать в codegen документацию по запуску и управлению логами через LogServer
Version 2.5 Version 2.5
============ ============
- smonit запись значений в файл (csv?,sqlite?) - smonit запись значений в файл (csv?,sqlite?)
......
...@@ -865,6 +865,10 @@ end_private(false) ...@@ -865,6 +865,10 @@ end_private(false)
// ===================== &lt;variables&gt; ===================== // ===================== &lt;variables&gt; =====================
<xsl:for-each select="//variables/item"> <xsl:for-each select="//variables/item">
<xsl:if test="normalize-space(@no_vmonit)=''">
vmonit(<xsl:value-of select="@name"/>);
</xsl:if>
<xsl:if test="normalize-space(@min)!=''"> <xsl:if test="normalize-space(@min)!=''">
if( <xsl:value-of select="@name"/> &lt; <xsl:value-of select="@min"/> ) if( <xsl:value-of select="@name"/> &lt; <xsl:value-of select="@min"/> )
{ {
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
<item name="test_long" type="long" max="100" default="110" no_range_exception="1"/> <item name="test_long" type="long" max="100" default="110" no_range_exception="1"/>
<item name="test_float" type="float" max="100.0" default="50.0" /> <item name="test_float" type="float" max="100.0" default="50.0" />
<item name="test_double" type="double" max="100.340" default="52.044" /> <item name="test_double" type="double" max="100.340" default="52.044" />
<item name="test_bool" type="bool" private="1"/> <item name="test_bool" type="bool" private="1" no_vmonit="1"/>
<item name="test_str" type="str" default="ddd"/> <item name="test_str" type="str" default="ddd"/>
</variables> </variables>
<smap> <smap>
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
Name: libuniset2 Name: libuniset2
Version: 2.1 Version: 2.1
Release: alt7.3 Release: alt7.4
Summary: UniSet - library for building distributed industrial control systems Summary: UniSet - library for building distributed industrial control systems
...@@ -456,6 +456,9 @@ mv -f %buildroot%python_sitelibdir_noarch/* %buildroot%python_sitelibdir/%oname ...@@ -456,6 +456,9 @@ mv -f %buildroot%python_sitelibdir_noarch/* %buildroot%python_sitelibdir/%oname
# .. # ..
%changelog %changelog
* Mon Jun 08 2015 Pavel Vainerman <pv@altlinux.ru> 2.1-alt7.4
- (codegen): add no_vmonit="1" flag for <variables>
* Sun Jun 07 2015 Pavel Vainerman <pv@altlinux.ru> 2.1-alt7.3 * Sun Jun 07 2015 Pavel Vainerman <pv@altlinux.ru> 2.1-alt7.3
- (vmonitor): added support vmonitor for standart components - (vmonitor): added support vmonitor for standart components
(SharedMemory,ModbusSlave,ModbusMaster,UNetUDP) (SharedMemory,ModbusSlave,ModbusMaster,UNetUDP)
......
...@@ -126,7 +126,7 @@ ...@@ -126,7 +126,7 @@
- \b no_check_id - no_check_id="1" означает игнорировать (не генерировать исключение) при запуске процесса, если идентификатор датчика не найден. - \b no_check_id - no_check_id="1" означает игнорировать (не генерировать исключение) при запуске процесса, если идентификатор датчика не найден.
- \b force="1" - принудительно перезаписывать значение в SharedMemory на каждом шаге. Действует только для \b vartype="out" - \b force="1" - принудительно перезаписывать значение в SharedMemory на каждом шаге. Действует только для \b vartype="out"
- \b loglevel="1" - признак того, что данный датчик управляет логами для этого процесса. См. \ref pg_Codegen_loglevel. - \b loglevel="1" - признак того, что данный датчик управляет логами для этого процесса. См. \ref pg_Codegen_loglevel.
Помимо этого необходимо указывать свойство \b iotype. Помимо этого необходимо указывать свойство \b iotype.
\warning Поле \b iotype должно \b ОБЯЗАТЕЛЬНО совпадать с типом датчика к которому \warning Поле \b iotype должно \b ОБЯЗАТЕЛЬНО совпадать с типом датчика к которому
будет привязана данная переменная. Т.к. генерируется код для работы с датчиком в зависимости от его типа. будет привязана данная переменная. Т.к. генерируется код для работы с датчиком в зависимости от его типа.
...@@ -170,6 +170,7 @@ ...@@ -170,6 +170,7 @@
- \b no_range_exception - не генерировать исключение в случае выхода переменной за указанный диапазон (\b min или \b max). - \b no_range_exception - не генерировать исключение в случае выхода переменной за указанный диапазон (\b min или \b max).
- \b const - const="1" - сгенерировать как константу. - \b const - const="1" - сгенерировать как константу.
- \b private | \b public | \b protected - Область видимости. По умолчанию: \b protected. - \b private | \b public | \b protected - Область видимости. По умолчанию: \b protected.
- \b no_vmonit="1" - отключение "удалённого контроля за переменной". См. \ref pg_Codegen_vmonitor.
В генерируемом коде для каждой переменной происходит её инициализация по следующему шаблону (псевдокод): В генерируемом коде для каждой переменной происходит её инициализация по следующему шаблону (псевдокод):
\code \code
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2015-06-07+03:00 // generate timestamp: 2015-06-08+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#ifndef UObject_SK_H_ #ifndef UObject_SK_H_
#define UObject_SK_H_ #define UObject_SK_H_
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ. ВСЕ ВАШИ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ.
*/ */
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
// generate timestamp: 2015-06-07+03:00 // generate timestamp: 2015-06-08+03:00
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
#include <memory> #include <memory>
#include <iomanip> #include <iomanip>
...@@ -181,6 +181,15 @@ end_private(false) ...@@ -181,6 +181,15 @@ end_private(false)
// ===================== <variables> ===================== // ===================== <variables> =====================
// ===================== end of <variables> ===================== // ===================== end of <variables> =====================
vmonit(sleep_msec);
vmonit(resetMsgTime);
vmonit(forceOut);
vmonit(argprefix);
vmonit(idHeartBeat);
vmonit(maxHeartBeat);
vmonit(activateTimeout);
vmonit(smReadyTimeout);
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
...@@ -364,6 +373,7 @@ UniSetTypes::SimpleInfo* UObject_SK::getInfo() ...@@ -364,6 +373,7 @@ UniSetTypes::SimpleInfo* UObject_SK::getInfo()
ostringstream inf; ostringstream inf;
inf << i->info << endl; inf << i->info << endl;
inf << "LogServer: " << logserv_host << ":" << logserv_port << endl;
inf << dumpIO() << endl; inf << dumpIO() << endl;
inf << vmon.pretty_str() << endl; inf << vmon.pretty_str() << endl;
inf << getMonitInfo() << endl; inf << getMonitInfo() << endl;
......
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