9cfd4d8d8b
modify Makefiles accordingly define __unix__ on Unix like clones (OSX, AIX, etc).
84 lines
1.4 KiB
Groff
84 lines
1.4 KiB
Groff
.TH tai 3
|
|
.SH NAME
|
|
tai \- manipulate times with 1-second precision
|
|
.SH SYNTAX
|
|
.B #include <tai.h>
|
|
|
|
double \fBtai_approx\fP(&\fIt\fR);
|
|
|
|
int \fBtai_less\fP(&\fIa\fR,&\fIb\fR);
|
|
.br
|
|
void \fBtai_add\fP(&\fIt\fR,&\fIa\fR,&\fIb\fR);
|
|
.br
|
|
void \fBtai_sub\fP(&\fIt\fR,&\fIa\fR,&\fIb\fR);
|
|
|
|
struct tai \fIt\fR;
|
|
.br
|
|
struct tai \fIa\fR;
|
|
.br
|
|
struct tai \fIb\fR;
|
|
.SH DESCRIPTION
|
|
A
|
|
.B struct tai
|
|
stores an integer between 0 inclusive and 2^64 exclusive.
|
|
The format of
|
|
.B struct tai
|
|
is designed to speed up common operations;
|
|
applications should not look inside
|
|
.B struct tai\fR.
|
|
|
|
A
|
|
.B struct tai
|
|
variable is commonly used to store
|
|
a TAI64 label.
|
|
Each TAI64 label refers to one second of real time.
|
|
TAI64 labels span a period of
|
|
hundreds of billions of years.
|
|
See
|
|
.B http://pobox.com/~djb/proto/tai64.txt
|
|
for more information.
|
|
|
|
A
|
|
.B struct tai
|
|
variable may also be used to store
|
|
the numerical difference between two TAI64 labels.
|
|
.SH ARITHMETIC
|
|
.B tai_approx
|
|
returns a double-precision approximation to
|
|
.IR t .
|
|
The result of
|
|
.B tai_approx
|
|
is always nonnegative.
|
|
|
|
.B tai_less
|
|
returns 1 if
|
|
.I a
|
|
is smaller than
|
|
.IR b ,
|
|
0 otherwise.
|
|
|
|
.B tai_add
|
|
adds
|
|
.I a
|
|
and
|
|
.I b
|
|
modulo 2^64
|
|
and puts the result into
|
|
.IR t .
|
|
The inputs and outputs may overlap.
|
|
|
|
.B tai_sub
|
|
subtracts
|
|
.I b
|
|
from
|
|
.I a
|
|
modulo 2^64
|
|
and puts the result into
|
|
.IR t .
|
|
The inputs and outputs may overlap.
|
|
.SH "SEE ALSO"
|
|
tai_now(3),
|
|
tai_pack(3),
|
|
taia(3),
|
|
utc(3)
|