Merge commit 'c5bab7026b8e0ac44b25ee08507ea360f177d844' into merges
[unleashed.git] / share / man / man3head / time.h.3head
blob47c349e2802c3281cac1123f6fad05c99dbc8ec5
1 '\" te
2 .\" Copyright (c) 2001, The IEEE and The Open Group. All Rights Reserved.
3 .\" Portions Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
4 .\" Copyright 2016 Joyent, Inc.
5 .\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at
6 .\" http://www.opengroup.org/bookstore/.
7 .\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html.
8 .\"  This notice shall appear on any product containing this material.
9 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
10 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
11 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
12 .TH TIME.H 3HEAD "Feb 5, 2008"
13 .SH NAME
14 time.h, time \- time types
15 .SH SYNOPSIS
16 .LP
17 .nf
18 #include <\fBtime.h\fR>
19 .fi
21 .SH DESCRIPTION
22 .LP
23 The <\fBtime.h\fR> header declares the structure \fBtm\fR, which includes the
24 following members:
25 .sp
26 .in +2
27 .nf
28 int tm_sec     /* seconds [0,60] */
29 int tm_min     /* minutes [0,59] */
30 int tm_hour    /* hour [0,23] */
31 int tm_mday    /* day of month [1,31] */
32 int tm_mon     /* month of year [0,11] */
33 int tm_year    /* years since 1900 */
34 int tm_wday    /* day of week [0,6] (Sunday =0) */
35 int tm_yday    /* day of year [0,365] */
36 int tm_isdst   /* daylight savings flag */
37 .fi
38 .in -2
40 .sp
41 .LP
42 The value of \fBtm_isdst\fR is positive if Daylight Saving Time is in effect, 0
43 if Daylight Saving Time is not in effect, and negative if the information is
44 not available.
45 .sp
46 .LP
47 The <\fBtime.h\fR> header defines the following symbolic names:
48 .sp
49 .ne 2
50 .na
51 \fB\fBNULL\fR\fR
52 .ad
53 .RS 28n
54 Null pointer constant.
55 .RE
57 .sp
58 .ne 2
59 .na
60 \fB\fBCLOCKS_PER_SEC\fR\fR
61 .ad
62 .RS 28n
63 A number used to convert the value returned by the \fBclock()\fR function into
64 seconds. See \fBclock\fR(3C).
65 .RE
67 .sp
68 .ne 2
69 .na
70 \fB\fBCLOCK_PROCESS_CPUTIME_ID\fR\fR
71 .ad
72 .RS 28n
73 The identifier of the CPU-time clock associated with the process making a
74 \fBclock()\fR or \fBtimer*()\fR function call.
75 .RE
77 .sp
78 .ne 2
79 .na
80 \fB\fBCLOCK_THREAD_CPUTIME_ID\fR\fR
81 .ad
82 .RS 28n
83 The identifier of the CPU-time clock associated with the thread making a
84 \fBclock()\fR or \fBtimer*()\fR function call.
85 .RE
87 .sp
88 .LP
89 The <\fBtime.h\fR> header declares the \fBtimespec\fR structure, which has the
90 following members:
91 .sp
92 .in +2
93 .nf
94 time_t tv_sec     /* seconds */
95 long   tv_nsec     /* nanoseconds */
96 .fi
97 .in -2
99 .sp
101 The <\fBtime.h\fR> header declares the \fBitimerspec\fR structure, which has
102 the following members:
104 .in +2
106 struct timespec it_interval     /* timer period */
107 struct timespec it_value     /* timer expiration */
109 .in -2
113 The following manifest constants are defined:
115 .ne 2
117 \fB\fBCLOCK_REALTIME\fR\fR
119 .RS 19n
120 The identifier of the system-wide realtime clock.
124 .ne 2
126 \fB\fBTIMER_ABSTIME\fR\fR
128 .RS 19n
129 Flag indicating time is absolute. For functions taking timer objects, this
130 refers to the clock associated with the timer.
134 .ne 2
136 \fB\fBCLOCK_MONOTONIC\fR\fR
138 .RS 19n
139 The identifier for the system-wide monotonic clock, which is defined as a clock
140 whose value cannot be set with \fBclock_settime()\fR and that cannot have
141 backward clock jumps. The maximum possible clock jump is
142 implementation-defined. See \fBclock_settime\fR(3C).
146 .ne 2
148 \fB\fBTIME_UTC\fR\fR
150 .RS 19n
151 The identifier for the system-wide realtime clock with no time zone
152 translation. Used in \fBtimespec_get\fR().
157 The \fBclock_t\fR, \fBsize_t\fR, \fBtime_t\fR, \fBclockid_t\fR, and
158 \fBtimer_t\fR types are defined as described in <\fBsys/types.h\fR>. See
159 \fBtypes.h\fR(3HEAD).
162 Although the value of \fBCLOCKS_PER_SEC\fR is required to be 1 million on all
163 standard-conforming systems, it can be variable on other systems, and it should
164 not be assumed that \fBCLOCKS_PER_SEC\fR is a compile-time constant.
167 The <\fBtime.h\fR> header provides a declaration for \fBgetdate_err\fR.
170 The following are declared as variables:
172 .in +2
174 extern int daylight;
175 extern long timezone;
176 extern char *tzname[];
178 .in -2
182 Inclusion of the <\fBtime.h\fR> header can make visible all symbols from the
183 <\fBsignal.h\fR> header.
184 .SH USAGE
186 The range [0,60] for \fBtm_sec\fR allows for the occasional leap second.
189 \fBtm_year\fR is a signed value; therefore, years before 1900 can be
190 represented.
193 To obtain the number of clock ticks per second returned by the \fBtimes()\fR
194 function, applications should call \fBsysconf(_SC_CLK_TCK)\fR. See
195 \fBtimes\fR(2) and \fBsysconf\fR(3C).
196 .SH ATTRIBUTES
198 See \fBattributes\fR(5) for descriptions of the following attributes:
203 box;
204 c | c
205 l | l .
206 ATTRIBUTE TYPE  ATTRIBUTE VALUE
208 Interface Stability     Committed
210 Standard        See \fBstandards\fR(5).
213 .SH SEE ALSO
215 \fBtime\fR(2), \fButime\fR(2), \fBclock\fR(3C), \fBctime\fR(3C),
216 \fBdifftime\fR(3C), \fBgetdate\fR(3C), \fBmktime\fR(3C),
217 \fBstrftime\fR(3C), \fBstrptime\fR(3C), \fBtypes.h\fR(3HEAD),
218 \fBclock_settime\fR(3C), \fBnanosleep\fR(3C), \fBtimer_create\fR(3C),
219 \fBtimer_delete\fR(3C), \fBtimer_settime\fR(3C), \fBtimespec_get\fR(3C),
220 \fBattributes\fR(5), \fBstandards\fR(5)