div class="twikiTopBar">

Chair for Computer Aided Medical Procedures & Augmented Reality
Lehrstuhl für Informatikanwendungen in der Medizin & Augmented Reality

CosNotifyComm.idl

00001 //File: CosNotifyComm.idl
00002 //Part of the Notification Service
00003 
00004 #ifndef _COS_NOTIFY_COMM_IDL_
00005 #define _COS_NOTIFY_COMM_IDL_
00006 
00007 // omniORB specific pragmas to insert extra includes into the stub header.
00008 
00009 #pragma prefix "omg.org"
00010 
00011 #include <CosNotification.idl>
00012 #include <CosEventComm.idl>
00013 
00014 module CosNotifyComm {
00015 
00016         exception InvalidEventType { CosNotification::EventType type; };
00017 
00018         interface NotifyPublish {
00019 
00020                 void offer_change (
00021                                 in CosNotification::EventTypeSeq added,
00022                                 in CosNotification::EventTypeSeq removed )
00023                         raises ( InvalidEventType );
00024 
00025         }; // NotifyPublish
00026 
00027         interface NotifySubscribe {
00028 
00029                 void subscription_change(
00030                                 in CosNotification::EventTypeSeq added,
00031                                 in CosNotification::EventTypeSeq removed )
00032                         raises ( InvalidEventType );
00033 
00034         }; // NotifySubscribe
00035 
00036         interface PushConsumer :
00037                 NotifyPublish,
00038                 CosEventComm::PushConsumer {
00039         }; // PushConsumer
00040 
00041         interface PullConsumer :
00042                 NotifyPublish,
00043                 CosEventComm::PullConsumer {
00044         }; // PullConsumer
00045 
00046         interface PullSupplier :
00047                 NotifySubscribe,
00048                 CosEventComm::PullSupplier {
00049         }; // PullSupplier
00050 
00051         interface PushSupplier :
00052                 NotifySubscribe,
00053                 CosEventComm::PushSupplier {
00054         };
00055 
00056         interface StructuredPushConsumer : NotifyPublish {
00057 
00058                 void push_structured_event(
00059                         in CosNotification::StructuredEvent notification)
00060                         raises(CosEventComm::Disconnected);
00061 
00062                 void disconnect_structured_push_consumer();
00063 
00064         }; // StructuredPushConsumer
00065 
00066         interface StructuredPullConsumer : NotifyPublish {
00067                 void disconnect_structured_pull_consumer();
00068         }; // StructuredPullConsumer
00069 
00070         interface StructuredPullSupplier : NotifySubscribe {
00071 
00072                 CosNotification::StructuredEvent pull_structured_event()
00073                         raises(CosEventComm::Disconnected);
00074 
00075                 CosNotification::StructuredEvent try_pull_structured_event(
00076                                 out boolean has_event)
00077                         raises(CosEventComm::Disconnected);
00078 
00079                 void disconnect_structured_pull_supplier();
00080 
00081         }; // StructuredPullSupplier
00082 
00083         interface StructuredPushSupplier : NotifySubscribe {
00084                 void disconnect_structured_push_supplier();
00085         }; // StructuredPushSupplier
00086 
00087         interface SequencePushConsumer : NotifyPublish {
00088 
00089                 void push_structured_events(
00090                                 in CosNotification::EventBatch notifications)
00091                         raises(CosEventComm::Disconnected);
00092 
00093                 void disconnect_sequence_push_consumer();
00094 
00095         }; // SequencePushConsumer
00096 
00097         interface SequencePullConsumer : NotifyPublish {
00098                 void disconnect_sequence_pull_consumer();
00099         }; // SequencePullConsumer
00100 
00101         interface SequencePullSupplier : NotifySubscribe {
00102 
00103                 CosNotification::EventBatch pull_structured_events(
00104                                 in long max_number )
00105                         raises(CosEventComm::Disconnected);
00106 
00107                 CosNotification::EventBatch try_pull_structured_events(
00108                                 in long max_number,
00109                                 out boolean has_event)
00110                         raises(CosEventComm::Disconnected);
00111 
00112                 void disconnect_sequence_pull_supplier();
00113 
00114         }; // SequencePullSupplier
00115 
00116         interface SequencePushSupplier : NotifySubscribe {
00117                 void disconnect_sequence_push_supplier();
00118         }; // SequencePushSupplier
00119 
00120 }; // CosNotifyComm
00121 
00122 #endif /* _COS_NOTIFY_COMM_IDL_ */

CosNotifyComm.idl Source File | generated on Sun Apr 29 02:00:57 2007 by Doxygen 1.4.1 for DWARF