50 lines
2.8 KiB
C
50 lines
2.8 KiB
C
/******************************************************************************
|
|
* * *** ***
|
|
* *** *** ***
|
|
* *** **** ********** *** ***** *** **** *****
|
|
* ********* ********** *** ********* ************ *********
|
|
* **** *** *** *** *** **** ***
|
|
* *** *** ****** *** *********** *** **** *****
|
|
* *** *** ****** *** ************* *** **** *****
|
|
* *** **** **** *** *** *** **** ***
|
|
* *** ******* ***** ************** ************* *********
|
|
* *** ***** *** ******* ** ** ****** *****
|
|
* t h e r e a l t i m e t a r g e t e x p e r t s
|
|
*
|
|
* http://www.rt-labs.com
|
|
* Copyright (C) 2009. rt-labs AB, Sweden. All rights reserved.
|
|
*------------------------------------------------------------------------------
|
|
* $Id: osal_win32.h 414 2012-12-03 10:48:42Z rtlaka $
|
|
*------------------------------------------------------------------------------
|
|
*/
|
|
|
|
#ifndef _osal_win32_
|
|
#define _osal_win32_
|
|
|
|
/* Convenience macros for operations on timevals.
|
|
NOTE: `timercmp' does not work for >= or <=. */
|
|
# define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
|
|
# 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)
|
|
# 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)
|
|
|
|
int osal_gettimeofday (struct timeval *tv, struct timezone *tz);
|
|
|
|
#endif
|