00001 // -*- C++ -*- 00002 00003 /** 00004 * @file RT_Factory.h 00005 * 00006 * RT_Factory.h,v 1.9 2006/03/14 06:14:34 jtc Exp 00007 * 00008 * @author Pradeep Gore <pradeep@oomworks.com> 00009 */ 00010 00011 #ifndef TAO_Notify_RT_FACTORY_H 00012 #define TAO_Notify_RT_FACTORY_H 00013 #include /**/ "ace/pre.h" 00014 00015 #include "orbsvcs/Notify/rt_notify_export.h" 00016 00017 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00018 # pragma once 00019 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00020 00021 #include "orbsvcs/Notify/Default_Factory.h" 00022 00023 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00024 00025 /** 00026 * @class TAO_Notify_RT_Factory 00027 * 00028 * @brief The Factory for the RT aware Notify classes. 00029 * 00030 */ 00031 class TAO_RT_Notify_Export TAO_Notify_RT_Factory : public TAO_Notify_Default_Factory 00032 { 00033 public: 00034 /// Constuctor 00035 TAO_Notify_RT_Factory (void); 00036 00037 /// Destructor 00038 virtual ~TAO_Notify_RT_Factory (); 00039 00040 /// Create ProxySupplier Collection 00041 virtual void create (TAO_Notify_ProxySupplier_Collection*& collection ACE_ENV_ARG_DECL); 00042 00043 /// Create ProxyConsumer Collection 00044 virtual void create (TAO_Notify_ProxyConsumer_Collection*& collection ACE_ENV_ARG_DECL); 00045 00046 /// Create EventChannel Collection 00047 virtual void create (TAO_Notify_EventChannel_Collection*& collection ACE_ENV_ARG_DECL); 00048 00049 /// Create ConsumerAdmin Collection 00050 virtual void create (TAO_Notify_ConsumerAdmin_Collection*& collection ACE_ENV_ARG_DECL); 00051 00052 /// Create SupplierAdmin Collection 00053 virtual void create (TAO_Notify_SupplierAdmin_Collection*& collection ACE_ENV_ARG_DECL); 00054 00055 /// Create Proxy Collection 00056 virtual void create (TAO_Notify_Proxy_Collection*& collection ACE_ENV_ARG_DECL); 00057 00058 /// Create EventChannelDefault_Factory 00059 virtual void create (TAO_Notify_EventChannelFactory*& channel_factory ACE_ENV_ARG_DECL); 00060 00061 /// Create EventChannel 00062 virtual void create (TAO_Notify_EventChannel*& channel ACE_ENV_ARG_DECL); 00063 00064 /// Create SupplierAdmin 00065 virtual void create (TAO_Notify_SupplierAdmin*& admin ACE_ENV_ARG_DECL); 00066 00067 /// Create ConsumerAdmin 00068 virtual void create (TAO_Notify_ConsumerAdmin*& admin ACE_ENV_ARG_DECL); 00069 00070 /// Create ProxyPushConsumer 00071 virtual void create (TAO_Notify_ProxyPushConsumer*& proxy ACE_ENV_ARG_DECL); 00072 00073 /// Create ProxyPushSupplier 00074 virtual void create (TAO_Notify_ProxyPushSupplier*& proxy ACE_ENV_ARG_DECL); 00075 00076 /// Create CosEC_ProxyPushConsumer 00077 virtual void create (TAO_Notify_CosEC_ProxyPushConsumer*& proxy ACE_ENV_ARG_DECL); 00078 00079 /// Create CosEC_ProxyPushSupplier 00080 virtual void create (TAO_Notify_CosEC_ProxyPushSupplier*& proxy ACE_ENV_ARG_DECL); 00081 00082 /// Create StructuredProxyPushConsumer 00083 virtual void create (TAO_Notify_StructuredProxyPushConsumer*& proxy ACE_ENV_ARG_DECL); 00084 00085 /// Create StructuredProxyPushSupplier 00086 virtual void create (TAO_Notify_StructuredProxyPushSupplier*& proxy ACE_ENV_ARG_DECL); 00087 00088 /// Create SequenceProxyPushConsumer 00089 virtual void create (TAO_Notify_SequenceProxyPushConsumer*& proxy ACE_ENV_ARG_DECL); 00090 00091 /// Create SequenceProxyPushSupplier 00092 virtual void create (TAO_Notify_SequenceProxyPushSupplier*& proxy ACE_ENV_ARG_DECL); 00093 }; 00094 00095 TAO_END_VERSIONED_NAMESPACE_DECL 00096 00097 ACE_FACTORY_DECLARE (TAO_RT_Notify, TAO_Notify_RT_Factory) 00098 00099 #include /**/ "ace/post.h" 00100 #endif /* TAO_Notify_RT_FACTORY_H */