diff options
Diffstat (limited to 'modules/CIAO/ciao/Deployment_Events.idl')
-rw-r--r-- | modules/CIAO/ciao/Deployment_Events.idl | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/modules/CIAO/ciao/Deployment_Events.idl b/modules/CIAO/ciao/Deployment_Events.idl new file mode 100644 index 00000000000..b0559dfe164 --- /dev/null +++ b/modules/CIAO/ciao/Deployment_Events.idl @@ -0,0 +1,95 @@ +// $Id$ + +/** + * @file Deployment_Events.idl + * + * @brief A collection of IDL data types for CIAO pub/sub services deployment. + * + * @author Gan Deng + */ + +#if !defined (CIAO_DEPLOYMENT_EVENT_SERVICES_IDL) +#define CIAO_DEPLOYMENT_EVENT_SERVICES_IDL + +#include "tao/StringSeq.pidl" + +// EventServiceType definition +#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> + +module CIAO +{ + module DAnCE + { + /// Each element in the EventSourceSet denotes a event source id + typedef string EventSourceId; + + typedef sequence<EventSourceId> EventSourceSet; + + /// Event Filters + enum FilterType + { + CONJUNCTION, + DISJUNCTION, + LOGICAL_AND, + NEGATE + }; + + struct EventFilter + { + string name; + FilterType type; + EventSourceSet sources; + }; + typedef sequence<EventFilter> EventFilters; + + struct AddrServer + { + string name; + unsigned short port; + string address; + }; + typedef sequence<AddrServer> AddrServers; + + struct UDPSender + { + string name; + string addr_serv_id; + }; + typedef sequence<UDPSender> UDPSenders; + + struct UPDReceiver + { + string name; + string addr_serv_id; + boolean is_multicast; + unsigned short listen_port; + }; + typedef sequence<UPDReceiver> UPDReceivers; +/* + struct EventHandler + { + string name; + boolean is_multicast; + }; + typedef sequence<EventHandler> EventHandlers; + */ + + /// CIAO specific extension to describe pub/sub services in the deployment + struct EventServiceDeploymentDescription + { + string name; + string node; + EventServiceType type; + string svc_cfg_file; + + EventFilters filters; + AddrServers addr_servs; + UDPSenders senders; + UPDReceivers receivers; + }; + typedef sequence < EventServiceDeploymentDescription > + EventServiceDeploymentDescriptions; + }; +}; + +#endif /* CIAO_DEPLOYMENT_EVENT_SERVICES_IDL */ |