X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fgraph%2Fport.h;h=c70ca5e04e48e1a4515ce11ae728b6e7adb573eb;hb=3a2cb327fd24e53a9b163372b9079003dd422655;hp=9d802440c41a4585166fcceb22b0bbb6928ed9e9;hpb=b2e0c9076135f47110af2d96dfaee397c597bc90;p=babeltrace.git diff --git a/include/babeltrace/graph/port.h b/include/babeltrace/graph/port.h index 9d802440..c70ca5e0 100644 --- a/include/babeltrace/graph/port.h +++ b/include/babeltrace/graph/port.h @@ -1,9 +1,7 @@ -#ifndef BABELTRACE_COMPONENT_PORT_H -#define BABELTRACE_COMPONENT_PORT_H +#ifndef BABELTRACE_GRAPH_PORT_H +#define BABELTRACE_GRAPH_PORT_H /* - * BabelTrace - Babeltrace Component Connection Interface - * * Copyright 2017 Jérémie Galarneau * * Author: Jérémie Galarneau @@ -29,37 +27,46 @@ #include +/* For bt_bool */ +#include + #ifdef __cplusplus extern "C" { #endif struct bt_port; struct bt_connection; - -enum bt_port_status { - BT_PORT_STATUS_OK = 0, - BT_PORT_STATUS_ERROR = -1, - BT_PORT_STATUS_INVALID = -2, -}; +struct bt_component; enum bt_port_type { BT_PORT_TYPE_INPUT = 0, BT_PORT_TYPE_OUTPUT = 1, - BT_PORT_TYPE_UNKOWN = -1, }; -extern const char *BT_DEFAULT_PORT_NAME; - extern const char *bt_port_get_name(struct bt_port *port); + extern enum bt_port_type bt_port_get_type(struct bt_port *port); -extern struct bt_connection *bt_port_get_connection(struct bt_port *port); -extern struct bt_component *bt_port_get_component(struct bt_port *port); -extern int bt_port_remove_from_component(struct bt_port *port); -extern int bt_port_disconnect(struct bt_port *port); -extern int bt_port_is_connected(struct bt_port *port); + +extern struct bt_connection *bt_port_borrow_connection(struct bt_port *port); + +extern struct bt_component *bt_port_borrow_component(struct bt_port *port); + +extern bt_bool bt_port_is_connected(struct bt_port *port); + +static inline +bt_bool bt_port_is_input(struct bt_port *port) +{ + return bt_port_get_type(port) == BT_PORT_TYPE_INPUT; +} + +static inline +bt_bool bt_port_is_output(struct bt_port *port) +{ + return bt_port_get_type(port) == BT_PORT_TYPE_OUTPUT; +} #ifdef __cplusplus } #endif -#endif /* BABELTRACE_COMPONENT_PORT_H */ +#endif /* BABELTRACE_GRAPH_PORT_H */