00001 // -*- C++ -*- 00002 00003 /** 00004 * @file ESF_Shutdown_Proxy.h 00005 * 00006 * ESF_Shutdown_Proxy.h,v 1.8 2006/03/15 07:52:21 jtc Exp 00007 * 00008 * @author Carlos O'Ryan (coryan@cs.wustl.edu) 00009 * 00010 * http://doc.ece.uci.edu/~coryan/EC/index.html 00011 */ 00012 00013 00014 #ifndef TAO_ESF_SHUTDOWN_PROXY_H 00015 #define TAO_ESF_SHUTDOWN_PROXY_H 00016 00017 #include "orbsvcs/ESF/ESF_Worker.h" 00018 00019 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00020 # pragma once 00021 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00022 00023 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00024 00025 /// A worker to invoke the shutdown method of each proxy. 00026 template<class PROXY> 00027 class TAO_ESF_Shutdown_Proxy : public TAO_ESF_Worker<PROXY> 00028 { 00029 public: 00030 TAO_ESF_Shutdown_Proxy (void); 00031 00032 void work (PROXY *proxy 00033 ACE_ENV_ARG_DECL); 00034 }; 00035 00036 // **************************************************************** 00037 00038 TAO_END_VERSIONED_NAMESPACE_DECL 00039 00040 #if defined (__ACE_INLINE__) 00041 #include "orbsvcs/ESF/ESF_Shutdown_Proxy.i" 00042 #endif /* __ACE_INLINE__ */ 00043 00044 #if defined (ACE_TEMPLATES_REQUIRE_SOURCE) 00045 #include "orbsvcs/ESF/ESF_Shutdown_Proxy.cpp" 00046 #endif /* ACE_TEMPLATES_REQUIRE_SOURCE */ 00047 00048 #if defined (ACE_TEMPLATES_REQUIRE_PRAGMA) 00049 #pragma implementation ("ESF_Shutdown_Proxy.cpp") 00050 #endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */ 00051 00052 #endif /* TAO_ESF_SHUTDOWN_PROXY_H */