Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
U
uniset2
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
UniSet project repositories
uniset2
Commits
64b66074
Commit
64b66074
authored
Dec 15, 2013
by
Pavel Vainerman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Убрал все функции работы с датчиками кроме getValue и setValue
parent
1df373a0
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
39 additions
and
89 deletions
+39
-89
IOController_i.idl
IDL/Processes/IOController_i.idl
+11
-71
UniSetTypes_i.idl
IDL/UniSetTypes/UniSetTypes_i.idl
+5
-7
libuniset.spec
conf/libuniset.spec
+15
-2
configure.ac
configure.ac
+2
-3
UniSetTypes.cc
src/ObjectRepository/UniSetTypes.cc
+6
-6
No files found.
IDL/Processes/IOController_i.idl
View file @
64b66074
...
@@ -50,7 +50,6 @@ interface IOController_i : ObjectsManager_i
...
@@ -50,7 +50,6 @@ interface IOController_i : ObjectsManager_i
string
err
;
string
err
;
}
;
}
;
/*
!
Значение
не
определено
/*
!
Значение
не
определено
(
например
:
обрыв
датчика
)
(
например
:
обрыв
датчика
)
*/
*/
...
@@ -66,33 +65,19 @@ interface IOController_i : ObjectsManager_i
...
@@ -66,33 +65,19 @@ interface IOController_i : ObjectsManager_i
UniSetTypes
::
ObjectId
node
; /*!< узел на котором он находится */
UniSetTypes
::
ObjectId
node
; /*!< узел на котором он находится */
}
;
}
;
boolean
getState
(
in
SensorInfo
si
)
raises
(
NameNotFound
,
Undefined
)
;
long
getValue
(
in
SensorInfo
si
)
raises
(
NameNotFound
,
Undefined
)
;
long
getValue
(
in
SensorInfo
si
)
raises
(
NameNotFound
,
Undefined
)
;
void
setState
(
in
SensorInfo
si
,
in
boolean
state
,
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
NameNotFound
)
;
void
setValue
(
in
SensorInfo
si
,
in
long
value
,
void
setValue
(
in
SensorInfo
si
,
in
long
value
,
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
NameNotFound
)
;
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
NameNotFound
)
;
void
saveState
(
in
SensorInfo
si
,
in
boolean
state
,
in
UniversalIO
::
IOTypes
type
,
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
IOBadParam
,
NameNotFound
)
;
void
saveValue
(
in
SensorInfo
si
,
in
long
value
,
in
UniversalIO
::
IOTypes
type
,
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
IOBadParam
,
NameNotFound
)
;
//
установка
неопределённого
состояния
//
установка
неопределённого
состояния
//
(
пока
работает
только
для
аналоговых
датчиков
)
//
(
пока
работает
только
для
аналоговых
датчиков
)
void
setUndefinedState
(
in
SensorInfo
si
,
in
boolean
undefined
,
in
UniSetTypes
::
ObjectId
sup_id
)
void
setUndefinedState
(
in
SensorInfo
si
,
in
boolean
undefined
,
in
UniSetTypes
::
ObjectId
sup_id
)
raises
(
NameNotFound
)
;
raises
(
NameNotFound
)
;
//
fast
version
(
не
вырабатывает
исключения
)
//
fast
version
(
не
вырабатывает
исключения
)
oneway
void
fastSaveState
(
in
SensorInfo
si
,
in
boolean
state
,
in
UniversalIO
::
IOTypes
type
,
in
UniSetTypes
::
ObjectId
sup_id
)
;
oneway
void
fastSaveValue
(
in
SensorInfo
si
,
in
long
value
,
in
UniversalIO
::
IOTypes
type
,
in
UniSetTypes
::
ObjectId
sup_id
)
;
oneway
void
fastSetState
(
in
SensorInfo
si
,
in
boolean
state
,
in
UniSetTypes
::
ObjectId
sup_id
)
;
oneway
void
fastSetValue
(
in
SensorInfo
si
,
in
long
value
,
in
UniSetTypes
::
ObjectId
sup_id
)
;
oneway
void
fastSetValue
(
in
SensorInfo
si
,
in
long
value
,
in
UniSetTypes
::
ObjectId
sup_id
)
;
UniversalIO
::
IOType
s
getIOType
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
UniversalIO
::
IOType
getIOType
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
//
---
Интерфейс
для
конфигурирования
---
//
---
Интерфейс
для
конфигурирования
---
...
@@ -113,59 +98,33 @@ interface IOController_i : ObjectsManager_i
...
@@ -113,59 +98,33 @@ interface IOController_i : ObjectsManager_i
CalibrateInfo
getCalibrateInfo
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
CalibrateInfo
getCalibrateInfo
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
//
---
Интерфес
получения
информации
о
всех
датчиках
---
//
---
Интерфес
получения
информации
о
всех
датчиках
---
/*
!
Информация
о
дискретном
датчике
*/
struct
DigitalIOInfo
{
boolean
state
; /*!< состояние */
boolean
undefined
; /*!< признак неопределённости значения */
boolean
blocked
; /*!< данное значение блокировано другим */
boolean
real_state
; /*!< запомненное состояние, до блокировки */
UniversalIO
::
IOTypes
type
; /*!< тип */
long
priority
; /*!< приоритет уведомления */
IOController_i
::
SensorInfo
si
;
boolean
default_val
; /*!< значение по умолчанию */
long
tv_sec
; /*!< время последнего изменения датчика, секунды (gettimeofday) */
long
tv_usec
; /*!< время последнего изменения датчика, мксек (gettimeofday) */
}
;
/*
!
Информация
об
аналоговом
датчике
*/
/*
!
Информация
об
аналоговом
датчике
*/
struct
Analog
IOInfo
struct
Sensor
IOInfo
{
{
long
value
; /*!< значение */
long
value
; /*!< значение */
boolean
undefined
; /*!< признак неопределённости значения */
boolean
undefined
; /*!< признак неопределённости значения */
boolean
blocked
; /*!< данное значение блокировано другим */
boolean
blocked
; /*!< данное значение блокировано другим */
long
real_value
; /*!< запомненное состояние, до блокировки */
long
real_value
; /*!< запомненное состояние, до блокировки */
UniversalIO
::
IOType
s
type
; /*!< тип */
UniversalIO
::
IOType
type
; /*!< тип */
long
priority
; /*!< приоритет уведомления */
long
priority
; /*!< приоритет уведомления */
IOController_i
::
SensorInfo
si
;
IOController_i
::
SensorInfo
si
;
long
default_val
; /*!< значение по умолчанию */
long
default_val
; /*!< значение по умолчанию */
CalibrateInfo
ci
; /*!< калибровочные параметры */
CalibrateInfo
ci
; /*!< калибровочные параметры */
long
tv_sec
; /*!< время последнего изменения датчика, секунды (gettimeofday) */
long
tv_sec
; /*!< время последнего изменения датчика, секунды (gettimeofday) */
long
tv_usec
; /*!< время последнего изменения датчика, мксек (gettimeofday) */
long
tv_usec
; /*!< время последнего изменения датчика, мксек (gettimeofday) */
boolean
dbignore
; /*!< не сохранять изменения в БД */
}
;
}
;
typedef
sequence
<
AnalogIOInfo
>
ASensorInfoSeq
;
typedef
sequence
<
SensorIOInfo
>
SensorInfoSeq
;
typedef
sequence
<
DigitalIOInfo
>
DSensorInfoSeq
;
ASensorInfoSeq
getAnalogSensorsMap
()
;
SensorInfoSeq
getSensorsMap
()
;
DSensorInfoSeq
getDigitalSensorsMap
()
;
SensorIOInfo
getSInfo
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
DigitalIOInfo
getDInfo
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
AnalogIOInfo
getAInfo
(
in
SensorInfo
si
)
raises
(
NameNotFound
)
;
//
--
Функции
работы
со
списком
датчиков
--
//
--
Функции
работы
со
списком
датчиков
--
//
Для
простоты
функции
сделаны
универсальными
и
не
различающими
//
дискретные
или
аналоговые
датчики
или
выходы
/*
!
Получение
состояния
датчиков.
*/
/*
!
Получение
состояния
дискретных
или
аналоговых
датчиков.
SensorInfoSeq
getSensorSeq
(
in
UniSetTypes
::
IDSeq
lst
)
;
При
этом
используется
структура
аналоговых
(
как
наиболее
полная
)
.
Для
определения
типа
используйте
поле
'type'
.
*/
ASensorInfoSeq
getSensorSeq
(
in
UniSetTypes
::
IDSeq
lst
)
;
/*
!
Информация
о
"выходе"
*/
/*
!
Информация
о
"выходе"
*/
struct
OutInfo
struct
OutInfo
...
@@ -198,7 +157,7 @@ interface IOController_i : ObjectsManager_i
...
@@ -198,7 +157,7 @@ interface IOController_i : ObjectsManager_i
/*
!
Информация
о
дискретном
датчике
*/
/*
!
Информация
о
дискретном
датчике
*/
struct
ShortMap
struct
ShortMap
{
{
UniversalIO
::
IOType
s
type
;
UniversalIO
::
IOType
type
;
long
value
;
long
value
;
long
id
;
long
id
;
}
;
}
;
...
@@ -225,17 +184,6 @@ interface IONotifyController_i : IOController_i
...
@@ -225,17 +184,6 @@ interface IONotifyController_i : IOController_i
{
{
}
;
}
;
/*
!
Заказ
уведомления
об
изменении
дискретного
датчика
*
\
sa
UniversalIO
::
UniversalIOController
::
askState
()
*/
void
askState
(
in
SensorInfo
si
,
in
UniSetTypes
::
ConsumerInfo
ci
,
in
UniversalIO
::
UIOCommand
cmd
)
raises
(
NameNotFound
,
IOBadParam
)
;
/*
!
Заказ
уведомления
об
изменении
аналогового
датчика
*
\
sa
UniversalIO
::
UniversalIOController
::
askValue
()
*/
void
askValue
(
in
SensorInfo
si
,
in
UniSetTypes
::
ConsumerInfo
ci
,
in
UniversalIO
::
UIOCommand
cmd
)
raises
(
NameNotFound
,
IOBadParam
)
;
/*
!
Универсальная
функция
заказа
уведомления
об
изменнии
датчика.
/*
!
Универсальная
функция
заказа
уведомления
об
изменнии
датчика.
*
Позволяет
заказывать
как
дискретные
так
и
аналоговые
датчики
*
Позволяет
заказывать
как
дискретные
так
и
аналоговые
датчики
*
\
sa
UniversalIO
::
UniversalIOController
::
askSensor
()
*
\
sa
UniversalIO
::
UniversalIOController
::
askSensor
()
...
@@ -256,14 +204,6 @@ interface IONotifyController_i : IOController_i
...
@@ -256,14 +204,6 @@ interface IONotifyController_i : IOController_i
in
long
lowLimit
,
in
long
hiLimit
,
in
long
sensibility
,
in
long
lowLimit
,
in
long
hiLimit
,
in
long
sensibility
,
in
UniversalIO
::
UIOCommand
cmd
)
raises
(
NameNotFound
,
IOBadParam
,
BadRange
)
;
in
UniversalIO
::
UIOCommand
cmd
)
raises
(
NameNotFound
,
IOBadParam
,
BadRange
)
;
/*
!
Универсальная
функция
заказа
уведомления
об
изменнии
выхода.
*
Позволяет
заказывать
как
дискретные
так
и
аналоговые
выходы
*
\
sa
UniversalIO
::
UniversalIOController
::
askOutput
()
*/
void
askOutput
(
in
SensorInfo
si
,
in
UniSetTypes
::
ConsumerInfo
ci
,
in
UniversalIO
::
UIOCommand
cmd
)
raises
(
NameNotFound
,
IOBadParam
)
;
/*
!
/*
!
Заказ
сразу
списка
объектов.
Заказ
сразу
списка
объектов.
\
return
Возвращает
список
объектов
заказ
по
котором
не
прошёл.
\
return
Возвращает
список
объектов
заказ
по
котором
не
прошёл.
...
@@ -300,7 +240,7 @@ interface IONotifyController_i : IOController_i
...
@@ -300,7 +240,7 @@ interface IONotifyController_i : IOController_i
struct
ThresholdList
struct
ThresholdList
{
{
IOController_i
::
SensorInfo
si
;
IOController_i
::
SensorInfo
si
;
UniversalIO
::
IOType
s
type
;
UniversalIO
::
IOType
type
;
long
value
;
long
value
;
ThresholdInfoSeq
tlist
;
ThresholdInfoSeq
tlist
;
}
;
}
;
...
...
IDL/UniSetTypes/UniSetTypes_i.idl
View file @
64b66074
...
@@ -32,7 +32,6 @@
...
@@ -32,7 +32,6 @@
{
{
typedef
string
<
100
>
BaseObjectName
;
typedef
string
<
100
>
BaseObjectName
;
typedef
long
ObjectId
; /*!< идентификатор объекта */
typedef
long
ObjectId
; /*!< идентификатор объекта */
typedef
long
MessageCode
; /*!< код сообщения */
typedef
long
ThresholdId
; /*!< идентификатор порога */
typedef
long
ThresholdId
; /*!< идентификатор порога */
typedef
long
TimerId
; /*!< идентификатор таймера */
typedef
long
TimerId
; /*!< идентификатор таймера */
typedef
string
<
30
>
ObjectType
; /*!< тип объекта */
typedef
string
<
30
>
ObjectType
; /*!< тип объекта */
...
@@ -59,7 +58,6 @@
...
@@ -59,7 +58,6 @@
{
{
ObjectId
id
;
ObjectId
id
;
boolean
connected
;
boolean
connected
;
ObjectId
infserver
;
ObjectId
dbserver
;
ObjectId
dbserver
;
string
host
;
string
host
;
string
port
;
string
port
;
...
@@ -95,13 +93,13 @@
...
@@ -95,13 +93,13 @@
/*
!
/*
!
*
Типы
входов
/
выходов
*
Типы
входов
/
выходов
*/
*/
enum
IOType
s
enum
IOType
{
{
UnknownIOType
,
UnknownIOType
,
D
igitalInput
,
D
I
,
//
DigitalInput
D
igitalOutput
,
D
O
,
//
DigitalOutput
A
nalogInput
,
A
I
,
//
AnalogInput
AnalogOutput
A
O
//
A
nalogOutput
}
;
}
;
/*
!
Разрешенные
команды
для
всех
контроллеров
ввода
/
вывода
*/
/*
!
Разрешенные
команды
для
всех
контроллеров
ввода
/
вывода
*/
...
...
conf/libuniset.spec
View file @
64b66074
...
@@ -7,8 +7,8 @@
...
@@ -7,8 +7,8 @@
%define oname uniset
%define oname uniset
Name: libuniset
Name: libuniset
Version:
1.7
Version:
2.0
Release: alt
3
Release: alt
0.1
Summary: UniSet - library for building distributed industrial control systems
Summary: UniSet - library for building distributed industrial control systems
...
@@ -335,6 +335,19 @@ mv -f %buildroot%python_sitelibdir_noarch/* %buildroot%python_sitelibdir/%oname
...
@@ -335,6 +335,19 @@ mv -f %buildroot%python_sitelibdir_noarch/* %buildroot%python_sitelibdir/%oname
%exclude %_pkgconfigdir/libUniSet.pc
%exclude %_pkgconfigdir/libUniSet.pc
%changelog
%changelog
2.0
----
- rename "IOTypes" --> "IOType"
- rename DigitalInput --> DI
- rename DigitalOutput --> DO
- rename AnalogInput --> AI
- rename AnalogOutput --> AO
- remove deprecated services: InfoServer,TimeService,SystemGuard
- remove deprecated intefaces: MessageInterface
- remove deprecated messages: AlarmMessage, InfoMessage, DBMessage
* Tue Dec 10 2013 Pavel Vainerman <pv@altlinux.ru> 1.7-alt3
* Tue Dec 10 2013 Pavel Vainerman <pv@altlinux.ru> 1.7-alt3
- add RRDServer
- add RRDServer
...
...
configure.ac
View file @
64b66074
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
# See doc: http://www.gnu.org/software/hello/manual/autoconf/Generic-Programs.html
# See doc: http://www.gnu.org/software/hello/manual/autoconf/Generic-Programs.html
# AC_PREREQ(2.59)
# AC_PREREQ(2.59)
AC_INIT([uniset], [
1.7
.0], pv@etersoft.ru)
AC_INIT([uniset], [
2.0
.0], pv@etersoft.ru)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME,AC_PACKAGE_VERSION)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME,AC_PACKAGE_VERSION)
# AC_CONFIG_MACRO_DIR([m4])
# AC_CONFIG_MACRO_DIR([m4])
...
@@ -30,7 +30,7 @@ AC_ENABLE_SHARED(yes)
...
@@ -30,7 +30,7 @@ AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
AC_ENABLE_STATIC(no)
AM_PROG_LIBTOOL
AM_PROG_LIBTOOL
LIBVER=
1:7
:0
LIBVER=
2:0
:0
AC_SUBST(LIBVER)
AC_SUBST(LIBVER)
# Checks for libraries.
# Checks for libraries.
...
@@ -227,7 +227,6 @@ AC_CONFIG_FILES([Makefile
...
@@ -227,7 +227,6 @@ AC_CONFIG_FILES([Makefile
Utilities/NullController/Makefile
Utilities/NullController/Makefile
Utilities/SViewer-text/Makefile
Utilities/SViewer-text/Makefile
Utilities/SMonit/Makefile
Utilities/SMonit/Makefile
Utilities/InfoServer/Makefile
Utilities/MBTester/Makefile
Utilities/MBTester/Makefile
Utilities/SImitator/Makefile
Utilities/SImitator/Makefile
Utilities/codegen/Makefile
Utilities/codegen/Makefile
...
...
src/ObjectRepository/UniSetTypes.cc
View file @
64b66074
...
@@ -297,21 +297,21 @@ using namespace UniSetTypes;
...
@@ -297,21 +297,21 @@ using namespace UniSetTypes;
}
}
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
UniversalIO
::
IOType
s
UniSetTypes
::
getIOType
(
const
std
::
string
stype
)
UniversalIO
::
IOType
UniSetTypes
::
getIOType
(
const
std
::
string
stype
)
{
{
if
(
stype
==
"DI"
||
stype
==
"di"
)
if
(
stype
==
"DI"
||
stype
==
"di"
)
return
UniversalIO
::
D
igitalInput
;
return
UniversalIO
::
D
I
;
if
(
stype
==
"AI"
||
stype
==
"ai"
)
if
(
stype
==
"AI"
||
stype
==
"ai"
)
return
UniversalIO
::
A
nalogInput
;
return
UniversalIO
::
A
I
;
if
(
stype
==
"DO"
||
stype
==
"do"
)
if
(
stype
==
"DO"
||
stype
==
"do"
)
return
UniversalIO
::
D
igitalOutput
;
return
UniversalIO
::
D
O
;
if
(
stype
==
"AO"
||
stype
==
"ao"
)
if
(
stype
==
"AO"
||
stype
==
"ao"
)
return
UniversalIO
::
A
nalogOutput
;
return
UniversalIO
::
A
O
;
return
UniversalIO
::
UnknownIOType
;
return
UniversalIO
::
UnknownIOType
;
}
}
// ------------------------------------------------------------------------------------------
// ------------------------------------------------------------------------------------------
std
::
ostream
&
UniSetTypes
::
operator
<<
(
std
::
ostream
&
os
,
const
UniversalIO
::
IOType
s
t
)
std
::
ostream
&
UniSetTypes
::
operator
<<
(
std
::
ostream
&
os
,
const
UniversalIO
::
IOType
t
)
{
{
if
(
t
==
UniversalIO
::
AnalogInput
)
if
(
t
==
UniversalIO
::
AnalogInput
)
return
os
<<
"AI"
;
return
os
<<
"AI"
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment