UniSet 2.32.1
UniSetTypes_i.idl
1/*
2 * Copyright (c) 2015 Pavel Vainerman.
3 *
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as
6 * published by the Free Software Foundation, version 2.1.
7 *
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * Lesser General Lesser Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16// --------------------------------------------------------------------------
20// --------------------------------------------------------------------------
21#ifndef UniSetTypes_i_IDL_
22#define UniSetTypes_i_IDL_
23// --------------------------------------------------------------------------
24#include "UniSetBaseConstants.idl"
25// --------------------------------------------------------------------------
26//module UniSet
27//{
28 module uniset
29 {
30 typedef long ObjectId;
31 typedef long ThresholdId;
32 typedef long TimerId;
33 typedef string<SizeOfObjectType> ObjectType;
35 typedef octet ByteOfMessage;
36 typedef ByteOfMessage RawDataOfTransportMessage[SizeOfTransportMessage];
45 {
47 ObjectId consumer;
48 };
49
50
54 struct NodeInfo
55 {
56 ObjectId id;
57 boolean connected;
58 ObjectId dbserver;
59 string<30> host;
60 string<10> port;
61 };
62
65 {
66 ObjectId id;
67 string info;
68 };
69
70 typedef sequence<SimpleInfo> SimpleInfoSeq;
71
72
79
86
87
89 typedef sequence<ObjectId> IDSeq;
90
91
93 struct Timespec
94 {
95 unsigned long long sec; /* Seconds. */
96 unsigned long nsec; /* nanoseconds. */
97 };
98
99 };// end of module uniset
100
101
102 module UniversalIO
103 {
107 enum IOType
108 {
109 UnknownIOType,
110 DI, // DigitalInput
111 DO, // DigitalOutput
112 AI, // AnalogInput
113 AO // AnalogOutput
114 };
115
117 enum UIOCommand
118 {
119 UIONotify,
120 UIODontNotify,
121 UIONotifyChange,
122 UIONotifyFirstNotNull
123 };
124
125 }; // end of module UniversalIO
126
127//}; // end of module UniSet
128// --------------------------------------------------------------------------------------------------------------
129#endif // of UniSetTypes_i_IDL
Definition Calibration.h:27
ByteOfMessage RawDataOfTransportMessage[SizeOfTransportMessage]
Definition UniSetTypes_i.idl:36
string< SizeOfObjectType > ObjectType
Definition UniSetTypes_i.idl:33
long ThresholdId
Definition UniSetTypes_i.idl:31
sequence< ObjectId > IDSeq
Definition UniSetTypes_i.idl:89
long ObjectId
Definition UniSetTypes_i.idl:30
octet ByteOfMessage
Definition UniSetTypes_i.idl:35
long TimerId
Definition UniSetTypes_i.idl:32
Definition UniSetTypes_i.idl:75
ObjectId id
Definition UniSetTypes_i.idl:76
ObjectId node
Definition UniSetTypes_i.idl:77
Definition UniSetTypes_i.idl:55
Definition UniSetTypes_i.idl:82
ObjectId node
Definition UniSetTypes_i.idl:84
ObjectId id
Definition UniSetTypes_i.idl:83
Definition UniSetTypes_i.idl:65
Definition UniSetTypes_i.idl:94
Definition UniSetTypes_i.idl:45