extern "C" {
#endif
+enum bt_trace_status {
+ BT_TRACE_STATUS_OK = 0,
+ BT_TRACE_STATUS_NOMEM = -12,
+};
+
typedef void (* bt_trace_is_static_listener_func)(const bt_trace *trace,
void *data);
extern bt_bool bt_trace_is_static(const bt_trace *trace);
-extern int bt_trace_add_is_static_listener(const bt_trace *trace,
+extern enum bt_trace_status bt_trace_add_is_static_listener(
+ const bt_trace *trace,
bt_trace_is_static_listener_func listener,
bt_trace_listener_removed_func listener_removed, void *data,
uint64_t *listener_id);
-extern int bt_trace_remove_is_static_listener(const bt_trace *trace,
- uint64_t listener_id);
+extern enum bt_trace_status bt_trace_remove_is_static_listener(
+ const bt_trace *trace, uint64_t listener_id);
extern void bt_trace_get_ref(const bt_trace *trace);
/* For bt_bool, bt_trace, bt_trace_class, bt_stream */
#include <babeltrace/types.h>
+/* For enum bt_trace_status */
+#include <babeltrace/trace-ir/trace-const.h>
+
#include <stdint.h>
#ifdef __cplusplus
extern bt_trace *bt_trace_create(bt_trace_class *trace_class);
-extern int bt_trace_set_name(bt_trace *trace, const char *name);
+extern enum bt_trace_status bt_trace_set_name(bt_trace *trace,
+ const char *name);
extern bt_stream *bt_trace_borrow_stream_by_index(bt_trace *trace,
uint64_t index);
extern bt_stream *bt_trace_borrow_stream_by_id(bt_trace *trace,
uint64_t id);
-extern int bt_trace_make_static(bt_trace *trace);
+extern enum bt_trace_status bt_trace_make_static(bt_trace *trace);
#ifdef __cplusplus
}
return trace->name.value;
}
-int bt_trace_set_name(struct bt_trace *trace, const char *name)
+enum bt_trace_status bt_trace_set_name(struct bt_trace *trace, const char *name)
{
BT_ASSERT_PRE_NON_NULL(trace, "Trace");
BT_ASSERT_PRE_NON_NULL(name, "Name");
g_string_assign(trace->name.str, name);
trace->name.value = trace->name.str->str;
BT_LIB_LOGV("Set trace's name: %!+t", trace);
- return 0;
+ return BT_TRACE_STATUS_OK;
}
uint64_t bt_trace_get_stream_count(const struct bt_trace *trace)
return (bt_bool) trace->is_static;
}
-int bt_trace_make_static(struct bt_trace *trace)
+enum bt_trace_status bt_trace_make_static(struct bt_trace *trace)
{ uint64_t i;
BT_ASSERT_PRE_NON_NULL(trace, "Trace");
}
}
- return 0;
+ return BT_TRACE_STATUS_OK;
}
-int bt_trace_add_is_static_listener(
+enum bt_trace_status bt_trace_add_is_static_listener(
const struct bt_trace *c_trace,
bt_trace_is_static_listener_func listener,
bt_trace_listener_removed_func listener_removed, void *data,
BT_LIB_LOGV("Added \"trace is static\" listener: "
"%![trace-]+t, listener-id=%" PRIu64, trace, i);
- return 0;
+ return BT_TRACE_STATUS_OK;
}
BT_ASSERT_PRE_FUNC
listener_id))->func != NULL;
}
-int bt_trace_remove_is_static_listener(const struct bt_trace *c_trace,
- uint64_t listener_id)
+enum bt_trace_status bt_trace_remove_is_static_listener(
+ const struct bt_trace *c_trace, uint64_t listener_id)
{
struct bt_trace *trace = (void *) c_trace;
struct bt_trace_is_static_listener_elem *elem;
BT_LIB_LOGV("Removed \"trace is static\" listener: "
"%![trace-]+t, listener-id=%" PRIu64,
trace, listener_id);
- return 0;
+ return BT_TRACE_STATUS_OK;
}
BT_HIDDEN