1da2e3ebdSchin 2da2e3ebdSchin/* : : generated by proto : : */ 3*b30d1939SAndy Fiddaman/* : : generated from contrib/ast/src/lib/libast/features/tv by iffe version 2012-07-17 : : */ 4*b30d1939SAndy Fiddaman 5da2e3ebdSchin#ifndef _TV_H 6da2e3ebdSchin#if !defined(__PROTO__) 7da2e3ebdSchin# if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus) 8da2e3ebdSchin# if defined(__cplusplus) 9da2e3ebdSchin# define __LINKAGE__ "C" 10da2e3ebdSchin# else 11da2e3ebdSchin# define __LINKAGE__ 12da2e3ebdSchin# endif 13da2e3ebdSchin# define __STDARG__ 14da2e3ebdSchin# define __PROTO__(x) x 15da2e3ebdSchin# define __OTORP__(x) 16da2e3ebdSchin# define __PARAM__(n,o) n 17da2e3ebdSchin# if !defined(__STDC__) && !defined(__cplusplus) 18da2e3ebdSchin# if !defined(c_plusplus) 19da2e3ebdSchin# define const 20da2e3ebdSchin# endif 21da2e3ebdSchin# define signed 22da2e3ebdSchin# define void int 23da2e3ebdSchin# define volatile 24da2e3ebdSchin# define __V_ char 25da2e3ebdSchin# else 26da2e3ebdSchin# define __V_ void 27da2e3ebdSchin# endif 28da2e3ebdSchin# else 29da2e3ebdSchin# define __PROTO__(x) () 30da2e3ebdSchin# define __OTORP__(x) x 31da2e3ebdSchin# define __PARAM__(n,o) o 32da2e3ebdSchin# define __LINKAGE__ 33da2e3ebdSchin# define __V_ char 34da2e3ebdSchin# define const 35da2e3ebdSchin# define signed 36da2e3ebdSchin# define void int 37da2e3ebdSchin# define volatile 38da2e3ebdSchin# endif 39da2e3ebdSchin# define __MANGLE__ __LINKAGE__ 40da2e3ebdSchin# if defined(__cplusplus) || defined(c_plusplus) 41da2e3ebdSchin# define __VARARG__ ... 42da2e3ebdSchin# else 43da2e3ebdSchin# define __VARARG__ 44da2e3ebdSchin# endif 45da2e3ebdSchin# if defined(__STDARG__) 46da2e3ebdSchin# define __VA_START__(p,a) va_start(p,a) 47da2e3ebdSchin# else 48da2e3ebdSchin# define __VA_START__(p,a) va_start(p) 49da2e3ebdSchin# endif 50da2e3ebdSchin# if !defined(__INLINE__) 51da2e3ebdSchin# if defined(__cplusplus) 52da2e3ebdSchin# define __INLINE__ extern __MANGLE__ inline 53da2e3ebdSchin# else 54da2e3ebdSchin# if defined(_WIN32) && !defined(__GNUC__) 55da2e3ebdSchin# define __INLINE__ __inline 56da2e3ebdSchin# endif 57da2e3ebdSchin# endif 58da2e3ebdSchin# endif 59da2e3ebdSchin#endif 60da2e3ebdSchin#if !defined(__LINKAGE__) 61da2e3ebdSchin#define __LINKAGE__ /* 2004-08-11 transition */ 62da2e3ebdSchin#endif 63da2e3ebdSchin 64da2e3ebdSchin#define _TV_H 1 65da2e3ebdSchin/* 66da2e3ebdSchin * AT&T Research 67da2e3ebdSchin * 68da2e3ebdSchin * high resolution Tv_t interface definitions 69da2e3ebdSchin */ 70da2e3ebdSchin 71da2e3ebdSchin#include <ast.h> 72da2e3ebdSchin 73da2e3ebdSchin#define TV_NSEC_IGNORE (1000000000L) 74da2e3ebdSchin#define TV_TOUCH_RETAIN ((Tv_t*)1) 75da2e3ebdSchin 76da2e3ebdSchintypedef struct Tv_s 77da2e3ebdSchin{ 78da2e3ebdSchin uint32_t tv_sec; 79da2e3ebdSchin uint32_t tv_nsec; 80da2e3ebdSchin} Tv_t; 81da2e3ebdSchin 82da2e3ebdSchin#define ST_ATIME_NSEC_GET(st) ((st)->st_atim.tv_nsec) 83da2e3ebdSchin#define ST_CTIME_NSEC_GET(st) ((st)->st_ctim.tv_nsec) 84da2e3ebdSchin#define ST_MTIME_NSEC_GET(st) ((st)->st_mtim.tv_nsec) 85da2e3ebdSchin 86da2e3ebdSchin#define ST_ATIME_NSEC_SET(st,n) (ST_ATIME_NSEC_GET(st)=(n)) 87da2e3ebdSchin#define ST_CTIME_NSEC_SET(st,n) (ST_CTIME_NSEC_GET(st)=(n)) 88da2e3ebdSchin#define ST_MTIME_NSEC_SET(st,n) (ST_MTIME_NSEC_GET(st)=(n)) 89da2e3ebdSchin 90da2e3ebdSchin#define tvgetatime(t,s) ((t)->tv_nsec=ST_ATIME_NSEC_GET(s),(t)->tv_sec=(s)->st_atime) 91da2e3ebdSchin#define tvgetmtime(t,s) ((t)->tv_nsec=ST_MTIME_NSEC_GET(s),(t)->tv_sec=(s)->st_mtime) 92da2e3ebdSchin#define tvgetctime(t,s) ((t)->tv_nsec=ST_CTIME_NSEC_GET(s),(t)->tv_sec=(s)->st_ctime) 93da2e3ebdSchin 94da2e3ebdSchin#define tvsetatime(t,s) (ST_ATIME_NSEC_SET(s,(t)->tv_nsec),(s)->st_atime=(t)->tv_sec) 95da2e3ebdSchin#define tvsetmtime(t,s) (ST_MTIME_NSEC_SET(s,(t)->tv_nsec),(s)->st_mtime=(t)->tv_sec) 96da2e3ebdSchin#define tvsetctime(t,s) (ST_CTIME_NSEC_SET(s,(t)->tv_nsec),(s)->st_ctime=(t)->tv_sec) 97da2e3ebdSchin 98da2e3ebdSchin#if _BLD_ast && defined(__EXPORT__) 99da2e3ebdSchin#undef __MANGLE__ 100da2e3ebdSchin#define __MANGLE__ __LINKAGE__ __EXPORT__ 101da2e3ebdSchin#endif 102da2e3ebdSchin 103da2e3ebdSchinextern __MANGLE__ int tvgettime __PROTO__((Tv_t*)); 104da2e3ebdSchinextern __MANGLE__ int tvsettime __PROTO__((const Tv_t*)); 105da2e3ebdSchinextern __MANGLE__ int tvcmp __PROTO__((const Tv_t*, const Tv_t*)); 106da2e3ebdSchinextern __MANGLE__ int tvtouch __PROTO__((const char*, const Tv_t*, const Tv_t*, const Tv_t*, int)); 107da2e3ebdSchinextern __MANGLE__ int tvsleep __PROTO__((const Tv_t*, Tv_t*)); 108da2e3ebdSchin 109da2e3ebdSchinextern __MANGLE__ char* fmttv __PROTO__((const char*, Tv_t*)); 110da2e3ebdSchin 111da2e3ebdSchin#endif 112