00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file CSD_TP_Strategy_Factory.h 00006 * 00007 * $Id: CSD_TP_Strategy_Factory.h 71473 2006-03-10 07:19:20Z jtc $ 00008 * 00009 * @author Tim Bradley <bradley_t@ociweb.com> 00010 */ 00011 //============================================================================= 00012 00013 #ifndef TAO_CSD_TP_STRATEGY_FACTORY_H 00014 #define TAO_CSD_TP_STRATEGY_FACTORY_H 00015 00016 #include /**/ "ace/pre.h" 00017 00018 #include "tao/CSD_ThreadPool/CSD_TP_Export.h" 00019 #include "tao/Versioned_Namespace.h" 00020 #include "ace/Service_Object.h" 00021 #include "ace/Service_Config.h" 00022 00023 00024 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00025 # pragma once 00026 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00027 00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00029 00030 namespace TAO 00031 { 00032 namespace CSD 00033 { 00034 00035 /** 00036 * @class TP_Strategy_Factory 00037 * 00038 * @brief An ACE_Service_Object capable of creating TP_Strategy objects. 00039 * 00040 * TBD - Explain in more detail. 00041 * 00042 */ 00043 class TAO_CSD_TP_Export TP_Strategy_Factory : public ACE_Service_Object 00044 { 00045 public: 00046 00047 /// Constructor. 00048 TP_Strategy_Factory(); 00049 00050 /// Virtual Destructor. 00051 virtual ~TP_Strategy_Factory(); 00052 00053 int init (int argc, ACE_TCHAR* argv[]); 00054 }; 00055 } 00056 } 00057 00058 TAO_END_VERSIONED_NAMESPACE_DECL 00059 00060 ACE_STATIC_SVC_DECLARE_EXPORT(TAO_CSD_TP, TAO_CSD_TP_Strategy_Factory) 00061 ACE_FACTORY_DECLARE(TAO_CSD_TP, TAO_CSD_TP_Strategy_Factory) 00062 00063 #include /**/ "ace/post.h" 00064 00065 #endif /* TAO_CSD_TP_STRATEGY_FACTORY_H */