#include <babeltrace/types.h>
#include <babeltrace/values.h>
#include <babeltrace/values-internal.h>
+#include <babeltrace/assert-internal.h>
#include <stdint.h>
#include <inttypes.h>
* bt_put(): the reference count would go from 1 to 0 again and
* this function would be called again.
*/
- obj->ref_count.count++;
+ obj->ref_count++;
component = container_of(obj, struct bt_component, base);
BT_LOGD("Destroying component: addr=%p, name=\"%s\", graph-addr=%p",
component, bt_component_get_name(component),
g_free(component);
}
-struct bt_component *bt_component_from_private(
+struct bt_component *bt_component_borrow_from_private(
struct bt_private_component *private_component)
{
- return bt_get(bt_component_borrow_from_private(private_component));
+ return (void *) private_component;
}
enum bt_component_class_type bt_component_get_class_type(
struct bt_port *port = g_ptr_array_index(ports, i);
port_name = bt_port_get_name(port);
- assert(port_name);
+ BT_ASSERT(port_name);
if (!strcmp(name, port_name)) {
/* Port name clash, abort. */
BT_HIDDEN
int64_t bt_component_get_input_port_count(struct bt_component *comp)
{
- assert(comp);
+ BT_ASSERT(comp);
return (int64_t) comp->input_ports->len;
}
BT_HIDDEN
int64_t bt_component_get_output_port_count(struct bt_component *comp)
{
- assert(comp);
+ BT_ASSERT(comp);
return (int64_t) comp->output_ports->len;
}
struct bt_component *component = NULL;
enum bt_component_class_type type;
- assert(user_component);
- assert(component_class);
- assert(name);
+ BT_ASSERT(user_component);
+ BT_ASSERT(component_class);
+ BT_ASSERT(name);
type = bt_component_class_get_type(component_class);
BT_LOGD("Creating empty component from component class: "
goto end;
}
- bt_object_init(component, bt_component_destroy);
+ bt_object_init_shared_with_parent(&component->base,
+ bt_component_destroy);
component->class = bt_get(component_class);
component->destroy = component_destroy_funcs[type];
component->name = g_string_new(name);
}
component->input_ports = g_ptr_array_new_with_free_func(
- bt_object_release);
+ (GDestroyNotify) bt_object_try_spec_release);
if (!component->input_ports) {
BT_LOGE_STR("Failed to allocate one GPtrArray.");
status = BT_COMPONENT_STATUS_NOMEM;
}
component->output_ports = g_ptr_array_new_with_free_func(
- bt_object_release);
+ (GDestroyNotify) bt_object_try_spec_release);
if (!component->output_ports) {
BT_LOGE_STR("Failed to allocate one GPtrArray.");
status = BT_COMPONENT_STATUS_NOMEM;
void bt_component_set_graph(struct bt_component *component,
struct bt_graph *graph)
{
- bt_object_set_parent(component, graph ? &graph->base : NULL);
+ bt_object_set_parent(&component->base,
+ graph ? &graph->base : NULL);
}
-struct bt_graph *bt_component_get_graph(
- struct bt_component *component)
+struct bt_graph *bt_component_borrow_graph(struct bt_component *component)
{
- return (struct bt_graph *) bt_object_get_parent(&component->base);
+ return (struct bt_graph *) bt_object_borrow_parent(&component->base);
}
static
size_t i;
struct bt_port *ret_port = NULL;
- assert(name);
+ BT_ASSERT(name);
for (i = 0; i < ports->len; i++) {
struct bt_port *port = g_ptr_array_index(ports, i);
struct bt_port *bt_component_get_input_port_by_name(struct bt_component *comp,
const char *name)
{
- assert(comp);
+ BT_ASSERT(comp);
return bt_component_get_port_by_name(comp->input_ports, name);
}
struct bt_port *bt_component_get_output_port_by_name(struct bt_component *comp,
const char *name)
{
- assert(comp);
+ BT_ASSERT(comp);
return bt_component_get_port_by_name(comp->output_ports, name);
}
struct bt_port *bt_component_get_input_port_by_index(struct bt_component *comp,
uint64_t index)
{
- assert(comp);
+ BT_ASSERT(comp);
return bt_component_get_port_by_index(comp->input_ports, index);
}
struct bt_port *bt_component_get_output_port_by_index(struct bt_component *comp,
uint64_t index)
{
- assert(comp);
+ BT_ASSERT(comp);
return bt_component_get_port_by_index(comp->output_ports, index);
}
struct bt_port *port;
struct bt_graph *graph;
- assert(ports);
- assert(index < ports->len);
+ BT_ASSERT(ports);
+ BT_ASSERT(index < ports->len);
port = g_ptr_array_index(ports, index);
BT_LOGD("Removing port from component: "
ports = component->output_ports;
}
- assert(ports);
+ BT_ASSERT(ports);
for (i = 0; i < ports->len; i++) {
struct bt_port *cur_port = g_ptr_array_index(ports, i);
{
enum bt_component_status status = BT_COMPONENT_STATUS_OK;
- assert(comp);
- assert(self_port);
- assert(other_port);
+ BT_ASSERT(comp);
+ BT_ASSERT(self_port);
+ BT_ASSERT(other_port);
if (comp->class->methods.accept_port_connection) {
BT_LOGD("Calling user's \"accept port connection\" method: "
void bt_component_port_connected(struct bt_component *comp,
struct bt_port *self_port, struct bt_port *other_port)
{
- assert(comp);
- assert(self_port);
- assert(other_port);
+ BT_ASSERT(comp);
+ BT_ASSERT(self_port);
+ BT_ASSERT(other_port);
if (comp->class->methods.port_connected) {
BT_LOGD("Calling user's \"port connected\" method: "
void bt_component_port_disconnected(struct bt_component *comp,
struct bt_port *port)
{
- assert(comp);
- assert(port);
+ BT_ASSERT(comp);
+ BT_ASSERT(port);
if (comp->class->methods.port_disconnected) {
BT_LOGD("Calling user's \"port disconnected\" method: "
{
struct bt_component_destroy_listener listener;
- assert(component);
- assert(func);
+ BT_ASSERT(component);
+ BT_ASSERT(func);
listener.func = func;
listener.data = data;
g_array_append_val(component->destroy_listeners, listener);
{
size_t i;
- assert(component);
- assert(func);
+ BT_ASSERT(component);
+ BT_ASSERT(func);
for (i = 0; i < component->destroy_listeners->len; i++) {
struct bt_component_destroy_listener *listener =