lib: make plugin API const-correct
[babeltrace.git] / include / babeltrace / graph / port-internal.h
index 85d9d76bfa7ade1698f3900b8abe95f642a7a033..2a681dda069922c906b3f7fbc2d9823849951fb3 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>
 
 #include <babeltrace/graph/port.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif
-
 struct bt_port {
        struct bt_object base;
        enum bt_port_type type;
        GString *name;
        struct bt_connection *connection;
+       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;
-}
-
 BT_HIDDEN
 struct bt_port *bt_port_create(struct bt_component *parent_component,
-               enum bt_port_type type, const char *name);
+               enum bt_port_type type, const char *name, void *user_data);
 
 BT_HIDDEN
 void bt_port_set_connection(struct bt_port *port,
                struct bt_connection *connection);
 
-#ifdef __cplusplus
+static inline
+const char *bt_port_type_string(enum bt_port_type port_type)
+{
+       switch (port_type) {
+       case BT_PORT_TYPE_INPUT:
+               return "BT_PORT_TYPE_INPUT";
+       case BT_PORT_TYPE_OUTPUT:
+               return "BT_PORT_TYPE_OUTPUT";
+       default:
+               return "(unknown)";
+       }
 }
-#endif
 
-#endif /* BABELTRACE_COMPONENT_PORT_INTERNAL_H */
+#endif /* BABELTRACE_GRAPH_PORT_INTERNAL_H */
This page took 0.080085 seconds and 4 git commands to generate.