summaryrefslogtreecommitdiff
path: root/ACE/ace/OS.h
diff options
context:
space:
mode:
authorWilliam R. Otte <wotte@dre.vanderbilt.edu>2008-03-04 14:51:23 +0000
committerWilliam R. Otte <wotte@dre.vanderbilt.edu>2008-03-04 14:51:23 +0000
commit99aa8c60282c7b8072eb35eb9ac815702f5bf586 (patch)
treebda96bf8c3a4c2875a083d7b16720533c8ffeaf4 /ACE/ace/OS.h
parentc4078c377d74290ebe4e66da0b4975da91732376 (diff)
downloadATCD-99aa8c60282c7b8072eb35eb9ac815702f5bf586.tar.gz
undoing accidental deletion
Diffstat (limited to 'ACE/ace/OS.h')
-rw-r--r--ACE/ace/OS.h329
1 files changed, 329 insertions, 0 deletions
diff --git a/ACE/ace/OS.h b/ACE/ace/OS.h
new file mode 100644
index 00000000000..dda4c475b41
--- /dev/null
+++ b/ACE/ace/OS.h
@@ -0,0 +1,329 @@
+// -*- C++ -*-
+
+//=============================================================================
+/**
+ * @file OS.h
+ *
+ * $Id$
+ *
+ * @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
+ * @author Jesper S. M|ller<stophph@diku.dk>
+ * @author and a cast of thousands...
+ */
+//=============================================================================
+
+#ifndef ACE_OS_H
+#define ACE_OS_H
+
+#include /**/ "ace/pre.h"
+
+#include /**/ "ace/config-all.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#if !defined (DO_NOT_INCLUDE_OS_H)
+#include "ace/Cleanup.h"
+#include "ace/Object_Manager_Base.h"
+#include "ace/OS_main.h"
+#include "ace/OS_NS_arpa_inet.h"
+#include "ace/OS_NS_ctype.h"
+#include "ace/OS_NS_dirent.h"
+#include "ace/OS_NS_dlfcn.h"
+#include "ace/OS_NS_errno.h"
+#include "ace/OS_NS_fcntl.h"
+#include "ace/OS_NS_math.h"
+#include "ace/OS_NS_netdb.h"
+#include "ace/OS_NS_poll.h"
+#include "ace/OS_NS_pwd.h"
+#include "ace/OS_NS_regex.h"
+#include "ace/OS_NS_signal.h"
+#include "ace/OS_NS_stdio.h"
+#include "ace/OS_NS_stdlib.h"
+#include "ace/OS_NS_string.h"
+#include "ace/OS_NS_strings.h"
+#include "ace/OS_NS_stropts.h"
+#include "ace/OS_NS_sys_mman.h"
+#include "ace/OS_NS_sys_msg.h"
+#include "ace/OS_NS_sys_resource.h"
+#include "ace/OS_NS_sys_select.h"
+#include "ace/OS_NS_sys_shm.h"
+#include "ace/OS_NS_sys_socket.h"
+#include "ace/OS_NS_sys_stat.h"
+#include "ace/OS_NS_sys_time.h"
+#include "ace/OS_NS_sys_uio.h"
+#include "ace/OS_NS_sys_utsname.h"
+#include "ace/OS_NS_sys_wait.h"
+#include "ace/OS_NS_Thread.h"
+#include "ace/OS_NS_time.h"
+#include "ace/OS_NS_unistd.h"
+#include "ace/OS_NS_wchar.h"
+
+// Include the split up ACE_OS classes
+#include "ace/OS_Dirent.h"
+#include "ace/OS_String.h"
+#include "ace/OS_Memory.h"
+#include "ace/OS_TLI.h"
+#include "ace/OS_Errno.h"
+
+#include "ace/os_include/os_dlfcn.h"
+#include "ace/os_include/sys/os_mman.h"
+#include "ace/os_include/os_netdb.h"
+#include "ace/os_include/sys/os_socket.h"
+#include "ace/os_include/net/os_if.h"
+#include "ace/os_include/sys/os_sem.h"
+
+#include "ace/Time_Value.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+
+class ACE_Timeout_Manager;
+
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+// Here are all ACE-specific default constants, needed throughout ACE
+// and its applications. The values can be over written by user
+// specific values in config.h files.
+#include "ace/Default_Constants.h"
+
+// Here are all ACE-specific global declarations needed throughout
+// ACE.
+#include "ace/Global_Macros.h"
+
+// include the ACE min()/max() functions.
+# include "ace/Min_Max.h"
+
+///////////////////////////////////////////
+// //
+// NOTE: Please do not add any #includes //
+// before this point. On VxWorks, //
+// vxWorks.h must be #included //
+// first! //
+// //
+///////////////////////////////////////////
+
+#include "ace/os_include/netinet/os_tcp.h"
+#include "ace/os_include/sys/os_stat.h"
+#include "ace/os_include/os_stropts.h"
+#include "ace/os_include/os_unistd.h"
+#include "ace/os_include/sys/os_wait.h"
+
+
+// This needs to go here *first* to avoid problems with AIX.
+# if defined (ACE_HAS_PTHREADS)
+# include "ace/os_include/os_pthread.h"
+# endif /* ACE_HAS_PTHREADS */
+
+# if defined (ACE_HAS_PROC_FS)
+# include /**/ <sys/procfs.h>
+# endif /* ACE_HAS_PROC_FS */
+
+# if defined (ACE_HAS_POSIX_SEM)
+# include "ace/os_include/os_semaphore.h"
+# endif /* ACE_HAS_POSIX_SEM */
+
+#include "ace/os_include/sys/os_types.h"
+#include "ace/os_include/os_stddef.h"
+#if !defined (ACE_LACKS_UNISTD_H)
+# include "ace/os_include/os_unistd.h"
+#endif /* ACE_LACKS_UNISTD_H */
+
+// Standard C Library includes
+# if !defined (ACE_HAS_WINCE)
+# include "ace/os_include/os_assert.h"
+# include "ace/os_include/os_stdio.h"
+
+# if !defined (ACE_LACKS_NEW_H)
+# if defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# include /**/ <new>
+# else
+# include /**/ <new.h>
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+# endif /* ! ACE_LACKS_NEW_H */
+
+# if !defined (ACE_VXWORKS)
+# define ACE_DONT_INCLUDE_ACE_SIGNAL_H
+# include "ace/os_include/os_signal.h"
+# undef ACE_DONT_INCLUDE_ACE_SIGNAL_H
+# endif /* ! VXWORKS */
+
+# include "ace/os_include/os_fcntl.h"
+# endif /* ACE_HAS_WINCE */
+
+# include "ace/os_include/os_limits.h"
+# include "ace/os_include/os_ctype.h"
+# include "ace/os_include/os_string.h"
+# include "ace/os_include/os_stdlib.h"
+# include "ace/os_include/os_float.h"
+
+# if defined (ACE_NEEDS_SCHED_H)
+# include "ace/os_include/os_sched.h"
+# endif /* ACE_NEEDS_SCHED_H */
+
+# include "ace/iosfwd.h"
+
+# if !defined (ACE_HAS_WINCE)
+# include "ace/os_include/os_fcntl.h"
+# endif /* ACE_HAS_WINCE */
+
+# if defined ACE_HAS_BYTESEX_H
+# include /**/ <bytesex.h>
+# endif /* ACE_HAS_BYTESEX_H */
+# include "ace/Basic_Types.h"
+
+# if defined (ACE_HAS_UTIME)
+# include "ace/os_include/os_utime.h"
+# endif /* ACE_HAS_UTIME */
+
+# if defined (ACE_WIN32)
+
+# if !defined (ACE_HAS_WINCE)
+# include "ace/os_include/sys/os_timeb.h"
+# endif /* ACE_HAS_WINCE */
+
+# if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
+# include "ace/os_include/netinet/os_in.h" // <ws2tcpip.h>
+# endif /* ACE_HAS_WINSOCK2 */
+
+# if !defined (ACE_HAS_WINCE)
+# include "ace/os_include/os_time.h"
+# include "ace/os_include/sys/os_stat.h" // <direct.h>
+# include "ace/os_include/os_unistd.h" // <process.h>
+# endif /* ACE_HAS_WINCE */
+
+# include "ace/os_include/os_fcntl.h"
+
+# else /* !defined (ACE_WIN32) */
+
+# if defined (CYGWIN32)
+# include "ace/os_include/sys/os_uio.h"
+# include "ace/os_include/os_fcntl.h" // <sys/file.h>
+# include "ace/os_include/sys/os_time.h"
+# include "ace/os_include/sys/os_resource.h"
+# include "ace/os_include/sys/os_wait.h"
+# include "ace/os_include/os_pwd.h"
+# elif defined (__QNX__)
+# include "ace/os_include/sys/os_uio.h"
+# include "ace/os_include/sys/os_ipc.h"
+# include "ace/os_include/sys/os_time.h"
+# include "ace/os_include/sys/os_wait.h"
+# include "ace/os_include/sys/os_resource.h"
+# include "ace/os_include/os_pwd.h"
+ // sets O_NDELAY
+# include /**/ <unix.h>
+# include "ace/os_include/os_limits.h" // <sys/param.h> /* for NBBY */
+# elif defined(ACE_HAS_RTEMS)
+# include "ace/os_include/os_fcntl.h" // <sys/file.h>
+# include "ace/os_include/sys/os_resource.h"
+# include "ace/os_include/sys/os_time.h"
+# include "ace/os_include/sys/os_utsname.h"
+# include "ace/os_include/sys/os_wait.h"
+# include "ace/os_include/os_pwd.h"
+
+# elif ! defined (ACE_VXWORKS) && ! defined (INTEGRITY)
+# include "ace/os_include/sys/os_uio.h"
+# include "ace/os_include/sys/os_ipc.h"
+# if !defined(ACE_LACKS_SYSV_SHMEM)
+// No reason to #include this if the platform lacks support for SHMEM
+# include "ace/os_include/sys/os_shm.h"
+# endif /* ACE_LACKS_SYSV_SHMEM */
+# include "ace/os_include/os_fcntl.h" // <sys/file.h>
+# include "ace/os_include/sys/os_time.h"
+# include "ace/os_include/sys/os_resource.h"
+# include "ace/os_include/sys/os_wait.h"
+# include "ace/os_include/os_pwd.h"
+# endif /* ! VXWORKS */
+# include "ace/os_include/os_stropts.h" // <sys/ioctl.h>
+
+// IRIX5 defines bzero() in this odd file...
+# if defined (ACE_HAS_BSTRING)
+# include /**/ <bstring.h>
+# endif /* ACE_HAS_BSTRING */
+
+// AIX defines bzero() in this odd file...
+# if defined (ACE_HAS_STRINGS)
+# include "ace/os_include/os_strings.h"
+# endif /* ACE_HAS_STRINGS */
+
+# if defined (ACE_HAS_TERMIOS)
+# include "ace/os_include/os_termios.h"
+# endif /* ACE_HAS_TERMIOS */
+
+# if defined (ACE_HAS_AIO_CALLS)
+# include "ace/os_include/os_aio.h"
+# endif /* ACE_HAS_AIO_CALLS */
+
+# include "ace/os_include/os_limits.h" // <sys/param.h>
+
+# if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
+# include "ace/os_include/sys/os_un.h"
+# endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */
+
+# if defined (ACE_HAS_POLL)
+# include "ace/os_include/os_poll.h"
+# endif /* ACE_HAS_POLL */
+
+# if defined (ACE_HAS_SELECT_H)
+# include "ace/os_include/sys/os_select.h"
+# endif /* ACE_HAS_SELECT_H */
+
+# include "ace/os_include/sys/os_msg.h"
+
+# if defined (ACE_HAS_PRIOCNTL)
+# include /**/ <sys/priocntl.h>
+# endif /* ACE_HAS_PRIOCNTL */
+
+# endif /* !defined (ACE_WIN32) */
+
+# if !defined (ACE_WIN32) && !defined (ACE_LACKS_UNIX_SYSLOG)
+# include "ace/os_include/os_syslog.h"
+# endif /* !defined (ACE_WIN32) && !defined (ACE_LACKS_UNIX_SYSLOG) */
+
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+
+/**
+ * @namespace ACE_OS
+ *
+ * @brief This namespace defines an OS independent programming API that
+ * shields developers from nonportable aspects of writing
+ * efficient system programs on Win32, POSIX and other versions
+ * of UNIX, and various real-time operating systems.
+ *
+ * This namespace encapsulates the differences between various OS
+ * platforms. When porting ACE to a new platform, this class is
+ * the place to focus on. Once this file is ported to a new
+ * platform, pretty much everything else comes for "free." See
+ * <www.cs.wustl.edu/~schmidt/ACE_wrappers/etc/ACE-porting.html>
+ * for instructions on porting ACE. Please see the README file
+ * in this directory for complete information on the meaning of
+ * the various macros.
+ */
+namespace ACE_OS
+{
+ // = A set of wrappers for miscellaneous operations.
+} /* namespace ACE_OS */
+
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+# if defined (ACE_HAS_INLINED_OSCALLS)
+# if defined (ACE_INLINE)
+# undef ACE_INLINE
+# endif /* ACE_INLINE */
+# define ACE_INLINE inline
+# include "ace/OS.inl"
+# endif /* ACE_HAS_INLINED_OSCALLS */
+
+#if defined (ACE_LEGACY_MODE)
+# include "ace/Log_Msg.h"
+# include "ace/Thread_Hook.h"
+# include "ace/Thread_Adapter.h"
+# include "ace/Thread_Exit.h"
+# include "ace/Thread_Control.h"
+#endif /* ACE_LEGACY_MODE */
+
+#endif /* 0 */
+
+#include /**/ "ace/post.h"
+#endif /* ACE_OS_H */