Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: #ifndef _UAPI_LINUX_TIME_H 2: #define _UAPI_LINUX_TIME_H 3: 4: #include <linux/types.h> 5: 6: 7: #ifndef _STRUCT_TIMESPEC 8: #define _STRUCT_TIMESPEC 9: struct timespec { 10: __kernel_time_t tv_sec; /* seconds */ 11: long tv_nsec; /* nanoseconds */ 12: }; 13: #endif 14: 15: struct timeval { 16: __kernel_time_t tv_sec; /* seconds */ 17: __kernel_suseconds_t tv_usec; /* microseconds */ 18: }; 19: 20: struct timezone { 21: int tz_minuteswest; /* minutes west of Greenwich */ 22: int tz_dsttime; /* type of dst correction */ 23: }; 24: 25: 26: /* 27: * Names of the interval timers, and structure 28: * defining a timer setting: 29: */ 30: #define ITIMER_REAL 0 31: #define ITIMER_VIRTUAL 1 32: #define ITIMER_PROF 2 33: 34: struct itimerspec { 35: struct timespec it_interval; /* timer period */ 36: struct timespec it_value; /* timer expiration */ 37: }; 38: 39: struct itimerval { 40: struct timeval it_interval; /* timer interval */ 41: struct timeval it_value; /* current value */ 42: }; 43: 44: /* 45: * The IDs of the various system clocks (for POSIX.1b interval timers): 46: */ 47: #define CLOCK_REALTIME 0 48: #define CLOCK_MONOTONIC 1 49: #define CLOCK_PROCESS_CPUTIME_ID 2 50: #define CLOCK_THREAD_CPUTIME_ID 3 51: #define CLOCK_MONOTONIC_RAW 4 52: #define CLOCK_REALTIME_COARSE 5 53: #define CLOCK_MONOTONIC_COARSE 6 54: #define CLOCK_BOOTTIME 7 55: #define CLOCK_REALTIME_ALARM 8 56: #define CLOCK_BOOTTIME_ALARM 9 57: #define CLOCK_SGI_CYCLE 10 /* Hardware specific */ 58: #define CLOCK_TAI 11 59: 60: #define MAX_CLOCKS 16 61: #define CLOCKS_MASK (CLOCK_REALTIME | CLOCK_MONOTONIC) 62: #define CLOCKS_MONO CLOCK_MONOTONIC 63: 64: /* 65: * The various flags for setting POSIX.1b interval timers: 66: */ 67: #define TIMER_ABSTIME 0x01 68: 69: #endif /* _UAPI_LINUX_TIME_H */ 70: