UniSet  1.4.0
UniSetTypes_i.idl
См. документацию.
00001 /* This file is part of the UniSet project
00002  * Copyright (c) 2002 Free Software Foundation, Inc.
00003  * Copyright (c) 2002 Pavel Vainerman
00004  *
00005  * This program is free software; you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License as published by
00007  * the Free Software Foundation; either version 2 of the License, or
00008  * (at your option) any later version.
00009  *
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  * GNU General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU General Public License
00016  * along with this program; if not, write to the Free Software
00017  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00018  */
00019 // --------------------------------------------------------------------------
00025 // --------------------------------------------------------------------------
00026 #ifndef UniSetTypes_i_IDL_
00027 #define UniSetTypes_i_IDL_
00028 // --------------------------------------------------------------------------
00029 //module UniSet
00030 //{
00031     module UniSetTypes
00032     {
00033         typedef string<100> BaseObjectName; 
00034         typedef long ObjectId;          
00035         typedef long MessageCode;       
00036         typedef long ThresholdId;       
00037         typedef long TimerId;           
00038         typedef string<30> ObjectType;  
00040         typedef octet ByteOfMessage;        
00041         typedef ByteOfMessage RawDataOfTransportMessage[100];   
00049         struct TransportMessage
00050         {
00051             RawDataOfTransportMessage data;
00052         };
00053         
00054 
00058         struct NodeInfo
00059         {
00060             ObjectId id;
00061             boolean connected;
00062             ObjectId infserver;
00063             ObjectId dbserver;
00064             string host;
00065             string port;
00066         };
00067         
00069         struct SimpleInfo
00070         {
00071             ObjectId id;
00072             string info;
00073         };
00074         
00075         typedef sequence<SimpleInfo> SimpleInfoSeq;
00076         
00077 
00079         struct ConsumerInfo
00080         {
00081             ObjectId id;    
00082             ObjectId node;  
00083         };
00084 
00085 
00087         typedef sequence<ObjectId> IDSeq;
00088 
00089 
00090     };// end of module UniSetTypes
00091 
00092 
00093     module UniversalIO
00094     {
00098         enum IOTypes
00099         {
00100             UnknownIOType,
00101             DigitalInput,
00102             DigitalOutput,
00103             AnalogInput,
00104             AnalogOutput
00105         };
00106         
00108          enum UIOCommand
00109          { 
00110              UIONotify,         
00111              UIODontNotify,     
00112              UIONotifyChange,   
00113              UIONotifyFirstNotNull 
00114          };
00115     
00116     };  // end of module UniversalIO 
00117     
00118 //};    // end of module UniSet
00119 // --------------------------------------------------------------------------------------------------------------
00120 #endif // of UniSetTypes_i_IDL