#ifndef GETTIMEOFDAY_H_ #define GETTIMEOFDAY_H_ /*************************************************************************** * * Header file for gettimeofday() function. * gettimeofday.h * * Copyright 2001 by Columbia University; all rights reserved * by Akira Tsukamoto * ***************************************************************************/ #include "sysdep.h" #ifdef __cplusplus extern "C" { #endif #ifndef HAVE_GETTIMEOFDAY extern int gettimeofday(struct timeval *tv, void *t); #endif /* This portion is a copy from GNU library. */ /* Convenience macros for operations on timevals. NOTE: `timercmp' does not work for >= or <=. */ #ifndef timerisset #define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) #endif #ifndef timerclear #define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) #endif #ifndef timercmp #define timercmp(a, b, CMP) \ (((a)->tv_sec == (b)->tv_sec) ? \ ((a)->tv_usec CMP (b)->tv_usec) : \ ((a)->tv_sec CMP (b)->tv_sec)) #endif #ifndef timeradd #define timeradd(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec + (b)->tv_sec; \ (result)->tv_usec = (a)->tv_usec + (b)->tv_usec; \ if ((result)->tv_usec >= 1000000) \ { \ ++(result)->tv_sec; \ (result)->tv_usec -= 1000000; \ } \ } while (0) #endif #ifndef timersub #define timersub(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; \ (result)->tv_usec = (a)->tv_usec - (b)->tv_usec; \ if ((result)->tv_usec < 0) { \ --(result)->tv_sec; \ (result)->tv_usec += 1000000; \ } \ } while (0) #endif #ifdef __cplusplus } #endif #endif /* GETTIMEOFDAY_H_ */