00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file TAO_Internal.h 00006 * 00007 * $Id: TAO_Internal.h 74014 2006-08-14 13:52:22Z johnnyw $ 00008 * 00009 * Structures and methods completely internal to TAO. 00010 * 00011 * @author Chris Cleeland 00012 */ 00013 //============================================================================= 00014 00015 #ifndef TAO_INTERNAL_H 00016 #define TAO_INTERNAL_H 00017 00018 #include /**/ "ace/pre.h" 00019 00020 #include "tao/orbconf.h" 00021 #include /**/ "tao/Versioned_Namespace.h" 00022 00023 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00024 # pragma once 00025 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00026 00027 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00028 /// Forward declaration 00029 class ACE_Service_Gestalt; 00030 ACE_END_VERSIONED_NAMESPACE_DECL 00031 00032 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00033 00034 namespace TAO 00035 { 00036 /** 00037 * @namespace ORB 00038 * 00039 * @brief This @c namespace encapsulates some private behaviors and 00040 * global data structures used internal to TAO. No 00041 * application should EVER see them which is why they are not 00042 * exported. 00043 */ 00044 namespace ORB 00045 { 00046 /** 00047 * Extract ACE Service Configurator arguments from the given 00048 * argument vector, and initialize the ACE Service Configurator. 00049 * 00050 * @note This method should be called before the ORB Core is 00051 * initialized, and before any ORBInitializers are invoked. 00052 */ 00053 int open_services (ACE_Service_Gestalt* cfg, int& argc, ACE_TCHAR** argv); 00054 00055 /** 00056 * The complement to @c open_services(), this will perform 00057 * appropriate ACE Service Configurator closure operations. It 00058 * should be called as many times as @c open_services(), and will 00059 * only actually close things down on the last call. It is fully 00060 * thread-safe. 00061 * 00062 * @return @c 0 if successful, @c -1 with @c errno set if 00063 * failure. 00064 */ 00065 int close_services (ACE_Service_Gestalt* pcfg); 00066 00067 /** 00068 * Set default @c `svc.conf' content. 00069 * This function must be called before first ORB initialization. 00070 */ 00071 void default_svc_conf_entries (char const * rf_args, 00072 char const * ssf_args, 00073 char const * csf_args); 00074 00075 } 00076 } 00077 TAO_END_VERSIONED_NAMESPACE_DECL 00078 00079 #include /**/ "ace/post.h" 00080 00081 #endif /* TAO_INTERNAL_H */