Object_Proxy_Broker.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Object_Proxy_Broker.h
00006  *
00007  *  $Id: Object_Proxy_Broker.h 79610 2007-09-07 18:17:34Z johnnyw $
00008  *
00009  *  This files contains the abstract class for the CORBA Object
00010  *  proxy brokers.
00011  *
00012  *  @author  Angelo Corsaro <corsaro@cs.wustl.edu>
00013  *  Modified by
00014  *  @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
00015  */
00016 //=============================================================================
00017 
00018 
00019 #ifndef TAO_OBJECT_PROXY_BROKER_H
00020 #define TAO_OBJECT_PROXY_BROKER_H
00021 
00022 #include /**/ "ace/pre.h"
00023 
00024 #include "tao/Basic_Types.h"
00025 
00026 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00027 # pragma once
00028 #endif /* ACE_LACKS_PRAGMA_ONCE */
00029 
00030 #include /**/ "tao/TAO_Export.h"
00031 #include "tao/orbconf.h"
00032 
00033 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00034 
00035 namespace CORBA
00036 {
00037   class InterfaceDef;
00038 
00039   class Object;
00040   typedef Object *Object_ptr;
00041 }
00042 
00043 namespace TAO
00044 {
00045   /**
00046    * @class Object_Proxy_Broker
00047    *
00048    * @brief Object_Proxy_Broker
00049    *
00050    */
00051   class TAO_Export Object_Proxy_Broker
00052   {
00053   public:
00054 
00055     /// Destructor
00056     virtual ~Object_Proxy_Broker (void);
00057 
00058     virtual CORBA::Boolean _is_a (CORBA::Object_ptr target,
00059                                   const char *logical_type_id) = 0;
00060 
00061 #if (TAO_HAS_MINIMUM_CORBA == 0)
00062 
00063   virtual CORBA::Boolean _non_existent (CORBA::Object_ptr target) = 0;
00064 
00065 #if !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO)
00066   virtual CORBA::InterfaceDef *_get_interface (CORBA::Object_ptr target) = 0;
00067 
00068   virtual CORBA::Object_ptr _get_component (CORBA::Object_ptr target) = 0;
00069 #endif
00070 
00071   virtual char * _repository_id (CORBA::Object_ptr target) = 0;
00072 
00073 #endif /* TAO_HAS_MINIMUM_CORBA == 0 */
00074   };
00075 }
00076 
00077 TAO_END_VERSIONED_NAMESPACE_DECL
00078 
00079 #include /**/ "ace/post.h"
00080 
00081 #endif /* TAO_OBJECT_PROXY_BROKER_H_ */

Generated on Tue Feb 2 17:37:52 2010 for TAO by  doxygen 1.4.7