1
2
3
4
5
6
7
8
9
10 #ifndef PCMK__CRM_COMMON_ISO8601_INTERNAL__H
11 #define PCMK__CRM_COMMON_ISO8601_INTERNAL__H
12
13 #include <glib.h>
14 #include <time.h>
15 #include <sys/time.h>
16 #include <ctype.h>
17 #include <crm/common/iso8601.h>
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22
23 typedef struct pcmk__time_us pcmk__time_hr_t;
24
25 pcmk__time_hr_t *pcmk__time_hr_convert(pcmk__time_hr_t *target,
26 const crm_time_t *dt);
27 void pcmk__time_set_hr_dt(crm_time_t *target, const pcmk__time_hr_t *hr_dt);
28 pcmk__time_hr_t *pcmk__time_hr_now(time_t *epoch);
29 pcmk__time_hr_t *pcmk__time_hr_new(const char *date_time);
30 void pcmk__time_hr_free(pcmk__time_hr_t *hr_dt);
31 char *pcmk__time_format_hr(const char *format, const pcmk__time_hr_t *hr_dt);
32 char *pcmk__epoch2str(const time_t *source, uint32_t flags);
33 char *pcmk__timespec2str(const struct timespec *ts, uint32_t flags);
34 const char *pcmk__readable_interval(guint interval_ms);
35 crm_time_t *pcmk__copy_timet(time_t source);
36
37 struct pcmk__time_us {
38 int years;
39 int months;
40 int days;
41 int seconds;
42 int offset;
43 bool duration;
44 int useconds;
45 };
46
47 #ifdef __cplusplus
48 }
49 #endif
50
51 #endif