lib: make graph API const-correct
[babeltrace.git] / include / babeltrace / graph / port-internal.h
index 43d23dd68c64ff550a03e0d342c2c67187aa1f9a..d7a48e7331a05edb816177b1619048e546f14c1c 100644 (file)
@@ -1,9 +1,7 @@
-#ifndef BABELTRACE_COMPONENT_PORT_INTERNAL_H
-#define BABELTRACE_COMPONENT_PORT_INTERNAL_H
+#ifndef BABELTRACE_GRAPH_PORT_INTERNAL_H
+#define BABELTRACE_GRAPH_PORT_INTERNAL_H
 
 /*
- * BabelTrace - Babeltrace Component Port
- *
  * Copyright 2017 Jérémie Galarneau <jeremie.galarneau@efficios.com>
  *
  * Author: Jérémie Galarneau <jeremie.galarneau@efficios.com>
@@ -27,7 +25,7 @@
  * SOFTWARE.
  */
 
-#include <babeltrace/graph/port.h>
+#include <babeltrace/graph/port-const.h>
 
 struct bt_port {
        struct bt_object base;
@@ -37,19 +35,7 @@ struct bt_port {
        void *user_data;
 };
 
-static inline
-struct bt_port *bt_port_from_private(
-               struct bt_private_port *private_port)
-{
-       return (void *) private_port;
-}
-
-static inline
-struct bt_private_port *bt_private_port_from_port(
-               struct bt_port *port)
-{
-       return (void *) port;
-}
+struct bt_component;
 
 BT_HIDDEN
 struct bt_port *bt_port_create(struct bt_component *parent_component,
@@ -59,6 +45,13 @@ BT_HIDDEN
 void bt_port_set_connection(struct bt_port *port,
                struct bt_connection *connection);
 
+static inline
+struct bt_component *bt_port_borrow_component_inline(const struct bt_port *port)
+{
+       BT_ASSERT(port);
+       return (void *) bt_object_borrow_parent(&port->base);
+}
+
 static inline
 const char *bt_port_type_string(enum bt_port_type port_type)
 {
@@ -67,11 +60,9 @@ const char *bt_port_type_string(enum bt_port_type port_type)
                return "BT_PORT_TYPE_INPUT";
        case BT_PORT_TYPE_OUTPUT:
                return "BT_PORT_TYPE_OUTPUT";
-       case BT_PORT_TYPE_UNKOWN:
-               return "BT_PORT_TYPE_UNKOWN";
        default:
                return "(unknown)";
        }
 }
 
-#endif /* BABELTRACE_COMPONENT_PORT_INTERNAL_H */
+#endif /* BABELTRACE_GRAPH_PORT_INTERNAL_H */
This page took 0.024944 seconds and 4 git commands to generate.