00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file CEC_TypedEvent.h 00006 * 00007 * $Id: CEC_TypedEvent.h 73791 2006-07-27 20:54:56Z wotte $ 00008 * 00009 * @author Jon Astle (jon@astle45.fsnet.co.uk) 00010 */ 00011 //============================================================================= 00012 00013 #ifndef TAO_CEC_TYPEDEVENT_H_ 00014 #define TAO_CEC_TYPEDEVENT_H_ 00015 #include /**/ "ace/pre.h" 00016 00017 #include "orbsvcs/CosEvent/event_serv_export.h" 00018 00019 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00020 #pragma once 00021 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00022 00023 #include "tao/AnyTypeCode/NVList.h" 00024 #include "tao/CORBA_String.h" 00025 #include "tao/CORBA_methods.h" 00026 00027 // **************************************************************** 00028 00029 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00030 00031 /** 00032 * @class TAO_CEC_TypedEvent 00033 * 00034 * @brief Defines the operation and args list for the TypedEvent 00035 * 00036 * Used to store the TypedEvent as it is passed from the supplier 00037 * side to the consumer side, in the TypedEventChannel. 00038 */ 00039 00040 class TAO_CEC_ProxyPushSupplier; 00041 00042 class TAO_Event_Serv_Export TAO_CEC_TypedEvent 00043 { 00044 public: 00045 /// constructors... 00046 TAO_CEC_TypedEvent (void); 00047 00048 TAO_CEC_TypedEvent (CORBA::NVList_ptr list, 00049 const char * operation); 00050 00051 TAO_CEC_TypedEvent & operator= (const TAO_CEC_TypedEvent &); 00052 00053 private: 00054 /// Only the ProxyPushSupplier can read the private fields. 00055 friend class TAO_CEC_ProxyPushSupplier; 00056 00057 CORBA::NVList_ptr list_; 00058 CORBA::String_var operation_; 00059 }; 00060 00061 TAO_END_VERSIONED_NAMESPACE_DECL 00062 00063 #if defined (__ACE_INLINE__) 00064 #include "orbsvcs/CosEvent/CEC_TypedEvent.inl" 00065 #endif /* __ACE_INLINE__ */ 00066 00067 #include /**/ "ace/post.h" 00068 00069 #endif /* TAO_CEC_TYPEDEVENT_H_ */