X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fgraph%2Fcomponent-sink-const.h;h=bda32846b2e440b4af9b50af603fd833bc833a41;hb=8c6884d908cf7a7cf2340f3384441278635d19e1;hp=0afeb5148efc19f2758d3859c51690f67353ae54;hpb=f2b0325d1bd4bc213b08fa42828d6cc86adc6a01;p=babeltrace.git diff --git a/include/babeltrace/graph/component-sink-const.h b/include/babeltrace/graph/component-sink-const.h index 0afeb514..bda32846 100644 --- a/include/babeltrace/graph/component-sink-const.h +++ b/include/babeltrace/graph/component-sink-const.h @@ -52,6 +52,25 @@ extern const struct bt_port_input * bt_component_sink_borrow_input_port_by_index_const( const struct bt_component_sink *component, uint64_t index); +extern void bt_component_sink_get_ref( + const struct bt_component_sink *component_sink); + +extern void bt_component_sink_put_ref( + const struct bt_component_sink *component_sink); + +#define BT_COMPONENT_SINK_PUT_REF_AND_RESET(_var) \ + do { \ + bt_component_sink_put_ref(_var); \ + (_var) = NULL; \ + } while (0) + +#define BT_COMPONENT_SINK_MOVE_REF(_var_dst, _var_src) \ + do { \ + bt_component_sink_put_ref(_var_dst); \ + (_var_dst) = (_var_src); \ + (_var_src) = NULL; \ + } while (0) + #ifdef __cplusplus } #endif