00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file FlResource_Factory.h 00006 * 00007 * $Id: FlResource_Factory.h 75470 2006-11-22 11:40:45Z johnnyw $ 00008 * 00009 * @author Balachandran Natarajan <bala@cs.wustl.edu> 00010 * @author Marek Brudka <mbrudka@aster.pl> 00011 */ 00012 //============================================================================= 00013 #ifndef TAO_FLRESOURCE_FACTORY_H 00014 #define TAO_FLRESOURCE_FACTORY_H 00015 #include /**/ "ace/pre.h" 00016 00017 #include "tao/FlResource/TAO_FlResource_Export.h" 00018 00019 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00020 # pragma once 00021 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00022 00023 #include "ace/FlReactor/FlReactor.h" 00024 #include "tao/GUIResource_Factory.h" 00025 00026 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00027 00028 namespace TAO 00029 { 00030 /** 00031 * @class FlResource_Factory 00032 * 00033 * @brief TAO_GUI_Resource_Factory for creating FlReactor. 00034 * 00035 * This factory is intended for creating FlReactor for ORB. This 00036 * factory can be feed into ORB using 00037 * TAO_ORB_Core::set_gui_resource_factory method which is usually 00038 * done by TAO_FlResource_Loader. 00039 */ 00040 00041 class TAO_FlResource_Export FlResource_Factory : public GUIResource_Factory 00042 { 00043 public: 00044 00045 FlResource_Factory (); 00046 00047 protected: 00048 00049 /// Create or obtain current reactor implementation 00050 virtual ACE_Reactor_Impl *reactor_impl (void); 00051 00052 private: 00053 00054 /// Reactor created by this factory. 00055 ACE_FlReactor *reactor_impl_; 00056 }; 00057 } 00058 00059 TAO_END_VERSIONED_NAMESPACE_DECL 00060 00061 #include /**/ "ace/post.h" 00062 #endif /* TAO_FLRESOURCE_FACTORY_H */