Notification iterator: transform precondition checks to BT_ASSERT_PRE()
[babeltrace.git] / include / babeltrace / graph / notification-internal.h
index 631d0adf7bbfe4c53c51afcb6c25415d126bfda9..d1149055717fc61c451f2dbbf66563f6a96f8720 100644 (file)
@@ -41,9 +41,16 @@ struct bt_notification {
        struct bt_object base;
        enum bt_notification_type type;
        get_stream_func get_stream;
+       uint64_t seq_num;
        bt_bool frozen;
 };
 
+#define BT_ASSERT_PRE_NOTIF_IS_TYPE(_notif, _type)                     \
+       BT_ASSERT_PRE((_notif)->type == (_type),                        \
+               "Notification has the wrong type: expected-type=%s, "   \
+               "%![notif-]+n", bt_notification_type_string(_type),     \
+               (_notif))
+
 BT_HIDDEN
 void bt_notification_init(struct bt_notification *notification,
                enum bt_notification_type type,
@@ -58,12 +65,8 @@ static inline
 const char *bt_notification_type_string(enum bt_notification_type type)
 {
        switch (type) {
-       case BT_NOTIFICATION_TYPE_SENTINEL:
-               return "BT_NOTIFICATION_TYPE_SENTINEL";
        case BT_NOTIFICATION_TYPE_UNKNOWN:
                return "BT_NOTIFICATION_TYPE_UNKNOWN";
-       case BT_NOTIFICATION_TYPE_ALL:
-               return "BT_NOTIFICATION_TYPE_ALL";
        case BT_NOTIFICATION_TYPE_EVENT:
                return "BT_NOTIFICATION_TYPE_EVENT";
        case BT_NOTIFICATION_TYPE_INACTIVITY:
This page took 0.024323 seconds and 4 git commands to generate.