From: Jérémie Galarneau Date: Mon, 6 Oct 2014 01:20:25 +0000 (-0400) Subject: Add UUID accessors to CTF-IR clock X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=85b743f4fb661eec7cf76b546564f62ceaf22a34;p=deliverable%2Fbabeltrace.git Add UUID accessors to CTF-IR clock Signed-off-by: Jérémie Galarneau --- diff --git a/formats/ctf/ir/clock.c b/formats/ctf/ir/clock.c index 2a55857f0..a883f53ee 100644 --- a/formats/ctf/ir/clock.c +++ b/formats/ctf/ir/clock.c @@ -245,6 +245,34 @@ end: return ret; } +const unsigned char *bt_ctf_clock_get_uuid(struct bt_ctf_clock *clock) +{ + const unsigned char *ret; + + if (!clock) { + ret = NULL; + goto end; + } + + ret = clock->uuid; +end: + return ret; +} + +int bt_ctf_clock_set_uuid(struct bt_ctf_clock *clock, const unsigned char *uuid) +{ + int ret = 0; + + if (!clock || !uuid) { + ret = -1; + goto end; + } + + memcpy(clock->uuid, uuid, sizeof(uuid_t)); +end: + return ret; +} + uint64_t bt_ctf_clock_get_time(struct bt_ctf_clock *clock) { uint64_t ret = -1ULL; diff --git a/include/babeltrace/ctf-ir/clock.h b/include/babeltrace/ctf-ir/clock.h index c1ae948a3..dea3f2b6c 100644 --- a/include/babeltrace/ctf-ir/clock.h +++ b/include/babeltrace/ctf-ir/clock.h @@ -208,6 +208,31 @@ extern int bt_ctf_clock_get_is_absolute(struct bt_ctf_clock *clock); extern int bt_ctf_clock_set_is_absolute(struct bt_ctf_clock *clock, int is_absolute); +/* + * bt_ctf_clock_get_uuid: get a clock's UUID. + * + * Get the clock's UUID. + * + * @param clock Clock instance. + * + * Returns a pointer to the clock's UUID (16 byte array) on success, + * NULL on error. + */ +extern const unsigned char *bt_ctf_clock_get_uuid(struct bt_ctf_clock *clock); + +/* + * bt_ctf_clock_set_uuid: set a clock's UUID. + * + * Set a clock's UUID. + * + * @param clock Clock instance. + * @param uuid A 16-byte array containing a UUID. + * + * Returns 0 on success, a negative value on error. + */ +extern int bt_ctf_clock_set_uuid(struct bt_ctf_clock *clock, + const unsigned char *uuid); + /* * bt_ctf_clock_get_time: get a clock's current time value. *