File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/time.h

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: