bt2: normalize the code to use some commonly used patterns
[babeltrace.git] / src / bindings / python / bt2 / bt2 / native_bt_graph.i.h
index bccc18257109766e2dbd70c26305fa832cdbdd38..9725b957b30b682bb34b6fa25d86843ac5e3c54b 100644 (file)
@@ -60,7 +60,8 @@ static bt_graph_listener_func_status port_added_listener(
        py_res = PyObject_CallFunction(py_callable, "(OiOi)",
                py_component_ptr, component_class_type, py_port_ptr, port_type);
        if (!py_res) {
-               loge_exception("Graph's port added listener (Python)",
+               loge_exception_append_cause(
+                       "Graph's port added listener (Python)",
                        BT_LOG_OUTPUT_LEVEL);
                PyErr_Clear();
                status = __BT_FUNC_STATUS_ERROR;
@@ -227,7 +228,6 @@ PyObject *bt_bt2_graph_add_port_added_listener(struct bt_graph *graph,
                goto error;
        }
 
-
        PyTuple_SET_ITEM(py_listener_ids, 3, py_listener_id);
        py_listener_id = NULL;
 
@@ -244,7 +244,6 @@ error:
        Py_INCREF(py_listener_ids);
 
 end:
-
        Py_XDECREF(py_listener_id);
        return py_listener_ids;
 }
@@ -306,7 +305,8 @@ bt_graph_listener_func_status ports_connected_listener(
                py_downstream_component_ptr, downstream_component_class_type,
                py_downstream_port_ptr);
        if (!py_res) {
-               loge_exception("Graph's port connected listener (Python)",
+               loge_exception_append_cause(
+                       "Graph's port connected listener (Python)",
                        BT_LOG_OUTPUT_LEVEL);
                PyErr_Clear();
                status = __BT_FUNC_STATUS_ERROR;
@@ -513,3 +513,45 @@ end:
        Py_XDECREF(py_listener_id);
        return py_listener_ids;
 }
+
+static
+bt_graph_add_component_status
+bt_bt2_graph_add_source_component(
+               bt_graph *graph,
+               const bt_component_class_source *component_class,
+               const char *name, const bt_value *params,
+               PyObject *obj, bt_logging_level log_level,
+               const bt_component_source **component)
+{
+       return bt_graph_add_source_component_with_initialize_method_data(graph,
+               component_class, name, params, obj == Py_None ? NULL : obj,
+               log_level, component);
+}
+
+static
+bt_graph_add_component_status
+bt_bt2_graph_add_filter_component(
+               bt_graph *graph,
+               const bt_component_class_filter *component_class,
+               const char *name, const bt_value *params,
+               PyObject *obj, bt_logging_level log_level,
+               const bt_component_filter **component)
+{
+       return bt_graph_add_filter_component_with_initialize_method_data(graph,
+               component_class, name, params, obj == Py_None ? NULL : obj,
+               log_level, component);
+}
+
+static
+bt_graph_add_component_status
+bt_bt2_graph_add_sink_component(
+               bt_graph *graph,
+               const bt_component_class_sink *component_class,
+               const char *name, const bt_value *params,
+               PyObject *obj, bt_logging_level log_level,
+               const bt_component_sink **component)
+{
+       return bt_graph_add_sink_component_with_initialize_method_data(graph,
+               component_class, name, params, obj == Py_None ? NULL : obj,
+               log_level, component);
+}
This page took 0.023753 seconds and 4 git commands to generate.