#ifndef CosEventComm_idl_
#define CosEventComm_idl_

#pragma prefix "omg.org"

// CosEventComm Module, CORBAservices p 4-8, Event Service V1.0 3/94

module CosEventComm {

    exception Disconnected{};

    interface PushConsumer {
	void push (in any data) raises(Disconnected);
	void disconnect_push_consumer(); 
    };

    interface PushSupplier {
	void disconnect_push_supplier();
    };

    interface PullSupplier {
	any pull () raises(Disconnected);
	any try_pull (out boolean has_event) 
	    raises(Disconnected);
	void	 disconnect_pull_supplier(); 
    };

    interface PullConsumer {
	void disconnect_pull_consumer();
    };

};

#endif
