Collocation_Proxy_Broker.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file   Collocation_Proxy_Broker.h
00006  *
00007  *  Collocation_Proxy_Broker.h,v 1.8 2006/06/19 14:51:11 parsons Exp
00008  *
00009  *
00010  *  @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
00011  */
00012 //=============================================================================
00013 
00014 #ifndef TAO_COLLOCATION_PROXY_BROKER_H
00015 #define TAO_COLLOCATION_PROXY_BROKER_H
00016 
00017 #include /**/ "ace/pre.h"
00018 
00019 #include "tao/TAO_Export.h"
00020 
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif /* ACE_LACKS_PRAGMA_ONCE */
00024 
00025 #include "tao/Collocation_Strategy.h"
00026 #include "tao/Versioned_Namespace.h"
00027 
00028 #include "ace/CORBA_macros.h"
00029 #include "ace/os_include/os_stddef.h"
00030 
00031 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00032 
00033 template<typename T> class TAO_Pseudo_Var_T;
00034 template<typename T> class TAO_Pseudo_Out_T;
00035 
00036 namespace CORBA
00037 {
00038   class Object;
00039   typedef Object *Object_ptr;
00040   typedef TAO_Pseudo_Var_T<Object> Object_var;
00041   typedef TAO_Pseudo_Out_T<Object> Object_out;
00042   class Environment;
00043 }
00044 
00045 namespace TAO
00046 {
00047   class Argument;
00048 
00049   /**
00050    * @class Collocation_Proxy_Broker
00051    */
00052   class TAO_Export Collocation_Proxy_Broker
00053   {
00054 
00055   public:
00056 
00057     virtual ~Collocation_Proxy_Broker (void);
00058 
00059     virtual Collocation_Strategy get_strategy (CORBA::Object_ptr obj
00060                                                ACE_ENV_ARG_DECL) = 0;
00061 
00062     virtual void dispatch (CORBA::Object_ptr obj,
00063                            CORBA::Object_out forward_obj,
00064                            Argument ** args,
00065                            int num_args,
00066                            const char * op,
00067                            size_t op_len,
00068                            Collocation_Strategy strategy
00069                            ACE_ENV_ARG_DECL) = 0;
00070   };
00071 
00072 TAO_END_VERSIONED_NAMESPACE_DECL
00073 }
00074 
00075 #include /**/ "ace/post.h"
00076 
00077 #endif /*TAO_COLLOCATION_PROXY_BROKER_H */

Generated on Thu Nov 9 11:54:09 2006 for TAO by doxygen 1.3.6