74 SU_DURATION_MAX = 0x7fffffffL
76#define SU_DURATION_MAX SU_DURATION_MAX
86#define SU_NTP_C(x) SU_U64_C(x)
88#define SU_TIME_CMP(t1, t2) su_time_cmp(t1, t2)
91#define SU_TIME_EPOCH 2208988800UL
93#define SU_E9 (1000000000U)
96#define SU_TIME64_MAX ((su_time64_t)(su_dur64_t)-1)
120#define SU_SEC_TO_DURATION(sec) ((su_duration_t)(1000 * (sec)))
Time in seconds and microsecondcs.
Definition su_time.h:57
unsigned long tv_usec
Microseconds
Definition su_time.h:59
unsigned long tv_sec
Seconds.
Definition su_time.h:58
#define SOFIAPUBFUN
SOFIAPUBFUN declares an exported function.
Definition su_config.h:66
su_time64_t su_now64(void)
Get current time as nanoseconds since epoch.
Definition su_time0.c:194
int64_t su_dur64_t
Time offset (duration) in nanoseconds.
Definition su_time.h:50
su_ntp_t su_ntp_now(void)
Get NTP timestamp.
Definition su_time.c:264
su_duration_t su_duration64(su_time64_t t1, su_time64_t t2)
Time difference in milliseconds.
Definition su_time.c:243
su_time64_t su_time64_add(su_time64_t t, su_duration_t dur)
Add offset in milliseconds to 64-bit nanosecond time.
Definition su_time.h:165
su_time_t su_time_add(su_time_t t, su_duration_t dur)
Add milliseconds to the time.
Definition su_time.c:358
uint32_t su_ntp_hi(su_ntp_t)
High 32 bit of NTP timestamp.
Definition su_time.c:319
long su_duration_t
Time difference in microseconds.
Definition su_time.h:70
uint32_t su_ntp_fraq(su_time_t t)
Middle 32 bit of NTP timestamp.
Definition su_time.h:148
int su_time_print(char *s, int n, su_time_t const *tv)
Print su_time_t timestamp.
Definition su_time.c:189
su_time_t su_now(void)
Get current time.
Definition su_time.c:170
uint32_t su_ntp_sec(void)
Get NTP seconds.
Definition su_time.c:306
su_time_t su_time_dadd(su_time_t t, double dur)
Add seconds to the time.
Definition su_time.c:372
su_time64_t su_stamp64(void)
Get current monotonic timestamp as nanoseconds.
Definition su_time0.c:271
long su_time_cmp(su_time_t const t1, su_time_t const t2)
Compare two timestamps.
Definition su_time.c:111
su_duration_t su_duration(su_time_t const t1, su_time_t const t2)
Time difference in milliseconds.
Definition su_time.c:211
void su_time(su_time_t *tv)
Get current time.
Definition su_time0.c:88
uint64_t su_ntp_t
NTP timestamp.
Definition su_time.h:83
uint64_t su_time64_t
Time in nanoseconds.
Definition su_time.h:44
uint32_t su_random(void)
Generate a random 32-bit unsigned integer.
Definition su_uniqueid.c:421
uint32_t su_time_ms(su_time_t t)
Time as milliseconds.
Definition su_time.h:159
su_time64_t su_nanotime_t
Time in nanoseconds.
Definition su_time.h:47
uint32_t su_ntp_mw(su_ntp_t ntp)
Middle 32 bit of NTP timestamp.
Definition su_time.c:347
su_time64_t su_nanotime(su_time64_t *return_time)
Get current time as nanoseconds since epoch.
Definition su_time0.c:170
uint32_t su_ntp_lo(su_ntp_t)
Low 32 bit of NTP timestamp.
Definition su_time.c:335
su_time64_t su_monotime(su_time64_t *return_time)
Get current monotonic time as nanoseconds.
Definition su_time0.c:246
double su_time_diff(su_time_t const t1, su_time_t const t2)
Difference between two timestamps.
Definition su_time.c:156
Basic integer types for su library.
SU_U32_T uint32_t
32-bit unsigned integer
Definition su_types.h:87
SU_S64_T int64_t
64-bit signed integer
Definition su_types.h:85
SU_U64_T uint64_t
64-bit unsigned integer
Definition su_types.h:83