objectid.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file     objectid.h
00006  *
00007  *  objectid.h,v 1.8 2005/11/02 07:13:04 ossama Exp
00008  *
00009  *  ObjectIds redefined for TAO and recognized by CORBA
00010  *
00011  *  @author  Chris Cleeland
00012  *  @author  Douglas C. Schmidt
00013  */
00014 //=============================================================================
00015 
00016 #ifndef TAO_OBJECTID_H
00017 #define TAO_OBJECTID_H
00018 #include /**/ "ace/pre.h"
00019 
00020 #include "ace/config-all.h"
00021 
00022 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00023 # pragma once
00024 #endif /* ACE_LACKS_PRAGMA_ONCE */
00025 
00026 #include "tao/Versioned_Namespace.h"
00027 
00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00029 
00030 /*
00031  *
00032  * This file is a break away from orbconf.h. Basically orbconf.h is
00033  * going the OS.h way. Too many things cluttered in other than the
00034  * configuration details. Hence this breakway group.
00035  *
00036  * This file has the TAO specific objectid definitions for the
00037  * services that are recognized by resolve_initial_references (),
00038  * list_initiial_services () etc. They have no place in the ORB
00039  * configuration.
00040  */
00041 
00042 // ObjectIds recognized by CORBA::ORB::resolve_initial_references()...
00043 // of course, no guarantees are made that the call will return
00044 // something useful.
00045 #define TAO_OBJID_NAMESERVICE         "NameService"
00046 #define TAO_OBJID_TRADINGSERVICE      "TradingService"
00047 #define TAO_OBJID_IMPLREPOSERVICE     "ImplRepoService"
00048 #define TAO_OBJID_ROOTPOA             "RootPOA"
00049 #define TAO_OBJID_POACURRENT          "POACurrent"
00050 #define TAO_OBJID_INTERFACEREP        "InterfaceRepository"
00051 #define TAO_OBJID_POLICYMANAGER       "ORBPolicyManager"
00052 #define TAO_OBJID_POLICYCURRENT       "PolicyCurrent"
00053 #define TAO_OBJID_IORMANIPULATION     "IORManipulation"
00054 #define TAO_OBJID_IORTABLE            "IORTable"
00055 #define TAO_OBJID_DYNANYFACTORY       "DynAnyFactory"
00056 #define TAO_OBJID_TYPECODEFACTORY     "TypeCodeFactory"
00057 #define TAO_OBJID_RTORB               "RTORB"
00058 #define TAO_OBJID_RTCURRENT               "RTCurrent"
00059 #define TAO_OBJID_PRIORITYMAPPINGMANAGER  "PriorityMappingManager"
00060 #define TAO_OBJID_NETWORKPRIORITYMAPPINGMANAGER  "NetworkPriorityMappingManager"
00061 #define TAO_OBJID_SECURITYCURRENT     "SecurityCurrent"
00062 #define TAO_OBJID_SECURITYMANAGER     "SecurityManager"
00063 #define TAO_OBJID_TRANSACTIONCURRENT  "TransactionCurrent"
00064 #define TAO_OBJID_NOTIFICATIONSERVICE "NotificationService"
00065 #define TAO_OBJID_TYPEDNOTIFICATIONSERVICE "TypedNotificationService"
00066 #define TAO_OBJID_COMPONENTHOMEFINDER "ComponentHomeFinder"
00067 #define TAO_OBJID_PSS                 "PSS"
00068 #define TAO_OBJID_CODECFACTORY        "CodecFactory"
00069 #define TAO_OBJID_PICurrent           "PICurrent"
00070 #define TAO_OBJID_POAMANAGERFACTORY   "POAManagerFactory"
00071 
00072 // Comma separated list of the above ObjectIDs.
00073 // DO NOT include unimplemented services!
00074 // The CORBA::ORB::list_initial_services () method iterates through
00075 // this list to determine which initial services are available.
00076 #define TAO_LIST_OF_INITIAL_SERVICES \
00077         TAO_OBJID_NAMESERVICE, \
00078         TAO_OBJID_TRADINGSERVICE, \
00079         TAO_OBJID_IMPLREPOSERVICE, \
00080         TAO_OBJID_ROOTPOA, \
00081         TAO_OBJID_POACURRENT, \
00082         TAO_OBJID_INTERFACEREP, \
00083         TAO_OBJID_POLICYMANAGER, \
00084         TAO_OBJID_POLICYCURRENT, \
00085         TAO_OBJID_IORMANIPULATION, \
00086         TAO_OBJID_IORTABLE, \
00087         TAO_OBJID_DYNANYFACTORY, \
00088         TAO_OBJID_TYPECODEFACTORY
00089 // @@ Some initial references are added via other means, such as
00090 //    ORBInitInfo::register_initial_references().  Those should not be
00091 //    placed in the above list.  Ideally, we should no longer need the
00092 //    above list once the above services register their references
00093 //    dynamically.
00094 
00095 /// Service IDs for the services that are located through Multicast.
00096 namespace TAO
00097 {
00098   enum MCAST_SERVICEID
00099     {
00100       MCAST_NAMESERVICE,
00101       MCAST_TRADINGSERVICE,
00102       MCAST_IMPLREPOSERVICE,
00103       MCAST_INTERFACEREPOSERVICE
00104     };
00105 }
00106 
00107 /// No. of services locatable through multicast.
00108 #define TAO_NO_OF_MCAST_SERVICES 4
00109 
00110 TAO_END_VERSIONED_NAMESPACE_DECL
00111 
00112 #include /**/ "ace/post.h"
00113 #endif /*TAO_OBJECTID_H*/

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