// // $Id$ // module RtecEventComm { exception Disconnected {}; #if 0 union EventData switch(short) { case 1: double dval; case 2: string sval; case 3: sequence bval; default: long lval; }; #else struct EventData { long x; long y; }; #endif typedef long EventSourceID; typedef long EventType; // @@ TODO: Use CosTimeService? // The current definition (double) is a TOTAL HACK, we store a long // long here just because it fits.... typedef double Time; struct Event { EventSourceID source_; EventType type_; Time creation_time_; Time ec_recv_time_; Time ec_send_time_; EventData data_; }; typedef sequence EventSet; interface PushConsumer { oneway void push (in EventSet data); // raises(Disconnected); oneway void disconnect_push_consumer(); }; interface PushSupplier { oneway void disconnect_push_supplier(); }; };