X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=include%2Fbabeltrace%2Fgraph%2Fnotification-const.h;h=a513c0c6fb537f8edc01f69da6508effb1e8bc2b;hp=47e2f606c3effb146de370f30ed8915986a0b06b;hb=c5b9b4417bedfbec9b5dd23b8395ccdd4eeffc44;hpb=e2f7325d1e58710ee928373592adcee466f93d06 diff --git a/include/babeltrace/graph/notification-const.h b/include/babeltrace/graph/notification-const.h index 47e2f606..a513c0c6 100644 --- a/include/babeltrace/graph/notification-const.h +++ b/include/babeltrace/graph/notification-const.h @@ -53,6 +53,23 @@ enum bt_notification_type { extern enum bt_notification_type bt_notification_get_type( const struct bt_notification *notification); +extern void bt_notification_get_ref(const struct bt_notification *notification); + +extern void bt_notification_put_ref(const struct bt_notification *notification); + +#define BT_NOTIFICATION_PUT_REF_AND_RESET(_var) \ + do { \ + bt_notification_put_ref(_var); \ + (_var) = NULL; \ + } while (0) + +#define BT_NOTIFICATION_MOVE_REF(_var_dst, _var_src) \ + do { \ + bt_notification_put_ref(_var_dst); \ + (_var_dst) = (_var_src); \ + (_var_src) = NULL; \ + } while (0) + #ifdef __cplusplus } #endif