X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fctf-writer%2Fclock.h;h=a1a53e82e4fd3b8202ce86aa04d85f75cd065da9;hb=3dca22768a95bef664012559aa9ac977091de6ac;hp=7276f451853827b3f1c92739f3ed9cd69b5d4046;hpb=d975f66c5dcfc7eade13db3edbc975d2055dfe4b;p=babeltrace.git diff --git a/include/babeltrace/ctf-writer/clock.h b/include/babeltrace/ctf-writer/clock.h index 7276f451..a1a53e82 100644 --- a/include/babeltrace/ctf-writer/clock.h +++ b/include/babeltrace/ctf-writer/clock.h @@ -31,12 +31,15 @@ */ #include +#include +#include #ifdef __cplusplus extern "C" { #endif struct bt_ctf_clock; +struct bt_ctf_clock_class; /* * bt_ctf_clock_create: create a clock. @@ -265,8 +268,72 @@ extern int bt_ctf_clock_set_time(struct bt_ctf_clock *clock, * * @param clock Clock instance. */ -extern void bt_ctf_clock_get(struct bt_ctf_clock *clock); -extern void bt_ctf_clock_put(struct bt_ctf_clock *clock); + +/* Pre-2.0 CTF writer compatibility */ +static inline +void bt_ctf_clock_get(struct bt_ctf_clock *clock) +{ + bt_get(clock); +} + +/* Pre-2.0 CTF writer compatibility */ +static inline +void bt_ctf_clock_put(struct bt_ctf_clock *clock) +{ + bt_put(clock); +} + +extern struct bt_ctf_clock_class *bt_ctf_clock_class_create(const char *name, + uint64_t freq); + +extern const char *bt_ctf_clock_class_get_name( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_name(struct bt_ctf_clock_class *clock_class, + const char *name); + +extern const char *bt_ctf_clock_class_get_description( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_description( + struct bt_ctf_clock_class *clock_class, + const char *desc); + +extern uint64_t bt_ctf_clock_class_get_frequency( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_frequency( + struct bt_ctf_clock_class *clock_class, uint64_t freq); + +extern uint64_t bt_ctf_clock_class_get_precision( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_precision( + struct bt_ctf_clock_class *clock_class, uint64_t precision); + +extern int bt_ctf_clock_class_get_offset_s( + struct bt_ctf_clock_class *clock_class, int64_t *seconds); + +extern int bt_ctf_clock_class_set_offset_s( + struct bt_ctf_clock_class *clock_class, int64_t seconds); + +extern int bt_ctf_clock_class_get_offset_cycles( + struct bt_ctf_clock_class *clock_class, int64_t *cycles); + +extern int bt_ctf_clock_class_set_offset_cycles( + struct bt_ctf_clock_class *clock_class, int64_t cycles); + +extern bt_bool bt_ctf_clock_class_is_absolute( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_is_absolute( + struct bt_ctf_clock_class *clock_class, bt_bool is_absolute); + +extern const unsigned char *bt_ctf_clock_class_get_uuid( + struct bt_ctf_clock_class *clock_class); + +extern int bt_ctf_clock_class_set_uuid(struct bt_ctf_clock_class *clock_class, + const unsigned char *uuid); #ifdef __cplusplus }