diff options
author | dhinton <dhinton@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-05-22 02:52:30 +0000 |
---|---|---|
committer | dhinton <dhinton@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-05-22 02:52:30 +0000 |
commit | f8e5d94ceae7cbe173a39c0ea993977771cb6c4e (patch) | |
tree | c9586b0b38b8179bc6f92792ce079d1fb5217c0d /ace/os_include/time.h | |
parent | cac4707bbbf6b80d7e88d84a0e76d2078236445c (diff) | |
download | ATCD-f8e5d94ceae7cbe173a39c0ea993977771cb6c4e.tar.gz |
ChangeLogTag:Thu May 22 02:28:28 UTC 2003 Don Hinton <dhinton@dresystems.com>dre_osh_03
Diffstat (limited to 'ace/os_include/time.h')
-rw-r--r-- | ace/os_include/time.h | 55 |
1 files changed, 49 insertions, 6 deletions
diff --git a/ace/os_include/time.h b/ace/os_include/time.h index 7d3643a74c5..ce97df53a97 100644 --- a/ace/os_include/time.h +++ b/ace/os_include/time.h @@ -2,19 +2,19 @@ //============================================================================= /** - * @file time.h + * @file os_time.h * * time types * * $Id$ * - * @author Don Hinton <dhinton@ieee.org> + * @author Don Hinton <dhinton@dresystems.com> * @author This code was originally in various places including ace/OS.h. */ //============================================================================= -#ifndef ACE_OS_INCLUDE_TIME_H -#define ACE_OS_INCLUDE_TIME_H +#ifndef ACE_OS_INCLUDE_OS_TIME_H +#define ACE_OS_INCLUDE_OS_TIME_H #include "ace/pre.h" @@ -28,8 +28,51 @@ #include "ace/os_include/sys/types.h" #if !defined (ACE_LACKS_TIME_H) -# include /**/ <time.h> +# include /**/ <time.h> #endif /* !ACE_LACKS_TIME_H */ +// Place all additions (especially function declarations) within extern "C" {} +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +#if defined (ACE_HAS_BROKEN_CTIME) +# undef ctime +#endif /* ACE_HAS_BROKEN_CTIME */ + +// There are a lot of threads-related macro definitions in the config files. +// They came in at different times and from different places and platform +// requirements as threads evolved. They are probably not all needed - some +// overlap or are otherwise confused. This is an attempt to start +// straightening them out. +#if defined (ACE_HAS_PTHREADS_STD) /* POSIX.1c threads (pthreads) */ + // ... and 2-parameter asctime_r and ctime_r +# if !defined (ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R) && \ + !defined (ACE_HAS_STHREADS) +# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R +# endif +#endif /* ACE_HAS_PTHREADS_STD */ + +#if defined (ACE_LACKS_STRPTIME_PROTOTYPE) && !defined (_XOPEN_SOURCE) + extern char *strptime (const char *s, const char *fmt, struct tm *tp); +#endif /* ACE_LACKS_STRPTIME_PROTOTYPE */ + +#if defined (ACE_PSOS) && !defined (USER_INCLUDE_SYS_TIME_TM) +# if defined (ACE_PSOS_DIAB_PPC) + typedef struct timespec timespec_t; +# else /* ! defined (ACE_PSOS_DIAB_PPC) */ + typedef struct timespec + { + time_t tv_sec; // Seconds + long tv_nsec; // Nanoseconds + } timespec_t; +# endif /* defined (ACE_PSOS_DIAB_PPC) */ +#endif /* defined (ACE_PSOS) && !defined (USER_INCLUDE_SYS_TIME_TM) */ + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + #include "ace/post.h" -#endif /* ACE_OS_INCLUDE_TIME_H */ +#endif /* ACE_OS_INCLUDE_OS_TIME_H */ |