Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / TAO / tao / Object_Proxy_Broker.h
blob27fc4c656d24993aff8c8e40ae83853d6b39c985
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Object_Proxy_Broker.h
7 * This files contains the abstract class for the CORBA Object
8 * proxy brokers.
10 * @author Angelo Corsaro <corsaro@cs.wustl.edu>
11 * Modified by
12 * @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
14 //=============================================================================
17 #ifndef TAO_OBJECT_PROXY_BROKER_H
18 #define TAO_OBJECT_PROXY_BROKER_H
20 #include /**/ "ace/pre.h"
22 #include "tao/Basic_Types.h"
24 #if !defined (ACE_LACKS_PRAGMA_ONCE)
25 # pragma once
26 #endif /* ACE_LACKS_PRAGMA_ONCE */
28 #include /**/ "tao/TAO_Export.h"
29 #include "tao/orbconf.h"
31 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
33 namespace CORBA
35 class InterfaceDef;
37 class Object;
38 typedef Object *Object_ptr;
41 namespace TAO
43 /**
44 * @class Object_Proxy_Broker
46 * @brief Object_Proxy_Broker
49 class TAO_Export Object_Proxy_Broker
51 public:
52 /// Destructor
53 virtual ~Object_Proxy_Broker ();
55 virtual CORBA::Boolean _is_a (CORBA::Object_ptr target,
56 const char *logical_type_id) = 0;
58 #if (TAO_HAS_MINIMUM_CORBA == 0)
60 virtual CORBA::Boolean _non_existent (CORBA::Object_ptr target) = 0;
62 #if !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO)
63 virtual CORBA::InterfaceDef *_get_interface (CORBA::Object_ptr target) = 0;
65 virtual CORBA::Object_ptr _get_component (CORBA::Object_ptr target) = 0;
66 #endif
68 virtual char * _repository_id (CORBA::Object_ptr target) = 0;
70 #endif /* TAO_HAS_MINIMUM_CORBA == 0 */
74 TAO_END_VERSIONED_NAMESPACE_DECL
76 #include /**/ "ace/post.h"
78 #endif /* TAO_OBJECT_PROXY_BROKER_H_ */