#include <stdint.h>
#include <stddef.h>
-#include <babeltrace/objects.h>
+#include <babeltrace/values.h>
#ifdef __cplusplus
extern "C" {
*/
extern int bt_ctf_event_class_set_attribute(
struct bt_ctf_event_class *event_class, const char *name,
- struct bt_object *value);
+ struct bt_value *value);
/*
* bt_ctf_event_class_get_attribute_count: get the number of attributes
*
* Get an attribute's value (an object). The returned object's
* reference count is incremented. When done with the object, the caller
- * must call bt_object_put() on it.
+ * must call bt_value_put() on it.
*
* @param event_class Event class.
* @param index Index of the attribute.
*
* Returns the attribute's object value, NULL on error.
*/
-extern struct bt_object *
+extern struct bt_value *
bt_ctf_event_class_get_attribute_value(struct bt_ctf_event_class *event_class,
int index);
*
* Get an attribute's value (an object) by its name. The returned object's
* reference count is incremented. When done with the object, the caller
- * must call bt_object_put() on it.
+ * must call bt_value_put() on it.
*
* @param event_class Event class.
* @param name Attribute's name
*
* Returns the attribute's object value, NULL on error.
*/
-extern struct bt_object *
+extern struct bt_value *
bt_ctf_event_class_get_attribute_value_by_name(
struct bt_ctf_event_class *event_class, const char *name);
* bt_ctf_event_class_get and bt_ctf_event_class_put: increment and decrement
* the event class' reference count.
*
+ * You may also use bt_ctf_get() and bt_ctf_put() with event class objects.
+ *
* These functions ensure that the event class won't be destroyed while it
* is in use. The same number of get and put (plus one extra put to
* release the initial reference done at creation) have to be done to
extern struct bt_ctf_event_class *bt_ctf_event_get_class(
struct bt_ctf_event *event);
+/*
+ * bt_ctf_event_get_stream: get an event's associated stream.
+ *
+ * @param event Event.
+ *
+ * Returns the event's associated stream, NULL on error.
+ */
+extern struct bt_ctf_stream *bt_ctf_event_get_stream(
+ struct bt_ctf_event *event);
+
/*
* bt_ctf_event_get_clock: get an event's associated clock.
*
extern struct bt_ctf_clock *bt_ctf_event_get_clock(
struct bt_ctf_event *event);
+/*
+ * bt_ctf_event_get_payload_field: get an event's payload.
+ *
+ * @param event Event instance.
+ *
+ * Returns a field instance on success, NULL on error.
+ */
+extern struct bt_ctf_field *bt_ctf_event_get_payload_field(
+ struct bt_ctf_event *event);
+
+/*
+ * bt_ctf_event_set_payload_field: set an event's payload.
+ *
+ * @param event Event instance.
+ * @param payload Field instance (must be a structure).
+ *
+ * Returns 0 on success, a negative value on error.
+ */
+extern int bt_ctf_event_set_payload_field(struct bt_ctf_event *event,
+ struct bt_ctf_field *payload);
+
/*
* bt_ctf_event_get_payload: get an event's field.
*
extern int bt_ctf_event_set_event_context(struct bt_ctf_event *event,
struct bt_ctf_field *context);
+/*
+ * bt_ctf_event_copy: Deep-copy an event.
+ *
+ * Get an event's deep copy.
+ *
+ * On success, the returned copy has its reference count set to 1.
+ *
+ * @param event Event to copy.
+ *
+ * Returns the deep-copied event on success, NULL on error.
+ */
+extern struct bt_ctf_event *bt_ctf_event_copy(struct bt_ctf_event *event);
+
/*
* bt_ctf_event_get and bt_ctf_event_put: increment and decrement
* the event's reference count.
*
+ * You may also use bt_ctf_get() and bt_ctf_put() with event objects.
+ *
* These functions ensure that the event won't be destroyed while it
* is in use. The same number of get and put (plus one extra put to
* release the initial reference done at creation) have to be done to