00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file AbstractBase_Invocation_Adapter.h 00006 * 00007 * $Id: AbstractBase_Invocation_Adapter.h 71473 2006-03-10 07:19:20Z jtc $ 00008 * 00009 * @author Balachandran Natarajan <bala@dre.vanderbilt.edu> 00010 */ 00011 //============================================================================= 00012 #ifndef TAO_ABSTRACTBASE_INVOCATION_ADAPTER_H 00013 #define TAO_ABSTRACTBASE_INVOCATION_ADAPTER_H 00014 00015 #include /**/ "ace/pre.h" 00016 #include "tao/Valuetype/valuetype_export.h" 00017 00018 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00019 # pragma once 00020 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00021 00022 #include "tao/Invocation_Adapter.h" 00023 00024 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00025 00026 namespace CORBA 00027 { 00028 class AbstractBase; 00029 00030 typedef AbstractBase *AbstractBase_ptr; 00031 } 00032 namespace TAO 00033 { 00034 class Argument; 00035 00036 class Collocation_Proxy_Broker; 00037 class Profile_Transport_Resolver; 00038 00039 /** 00040 * @class AbstractBase_Invocation_Adapter 00041 * 00042 * 00043 */ 00044 class TAO_Valuetype_Export AbstractBase_Invocation_Adapter 00045 : public Invocation_Adapter 00046 { 00047 public: 00048 AbstractBase_Invocation_Adapter ( 00049 CORBA::AbstractBase_ptr target, 00050 Argument **args, 00051 int arg_number, 00052 const char *operation, 00053 size_t op_len, 00054 Collocation_Proxy_Broker *cpb, 00055 TAO::Invocation_Type type = TAO_TWOWAY_INVOCATION, 00056 TAO::Invocation_Mode mode = TAO_SYNCHRONOUS_INVOCATION); 00057 00058 private: 00059 // Don't allow default initializations 00060 AbstractBase_Invocation_Adapter (void); 00061 00062 // Disallow copying and assignment. 00063 AbstractBase_Invocation_Adapter (const AbstractBase_Invocation_Adapter &); 00064 AbstractBase_Invocation_Adapter & operator= ( 00065 const AbstractBase_Invocation_Adapter &); 00066 00067 }; 00068 } // End namespace TAO 00069 00070 TAO_END_VERSIONED_NAMESPACE_DECL 00071 00072 #include /**/ "ace/post.h" 00073 00074 #endif /* TAO_INVOCATION_ADAPTER_H */