00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file Valuetype_Adapter_Factory.h 00006 * 00007 * Valuetype_Adapter_Factory.h,v 1.2 2006/04/19 08:19:58 jwillemsen Exp 00008 * 00009 * @author Kees van Marle <kvmarle@remedy.nl> 00010 */ 00011 //============================================================================= 00012 00013 00014 #ifndef TAO_VALUETYPE_ADAPTER_FACTORY_H 00015 #define TAO_VALUETYPE_ADAPTER_FACTORY_H 00016 00017 #include /**/ "ace/pre.h" 00018 #include "ace/Service_Object.h" 00019 00020 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00021 # pragma once 00022 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00023 00024 #include "tao/SystemException.h" 00025 00026 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00027 00028 class TAO_Valuetype_Adapter; 00029 00030 /** 00031 * @class TAO_Valuetype_Adapter_Factory 00032 * 00033 * @brief TAO_Valuetype_Adapter_Factory. 00034 * 00035 * Class that creates one instance of TAO_Valuetype_Adapter per 00036 * ORB on the ORB's first usage of its valuetype_adapter_. This is a base 00037 * class for the actual implementation in the TAO_Valuetype library. 00038 */ 00039 class TAO_Export TAO_Valuetype_Adapter_Factory 00040 : public ACE_Service_Object 00041 { 00042 public: 00043 virtual ~TAO_Valuetype_Adapter_Factory (void); 00044 00045 virtual TAO_Valuetype_Adapter * create ( 00046 ACE_ENV_SINGLE_ARG_DECL 00047 ) 00048 ACE_THROW_SPEC ((CORBA::SystemException)) = 0; 00049 }; 00050 00051 TAO_END_VERSIONED_NAMESPACE_DECL 00052 00053 #include /**/ "ace/post.h" 00054 00055 #endif /* TAO_VALUETYPE_ADAPTER_FACTORY_H */