extern "C" {
#endif
+typedef enum bt_component_class_status {
+ BT_COMPONENT_CLASS_STATUS_OK = 0,
+ BT_COMPONENT_CLASS_STATUS_NOMEM = -12,
+} bt_component_class_status;
+
typedef enum bt_component_class_type {
BT_COMPONENT_CLASS_TYPE_SOURCE = 0,
BT_COMPONENT_CLASS_TYPE_FILTER = 1,
/* For bt_query_status */
#include <babeltrace/graph/component-class.h>
+/* For bt_component_class_status */
+#include <babeltrace/graph/component-class-const.h>
+
/*
* For bt_component_class, bt_component_class_filter, bt_port_input,
* bt_port_output, bt_query_executor, bt_self_component_class_filter,
const char *name,
bt_component_class_filter_message_iterator_next_method method);
-extern int bt_component_class_filter_set_init_method(
+extern bt_component_class_status
+bt_component_class_filter_set_init_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_init_method method);
-extern int bt_component_class_filter_set_finalize_method(
+extern bt_component_class_status
+bt_component_class_filter_set_finalize_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_finalize_method method);
-extern int bt_component_class_filter_set_accept_input_port_connection_method(
+extern bt_component_class_status
+bt_component_class_filter_set_accept_input_port_connection_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_accept_input_port_connection_method method);
-extern int bt_component_class_filter_set_accept_output_port_connection_method(
+extern bt_component_class_status
+bt_component_class_filter_set_accept_output_port_connection_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_accept_output_port_connection_method method);
-extern int bt_component_class_filter_set_input_port_connected_method(
+extern bt_component_class_status
+bt_component_class_filter_set_input_port_connected_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_input_port_connected_method method);
-extern int bt_component_class_filter_set_output_port_connected_method(
+extern bt_component_class_status
+bt_component_class_filter_set_output_port_connected_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_output_port_connected_method method);
-extern int bt_component_class_filter_set_input_port_disconnected_method(
+extern bt_component_class_status
+bt_component_class_filter_set_input_port_disconnected_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_input_port_disconnected_method method);
-extern int bt_component_class_filter_set_output_port_disconnected_method(
+extern bt_component_class_status
+bt_component_class_filter_set_output_port_disconnected_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_output_port_disconnected_method method);
-extern int bt_component_class_filter_set_query_method(
+extern bt_component_class_status
+bt_component_class_filter_set_query_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_query_method method);
-extern int bt_component_class_filter_set_message_iterator_init_method(
+extern bt_component_class_status
+bt_component_class_filter_set_message_iterator_init_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_message_iterator_init_method method);
-extern int bt_component_class_filter_set_message_iterator_finalize_method(
+extern bt_component_class_status
+bt_component_class_filter_set_message_iterator_finalize_method(
bt_component_class_filter *comp_class,
bt_component_class_filter_message_iterator_finalize_method method);
/* For bt_query_status */
#include <babeltrace/graph/component-class.h>
+/* For bt_component_class_status */
+#include <babeltrace/graph/component-class-const.h>
+
/*
* For bt_component_class, bt_component_class_sink, bt_port_output,
* bt_query_executor, bt_self_component_class_sink,
const char *name,
bt_component_class_sink_consume_method method);
-extern int bt_component_class_sink_set_init_method(
+extern bt_component_class_status bt_component_class_sink_set_init_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_init_method method);
-extern int bt_component_class_sink_set_finalize_method(
+extern bt_component_class_status bt_component_class_sink_set_finalize_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_finalize_method method);
-extern int bt_component_class_sink_set_accept_input_port_connection_method(
+extern bt_component_class_status
+bt_component_class_sink_set_accept_input_port_connection_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_accept_input_port_connection_method method);
-extern int bt_component_class_sink_set_input_port_connected_method(
+extern bt_component_class_status
+bt_component_class_sink_set_input_port_connected_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_input_port_connected_method method);
-extern int bt_component_class_sink_set_input_port_disconnected_method(
+extern bt_component_class_status
+bt_component_class_sink_set_input_port_disconnected_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_input_port_disconnected_method method);
-extern int bt_component_class_sink_set_query_method(
+extern bt_component_class_status bt_component_class_sink_set_query_method(
bt_component_class_sink *comp_class,
bt_component_class_sink_query_method method);
/* For bt_query_status */
#include <babeltrace/graph/component-class.h>
+/* For bt_component_class_status */
+#include <babeltrace/graph/component-class-const.h>
+
/*
* For bt_component_class, bt_component_class_source, bt_port_input,
* bt_query_executor, bt_self_component_class_source,
const char *name,
bt_component_class_source_message_iterator_next_method method);
-extern int bt_component_class_source_set_init_method(
+extern bt_component_class_status
+bt_component_class_source_set_init_method(
bt_component_class_source *comp_class,
bt_component_class_source_init_method method);
-extern int bt_component_class_source_set_finalize_method(
+extern bt_component_class_status
+bt_component_class_source_set_finalize_method(
bt_component_class_source *comp_class,
bt_component_class_source_finalize_method method);
-extern int bt_component_class_source_set_accept_output_port_connection_method(
+extern bt_component_class_status
+bt_component_class_source_set_accept_output_port_connection_method(
bt_component_class_source *comp_class,
bt_component_class_source_accept_output_port_connection_method method);
-extern int bt_component_class_source_set_output_port_connected_method(
+extern bt_component_class_status
+bt_component_class_source_set_output_port_connected_method(
bt_component_class_source *comp_class,
bt_component_class_source_output_port_connected_method method);
-extern int bt_component_class_source_set_output_port_disconnected_method(
+extern bt_component_class_status
+bt_component_class_source_set_output_port_disconnected_method(
bt_component_class_source *comp_class,
bt_component_class_source_output_port_disconnected_method method);
-extern int bt_component_class_source_set_query_method(
+extern bt_component_class_status
+bt_component_class_source_set_query_method(
bt_component_class_source *comp_class,
bt_component_class_source_query_method method);
-extern int bt_component_class_source_set_message_iterator_init_method(
+extern bt_component_class_status
+bt_component_class_source_set_message_iterator_init_method(
bt_component_class_source *comp_class,
bt_component_class_source_message_iterator_init_method method);
-extern int bt_component_class_source_set_message_iterator_finalize_method(
+extern bt_component_class_status
+bt_component_class_source_set_message_iterator_finalize_method(
bt_component_class_source *comp_class,
bt_component_class_source_message_iterator_finalize_method method);
/* For bt_component_class */
#include <babeltrace/types.h>
+/* For bt_component_class_status */
+#include <babeltrace/graph/component-class-const.h>
+
#ifdef __cplusplus
extern "C" {
#endif
BT_QUERY_STATUS_INVALID_PARAMS = BT_QUERY_EXECUTOR_STATUS_INVALID_PARAMS,
} bt_query_status;
-extern int bt_component_class_set_description(
+extern bt_component_class_status bt_component_class_set_description(
bt_component_class *component_class,
const char *description);
-extern int bt_component_class_set_help(
+extern bt_component_class_status bt_component_class_set_help(
bt_component_class *component_class,
const char *help);
comp_cls->methods.init = method;
BT_LIB_LOGV("Set source component class's initialization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_init_method(
comp_cls->methods.init = method;
BT_LIB_LOGV("Set filter component class's initialization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_init_method(
comp_cls->methods.init = method;
BT_LIB_LOGV("Set sink component class's initialization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_finalize_method(
comp_cls->methods.finalize = method;
BT_LIB_LOGV("Set source component class's finalization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_finalize_method(
comp_cls->methods.finalize = method;
BT_LIB_LOGV("Set filter component class's finalization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_finalize_method(
comp_cls->methods.finalize = method;
BT_LIB_LOGV("Set sink component class's finalization method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_query_method(
comp_cls->methods.query = method;
BT_LIB_LOGV("Set source component class's query method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_query_method(
comp_cls->methods.query = method;
BT_LIB_LOGV("Set filter component class's query method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_query_method(
comp_cls->methods.query = method;
BT_LIB_LOGV("Set sink component class's query method: "
"%!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_accept_input_port_connection_method(
comp_cls->methods.accept_input_port_connection = method;
BT_LIB_LOGV("Set filter component class's \"accept input port connection\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_accept_input_port_connection_method(
comp_cls->methods.accept_input_port_connection = method;
BT_LIB_LOGV("Set sink component class's \"accept input port connection\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_accept_output_port_connection_method(
comp_cls->methods.accept_output_port_connection = method;
BT_LIB_LOGV("Set source component class's \"accept output port connection\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_accept_output_port_connection_method(
comp_cls->methods.accept_output_port_connection = method;
BT_LIB_LOGV("Set filter component class's \"accept output port connection\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_input_port_connected_method(
comp_cls->methods.input_port_connected = method;
BT_LIB_LOGV("Set filter component class's \"input port connected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_input_port_connected_method(
comp_cls->methods.input_port_connected = method;
BT_LIB_LOGV("Set sink component class's \"input port connected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_output_port_connected_method(
comp_cls->methods.output_port_connected = method;
BT_LIB_LOGV("Set source component class's \"output port connected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_output_port_connected_method(
comp_cls->methods.output_port_connected = method;
BT_LIB_LOGV("Set filter component class's \"output port connected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_input_port_disconnected_method(
comp_cls->methods.input_port_disconnected = method;
BT_LIB_LOGV("Set filter component class's \"input port disconnected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_sink_set_input_port_disconnected_method(
comp_cls->methods.input_port_disconnected = method;
BT_LIB_LOGV("Set sink component class's \"input port disconnected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_output_port_disconnected_method(
comp_cls->methods.output_port_disconnected = method;
BT_LIB_LOGV("Set source component class's \"output port disconnected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_output_port_disconnected_method(
comp_cls->methods.output_port_disconnected = method;
BT_LIB_LOGV("Set filter component class's \"output port disconnected\" method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_message_iterator_init_method(
comp_cls->methods.msg_iter_init = method;
BT_LIB_LOGV("Set source component class's message iterator initialization method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_message_iterator_init_method(
comp_cls->methods.msg_iter_init = method;
BT_LIB_LOGV("Set filter component class's message iterator initialization method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_source_set_message_iterator_finalize_method(
comp_cls->methods.msg_iter_finalize = method;
BT_LIB_LOGV("Set source component class's message iterator finalization method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
int bt_component_class_filter_set_message_iterator_finalize_method(
comp_cls->methods.msg_iter_finalize = method;
BT_LIB_LOGV("Set filter component class's message iterator finalization method"
": %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
-int bt_component_class_set_description(
+bt_component_class_status bt_component_class_set_description(
struct bt_component_class *comp_cls,
const char *description)
{
comp_cls,
bt_component_class_get_name(comp_cls),
bt_component_class_type_string(comp_cls->type));
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
-int bt_component_class_set_help(
+bt_component_class_status bt_component_class_set_help(
struct bt_component_class *comp_cls,
const char *help)
{
BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls);
g_string_assign(comp_cls->help, help);
BT_LIB_LOGV("Set component class's help text: %!+C", comp_cls);
- return 0;
+ return BT_COMPONENT_CLASS_STATUS_OK;
}
const char *bt_component_class_get_name(const struct bt_component_class *comp_cls)