Changeset 3f466c33 in mainline for uspace/lib/posix/time.h


Ignore:
Timestamp:
2011-07-07T22:59:42Z (14 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ec18957a
Parents:
324d46b
Message:

More additions to time.h (still WIP)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/posix/time.h

    r324d46b r3f466c33  
    5656#endif
    5757
     58#ifndef POSIX_SIGNAL_H_
     59        struct posix_sigevent;
     60        #ifndef LIBPOSIX_INTERNAL
     61                #define sigevent posix_sigevent
     62        #endif
     63#endif
     64
    5865#undef ASCTIME_BUF_LEN
    5966#define ASCTIME_BUF_LEN 26
     
    7481};
    7582
    76 // FIXME: should be in sys/types.h
    77 typedef long posix_clock_t;
    78 
    7983struct posix_timespec {
    8084        time_t tv_sec; /* Seconds. */
     
    8791};
    8892
     93typedef struct __posix_timer *posix_timer_t;
     94
    8995/* Timezones */
    9096
     
    101107/* Broken-down Time */
    102108extern time_t posix_mktime(struct posix_tm *timeptr);
    103 extern struct posix_tm *posix_localtime(const time_t *timep);
     109extern struct posix_tm *posix_gmtime(const time_t *timer);
     110extern struct posix_tm *posix_gmtime_r(const time_t *restrict timer,
     111    struct posix_tm *restrict result);
     112extern struct posix_tm *posix_localtime(const time_t *timer);
    104113extern struct posix_tm *posix_localtime_r(const time_t *restrict timer,
    105114    struct posix_tm *restrict result);
     115
    106116/* Formatting Calendar Time */
    107117extern char *posix_asctime(const struct posix_tm *timeptr);
    108118extern char *posix_asctime_r(const struct posix_tm *restrict timeptr,
    109119    char *restrict buf);
    110 extern char *posix_ctime(const time_t *timep);
     120extern char *posix_ctime(const time_t *timer);
     121extern char *posix_ctime_r(const time_t *timer, char *buf);
     122
    111123extern size_t posix_strftime(char *restrict s, size_t maxsize,
    112124    const char *restrict format, const struct posix_tm *restrict tm);
    113125
     126extern size_t posix_strftime_l(char *restrict s, size_t maxsize,
     127    const char *restrict format, const struct posix_tm *restrict tm,
     128    posix_locale_t loc);
     129
     130/* Clocks. */
     131
     132extern int posix_clock_getres(posix_clockid_t clock_id,
     133    struct posix_timespec *res);
     134extern int posix_clock_gettime(posix_clockid_t clock_id,
     135    struct posix_timespec *tp);
     136extern int posix_clock_settime(posix_clockid_t clock_id,
     137    const struct posix_timespec *tp);
     138extern int posix_clock_nanosleep(posix_clockid_t clock_id, int flags,
     139    const struct posix_timespec *rqtp, struct posix_timespec *rmtp);
     140
     141/* Timers. */
     142
     143#if 0
     144
     145extern int posix_timer_create(posix_clockid_t clockid,
     146    struct posix_sigevent *restrict evp,
     147    posix_timer_t *restrict timerid);
     148extern int posix_timer_delete(posix_timer_t timerid);
     149extern int posix_timer_getoverrun(posix_timer_t timerid);
     150extern int posix_timer_gettime(posix_timer_t timerid,
     151    struct posix_itimerspec *value);
     152extern int posix_timer_settime(posix_timer_t timerid, int flags,
     153    const struct posix_itimerspec *restrict value,
     154    struct posix_itimerspec *restrict ovalue);
     155
     156#endif
     157
    114158/* CPU Time */
    115159extern posix_clock_t posix_clock(void);
     
    119163        #define tm posix_tm
    120164
    121         #define clock_t posix_clock_t
    122165        #define timespec posix_timespec
    123166        #define itimerspec posix_itimerspec
     167        #define timer_t posix_timer_t
    124168
    125169        #define difftime posix_difftime
    126170        #define mktime posix_mktime
     171        #define gmtime posix_gmtime
     172        #define gmtime_r posix_gmtime_r
    127173        #define localtime posix_localtime
    128174        #define localtime_r posix_localtime_r
     
    136182        #define asctime_r posix_asctime_r
    137183        #define ctime posix_ctime
     184        #define ctime_r posix_ctime_r
    138185        #define strftime posix_strftime
    139186
     187        #define clock_getres posix_clock_getres
     188        #define clock_gettime posix_clock_gettime
     189        #define clock_settime posix_clock_settime
     190        #define clock_nanosleep posix_clock_nanosleep
     191       
     192        #define timer_create posix_timer_create
     193        #define timer_delete posix_timer_delete
     194        #define timer_getoverrun posix_timer_getoverrun
     195        #define timer_gettime posix_timer_gettime
     196        #define timer_settime posix_timer_settime
     197       
    140198        #define clock posix_clock
    141199#endif
Note: See TracChangeset for help on using the changeset viewer.