summaryrefslogtreecommitdiff
path: root/man3/timeradd.3
diff options
context:
space:
mode:
authorMichael Kerrisk <mtk.manpages@gmail.com>2007-07-08 14:18:12 +0000
committerMichael Kerrisk <mtk.manpages@gmail.com>2007-07-08 14:18:12 +0000
commitd6d74fd8c4ea5a51c79836cc37d9dc8894e5cb46 (patch)
treeda13aaf2a4f2a0c773393786ae1732fd5c17fd4b /man3/timeradd.3
parentafb1b5ad42a357cdcb622cd654be7ce459ad3735 (diff)
Description of timeradd(), timersub(), timerclear(),
timerisset(), timercmp() macros for operating on struct timeval.
Diffstat (limited to 'man3/timeradd.3')
-rw-r--r--man3/timeradd.3127
1 files changed, 127 insertions, 0 deletions
diff --git a/man3/timeradd.3 b/man3/timeradd.3
new file mode 100644
index 00000000..3ebe91e7
--- /dev/null
+++ b/man3/timeradd.3
@@ -0,0 +1,127 @@
+.\" Copyright (c) 2007 by Michael Kerrisk <mtk-manpages@gmx.net>
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.\" 2007-07-31, mtk, Created
+.\"
+.TH TIMERADD 3 2007-07-31 "Linux" "Linux Programmer's Manual"
+.SH NAME
+timeradd, timersub, timercmp, timerisclear, timerisset \- timeval operations
+.SH SYNOPSIS
+.nf
+.B #include <sys/time.h>
+
+.BI "void timeradd(struct timeval *" a ", struct timeval *" b ,
+.BI " struct timeval *" res );
+
+.BI "void timersub(struct timeval *" a ", struct timeval *" b ,
+.BI " struct timeval *" res );
+
+.BI "void timerclear(struct timeval *" tvp );
+
+.BI "void timerisset(struct timeval *" tvp );
+
+.BI "void timercmp(struct timeval *" a ", struct timeval *" b ", " CMP );
+.fi
+.sp
+.in -4n
+Feature Test Macro Requirements for glibc (see
+.BR feature_test_macros (7)):
+.in
+.sp
+All functions described on this pages require:
+_BSD_SOURCE
+.SH DESCRIPTION
+The macros are provided to operate on
+.I timeval
+structures, defined in
+.IR <sys/time.h>
+as:
+.sp
+.in +0.5i
+.nf
+struct timeval {
+ time_t tv_sec; /* seconds */
+ suseconds_t tv_usec; /* microseconds */
+};
+.fi
+.PP
+.BR timeradd ()
+adds the time values in
+.I a
+and
+.IR b ,
+and places the sum in the
+.I timeval
+pointed to by
+.IR res .
+The result is normalized such that
+.I res->tv_usec
+has a value in the range 0 to 999,999.
+
+.BR timersub ()
+subtracts the time values in
+.I b
+from the value in
+.IR a ,
+and places the result in the
+.I timeval
+pointed to by
+.IR res .
+The result is normalized such that
+.I res->tv_usec
+has a value in the range 0 to 999,999.
+
+.BR timerclear ()
+zeroes out the
+.I timeval
+structure pointed to by
+.IR tvp ,
+so that it represents the time at midnight
+on the morning of 1 January 1970 (the Epoch).
+
+.BR timerisset ()
+returns true (non-zero) if either field of the
+.I timeval
+structure pointed to by
+.IR tvp
+contains a non-zero value.
+
+.BR timercmp ()
+compares the timer values in
+.I a
+and
+.IR b
+using the comparison operator
+.IR CMP ,
+and returns true (non-zero) or false (0) depending on
+the result of the comparison.
+.SH RETURN VALUE
+.BR timerisset ()
+and
+.BR timercmp ()
+return true (non-zero) or false (0).
+.BR
+.SH ERRORS
+No errors are defined.
+.SH CONFORMING TO
+Not in POSIX.1-2001.
+Present on most BSD derivatives.
+.SH "SEE ALSO"
+.BR gettimeofday (2),
+.BR time (7).