00001 // -*- C++ -*- 00002 00003 //========================================================================== 00004 /** 00005 * @file config-lite.h 00006 * 00007 * config-lite.h,v 4.38 2005/12/02 09:34:20 ossama Exp 00008 * 00009 * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu> 00010 * @author Jesper S. M|ller<stophph@diku.dk> 00011 * @author and a cast of thousands... 00012 * 00013 * This file contains the contents of the old config-all.h in order to 00014 * avoid a circular dependency problem caused by some of the new 00015 * includes added to config-all.h, e.g., OS_main.h. 00016 */ 00017 //========================================================================== 00018 00019 #ifndef ACE_CONFIG_LITE_H 00020 #define ACE_CONFIG_LITE_H 00021 00022 #include /**/ "ace/pre.h" 00023 00024 #include "ace/config-macros.h" 00025 00026 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00027 # pragma once 00028 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00029 00030 // Empty ACE_OS namespace to help identify compiler errors more 00031 // easily. -- @@ Do we really need this? 00032 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00033 namespace ACE_OS {} 00034 ACE_END_VERSIONED_NAMESPACE_DECL 00035 00036 // ============================================================================ 00037 // UNICODE macros (to be added later) 00038 // ============================================================================ 00039 00040 // Get the unicode (i.e. ACE_TCHAR) defines 00041 # include "ace/ace_wchar.h" 00042 00043 // ============================================================================ 00044 // at_exit declarations 00045 // ============================================================================ 00046 00047 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00048 00049 // Marker for cleanup, used by ACE_Exit_Info. 00050 extern int ace_exit_hook_marker; 00051 00052 ACE_END_VERSIONED_NAMESPACE_DECL 00053 00054 // For use by <ACE_OS::exit>. 00055 extern "C" 00056 { 00057 typedef void (*ACE_EXIT_HOOK) (void); 00058 } 00059 00060 // Signature for registering a cleanup function that is used by the 00061 // <ACE_Object_Manager> and the <ACE_Thread_Manager>. 00062 # if defined (ACE_HAS_SIG_C_FUNC) 00063 extern "C" { 00064 # endif /* ACE_HAS_SIG_C_FUNC */ 00065 typedef void (*ACE_CLEANUP_FUNC)(void *object, void *param) /* throw () */; 00066 # if defined (ACE_HAS_SIG_C_FUNC) 00067 } 00068 # endif /* ACE_HAS_SIG_C_FUNC */ 00069 00070 // ============================================================================ 00071 // log_msg declarations 00072 // ============================================================================ 00073 00074 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00075 00076 # if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS) 00077 typedef int (*ACE_SEH_EXCEPT_HANDLER)(void *); 00078 // Prototype of win32 structured exception handler functions. 00079 // They are used to get the exception handling expression or 00080 // as exception handlers. 00081 # endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */ 00082 00083 class ACE_OS_Thread_Descriptor; 00084 class ACE_OS_Log_Msg_Attributes; 00085 typedef void (*ACE_INIT_LOG_MSG_HOOK) (ACE_OS_Log_Msg_Attributes &attr 00086 # if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS) 00087 , ACE_SEH_EXCEPT_HANDLER selector 00088 , ACE_SEH_EXCEPT_HANDLER handler 00089 # endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */ 00090 ); 00091 typedef void (*ACE_INHERIT_LOG_MSG_HOOK) (ACE_OS_Thread_Descriptor*, 00092 ACE_OS_Log_Msg_Attributes &); 00093 00094 typedef void (*ACE_CLOSE_LOG_MSG_HOOK) (void); 00095 00096 typedef void (*ACE_SYNC_LOG_MSG_HOOK) (const ACE_TCHAR *prog_name); 00097 00098 typedef ACE_OS_Thread_Descriptor *(*ACE_THR_DESC_LOG_MSG_HOOK) (void); 00099 00100 ACE_END_VERSIONED_NAMESPACE_DECL 00101 00102 #include /**/ "ace/post.h" 00103 00104 #endif /* ACE_CONFIG_LITE_H */