Reorg (part 4) - add left out file
ostinato/server/timespecops.h got left out from part 1 commit of the reorg - because it was a new file and was ignored by a wrong .gitignore rule
This commit is contained in:
parent
e79b61b189
commit
eb2ca12f32
45
server/timespecops.h
Normal file
45
server/timespecops.h
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
/*
|
||||||
|
This file is part of "Ostinato"
|
||||||
|
|
||||||
|
These macros are copied from BSD sys/time.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Operations on timespecs. */
|
||||||
|
#ifndef timespecclear
|
||||||
|
#define timespecclear(tsp) (tsp)->tv_sec = (tsp)->tv_nsec = 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef timespecisset
|
||||||
|
#define timespecisset(tsp) ((tsp)->tv_sec || (tsp)->tv_nsec)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef timespeccmp
|
||||||
|
#define timespeccmp(tsp, usp, cmp) \
|
||||||
|
(((tsp)->tv_sec == (usp)->tv_sec) ? \
|
||||||
|
((tsp)->tv_nsec cmp (usp)->tv_nsec) : \
|
||||||
|
((tsp)->tv_sec cmp (usp)->tv_sec))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef timespecadd
|
||||||
|
#define timespecadd(tsp, usp, vsp) \
|
||||||
|
do { \
|
||||||
|
(vsp)->tv_sec = (tsp)->tv_sec + (usp)->tv_sec; \
|
||||||
|
(vsp)->tv_nsec = (tsp)->tv_nsec + (usp)->tv_nsec; \
|
||||||
|
if ((vsp)->tv_nsec >= 1000000000L) { \
|
||||||
|
(vsp)->tv_sec++; \
|
||||||
|
(vsp)->tv_nsec -= 1000000000L; \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef timespecsub
|
||||||
|
#define timespecsub(tsp, usp, vsp) \
|
||||||
|
do { \
|
||||||
|
(vsp)->tv_sec = (tsp)->tv_sec - (usp)->tv_sec; \
|
||||||
|
(vsp)->tv_nsec = (tsp)->tv_nsec - (usp)->tv_nsec; \
|
||||||
|
if ((vsp)->tv_nsec < 0) { \
|
||||||
|
(vsp)->tv_sec--; \
|
||||||
|
(vsp)->tv_nsec += 1000000000L; \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user