From 12366ad363e33d0b9781197538816852e229a298 Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Wed, 1 May 1996 00:59:18 +0000 Subject: (fmt_past_time): New declaration. (fmt_minutes, fmt_seconds): Update. --- libshouldbeinlibc/timefmt.h | 40 +++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/libshouldbeinlibc/timefmt.h b/libshouldbeinlibc/timefmt.h index f4b219ef..134cf56a 100644 --- a/libshouldbeinlibc/timefmt.h +++ b/libshouldbeinlibc/timefmt.h @@ -1,6 +1,6 @@ /* Routines for formatting time - Copyright (C) 1995 Free Software Foundation, Inc. + Copyright (C) 1995, 1996 Free Software Foundation, Inc. Written by Miles Bader @@ -26,19 +26,33 @@ struct timeval; /* Format into BUF & BUF_LEN the time interval represented by TV, trying to make the result less than WIDTH characters wide. The number of characters used is returned. */ -int fmt_named_interval (struct timeval *tv, int width, - char *buf, unsigned buf_len); +size_t fmt_named_interval (struct timeval *tv, size_t width, + char *buf, size_t buf_len); /* Format into BUF & BUF_LEN the time interval represented by TV, using - HH:MM:SS notation where possible, and trying to make the result less than - WIDTH characters wide. The number of characters used is returned. */ -int fmt_seconds (struct timeval *tv, unsigned width, - char *buf, unsigned buf_len); - -/* Format into BUF & BUF_LEN the time interval represented by TV, using - HH:MM notation where possible, and trying to make the result less than - WIDTH characters wide. The number of characters used is returned. */ -int fmt_minutes (struct timeval *tv, unsigned width, - char *buf, unsigned buf_len); + HH:MM:SS notation where possible, with FRAC_PLACES digits after the + decimal point, and trying to make the result less than WIDTH characters + wide. If LEADING_ZEROS is true, then any fields that are zero-valued, but + would fit in the given width are printed. If FRAC_PLACES is negative, + then any space remaining after printing the time, up to WIDTH, is used for + the fraction. The number of characters used is returned. */ +size_t fmt_seconds (struct timeval *tv, int leading_zeros, int frac_places, + size_t width, char *buf, size_t buf_len); + +/* Format into BUF & BUF_LEN the time interval represented by TV, using HH:MM + notation where possible, and trying to make the result less than WIDTH + characters wide. If LEADING_ZEROS is true, then any fields that are + zero-valued, but would fit in the given width are printed. The number of + characters used is returned. */ +size_t fmt_minutes (struct timeval *tv, int leading_zeros, + size_t width, char *buf, size_t buf_len); + +/* Format into BUF & BUF_LEN the absolute time represented by TV. An attempt + is made to fit the result in less than WIDTH characters, by omitting + fields implied by the current time, NOW (if NOW is 0, then no assumptions + are made, so the resulting times will be somewhat long). The number of + characters used is returned. */ +size_t fmt_past_time (struct timeval *tv, struct timeval *now, + size_t width, char *buf, size_t buf_len); #endif /* __TIMEFMT_H__ */ -- cgit v1.2.3