Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

tm.c File Reference


Detailed Description

Time manipulation and caching routines.

Author:
Raphael Manfredi
Date:
2003-2005

#include "common.h"
#include "tm.h"
#include "override.h"

Functions

void f2tm (double t, tm_t *tm)
 Convert floating point time description into a struct timeval by filling in the supplied structure.
void tm_elapsed (tm_t *elapsed, const tm_t *t1, const tm_t *t0)
 Computes the elapsed time (t1 - t0) in the supplied structure.
void tm_sub (tm_t *tm, const tm_t *dec)
 In-place substract dec from tm.
void tm_add (tm_t *tm, const tm_t *inc)
 In-place add inc to tm.
int tm_cmp (const tm_t *a, const tm_t *b)
 Compare two times and return -1, 0 or +1 depending on their relative order.
void tm_now (tm_t *tm)
 Fill supplied structure with current time (cached).
void tm_now_exact (tm_t *tm)
 Fill supplied structure with current time (recomputed).
time_t tm_time (void)
 Get current time, at the second granularity (cached).
time_t tm_time_exact (void)
 Get current time, at the second granularity (recomputed).
guint tm_hash (gconstpointer key)
 Hash a tm_t time structure.
gint tm_equal (gconstpointer a, gconstpointer b)
 Test two tm_t for equality.
gdouble tm_cputime (gdouble *user, gdouble *sys)
 Fill supplied variables with CPU usage time (user and kernel), if not NULL.

Variables

tm_t now


Function Documentation

void f2tm double  t,
tm_t tm
 

Convert floating point time description into a struct timeval by filling in the supplied structure.

void tm_add tm_t tm,
const tm_t inc
 

In-place add inc to tm.

int tm_cmp const tm_t a,
const tm_t b
 

Compare two times and return -1, 0 or +1 depending on their relative order.

gdouble tm_cputime gdouble *  user,
gdouble *  sys
 

Fill supplied variables with CPU usage time (user and kernel), if not NULL.

Returns:
total CPU time used so far (user + kernel).

void tm_elapsed tm_t elapsed,
const tm_t t1,
const tm_t t0
 

Computes the elapsed time (t1 - t0) in the supplied structure.

gint tm_equal gconstpointer  a,
gconstpointer  b
 

Test two tm_t for equality.

guint tm_hash gconstpointer  key  ) 
 

Hash a tm_t time structure.

void tm_now tm_t tm  ) 
 

Fill supplied structure with current time (cached).

void tm_now_exact tm_t tm  ) 
 

Fill supplied structure with current time (recomputed).

If the time jumps backward the previously recorded timestamp is used instead to enforce a monotonic flow of time.

void tm_sub tm_t tm,
const tm_t dec
 

In-place substract dec from tm.

time_t tm_time void   ) 
 

Get current time, at the second granularity (cached).

time_t tm_time_exact void   ) 
 

Get current time, at the second granularity (recomputed).


Variable Documentation

tm_t now [static]
 


Generated on Sat Jun 30 17:53:31 2007 for gtk-gnutella by  doxygen 1.3.9.1