Do not use `bool` type; use new `bt_bool` instead
[babeltrace.git] / include / babeltrace / graph / component.h
index 9dac6dec66a117db841d56d97002e718726349bf..31fde560a59edb9fe0d83595e3f778b123ec8c18 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef BABELTRACE_COMPONENT_COMPONENT_H
-#define BABELTRACE_COMPONENT_COMPONENT_H
+#ifndef BABELTRACE_GRAPH_COMPONENT_H
+#define BABELTRACE_GRAPH_COMPONENT_H
 
 /*
  * BabelTrace - Babeltrace Component Interface
@@ -31,7 +31,7 @@
 #include <babeltrace/graph/component-class.h>
 #include <babeltrace/graph/notification-iterator.h>
 #include <babeltrace/values.h>
-#include <stdio.h>
+#include <babeltrace/types.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -79,10 +79,31 @@ extern struct bt_component_class *bt_component_get_class(
 extern enum bt_component_class_type bt_component_get_class_type(
                struct bt_component *component);
 
+static inline
+bt_bool bt_component_is_source(struct bt_component *component)
+{
+       return bt_component_get_class_type(component) ==
+               BT_COMPONENT_CLASS_TYPE_SOURCE;
+}
+
+static inline
+bt_bool bt_component_is_filter(struct bt_component *component)
+{
+       return bt_component_get_class_type(component) ==
+               BT_COMPONENT_CLASS_TYPE_FILTER;
+}
+
+static inline
+bt_bool bt_component_is_sink(struct bt_component *component)
+{
+       return bt_component_get_class_type(component) ==
+               BT_COMPONENT_CLASS_TYPE_SINK;
+}
+
 extern struct bt_graph *bt_component_get_graph(struct bt_component *component);
 
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* BABELTRACE_COMPONENT_COMPONENT_H */
+#endif /* BABELTRACE_GRAPH_COMPONENT_H */
This page took 0.03389 seconds and 4 git commands to generate.