void bt_ctf_clock_destroy(struct bt_object *obj);
BT_HIDDEN
-struct bt_ctf_clock *_bt_ctf_clock_create(void)
+bool bt_ctf_clock_is_valid(struct bt_ctf_clock *clock)
{
- struct bt_ctf_clock *clock = g_new0(
- struct bt_ctf_clock, 1);
-
- if (!clock) {
- goto end;
- }
-
- clock->precision = 1;
- clock->frequency = 1000000000;
- bt_object_init(clock, bt_ctf_clock_destroy);
-end:
- return clock;
+ return clock && clock->name;
}
-BT_HIDDEN
int bt_ctf_clock_set_name(struct bt_ctf_clock *clock,
const char *name)
{
int ret = 0;
+ if (!clock || clock->frozen) {
+ ret = -1;
+ goto end;
+ }
+
if (bt_ctf_validate_identifier(name)) {
ret = -1;
goto end;
struct bt_ctf_clock *bt_ctf_clock_create(const char *name)
{
int ret;
- struct bt_ctf_clock *clock = NULL;
+ struct bt_ctf_clock *clock = g_new0(struct bt_ctf_clock, 1);
- clock = _bt_ctf_clock_create();
if (!clock) {
goto error;
}
- ret = bt_ctf_clock_set_name(clock, name);
- if (ret) {
- goto error;
+ clock->precision = 1;
+ clock->frequency = 1000000000;
+ bt_object_init(clock, bt_ctf_clock_destroy);
+
+ if (name) {
+ ret = bt_ctf_clock_set_name(clock, name);
+ if (ret) {
+ goto error;
+ }
}
ret = bt_uuid_generate(clock->uuid);