X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Flib%2Ftrace-ir%2Fevent.h;h=b1fb2313034b08a8d88e27e6dfbb1ab1dd06986c;hb=c4f23e30bf67d2523163614bc9461d84cbe1ae80;hp=71318f95b626b3b8e11b8db83f3e603d2f00d9f9;hpb=26fc5aedf48df3f1654fe4d0b6ada1a10cd804f2;p=babeltrace.git diff --git a/src/lib/trace-ir/event.h b/src/lib/trace-ir/event.h index 71318f95..b1fb2313 100644 --- a/src/lib/trace-ir/event.h +++ b/src/lib/trace-ir/event.h @@ -39,6 +39,7 @@ #include "lib/object.h" #include "common/assert.h" #include +#include #include "event-class.h" #include "field.h" @@ -46,8 +47,8 @@ #include "packet.h" #include "stream.h" -#define BT_ASSERT_PRE_EVENT_HOT(_event) \ - BT_ASSERT_PRE_HOT(((const struct bt_event *) (_event)), \ +#define BT_ASSERT_PRE_DEV_EVENT_HOT(_event) \ + BT_ASSERT_PRE_DEV_HOT(((const struct bt_event *) (_event)), \ "Event", ": %!+e", (_event)) struct bt_event { @@ -87,7 +88,7 @@ __attribute__((unused)) static inline void _bt_event_reset_dev_mode(struct bt_event *event) { - BT_ASSERT(event); + BT_ASSERT_DBG(event); if (event->common_context_field) { bt_field_set_is_frozen( @@ -118,14 +119,14 @@ void _bt_event_reset_dev_mode(struct bt_event *event) static inline void bt_event_reset(struct bt_event *event) { - BT_ASSERT(event); + BT_ASSERT_DBG(event); BT_LIB_LOGD("Resetting event: %!+e", event); bt_event_set_is_frozen(event, false); - bt_object_put_no_null_check(&event->stream->base); + bt_object_put_ref_no_null_check(&event->stream->base); event->stream = NULL; if (event->packet) { - bt_object_put_no_null_check(&event->packet->base); + bt_object_put_ref_no_null_check(&event->packet->base); event->packet = NULL; } } @@ -135,7 +136,7 @@ void bt_event_recycle(struct bt_event *event) { struct bt_event_class *event_class; - BT_ASSERT(event); + BT_ASSERT_DBG(event); BT_LIB_LOGD("Recycling event: %!+e", event); /* @@ -162,26 +163,26 @@ void bt_event_recycle(struct bt_event *event) */ bt_event_reset(event); event_class = event->class; - BT_ASSERT(event_class); + BT_ASSERT_DBG(event_class); event->class = NULL; bt_object_pool_recycle_object(&event_class->event_pool, event); - bt_object_put_no_null_check(&event_class->base); + bt_object_put_ref_no_null_check(&event_class->base); } static inline void bt_event_set_packet(struct bt_event *event, struct bt_packet *packet) { - BT_ASSERT_PRE_NON_NULL(event, "Event"); - BT_ASSERT_PRE_NON_NULL(packet, "Packet"); - BT_ASSERT_PRE_EVENT_HOT(event); - BT_ASSERT_PRE(bt_event_class_borrow_stream_class( + BT_ASSERT_PRE_DEV_NON_NULL(event, "Event"); + BT_ASSERT_PRE_DEV_NON_NULL(packet, "Packet"); + BT_ASSERT_PRE_DEV_EVENT_HOT(event); + BT_ASSERT_PRE_DEV(bt_event_class_borrow_stream_class( event->class) == packet->stream->class, "Packet's stream class and event's stream class differ: " "%![event-]+e, %![packet-]+a", event, packet); - BT_ASSERT(event->stream->class->supports_packets); - BT_ASSERT(!event->packet); + BT_ASSERT_DBG(event->stream->class->supports_packets); + BT_ASSERT_DBG(!event->packet); event->packet = packet; - bt_object_get_no_null_check_no_parent_check(&event->packet->base); + bt_object_get_ref_no_null_check_no_parent_check(&event->packet->base); BT_LIB_LOGD("Set event's packet: %![event-]+e, %![packet-]+a", event, packet); } @@ -189,16 +190,16 @@ void bt_event_set_packet(struct bt_event *event, struct bt_packet *packet) static inline void bt_event_set_stream(struct bt_event *event, struct bt_stream *stream) { - BT_ASSERT_PRE_NON_NULL(event, "Event"); - BT_ASSERT_PRE_NON_NULL(stream, "Stream"); - BT_ASSERT_PRE_EVENT_HOT(event); - BT_ASSERT_PRE(bt_event_class_borrow_stream_class( + BT_ASSERT_PRE_DEV_NON_NULL(event, "Event"); + BT_ASSERT_PRE_DEV_NON_NULL(stream, "Stream"); + BT_ASSERT_PRE_DEV_EVENT_HOT(event); + BT_ASSERT_PRE_DEV(bt_event_class_borrow_stream_class( event->class) == stream->class, "Stream's class and event's stream class differ: " "%![event-]+e, %![stream-]+s", event, stream); - BT_ASSERT(!event->stream); + BT_ASSERT_DBG(!event->stream); event->stream = stream; - bt_object_get_no_null_check_no_parent_check(&event->stream->base); + bt_object_get_ref_no_null_check_no_parent_check(&event->stream->base); BT_LIB_LOGD("Set event's stream: %![event-]+e, %![stream-]+s", event, stream); } @@ -209,8 +210,8 @@ struct bt_event *bt_event_create(struct bt_event_class *event_class, { struct bt_event *event = NULL; - BT_ASSERT(event_class); - BT_ASSERT(stream); + BT_ASSERT_DBG(event_class); + BT_ASSERT_DBG(stream); event = bt_object_pool_create_object(&event_class->event_pool); if (G_UNLIKELY(!event)) { BT_LIB_LOGE_APPEND_CAUSE( @@ -221,13 +222,13 @@ struct bt_event *bt_event_create(struct bt_event_class *event_class, if (G_LIKELY(!event->class)) { event->class = event_class; - bt_object_get_no_null_check(&event_class->base); + bt_object_get_ref_no_null_check(&event_class->base); } bt_event_set_stream(event, stream); if (packet) { - BT_ASSERT(packet); + BT_ASSERT_DBG(packet); bt_event_set_packet(event, packet); }