server: Return the status from an async I/O APC call to the server.
[wine] / include / msvcrt / time.h
1 /*
2  * Time definitions
3  *
4  * Copyright 2000 Francois Gouget.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 #ifndef __WINE_TIME_H
21 #define __WINE_TIME_H
22 #ifndef __WINE_USE_MSVCRT
23 #define __WINE_USE_MSVCRT
24 #endif
25
26 #include <pshpack8.h>
27
28 #ifndef _WCHAR_T_DEFINED
29 #define _WCHAR_T_DEFINED
30 #ifndef __cplusplus
31 typedef unsigned short wchar_t;
32 #endif
33 #endif
34
35 #if !defined(_MSC_VER) && !defined(__int64)
36 #define __int64 long long
37 #endif
38
39 #if defined(__x86_64__) && !defined(_WIN64)
40 #define _WIN64
41 #endif
42
43 #ifndef _SIZE_T_DEFINED
44 #ifdef _WIN64
45 typedef unsigned __int64 size_t;
46 #else
47 typedef unsigned int size_t;
48 #endif
49 #define _SIZE_T_DEFINED
50 #endif
51
52 #ifndef _TIME_T_DEFINED
53 typedef long time_t;
54 #define _TIME_T_DEFINED
55 #endif
56
57 #ifndef _CLOCK_T_DEFINED
58 typedef long clock_t;
59 #define _CLOCK_T_DEFINED
60 #endif
61
62 #ifndef NULL
63 #ifdef __cplusplus
64 #define NULL  0
65 #else
66 #define NULL  ((void *)0)
67 #endif
68 #endif
69
70 #ifndef CLOCKS_PER_SEC
71 #define CLOCKS_PER_SEC 1000
72 #endif
73
74 #ifndef _TM_DEFINED
75 #define _TM_DEFINED
76 struct tm {
77     int tm_sec;
78     int tm_min;
79     int tm_hour;
80     int tm_mday;
81     int tm_mon;
82     int tm_year;
83     int tm_wday;
84     int tm_yday;
85     int tm_isdst;
86 };
87 #endif /* _TM_DEFINED */
88
89 #ifdef __cplusplus
90 extern "C" {
91 #endif
92
93 #define _daylight (*__p__daylight())
94 #define _dstbias (*__p__dstbias())
95 #define _timezone (*__p__timezone())
96 #define _tzname (__p__tzname())
97
98 int *__p__daylight(void);
99 long *__p__dstbias(void);
100 long *__p__timezone(void);
101 char **__p__tzname(void);
102
103 unsigned    _getsystime(struct tm*);
104 unsigned    _setsystime(struct tm*,unsigned);
105 char*       _strdate(char*);
106 char*       _strtime(char*);
107 void        _tzset(void);
108
109 char*       asctime(const struct tm*);
110 clock_t clock(void);
111 char*       ctime(const time_t*);
112 double      difftime(time_t,time_t);
113 struct tm* gmtime(const time_t*);
114 struct tm* localtime(const time_t*);
115 time_t mktime(struct tm*);
116 size_t      strftime(char*,size_t,const char*,const struct tm*);
117 time_t time(time_t*);
118
119 #ifndef _WTIME_DEFINED
120 #define _WTIME_DEFINED
121 wchar_t* _wasctime(const struct tm*);
122 size_t  wcsftime(wchar_t*,size_t,const wchar_t*,const struct tm*);
123 wchar_t*_wctime(const time_t*);
124 wchar_t*_wstrdate(wchar_t*);
125 wchar_t*_wstrtime(wchar_t*);
126 #endif /* _WTIME_DEFINED */
127
128 #ifdef __cplusplus
129 }
130 #endif
131
132 #include <poppack.h>
133
134 #endif /* __WINE_TIME_H */