00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file Smart_Proxies.h 00006 * 00007 * $Id: Smart_Proxies.h 81429 2008-04-24 18:49:54Z johnnyw $ 00008 * 00009 * This file contains a base class for the generated smart proxy classes 00010 * It's purpose is to hold the pointer to the real proxy 00011 * 00012 * @author Brian Wallis <brian.wallis@ot.com.au> 00013 */ 00014 //============================================================================= 00015 00016 #ifndef TAO_SMARTPROXIES_H 00017 #define TAO_SMARTPROXIES_H 00018 #include /**/ "ace/pre.h" 00019 00020 #include "tao/SmartProxies/smartproxies_export.h" 00021 #include "tao/Object.h" 00022 #include "tao/TAO_Singleton.h" 00023 #include "tao/LocalObject.h" 00024 00025 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00026 # pragma once 00027 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00028 00029 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00030 00031 /** 00032 * @class TAO_Smart_Proxy_Base 00033 * 00034 * @brief A base class for all TAO_IDL generated smart proxy base classes. 00035 * 00036 * Contains the _var pointer to the real proxy. 00037 */ 00038 class TAO_SmartProxies_Export TAO_Smart_Proxy_Base 00039 : public ::CORBA::LocalObject 00040 { 00041 public: 00042 /// Destructor 00043 virtual ~TAO_Smart_Proxy_Base (void); 00044 00045 protected: 00046 /// Constructor. 00047 TAO_Smart_Proxy_Base (void); 00048 00049 /// Constructor. 00050 TAO_Smart_Proxy_Base (CORBA::Object_ptr proxy); 00051 00052 /// The proxy to which remote/collocated calls are made. 00053 CORBA::Object_var base_proxy_; 00054 }; 00055 00056 TAO_END_VERSIONED_NAMESPACE_DECL 00057 00058 #if defined (__ACE_INLINE__) 00059 #include "tao/SmartProxies/Smart_Proxies.inl" 00060 #endif /* defined INLINE */ 00061 00062 #include /**/ "ace/post.h" 00063 #endif /* TAO_SMARTPROXIES_H */