#include <babeltrace2/types.h>
#include "common/assert.h"
#include <stdbool.h>
-#include <compat/uuid.h>
+#include "common/uuid.h"
struct bt_port;
struct bt_graph;
struct bt_connection *connection; /* Weak */
struct bt_graph *graph; /* Weak */
+ /*
+ * Array of
+ * `struct bt_self_component_port_input_message_iterator *`
+ * (weak).
+ *
+ * This is an array of upstream message iterators on which this
+ * iterator depends. The references are weak: an upstream
+ * message iterator is responsible for removing its entry within
+ * this array on finalization/destruction.
+ */
+ GPtrArray *upstream_msg_iters;
+
+ /*
+ * Downstream message iterator which depends on this message
+ * iterator (weak).
+ *
+ * This can be `NULL` if this message iterator's owner is a sink
+ * component.
+ */
+ struct bt_self_component_port_input_message_iterator *downstream_msg_iter;
+
struct {
bt_self_component_port_input_message_iterator_next_method next;
bt_self_component_port_input_message_iterator_seek_ns_from_origin_method seek_ns_from_origin;
* irrelevant (as the clock will be correlatable with other
* clocks having the same origin).
*/
- uint8_t uuid[BABELTRACE_UUID_LEN];
+ bt_uuid_t uuid;
} clock_expectation;
/*