From 40f4ba76dd6f9508ca51b6220eaed57632281a07 Mon Sep 17 00:00:00 2001 From: Philippe Proulx Date: Tue, 4 Dec 2018 15:29:10 -0500 Subject: [PATCH] lib: make trace IR API const-correct Signed-off-by: Philippe Proulx --- include/Makefile.am | 28 +- include/babeltrace/babeltrace.h | 28 +- include/babeltrace/common-internal.h | 6 +- include/babeltrace/graph/notification-event.h | 2 +- .../babeltrace/graph/notification-internal.h | 2 +- .../babeltrace/graph/notification-packet.h | 4 +- .../babeltrace/graph/notification-stream.h | 10 +- .../graph/private-notification-event.h | 12 +- .../graph/private-notification-packet.h | 10 +- .../graph/private-notification-stream.h | 10 +- ...vate-clock-class.h => clock-class-const.h} | 51 ++- .../trace-ir/clock-class-internal.h | 2 +- include/babeltrace/trace-ir/clock-class.h | 29 +- .../{clock-value.h => clock-value-const.h} | 15 +- .../babeltrace/trace-ir/event-class-const.h | 88 +++++ .../trace-ir/event-class-internal.h | 4 +- include/babeltrace/trace-ir/event-class.h | 52 ++- .../{private-event.h => event-const.h} | 65 ++-- ...et-header-field.h => event-header-field.h} | 23 +- include/babeltrace/trace-ir/event-internal.h | 5 +- include/babeltrace/trace-ir/event.h | 20 +- .../babeltrace/trace-ir/field-classes-const.h | 166 +++++++++ .../trace-ir/field-classes-internal.h | 30 +- include/babeltrace/trace-ir/field-classes.h | 168 +++------ .../{field-path.h => field-path-const.h} | 12 +- .../babeltrace/trace-ir/field-path-internal.h | 4 +- include/babeltrace/trace-ir/fields-const.h | 95 +++++ include/babeltrace/trace-ir/fields-internal.h | 26 +- include/babeltrace/trace-ir/fields.h | 39 +- include/babeltrace/trace-ir/packet-const.h | 80 +++++ ...-header-field.h => packet-context-field.h} | 24 +- ...-context-field.h => packet-header-field.h} | 24 +- include/babeltrace/trace-ir/packet-internal.h | 4 +- include/babeltrace/trace-ir/packet.h | 33 +- .../babeltrace/trace-ir/private-event-class.h | 92 ----- .../trace-ir/private-field-classes.h | 155 -------- include/babeltrace/trace-ir/private-fields.h | 98 ------ include/babeltrace/trace-ir/private-packet.h | 92 ----- .../trace-ir/private-stream-class.h | 132 ------- include/babeltrace/trace-ir/private-trace.h | 126 ------- .../trace-ir/resolve-field-path-internal.h | 4 +- .../babeltrace/trace-ir/stream-class-const.h | 108 ++++++ .../trace-ir/stream-class-internal.h | 4 +- include/babeltrace/trace-ir/stream-class.h | 73 ++-- .../{private-stream.h => stream-const.h} | 29 +- include/babeltrace/trace-ir/stream-internal.h | 2 +- include/babeltrace/trace-ir/stream.h | 9 +- include/babeltrace/trace-ir/trace-const.h | 105 ++++++ include/babeltrace/trace-ir/trace-internal.h | 6 +- include/babeltrace/trace-ir/trace.h | 39 +- include/babeltrace/trace-ir/utils-internal.h | 4 +- include/babeltrace/values-const.h | 41 ++- include/babeltrace/values.h | 41 +-- lib/graph/iterator.c | 27 +- lib/graph/notification/event.c | 21 +- lib/graph/notification/packet.c | 33 +- lib/graph/notification/stream.c | 32 +- lib/graph/query-executor.c | 1 + lib/trace-ir/clock-class.c | 62 ++-- lib/trace-ir/clock-value.c | 8 +- lib/trace-ir/event-class.c | 103 ++---- lib/trace-ir/event-header-field.c | 14 +- lib/trace-ir/event.c | 85 +++-- lib/trace-ir/field-classes.c | 333 ++++++++---------- lib/trace-ir/field-path.c | 11 +- lib/trace-ir/fields.c | 188 +++++----- lib/trace-ir/packet-context-field.c | 14 +- lib/trace-ir/packet-header-field.c | 14 +- lib/trace-ir/packet.c | 70 ++-- lib/trace-ir/resolve-field-path.c | 2 +- lib/trace-ir/stream-class.c | 187 ++++------ lib/trace-ir/stream.c | 34 +- lib/trace-ir/trace.c | 151 ++++---- lib/values.c | 10 +- plugins/ctf/common/metadata/ast.h | 2 +- .../ctf/common/metadata/ctf-meta-translate.c | 182 +++++----- .../ctf-meta-update-default-clock-classes.c | 14 +- .../ctf/common/metadata/ctf-meta-visitors.h | 2 +- plugins/ctf/common/metadata/ctf-meta.h | 23 +- plugins/ctf/common/metadata/decoder.c | 2 +- plugins/ctf/common/metadata/decoder.h | 2 +- .../ctf/common/metadata/visitor-generate-ir.c | 60 ++-- plugins/ctf/common/notif-iter/notif-iter.c | 219 ++++++------ plugins/ctf/common/notif-iter/notif-iter.h | 8 +- plugins/ctf/fs-sink/write.c | 100 +++--- plugins/ctf/fs-sink/writer.c | 10 +- plugins/ctf/fs-sink/writer.h | 14 +- plugins/ctf/fs-src/data-stream-file.c | 22 +- plugins/ctf/fs-src/data-stream-file.h | 8 +- plugins/ctf/fs-src/fs.c | 15 +- plugins/ctf/fs-src/fs.h | 6 +- plugins/ctf/fs-src/query.c | 9 +- plugins/ctf/lttng-live/data-stream.c | 4 +- plugins/ctf/lttng-live/lttng-live-internal.h | 4 +- plugins/ctf/lttng-live/lttng-live.c | 4 +- plugins/ctf/lttng-live/metadata.c | 2 +- plugins/libctfcopytrace/clock-fields.c | 152 ++++---- plugins/libctfcopytrace/clock-fields.h | 16 +- plugins/libctfcopytrace/ctfcopytrace.c | 112 +++--- plugins/libctfcopytrace/ctfcopytrace.h | 64 ++-- plugins/lttng-utils/copy.c | 286 +++++++-------- plugins/lttng-utils/copy.h | 32 +- plugins/lttng-utils/debug-info.c | 18 +- plugins/lttng-utils/debug-info.h | 6 +- plugins/lttng-utils/plugin.c | 20 +- plugins/text/dmesg/dmesg.c | 72 ++-- plugins/text/pretty/print.c | 167 ++++----- plugins/utils/muxer/muxer.c | 10 +- plugins/utils/trimmer/copy.c | 46 +-- plugins/utils/trimmer/copy.h | 14 +- plugins/utils/trimmer/iterator.c | 34 +- tests/lib/test_bt_notification_iterator.c | 83 +++-- tests/lib/test_trace_ir_ref.c | 184 +++++----- 113 files changed, 2716 insertions(+), 3043 deletions(-) rename include/babeltrace/trace-ir/{private-clock-class.h => clock-class-const.h} (55%) rename include/babeltrace/trace-ir/{clock-value.h => clock-value-const.h} (81%) create mode 100644 include/babeltrace/trace-ir/event-class-const.h rename include/babeltrace/trace-ir/{private-event.h => event-const.h} (50%) rename include/babeltrace/trace-ir/{private-packet-header-field.h => event-header-field.h} (69%) create mode 100644 include/babeltrace/trace-ir/field-classes-const.h rename include/babeltrace/trace-ir/{field-path.h => field-path-const.h} (85%) create mode 100644 include/babeltrace/trace-ir/fields-const.h create mode 100644 include/babeltrace/trace-ir/packet-const.h rename include/babeltrace/trace-ir/{private-event-header-field.h => packet-context-field.h} (68%) rename include/babeltrace/trace-ir/{private-packet-context-field.h => packet-header-field.h} (68%) delete mode 100644 include/babeltrace/trace-ir/private-event-class.h delete mode 100644 include/babeltrace/trace-ir/private-field-classes.h delete mode 100644 include/babeltrace/trace-ir/private-fields.h delete mode 100644 include/babeltrace/trace-ir/private-packet.h delete mode 100644 include/babeltrace/trace-ir/private-stream-class.h delete mode 100644 include/babeltrace/trace-ir/private-trace.h create mode 100644 include/babeltrace/trace-ir/stream-class-const.h rename include/babeltrace/trace-ir/{private-stream.h => stream-const.h} (64%) create mode 100644 include/babeltrace/trace-ir/trace-const.h diff --git a/include/Makefile.am b/include/Makefile.am index 0d8802d9..bc272807 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -118,28 +118,28 @@ babeltracectfirinclude_HEADERS = \ # Trace IR API babeltracetraceirincludedir = "$(includedir)/babeltrace/trace-ir" babeltracetraceirinclude_HEADERS = \ + babeltrace/trace-ir/clock-class-const.h \ babeltrace/trace-ir/clock-class.h \ - babeltrace/trace-ir/clock-value.h \ + babeltrace/trace-ir/clock-value-const.h \ + babeltrace/trace-ir/event-class-const.h \ babeltrace/trace-ir/event-class.h \ + babeltrace/trace-ir/event-const.h \ + babeltrace/trace-ir/event-header-field.h \ babeltrace/trace-ir/event.h \ + babeltrace/trace-ir/field-classes-const.h \ babeltrace/trace-ir/field-classes.h \ - babeltrace/trace-ir/field-path.h \ + babeltrace/trace-ir/field-path-const.h \ + babeltrace/trace-ir/fields-const.h \ babeltrace/trace-ir/fields.h \ + babeltrace/trace-ir/packet-const.h \ + babeltrace/trace-ir/packet-context-field.h \ + babeltrace/trace-ir/packet-header-field.h \ babeltrace/trace-ir/packet.h \ - babeltrace/trace-ir/private-clock-class.h \ - babeltrace/trace-ir/private-event-class.h \ - babeltrace/trace-ir/private-event.h \ - babeltrace/trace-ir/private-event-header-field.h \ - babeltrace/trace-ir/private-field-classes.h \ - babeltrace/trace-ir/private-fields.h \ - babeltrace/trace-ir/private-packet-context-field.h \ - babeltrace/trace-ir/private-packet.h \ - babeltrace/trace-ir/private-packet-header-field.h \ - babeltrace/trace-ir/private-stream-class.h \ - babeltrace/trace-ir/private-stream.h \ - babeltrace/trace-ir/private-trace.h \ + babeltrace/trace-ir/stream-class-const.h \ babeltrace/trace-ir/stream-class.h \ + babeltrace/trace-ir/stream-const.h \ babeltrace/trace-ir/stream.h \ + babeltrace/trace-ir/trace-const.h \ babeltrace/trace-ir/trace.h # Plugin and plugin development API diff --git a/include/babeltrace/babeltrace.h b/include/babeltrace/babeltrace.h index 5ea9f23c..67e2fac9 100644 --- a/include/babeltrace/babeltrace.h +++ b/include/babeltrace/babeltrace.h @@ -64,28 +64,28 @@ #include /* Trace IR API */ +#include #include -#include +#include +#include #include +#include +#include #include +#include #include -#include +#include +#include #include +#include +#include +#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include +#include #include +#include #include /* Plugin and plugin development API */ diff --git a/include/babeltrace/common-internal.h b/include/babeltrace/common-internal.h index 4c0cdc0d..d27f8967 100644 --- a/include/babeltrace/common-internal.h +++ b/include/babeltrace/common-internal.h @@ -27,9 +27,9 @@ #include #include #include -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/include/babeltrace/graph/notification-event.h b/include/babeltrace/graph/notification-event.h index 563a5fd0..3bcc6c88 100644 --- a/include/babeltrace/graph/notification-event.h +++ b/include/babeltrace/graph/notification-event.h @@ -32,7 +32,7 @@ extern "C" { struct bt_notification; struct bt_event; -extern struct bt_event *bt_notification_event_borrow_event( +extern const struct bt_event *bt_notification_event_borrow_event( struct bt_notification *notification); #ifdef __cplusplus diff --git a/include/babeltrace/graph/notification-internal.h b/include/babeltrace/graph/notification-internal.h index 33debfd0..f776f5ec 100644 --- a/include/babeltrace/graph/notification-internal.h +++ b/include/babeltrace/graph/notification-internal.h @@ -48,7 +48,7 @@ struct bt_notification { }; #define BT_ASSERT_PRE_NOTIF_IS_TYPE(_notif, _type) \ - BT_ASSERT_PRE((_notif)->type == (_type), \ + BT_ASSERT_PRE(((struct bt_notification *) (_notif))->type == (_type), \ "Notification has the wrong type: expected-type=%s, " \ "%![notif-]+n", bt_notification_type_string(_type), \ (_notif)) diff --git a/include/babeltrace/graph/notification-packet.h b/include/babeltrace/graph/notification-packet.h index 4380c64a..a6d6c7fa 100644 --- a/include/babeltrace/graph/notification-packet.h +++ b/include/babeltrace/graph/notification-packet.h @@ -32,10 +32,10 @@ extern "C" { struct bt_notification; struct bt_packet; -extern struct bt_packet *bt_notification_packet_begin_borrow_packet( +extern const struct bt_packet *bt_notification_packet_begin_borrow_packet( struct bt_notification *notification); -extern struct bt_packet *bt_notification_packet_end_borrow_packet( +extern const struct bt_packet *bt_notification_packet_end_borrow_packet( struct bt_notification *notification); #ifdef __cplusplus diff --git a/include/babeltrace/graph/notification-stream.h b/include/babeltrace/graph/notification-stream.h index d4a97dc3..2dea094c 100644 --- a/include/babeltrace/graph/notification-stream.h +++ b/include/babeltrace/graph/notification-stream.h @@ -34,16 +34,18 @@ struct bt_self_notification_iterator; struct bt_clock_value; struct bt_stream; -extern struct bt_stream *bt_notification_stream_begin_borrow_stream( +extern const struct bt_stream *bt_notification_stream_begin_borrow_stream( struct bt_notification *notification); -extern struct bt_clock_value *bt_notification_stream_begin_borrow_default_clock_value( +extern const struct bt_clock_value * +bt_notification_stream_begin_borrow_default_clock_value( struct bt_notification *notif); -extern struct bt_stream *bt_notification_stream_end_borrow_stream( +extern const struct bt_stream *bt_notification_stream_end_borrow_stream( struct bt_notification *notification); -extern struct bt_clock_value *bt_notification_stream_end_borrow_default_clock_value( +extern const struct bt_clock_value * +bt_notification_stream_end_borrow_default_clock_value( struct bt_notification *notif); #ifdef __cplusplus diff --git a/include/babeltrace/graph/private-notification-event.h b/include/babeltrace/graph/private-notification-event.h index cbede7a8..6051286b 100644 --- a/include/babeltrace/graph/private-notification-event.h +++ b/include/babeltrace/graph/private-notification-event.h @@ -31,17 +31,17 @@ extern "C" { struct bt_private_notification; struct bt_self_notification_iterator; -struct bt_private_event; -struct bt_private_packet; -struct bt_private_event_class; +struct bt_event; +struct bt_packet; +struct bt_event_class; extern struct bt_private_notification *bt_private_notification_event_create( struct bt_self_notification_iterator *notification_iterator, - struct bt_private_event_class *event_class, - struct bt_private_packet *packet); + struct bt_event_class *event_class, + struct bt_packet *packet); -extern struct bt_private_event * +extern struct bt_event * bt_private_notification_event_borrow_event( struct bt_private_notification *notification); diff --git a/include/babeltrace/graph/private-notification-packet.h b/include/babeltrace/graph/private-notification-packet.h index cd7c548a..e895255e 100644 --- a/include/babeltrace/graph/private-notification-packet.h +++ b/include/babeltrace/graph/private-notification-packet.h @@ -31,23 +31,23 @@ extern "C" { struct bt_private_notification; struct bt_self_notification_iterator; -struct bt_private_packet; +struct bt_packet; extern struct bt_private_notification *bt_private_notification_packet_begin_create( struct bt_self_notification_iterator *notification_iterator, - struct bt_private_packet *packet); + struct bt_packet *packet); extern struct bt_private_notification *bt_private_notification_packet_end_create( struct bt_self_notification_iterator *notification_iterator, - struct bt_private_packet *packet); + struct bt_packet *packet); -extern struct bt_private_packet * +extern struct bt_packet * bt_private_notification_packet_begin_borrow_packet( struct bt_private_notification *notification); -extern struct bt_private_packet * +extern struct bt_packet * bt_private_notification_packet_end_borrow_packet( struct bt_private_notification *notification); diff --git a/include/babeltrace/graph/private-notification-stream.h b/include/babeltrace/graph/private-notification-stream.h index de0324a2..4274bbd1 100644 --- a/include/babeltrace/graph/private-notification-stream.h +++ b/include/babeltrace/graph/private-notification-stream.h @@ -33,26 +33,26 @@ extern "C" { struct bt_private_notification; struct bt_self_notification_iterator; -struct bt_private_stream; +struct bt_stream; extern struct bt_private_notification *bt_private_notification_stream_begin_create( struct bt_self_notification_iterator *notification_iterator, - struct bt_private_stream *stream); + struct bt_stream *stream); extern struct bt_private_notification *bt_private_notification_stream_end_create( struct bt_self_notification_iterator *notification_iterator, - struct bt_private_stream *stream); + struct bt_stream *stream); -extern struct bt_private_stream * +extern struct bt_stream * bt_private_notification_stream_begin_borrow_stream( struct bt_private_notification *notification); extern void bt_private_notification_stream_begin_set_default_clock_value( struct bt_private_notification *notif, uint64_t value_cycles); -extern struct bt_private_stream * +extern struct bt_stream * bt_private_notification_stream_end_borrow_stream( struct bt_private_notification *notification); diff --git a/include/babeltrace/trace-ir/private-clock-class.h b/include/babeltrace/trace-ir/clock-class-const.h similarity index 55% rename from include/babeltrace/trace-ir/private-clock-class.h rename to include/babeltrace/trace-ir/clock-class-const.h index 20f54c42..70898ffe 100644 --- a/include/babeltrace/trace-ir/private-clock-class.h +++ b/include/babeltrace/trace-ir/clock-class-const.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_CLOCK_CLASS_H -#define BABELTRACE_TRACE_IR_PRIVATE_CLOCK_CLASS_H +#ifndef BABELTRACE_TRACE_IR_CLOCK_CLASS_CONST_H +#define BABELTRACE_TRACE_IR_CLOCK_CLASS_CONST_H /* * Copyright 2013, 2014 Jérémie Galarneau @@ -39,45 +39,34 @@ extern "C" { #endif struct bt_clock_class; -struct bt_private_clock_class; -static inline -struct bt_clock_class *bt_private_clock_class_as_clock_class( - struct bt_private_clock_class *priv_clock_class) -{ - return (void *) priv_clock_class; -} - -extern struct bt_private_clock_class *bt_private_clock_class_create(void); +extern const char *bt_clock_class_get_name( + const struct bt_clock_class *clock_class); -extern int bt_private_clock_class_set_name( - struct bt_private_clock_class *clock_class, - const char *name); +extern const char *bt_clock_class_get_description( + const struct bt_clock_class *clock_class); -extern int bt_private_clock_class_set_description( - struct bt_private_clock_class *clock_class, - const char *description); +extern uint64_t bt_clock_class_get_frequency( + const struct bt_clock_class *clock_class); -extern void bt_private_clock_class_set_frequency( - struct bt_private_clock_class *clock_class, uint64_t freq); +extern uint64_t bt_clock_class_get_precision( + const struct bt_clock_class *clock_class); -extern void bt_private_clock_class_set_precision( - struct bt_private_clock_class *clock_class, - uint64_t precision); +extern void bt_clock_class_get_offset(const struct bt_clock_class *clock_class, + int64_t *seconds, uint64_t *cycles); -extern void bt_private_clock_class_set_offset( - struct bt_private_clock_class *clock_class, - int64_t seconds, uint64_t cycles); +extern bt_bool bt_clock_class_is_absolute( + const struct bt_clock_class *clock_class); -extern void bt_private_clock_class_set_is_absolute( - struct bt_private_clock_class *clock_class, - bt_bool is_absolute); +extern bt_uuid bt_clock_class_get_uuid( + const struct bt_clock_class *clock_class); -extern void bt_private_clock_class_set_uuid( - struct bt_private_clock_class *clock_class, bt_uuid uuid); +extern int bt_clock_class_cycles_to_ns_from_origin( + const struct bt_clock_class *clock_class, + uint64_t cycles, int64_t *ns_from_origin); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_CLOCK_CLASS_H */ +#endif /* BABELTRACE_TRACE_IR_CLOCK_CLASS_CONST_H */ diff --git a/include/babeltrace/trace-ir/clock-class-internal.h b/include/babeltrace/trace-ir/clock-class-internal.h index a7cc7d86..47d59942 100644 --- a/include/babeltrace/trace-ir/clock-class-internal.h +++ b/include/babeltrace/trace-ir/clock-class-internal.h @@ -92,7 +92,7 @@ struct bt_clock_class { }; BT_HIDDEN -void _bt_clock_class_freeze(struct bt_clock_class *clock_class); +void _bt_clock_class_freeze(const struct bt_clock_class *clock_class); #ifdef BT_DEV_MODE # define bt_clock_class_freeze _bt_clock_class_freeze diff --git a/include/babeltrace/trace-ir/clock-class.h b/include/babeltrace/trace-ir/clock-class.h index 4ca27183..bbdd22f9 100644 --- a/include/babeltrace/trace-ir/clock-class.h +++ b/include/babeltrace/trace-ir/clock-class.h @@ -40,27 +40,28 @@ extern "C" { struct bt_clock_class; -extern const char *bt_clock_class_get_name(struct bt_clock_class *clock_class); +extern struct bt_clock_class *bt_clock_class_create(void); -extern const char *bt_clock_class_get_description( - struct bt_clock_class *clock_class); +extern int bt_clock_class_set_name(struct bt_clock_class *clock_class, + const char *name); -extern uint64_t bt_clock_class_get_frequency( - struct bt_clock_class *clock_class); +extern int bt_clock_class_set_description(struct bt_clock_class *clock_class, + const char *description); -extern uint64_t bt_clock_class_get_precision( - struct bt_clock_class *clock_class); +extern void bt_clock_class_set_frequency(struct bt_clock_class *clock_class, + uint64_t freq); -extern void bt_clock_class_get_offset(struct bt_clock_class *clock_class, - int64_t *seconds, uint64_t *cycles); +extern void bt_clock_class_set_precision(struct bt_clock_class *clock_class, + uint64_t precision); -extern bt_bool bt_clock_class_is_absolute(struct bt_clock_class *clock_class); +extern void bt_clock_class_set_offset(struct bt_clock_class *clock_class, + int64_t seconds, uint64_t cycles); -extern bt_uuid bt_clock_class_get_uuid(struct bt_clock_class *clock_class); +extern void bt_clock_class_set_is_absolute(struct bt_clock_class *clock_class, + bt_bool is_absolute); -extern int bt_clock_class_cycles_to_ns_from_origin( - struct bt_clock_class *clock_class, - uint64_t cycles, int64_t *ns_from_origin); +extern void bt_clock_class_set_uuid(struct bt_clock_class *clock_class, + bt_uuid uuid); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/clock-value.h b/include/babeltrace/trace-ir/clock-value-const.h similarity index 81% rename from include/babeltrace/trace-ir/clock-value.h rename to include/babeltrace/trace-ir/clock-value-const.h index c726f6ae..b7c726f8 100644 --- a/include/babeltrace/trace-ir/clock-value.h +++ b/include/babeltrace/trace-ir/clock-value-const.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_CLOCK_VALUE_H -#define BABELTRACE_TRACE_IR_CLOCK_VALUE_H +#ifndef BABELTRACE_TRACE_IR_CLOCK_VALUE_CONST_H +#define BABELTRACE_TRACE_IR_CLOCK_VALUE_CONST_H /* * Copyright 2013, 2014 Jérémie Galarneau @@ -43,17 +43,18 @@ enum bt_clock_value_status { BT_CLOCK_VALUE_STATUS_UNKNOWN, }; -extern struct bt_clock_class *bt_clock_value_borrow_clock_class( - struct bt_clock_value *clock_value); +extern const struct bt_clock_class *bt_clock_value_borrow_clock_class_const( + const struct bt_clock_value *clock_value); extern uint64_t bt_clock_value_get_value( - struct bt_clock_value *clock_value); + const struct bt_clock_value *clock_value); extern int bt_clock_value_get_ns_from_origin( - struct bt_clock_value *clock_value, int64_t *ns_from_origin); + const struct bt_clock_value *clock_value, + int64_t *ns_from_origin); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_CLOCK_VALUE_H */ +#endif /* BABELTRACE_TRACE_IR_CLOCK_VALUE_CONST_H */ diff --git a/include/babeltrace/trace-ir/event-class-const.h b/include/babeltrace/trace-ir/event-class-const.h new file mode 100644 index 00000000..bb000878 --- /dev/null +++ b/include/babeltrace/trace-ir/event-class-const.h @@ -0,0 +1,88 @@ +#ifndef BABELTRACE_TRACE_IR_EVENT_CLASS_CONST_H +#define BABELTRACE_TRACE_IR_EVENT_CLASS_CONST_H + +/* + * Copyright 2013, 2014 Jérémie Galarneau + * + * Author: Jérémie Galarneau + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +/* For enum bt_property_availability */ +#include + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_event_class; +struct bt_field_class; +struct bt_stream_class; + +enum bt_event_class_log_level { + BT_EVENT_CLASS_LOG_LEVEL_EMERGENCY, + BT_EVENT_CLASS_LOG_LEVEL_ALERT, + BT_EVENT_CLASS_LOG_LEVEL_CRITICAL, + BT_EVENT_CLASS_LOG_LEVEL_ERROR, + BT_EVENT_CLASS_LOG_LEVEL_WARNING, + BT_EVENT_CLASS_LOG_LEVEL_NOTICE, + BT_EVENT_CLASS_LOG_LEVEL_INFO, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_SYSTEM, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_PROGRAM, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_PROCESS, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_MODULE, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_UNIT, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_FUNCTION, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG_LINE, + BT_EVENT_CLASS_LOG_LEVEL_DEBUG, +}; + +extern const struct bt_stream_class *bt_event_class_borrow_stream_class_const( + const struct bt_event_class *event_class); + +extern const char *bt_event_class_get_name(const struct bt_event_class *event_class); + +extern uint64_t bt_event_class_get_id(const struct bt_event_class *event_class); + +extern enum bt_property_availability bt_event_class_get_log_level( + const struct bt_event_class *event_class, + enum bt_event_class_log_level *log_level); + +extern const char *bt_event_class_get_emf_uri( + const struct bt_event_class *event_class); + +extern const struct bt_field_class * +bt_event_class_borrow_specific_context_field_class( + const struct bt_event_class *event_class); + +extern const struct bt_field_class *bt_event_class_borrow_payload_field_class( + const struct bt_event_class *event_class); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_EVENT_CLASS_CONST_H */ diff --git a/include/babeltrace/trace-ir/event-class-internal.h b/include/babeltrace/trace-ir/event-class-internal.h index cb8335de..28f8d785 100644 --- a/include/babeltrace/trace-ir/event-class-internal.h +++ b/include/babeltrace/trace-ir/event-class-internal.h @@ -70,7 +70,7 @@ struct bt_event_class { }; BT_HIDDEN -void _bt_event_class_freeze(struct bt_event_class *event_class); +void _bt_event_class_freeze(const struct bt_event_class *event_class); #ifdef BT_DEV_MODE # define bt_event_class_freeze _bt_event_class_freeze @@ -80,7 +80,7 @@ void _bt_event_class_freeze(struct bt_event_class *event_class); static inline struct bt_stream_class *bt_event_class_borrow_stream_class_inline( - struct bt_event_class *event_class) + const struct bt_event_class *event_class) { BT_ASSERT(event_class); return (void *) bt_object_borrow_parent(&event_class->base); diff --git a/include/babeltrace/trace-ir/event-class.h b/include/babeltrace/trace-ir/event-class.h index 769a8043..a77afc0b 100644 --- a/include/babeltrace/trace-ir/event-class.h +++ b/include/babeltrace/trace-ir/event-class.h @@ -28,57 +28,45 @@ * http://www.efficios.com/ctf */ -/* For enum bt_property_availability */ -#include +/* For enum bt_event_class_log_level */ +#include #include -#include #ifdef __cplusplus extern "C" { #endif struct bt_event_class; -struct bt_field_class; struct bt_stream_class; -enum bt_event_class_log_level { - BT_EVENT_CLASS_LOG_LEVEL_EMERGENCY, - BT_EVENT_CLASS_LOG_LEVEL_ALERT, - BT_EVENT_CLASS_LOG_LEVEL_CRITICAL, - BT_EVENT_CLASS_LOG_LEVEL_ERROR, - BT_EVENT_CLASS_LOG_LEVEL_WARNING, - BT_EVENT_CLASS_LOG_LEVEL_NOTICE, - BT_EVENT_CLASS_LOG_LEVEL_INFO, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_SYSTEM, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_PROGRAM, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_PROCESS, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_MODULE, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_UNIT, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_FUNCTION, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG_LINE, - BT_EVENT_CLASS_LOG_LEVEL_DEBUG, -}; +extern struct bt_event_class *bt_event_class_create( + struct bt_stream_class *stream_class); + +extern struct bt_event_class *bt_event_class_create_with_id( + struct bt_stream_class *stream_class, uint64_t id); extern struct bt_stream_class *bt_event_class_borrow_stream_class( struct bt_event_class *event_class); -extern const char *bt_event_class_get_name(struct bt_event_class *event_class); - -extern uint64_t bt_event_class_get_id(struct bt_event_class *event_class); +extern int bt_event_class_set_name(struct bt_event_class *event_class, + const char *name); -extern enum bt_property_availability bt_event_class_get_log_level( +extern void bt_event_class_set_log_level( struct bt_event_class *event_class, - enum bt_event_class_log_level *log_level); + enum bt_event_class_log_level log_level); -extern const char *bt_event_class_get_emf_uri( - struct bt_event_class *event_class); +extern int bt_event_class_set_emf_uri( + struct bt_event_class *event_class, + const char *emf_uri); -extern struct bt_field_class *bt_event_class_borrow_specific_context_field_class( - struct bt_event_class *event_class); +extern int bt_event_class_set_specific_context_field_class( + struct bt_event_class *event_class, + struct bt_field_class *field_class); -extern struct bt_field_class *bt_event_class_borrow_payload_field_class( - struct bt_event_class *event_class); +extern int bt_event_class_set_payload_field_class( + struct bt_event_class *event_class, + struct bt_field_class *field_class); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/private-event.h b/include/babeltrace/trace-ir/event-const.h similarity index 50% rename from include/babeltrace/trace-ir/private-event.h rename to include/babeltrace/trace-ir/event-const.h index dfa29c10..7ee70dbb 100644 --- a/include/babeltrace/trace-ir/private-event.h +++ b/include/babeltrace/trace-ir/event-const.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_EVENT_H -#define BABELTRACE_TRACE_IR_PRIVATE_EVENT_H +#ifndef BABELTRACE_TRACE_IR_EVENT_CONST_H +#define BABELTRACE_TRACE_IR_EVENT_CONST_H /* * Copyright 2013, 2014 Jérémie Galarneau @@ -28,55 +28,46 @@ * http://www.efficios.com/ctf */ +/* For enum bt_clock_value_status */ +#include + #ifdef __cplusplus extern "C" { #endif -struct bt_private_event; -struct bt_private_event_header_field; -struct bt_private_event_class; -struct bt_private_field; -struct bt_private_packet; - -static inline -struct bt_event *bt_private_event_as_event( - struct bt_private_event *priv_event) -{ - return (void *) priv_event; -} - -extern struct bt_private_event_class *bt_private_event_borrow_class( - struct bt_private_event *event); +struct bt_event; +struct bt_clock_value; +struct bt_event_class; +struct bt_field; +struct bt_packet; -extern struct bt_private_packet *bt_private_event_borrow_packet( - struct bt_private_event *event); +extern const struct bt_event_class *bt_event_borrow_class_const( + const struct bt_event *event); -extern struct bt_private_stream *bt_private_event_borrow_stream( - struct bt_private_event *event); +extern const struct bt_packet *bt_event_borrow_packet_const( + const struct bt_event *event); -extern struct bt_private_field *bt_private_event_borrow_header_field( - struct bt_private_event *event); +extern const struct bt_stream *bt_event_borrow_stream_const( + const struct bt_event *event); -extern int bt_private_event_move_header_field( - struct bt_private_event *event, - struct bt_private_event_header_field *header); +extern const struct bt_field *bt_event_borrow_header_field_const( + const struct bt_event *event); -extern struct bt_private_field * -bt_private_event_borrow_common_context_field( - struct bt_private_event *event); +extern const struct bt_field *bt_event_borrow_common_context_field_const( + const struct bt_event *event); -extern struct bt_private_field * -bt_private_event_borrow_specific_context_field( - struct bt_private_event *event); +extern const struct bt_field *bt_event_borrow_specific_context_field_const( + const struct bt_event *event); -extern struct bt_private_field *bt_private_event_borrow_payload_field( - struct bt_private_event *event); +extern const struct bt_field *bt_event_borrow_payload_field_const( + const struct bt_event *event); -extern void bt_private_event_set_default_clock_value( - struct bt_private_event *event, uint64_t value_cycles); +extern enum bt_clock_value_status bt_event_borrow_default_clock_value_const( + const struct bt_event *event, + const struct bt_clock_value **clock_value); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_EVENT_H */ +#endif /* BABELTRACE_TRACE_IR_EVENT_CONST_H */ diff --git a/include/babeltrace/trace-ir/private-packet-header-field.h b/include/babeltrace/trace-ir/event-header-field.h similarity index 69% rename from include/babeltrace/trace-ir/private-packet-header-field.h rename to include/babeltrace/trace-ir/event-header-field.h index 189e57ab..fa3719ed 100644 --- a/include/babeltrace/trace-ir/private-packet-header-field.h +++ b/include/babeltrace/trace-ir/event-header-field.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_PACKET_HEADER_FIELD_H -#define BABELTRACE_TRACE_IR_PRIVATE_PACKET_HEADER_FIELD_H +#ifndef BABELTRACE_TRACE_IR_EVENT_HEADER_FIELD_H +#define BABELTRACE_TRACE_IR_EVENT_HEADER_FIELD_H /* * Copyright 2018 Philippe Proulx @@ -30,24 +30,23 @@ extern "C" { #endif -struct bt_private_trace; -struct bt_private_packet_header_field; -struct bt_private_field; +struct bt_stream_class; +struct bt_event_header_field; +struct bt_field; extern -struct bt_private_packet_header_field *bt_private_packet_header_field_create( - struct bt_private_trace *trace); +struct bt_event_header_field *bt_event_header_field_create( + struct bt_stream_class *stream_class); extern -struct bt_private_field *bt_private_packet_header_field_borrow_field( - struct bt_private_packet_header_field *field); +struct bt_field *bt_event_header_field_borrow_field( + struct bt_event_header_field *field); extern -void bt_private_packet_header_field_release( - struct bt_private_packet_header_field *field); +void bt_event_header_field_release(struct bt_event_header_field *field); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_PACKET_HEADER_FIELD_H */ +#endif /* BABELTRACE_TRACE_IR_EVENT_HEADER_FIELD_H */ diff --git a/include/babeltrace/trace-ir/event-internal.h b/include/babeltrace/trace-ir/event-internal.h index 0b495672..884de630 100644 --- a/include/babeltrace/trace-ir/event-internal.h +++ b/include/babeltrace/trace-ir/event-internal.h @@ -48,7 +48,8 @@ #include #define BT_ASSERT_PRE_EVENT_HOT(_event) \ - BT_ASSERT_PRE_HOT(((struct bt_event *) (_event)), "Event", ": %!+e", (_event)) + BT_ASSERT_PRE_HOT(((const struct bt_event *) (_event)), \ + "Event", ": %!+e", (_event)) struct bt_event { struct bt_object base; @@ -69,7 +70,7 @@ BT_HIDDEN struct bt_event *bt_event_new(struct bt_event_class *event_class); BT_HIDDEN -void _bt_event_set_is_frozen(struct bt_event *event, bool is_frozen); +void _bt_event_set_is_frozen(const struct bt_event *event, bool is_frozen); #ifdef BT_DEV_MODE # define bt_event_set_is_frozen _bt_event_set_is_frozen diff --git a/include/babeltrace/trace-ir/event.h b/include/babeltrace/trace-ir/event.h index edf99856..44854659 100644 --- a/include/babeltrace/trace-ir/event.h +++ b/include/babeltrace/trace-ir/event.h @@ -28,15 +28,12 @@ * http://www.efficios.com/ctf */ -/* For enum bt_clock_value_status */ -#include - #ifdef __cplusplus extern "C" { #endif struct bt_event; -struct bt_clock_value; +struct bt_event_header_field; struct bt_event_class; struct bt_field; struct bt_packet; @@ -49,16 +46,19 @@ extern struct bt_stream *bt_event_borrow_stream(struct bt_event *event); extern struct bt_field *bt_event_borrow_header_field(struct bt_event *event); -extern struct bt_field *bt_event_borrow_common_context_field( - struct bt_event *event); +extern int bt_event_move_header_field(struct bt_event *event, + struct bt_event_header_field *header); + +extern struct bt_field * +bt_event_borrow_common_context_field(struct bt_event *event); -extern struct bt_field *bt_event_borrow_specific_context_field( - struct bt_event *event); +extern struct bt_field * +bt_event_borrow_specific_context_field(struct bt_event *event); extern struct bt_field *bt_event_borrow_payload_field(struct bt_event *event); -extern enum bt_clock_value_status bt_event_borrow_default_clock_value( - struct bt_event *event, struct bt_clock_value **clock_value); +extern void bt_event_set_default_clock_value(struct bt_event *event, + uint64_t value_cycles); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/field-classes-const.h b/include/babeltrace/trace-ir/field-classes-const.h new file mode 100644 index 00000000..87992c1b --- /dev/null +++ b/include/babeltrace/trace-ir/field-classes-const.h @@ -0,0 +1,166 @@ +#ifndef BABELTRACE_TRACE_IR_FIELD_CLASSES_CONST_H +#define BABELTRACE_TRACE_IR_FIELD_CLASSES_CONST_H + +/* + * Copyright 2013, 2014 Jérémie Galarneau + * + * Author: Jérémie Galarneau + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +/* For bt_bool */ +#include + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_field_class; +struct bt_field_path; +struct bt_field_class_signed_enumeration_mapping_ranges; +struct bt_field_class_unsigned_enumeration_mapping_ranges; + +typedef const char * const *bt_field_class_enumeration_mapping_label_array; + +enum bt_field_class_type { + BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER, + BT_FIELD_CLASS_TYPE_SIGNED_INTEGER, + BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, + BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, + BT_FIELD_CLASS_TYPE_REAL, + BT_FIELD_CLASS_TYPE_STRING, + BT_FIELD_CLASS_TYPE_STRUCTURE, + BT_FIELD_CLASS_TYPE_STATIC_ARRAY, + BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, + BT_FIELD_CLASS_TYPE_VARIANT, +}; + +enum bt_field_class_integer_preferred_display_base { + BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_BINARY, + BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_OCTAL, + BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_DECIMAL, + BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL, +}; + +extern enum bt_field_class_type bt_field_class_get_type( + const struct bt_field_class *field_class); + +extern uint64_t bt_field_class_integer_get_field_value_range( + const struct bt_field_class *field_class); + +extern enum bt_field_class_integer_preferred_display_base +bt_field_class_integer_get_preferred_display_base( + const struct bt_field_class *field_class); + +extern bt_bool bt_field_class_real_is_single_precision( + const struct bt_field_class *field_class); + +extern uint64_t bt_field_class_enumeration_get_mapping_count( + const struct bt_field_class *field_class); + +extern void bt_field_class_unsigned_enumeration_borrow_mapping_by_index_const( + const struct bt_field_class *field_class, uint64_t index, + const char **label, + const struct bt_field_class_unsigned_enumeration_mapping_ranges **ranges); + +extern void bt_field_class_signed_enumeration_borrow_mapping_by_index_const( + const struct bt_field_class *field_class, uint64_t index, + const char **label, + const struct bt_field_class_signed_enumeration_mapping_ranges **ranges); + +extern uint64_t +bt_field_class_unsigned_enumeration_mapping_ranges_get_range_count( + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges); + +extern uint64_t +bt_field_class_signed_enumeration_mapping_ranges_get_range_count( + const struct bt_field_class_signed_enumeration_mapping_ranges *ranges); + +extern void +bt_field_class_unsigned_enumeration_mapping_ranges_get_range_by_index( + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, + uint64_t index, uint64_t *lower, uint64_t *upper); + +extern void +bt_field_class_signed_enumeration_mapping_ranges_get_range_by_index( + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, + uint64_t index, int64_t *lower, int64_t *upper); + +extern int bt_field_class_unsigned_enumeration_get_mapping_labels_by_value( + const struct bt_field_class *field_class, uint64_t value, + bt_field_class_enumeration_mapping_label_array *label_array, + uint64_t *count); + +extern int bt_field_class_signed_enumeration_get_mapping_labels_by_value( + const struct bt_field_class *field_class, int64_t value, + bt_field_class_enumeration_mapping_label_array *label_array, + uint64_t *count); + +extern uint64_t bt_field_class_structure_get_member_count( + const struct bt_field_class *field_class); + +extern void bt_field_class_structure_borrow_member_by_index_const( + const struct bt_field_class *struct_field_class, uint64_t index, + const char **name, const struct bt_field_class **field_class); + +extern +const struct bt_field_class * +bt_field_class_structure_borrow_member_field_class_by_name_const( + const struct bt_field_class *field_class, const char *name); + +extern const struct bt_field_class * +bt_field_class_array_borrow_element_field_class_const( + const struct bt_field_class *field_class); + +extern uint64_t bt_field_class_static_array_get_length( + const struct bt_field_class *field_class); + +extern const struct bt_field_path * +bt_field_class_dynamic_array_borrow_length_field_path_const( + const struct bt_field_class *field_class); + +extern const struct bt_field_path * +bt_field_class_variant_borrow_selector_field_path_const( + const struct bt_field_class *field_class); + +extern uint64_t bt_field_class_variant_get_option_count( + const struct bt_field_class *field_class); + +extern void bt_field_class_variant_borrow_option_by_index_const( + const struct bt_field_class *variant_field_class, uint64_t index, + const char **name, const struct bt_field_class **field_class); + +extern +const struct bt_field_class * +bt_field_class_variant_borrow_option_field_class_by_name_const( + const struct bt_field_class *field_class, + const char *name); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_FIELD_CLASSES_CONST_H */ diff --git a/include/babeltrace/trace-ir/field-classes-internal.h b/include/babeltrace/trace-ir/field-classes-internal.h index 7103a86c..b0860cd1 100644 --- a/include/babeltrace/trace-ir/field-classes-internal.h +++ b/include/babeltrace/trace-ir/field-classes-internal.h @@ -36,37 +36,37 @@ #define BT_ASSERT_PRE_FC_IS_INT(_fc, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ _name " is not an integer field class: %![fc-]+F", (_fc)) #define BT_ASSERT_PRE_FC_IS_UNSIGNED_INT(_fc, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, \ _name " is not an unsigned integer field class: %![fc-]+F", (_fc)) #define BT_ASSERT_PRE_FC_IS_ENUM(_fc, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ _name " is not an enumeration field class: %![fc-]+F", (_fc)) #define BT_ASSERT_PRE_FC_IS_ARRAY(_fc, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || \ - ((struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || \ + ((const struct bt_field_class *) (_fc))->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, \ _name " is not an array field class: %![fc-]+F", (_fc)) #define BT_ASSERT_PRE_FC_HAS_ID(_fc, _type, _name) \ - BT_ASSERT_PRE(((struct bt_field_class *) (_fc))->type == (_type), \ + BT_ASSERT_PRE(((const struct bt_field_class *) (_fc))->type == (_type), \ _name " has the wrong type: expected-type=%s, " \ "%![fc-]+F", bt_common_field_class_type_string(_type), (_fc)) #define BT_ASSERT_PRE_FC_HOT(_fc, _name) \ - BT_ASSERT_PRE_HOT((struct bt_field_class *) (_fc), \ + BT_ASSERT_PRE_HOT((const struct bt_field_class *) (_fc), \ (_name), ": %!+F", (_fc)) #define BT_FIELD_CLASS_NAMED_FC_AT_INDEX(_fc, _index) \ @@ -220,14 +220,14 @@ struct bt_field_class_variant { }; static inline -bool bt_field_class_has_known_type(struct bt_field_class *fc) +bool bt_field_class_has_known_type(const struct bt_field_class *fc) { return fc->type >= BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER && fc->type <= BT_FIELD_CLASS_TYPE_VARIANT; } BT_HIDDEN -void _bt_field_class_freeze(struct bt_field_class *field_class); +void _bt_field_class_freeze(const struct bt_field_class *field_class); #ifdef BT_DEV_MODE # define bt_field_class_freeze _bt_field_class_freeze @@ -242,7 +242,7 @@ void _bt_field_class_freeze(struct bt_field_class *field_class); * shared objects for other purposes. */ BT_HIDDEN -void _bt_field_class_make_part_of_trace(struct bt_field_class *field_class); +void _bt_field_class_make_part_of_trace(const struct bt_field_class *field_class); #ifdef BT_DEV_MODE # define bt_field_class_make_part_of_trace _bt_field_class_make_part_of_trace diff --git a/include/babeltrace/trace-ir/field-classes.h b/include/babeltrace/trace-ir/field-classes.h index e394c2b1..91806629 100644 --- a/include/babeltrace/trace-ir/field-classes.h +++ b/include/babeltrace/trace-ir/field-classes.h @@ -31,6 +31,9 @@ /* For bt_bool */ #include +/* For enum bt_field_class_integer_preferred_display_base */ +#include + #include #include @@ -39,118 +42,63 @@ extern "C" { #endif struct bt_field_class; -struct bt_field_path; -struct bt_field_class_signed_enumeration_mapping_ranges; -struct bt_field_class_unsigned_enumeration_mapping_ranges; - -typedef const char * const *bt_field_class_enumeration_mapping_label_array; - -enum bt_field_class_type { - BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER, - BT_FIELD_CLASS_TYPE_SIGNED_INTEGER, - BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, - BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, - BT_FIELD_CLASS_TYPE_REAL, - BT_FIELD_CLASS_TYPE_STRING, - BT_FIELD_CLASS_TYPE_STRUCTURE, - BT_FIELD_CLASS_TYPE_STATIC_ARRAY, - BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, - BT_FIELD_CLASS_TYPE_VARIANT, -}; - -enum bt_field_class_integer_preferred_display_base { - BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_BINARY, - BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_OCTAL, - BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_DECIMAL, - BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL, -}; - -extern enum bt_field_class_type bt_field_class_get_type( - struct bt_field_class *field_class); - -extern uint64_t bt_field_class_integer_get_field_value_range( - struct bt_field_class *field_class); - -extern enum bt_field_class_integer_preferred_display_base -bt_field_class_integer_get_preferred_display_base( - struct bt_field_class *field_class); - -extern bt_bool bt_field_class_real_is_single_precision( - struct bt_field_class *field_class); - -extern uint64_t bt_field_class_enumeration_get_mapping_count( - struct bt_field_class *field_class); - -extern void bt_field_class_unsigned_enumeration_borrow_mapping_by_index( - struct bt_field_class *field_class, uint64_t index, - const char **label, - struct bt_field_class_unsigned_enumeration_mapping_ranges **ranges); - -extern void bt_field_class_signed_enumeration_borrow_mapping_by_index( - struct bt_field_class *field_class, uint64_t index, - const char **label, - struct bt_field_class_signed_enumeration_mapping_ranges **ranges); - -extern uint64_t bt_field_class_unsigned_enumeration_mapping_ranges_get_range_count( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges); - -extern uint64_t bt_field_class_signed_enumeration_mapping_ranges_get_range_count( - struct bt_field_class_signed_enumeration_mapping_ranges *ranges); - -extern void bt_field_class_unsigned_enumeration_mapping_ranges_get_range_by_index( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, - uint64_t index, uint64_t *lower, uint64_t *upper); - -extern void bt_field_class_signed_enumeration_mapping_ranges_get_range_by_index( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, - uint64_t index, int64_t *lower, int64_t *upper); - -extern int bt_field_class_unsigned_enumeration_get_mapping_labels_by_value( - struct bt_field_class *field_class, uint64_t value, - bt_field_class_enumeration_mapping_label_array *label_array, - uint64_t *count); - -extern int bt_field_class_signed_enumeration_get_mapping_labels_by_value( - struct bt_field_class *field_class, int64_t value, - bt_field_class_enumeration_mapping_label_array *label_array, - uint64_t *count); - -extern uint64_t bt_field_class_structure_get_member_count( - struct bt_field_class *field_class); - -extern void bt_field_class_structure_borrow_member_by_index( - struct bt_field_class *struct_field_class, uint64_t index, - const char **name, struct bt_field_class **field_class); - -extern -struct bt_field_class *bt_field_class_structure_borrow_member_field_class_by_name( - struct bt_field_class *field_class, const char *name); - -extern struct bt_field_class *bt_field_class_array_borrow_element_field_class( - struct bt_field_class *field_class); - -extern uint64_t bt_field_class_static_array_get_length( - struct bt_field_class *field_class); - -extern struct bt_field_path * -bt_field_class_dynamic_array_borrow_length_field_path( - struct bt_field_class *field_class); - -extern struct bt_field_path * -bt_field_class_variant_borrow_selector_field_path( - struct bt_field_class *field_class); - -extern uint64_t bt_field_class_variant_get_option_count( - struct bt_field_class *field_class); -extern void bt_field_class_variant_borrow_option_by_index( - struct bt_field_class *variant_field_class, uint64_t index, - const char **name, struct bt_field_class **field_class); - -extern -struct bt_field_class *bt_field_class_variant_borrow_option_field_class_by_name( +extern struct bt_field_class *bt_field_class_unsigned_integer_create(void); + +extern struct bt_field_class *bt_field_class_signed_integer_create(void); + +extern void bt_field_class_integer_set_field_value_range( + struct bt_field_class *field_class, uint64_t size); + +extern void bt_field_class_integer_set_preferred_display_base( + struct bt_field_class *field_class, + enum bt_field_class_integer_preferred_display_base base); + +extern struct bt_field_class *bt_field_class_real_create(void); + +extern void bt_field_class_real_set_is_single_precision( + struct bt_field_class *field_class, + bt_bool is_single_precision); + +extern struct bt_field_class *bt_field_class_unsigned_enumeration_create(void); + +extern struct bt_field_class *bt_field_class_signed_enumeration_create(void); + +extern int bt_field_class_unsigned_enumeration_map_range( + struct bt_field_class *field_class, const char *label, + uint64_t range_lower, uint64_t range_upper); + +extern int bt_field_class_signed_enumeration_map_range( + struct bt_field_class *field_class, const char *label, + int64_t range_lower, int64_t range_upper); + +extern struct bt_field_class *bt_field_class_string_create(void); + +extern struct bt_field_class *bt_field_class_structure_create(void); + +extern int bt_field_class_structure_append_member( + struct bt_field_class *struct_field_class, + const char *name, struct bt_field_class *field_class); + +extern struct bt_field_class *bt_field_class_static_array_create( + struct bt_field_class *elem_field_class, uint64_t length); + +extern struct bt_field_class *bt_field_class_dynamic_array_create( + struct bt_field_class *elem_field_class); + +extern int bt_field_class_dynamic_array_set_length_field_class( struct bt_field_class *field_class, - const char *name); + struct bt_field_class *length_field_class); + +extern struct bt_field_class *bt_field_class_variant_create(void); + +extern int bt_field_class_variant_set_selector_field_class( + struct bt_field_class *field_class, + struct bt_field_class *selector_field_class); + +extern int bt_field_class_variant_append_option( + struct bt_field_class *var_field_class, + const char *name, struct bt_field_class *field_class); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/field-path.h b/include/babeltrace/trace-ir/field-path-const.h similarity index 85% rename from include/babeltrace/trace-ir/field-path.h rename to include/babeltrace/trace-ir/field-path-const.h index 4c3a8573..a832bc4d 100644 --- a/include/babeltrace/trace-ir/field-path.h +++ b/include/babeltrace/trace-ir/field-path-const.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_FIELD_PATH_H -#define BABELTRACE_TRACE_IR_FIELD_PATH_H +#ifndef BABELTRACE_TRACE_IR_FIELD_PATH_CONST_H +#define BABELTRACE_TRACE_IR_FIELD_PATH_CONST_H /* * Copyright 2016-2018 Philippe Proulx @@ -44,16 +44,16 @@ enum bt_scope { }; extern enum bt_scope bt_field_path_get_root_scope( - struct bt_field_path *field_path); + const struct bt_field_path *field_path); extern uint64_t bt_field_path_get_index_count( - struct bt_field_path *field_path); + const struct bt_field_path *field_path); extern uint64_t bt_field_path_get_index_by_index( - struct bt_field_path *field_path, uint64_t index); + const struct bt_field_path *field_path, uint64_t index); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_FIELD_PATH_H */ +#endif /* BABELTRACE_TRACE_IR_FIELD_PATH_CONST_H */ diff --git a/include/babeltrace/trace-ir/field-path-internal.h b/include/babeltrace/trace-ir/field-path-internal.h index 92423d83..d24306fe 100644 --- a/include/babeltrace/trace-ir/field-path-internal.h +++ b/include/babeltrace/trace-ir/field-path-internal.h @@ -27,7 +27,7 @@ */ #include -#include +#include #include #include @@ -44,7 +44,7 @@ struct bt_field_path *bt_field_path_create(void); static inline uint64_t bt_field_path_get_index_by_index_inline( - struct bt_field_path *field_path, uint64_t index) + const struct bt_field_path *field_path, uint64_t index) { BT_ASSERT(field_path); BT_ASSERT(index < field_path->indexes->len); diff --git a/include/babeltrace/trace-ir/fields-const.h b/include/babeltrace/trace-ir/fields-const.h new file mode 100644 index 00000000..53188acb --- /dev/null +++ b/include/babeltrace/trace-ir/fields-const.h @@ -0,0 +1,95 @@ +#ifndef BABELTRACE_TRACE_IR_FIELDS_CONST_H +#define BABELTRACE_TRACE_IR_FIELDS_CONST_H + +/* + * Copyright 2013, 2014 Jérémie Galarneau + * + * Author: Jérémie Galarneau + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +#include + +/* For enum bt_field_class_type */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_field; +struct bt_field_class; + +extern const struct bt_field_class *bt_field_borrow_class_const( + const struct bt_field *field); + +extern enum bt_field_class_type bt_field_get_class_type( + const struct bt_field *field); + +extern int64_t bt_field_signed_integer_get_value(const struct bt_field *field); + +extern uint64_t bt_field_unsigned_integer_get_value( + const struct bt_field *field); + +extern double bt_field_real_get_value(const struct bt_field *field); + +extern int bt_field_unsigned_enumeration_get_mapping_labels( + const struct bt_field *field, + bt_field_class_enumeration_mapping_label_array *label_array, + uint64_t *count); + +extern int bt_field_signed_enumeration_get_mapping_labels( + const struct bt_field *field, + bt_field_class_enumeration_mapping_label_array *label_array, + uint64_t *count); + +extern const char *bt_field_string_get_value(const struct bt_field *field); + +extern uint64_t bt_field_string_get_length(const struct bt_field *field); + +extern const struct bt_field * +bt_field_structure_borrow_member_field_by_index_const( + const struct bt_field *field, uint64_t index); + +extern const struct bt_field * +bt_field_structure_borrow_member_field_by_name_const( + const struct bt_field *field, const char *name); + +extern uint64_t bt_field_array_get_length(const struct bt_field *field); + +extern const struct bt_field * +bt_field_array_borrow_element_field_by_index_const( + const struct bt_field *field, uint64_t index); + +extern uint64_t bt_field_variant_get_selected_option_field_index( + const struct bt_field *field); + +extern const struct bt_field * +bt_field_variant_borrow_selected_option_field_const( + const struct bt_field *field); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_FIELDS_CONST_H */ diff --git a/include/babeltrace/trace-ir/fields-internal.h b/include/babeltrace/trace-ir/fields-internal.h index 9748a300..957293b7 100644 --- a/include/babeltrace/trace-ir/fields-internal.h +++ b/include/babeltrace/trace-ir/fields-internal.h @@ -39,29 +39,29 @@ #include #define BT_ASSERT_PRE_FIELD_HAS_CLASS_TYPE(_field, _cls_type, _name) \ - BT_ASSERT_PRE(((struct bt_field *) (_field))->class->type == (_cls_type), \ + BT_ASSERT_PRE(((const struct bt_field *) (_field))->class->type == (_cls_type), \ _name " has the wrong class type: expected-class-type=%s, " \ "%![field-]+f", \ bt_common_field_class_type_string(_cls_type), (_field)) #define BT_ASSERT_PRE_FIELD_IS_UNSIGNED_INT(_field, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION, \ _name " is not an unsigned integer field: %![field-]+f", \ (_field)) #define BT_ASSERT_PRE_FIELD_IS_SIGNED_INT(_field, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION, \ _name " is not a signed integer field: %![field-]+f", \ (_field)) #define BT_ASSERT_PRE_FIELD_IS_ARRAY(_field, _name) \ BT_ASSERT_PRE( \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || \ - ((struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || \ + ((const struct bt_field *) (_field))->class->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, \ _name " is not an array field: %![field-]+f", (_field)) #define BT_ASSERT_PRE_FIELD_IS_SET(_field, _name) \ @@ -69,14 +69,14 @@ _name " is not set: %!+f", (_field)) #define BT_ASSERT_PRE_FIELD_HOT(_field, _name) \ - BT_ASSERT_PRE_HOT((struct bt_field *) (_field), (_name), \ + BT_ASSERT_PRE_HOT((const struct bt_field *) (_field), (_name), \ ": %!+f", (_field)) struct bt_field; typedef struct bt_field *(* bt_field_create_func)(struct bt_field_class *); typedef void (*bt_field_method_set_is_frozen)(struct bt_field *, bool); -typedef bool (*bt_field_method_is_set)(struct bt_field *); +typedef bool (*bt_field_method_is_set)(const struct bt_field *); typedef void (*bt_field_method_reset)(struct bt_field *); struct bt_field_methods { @@ -161,14 +161,14 @@ struct bt_field_string { #endif BT_HIDDEN -void _bt_field_set_is_frozen(struct bt_field *field, bool is_frozen); +void _bt_field_set_is_frozen(const struct bt_field *field, bool is_frozen); static inline -void _bt_field_reset(struct bt_field *field) +void _bt_field_reset(const struct bt_field *field) { BT_ASSERT(field); BT_ASSERT(field->methods->reset); - field->methods->reset(field); + field->methods->reset((void *) field); } static inline @@ -179,7 +179,7 @@ void _bt_field_set_single(struct bt_field *field, bool value) } static inline -bt_bool _bt_field_is_set(struct bt_field *field) +bt_bool _bt_field_is_set(const struct bt_field *field) { bt_bool is_set = BT_FALSE; diff --git a/include/babeltrace/trace-ir/fields.h b/include/babeltrace/trace-ir/fields.h index 1a95f731..53a9da39 100644 --- a/include/babeltrace/trace-ir/fields.h +++ b/include/babeltrace/trace-ir/fields.h @@ -30,9 +30,6 @@ #include -/* For enum bt_field_class_type */ -#include - #ifdef __cplusplus extern "C" { #endif @@ -40,29 +37,22 @@ extern "C" { struct bt_field; struct bt_field_class; -extern struct bt_field_class *bt_field_borrow_class(struct bt_field *field); - -extern enum bt_field_class_type bt_field_get_class_type(struct bt_field *field); - -extern int64_t bt_field_signed_integer_get_value(struct bt_field *field); +extern void bt_field_signed_integer_set_value(struct bt_field *field, + int64_t value); -extern uint64_t bt_field_unsigned_integer_get_value(struct bt_field *field); +extern void bt_field_unsigned_integer_set_value(struct bt_field *field, + uint64_t value); -extern double bt_field_real_get_value(struct bt_field *field); +extern void bt_field_real_set_value(struct bt_field *field, double value); -extern int bt_field_unsigned_enumeration_get_mapping_labels( - struct bt_field *field, - bt_field_class_enumeration_mapping_label_array *label_array, - uint64_t *count); +extern int bt_field_string_set_value(struct bt_field *field, const char *value); -extern int bt_field_signed_enumeration_get_mapping_labels( - struct bt_field *field, - bt_field_class_enumeration_mapping_label_array *label_array, - uint64_t *count); +extern int bt_field_string_append(struct bt_field *field, const char *value); -extern const char *bt_field_string_get_value(struct bt_field *field); +extern int bt_field_string_append_with_length(struct bt_field *field, + const char *value, uint64_t length); -extern uint64_t bt_field_string_get_length(struct bt_field *field); +extern int bt_field_string_clear(struct bt_field *field); extern struct bt_field *bt_field_structure_borrow_member_field_by_index( struct bt_field *field, uint64_t index); @@ -70,13 +60,14 @@ extern struct bt_field *bt_field_structure_borrow_member_field_by_index( extern struct bt_field *bt_field_structure_borrow_member_field_by_name( struct bt_field *field, const char *name); -extern uint64_t bt_field_array_get_length(struct bt_field *field); - extern struct bt_field *bt_field_array_borrow_element_field_by_index( struct bt_field *field, uint64_t index); -extern uint64_t bt_field_variant_get_selected_option_field_index( - struct bt_field *field); +extern int bt_field_dynamic_array_set_length(struct bt_field *field, + uint64_t length); + +extern int bt_field_variant_select_option_field(struct bt_field *field, + uint64_t index); extern struct bt_field *bt_field_variant_borrow_selected_option_field( struct bt_field *field); diff --git a/include/babeltrace/trace-ir/packet-const.h b/include/babeltrace/trace-ir/packet-const.h new file mode 100644 index 00000000..197b43f5 --- /dev/null +++ b/include/babeltrace/trace-ir/packet-const.h @@ -0,0 +1,80 @@ +#ifndef BABELTRACE_TRACE_IR_PACKET_CONST_H +#define BABELTRACE_TRACE_IR_PACKET_CONST_H + +/* + * Copyright 2016 Philippe Proulx + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +#include + +/* For enum bt_property_availability */ +#include + +/* For enum bt_clock_value_status */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_packet; +struct bt_packet_header_field; +struct bt_packet_context_field; +struct bt_stream; +struct bt_clock_value; + +extern const struct bt_stream *bt_packet_borrow_stream_const( + const struct bt_packet *packet); + +extern +const struct bt_field *bt_packet_borrow_header_field_const( + const struct bt_packet *packet); + +extern +const struct bt_field *bt_packet_borrow_context_field_const( + const struct bt_packet *packet); + +extern +enum bt_clock_value_status bt_packet_borrow_default_beginning_clock_value_const( + const struct bt_packet *packet, + const struct bt_clock_value **clock_value); + +extern +enum bt_clock_value_status bt_packet_borrow_default_end_clock_valeu_const( + const struct bt_packet *packet, + const struct bt_clock_value **clock_value); + +extern +enum bt_property_availability bt_packet_get_discarded_event_counter_snapshot( + const struct bt_packet *packet, uint64_t *value); + +extern +enum bt_property_availability bt_packet_get_packet_counter_snapshot( + const struct bt_packet *packet, uint64_t *value); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_PACKET_CONST_H */ diff --git a/include/babeltrace/trace-ir/private-event-header-field.h b/include/babeltrace/trace-ir/packet-context-field.h similarity index 68% rename from include/babeltrace/trace-ir/private-event-header-field.h rename to include/babeltrace/trace-ir/packet-context-field.h index fd1ac1f7..6e29f632 100644 --- a/include/babeltrace/trace-ir/private-event-header-field.h +++ b/include/babeltrace/trace-ir/packet-context-field.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_EVENT_HEADER_FIELD_H -#define BABELTRACE_TRACE_IR_PRIVATE_EVENT_HEADER_FIELD_H +#ifndef BABELTRACE_TRACE_IR_PACKET_CONTEXT_FIELD_H +#define BABELTRACE_TRACE_IR_PACKET_CONTEXT_FIELD_H /* * Copyright 2018 Philippe Proulx @@ -30,24 +30,24 @@ extern "C" { #endif -struct bt_private_stream_class; -struct bt_private_event_header_field; -struct bt_private_field; +struct bt_stream_class; +struct bt_packet_context_field; +struct bt_field; extern -struct bt_private_event_header_field *bt_private_event_header_field_create( - struct bt_private_stream_class *stream_class); +struct bt_packet_context_field *bt_packet_context_field_create( + struct bt_stream_class *stream_class); extern -struct bt_private_field *bt_private_event_header_field_borrow_field( - struct bt_private_event_header_field *field); +struct bt_field *bt_packet_context_field_borrow_field( + struct bt_packet_context_field *field); extern -void bt_private_event_header_field_release( - struct bt_private_event_header_field *field); +void bt_packet_context_field_release( + struct bt_packet_context_field *field); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_EVENT_HEADER_FIELD_H */ +#endif /* BABELTRACE_TRACE_IR_PACKET_CONTEXT_FIELD_H */ diff --git a/include/babeltrace/trace-ir/private-packet-context-field.h b/include/babeltrace/trace-ir/packet-header-field.h similarity index 68% rename from include/babeltrace/trace-ir/private-packet-context-field.h rename to include/babeltrace/trace-ir/packet-header-field.h index dc55ca9b..34270443 100644 --- a/include/babeltrace/trace-ir/private-packet-context-field.h +++ b/include/babeltrace/trace-ir/packet-header-field.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_PACKET_CONTEXT_FIELD_H -#define BABELTRACE_TRACE_IR_PRIVATE_PACKET_CONTEXT_FIELD_H +#ifndef BABELTRACE_TRACE_IR_PACKET_HEADER_FIELD_H +#define BABELTRACE_TRACE_IR_PACKET_HEADER_FIELD_H /* * Copyright 2018 Philippe Proulx @@ -30,24 +30,24 @@ extern "C" { #endif -struct bt_private_stream_class; -struct bt_private_packet_context_field; -struct bt_private_field; +struct bt_trace; +struct bt_packet_header_field; +struct bt_field; extern -struct bt_private_packet_context_field *bt_private_packet_context_field_create( - struct bt_private_stream_class *stream_class); +struct bt_packet_header_field *bt_packet_header_field_create( + struct bt_trace *trace); extern -struct bt_private_field *bt_private_packet_context_field_borrow_field( - struct bt_private_packet_context_field *field); +struct bt_field *bt_packet_header_field_borrow_field( + struct bt_packet_header_field *field); extern -void bt_private_packet_context_field_release( - struct bt_private_packet_context_field *field); +void bt_packet_header_field_release( + struct bt_packet_header_field *field); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_PACKET_CONTEXT_FIELD_H */ +#endif /* BABELTRACE_TRACE_IR_PACKET_HEADER_FIELD_H */ diff --git a/include/babeltrace/trace-ir/packet-internal.h b/include/babeltrace/trace-ir/packet-internal.h index 4319abe1..3623c6bb 100644 --- a/include/babeltrace/trace-ir/packet-internal.h +++ b/include/babeltrace/trace-ir/packet-internal.h @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include #include @@ -47,7 +47,7 @@ struct bt_packet { }; BT_HIDDEN -void _bt_packet_set_is_frozen(struct bt_packet *packet, bool is_frozen); +void _bt_packet_set_is_frozen(const struct bt_packet *packet, bool is_frozen); #ifdef BT_DEV_MODE # define bt_packet_set_is_frozen _bt_packet_set_is_frozen diff --git a/include/babeltrace/trace-ir/packet.h b/include/babeltrace/trace-ir/packet.h index 30d48d6a..0891fb93 100644 --- a/include/babeltrace/trace-ir/packet.h +++ b/include/babeltrace/trace-ir/packet.h @@ -28,12 +28,6 @@ #include -/* For enum bt_property_availability */ -#include - -/* For enum bt_clock_value_status */ -#include - #ifdef __cplusplus extern "C" { #endif @@ -42,31 +36,40 @@ struct bt_packet; struct bt_packet_header_field; struct bt_packet_context_field; struct bt_stream; -struct bt_clock_value; + +extern struct bt_packet *bt_packet_create(struct bt_stream *stream); extern struct bt_stream *bt_packet_borrow_stream(struct bt_packet *packet); extern struct bt_field *bt_packet_borrow_header_field(struct bt_packet *packet); +extern +int bt_packet_move_header_field(struct bt_packet *packet, + struct bt_packet_header_field *header); + extern struct bt_field *bt_packet_borrow_context_field(struct bt_packet *packet); extern -enum bt_clock_value_status bt_packet_borrow_default_beginning_clock_value( - struct bt_packet *packet, struct bt_clock_value **clock_value); +int bt_packet_move_context_field(struct bt_packet *packet, + struct bt_packet_context_field *context); + +extern +void bt_packet_set_default_beginning_clock_value(struct bt_packet *packet, + uint64_t value_cycles); extern -enum bt_clock_value_status bt_packet_borrow_default_end_clock_valeu( - struct bt_packet *packet, struct bt_clock_value **clock_value); +void bt_packet_set_default_end_clock_value(struct bt_packet *packet, + uint64_t value_cycles); extern -enum bt_property_availability bt_packet_get_discarded_event_counter_snapshot( - struct bt_packet *packet, uint64_t *value); +void bt_packet_set_discarded_event_counter_snapshot(struct bt_packet *packet, + uint64_t value); extern -enum bt_property_availability bt_packet_get_packet_counter_snapshot( - struct bt_packet *packet, uint64_t *value); +void bt_packet_set_packet_counter_snapshot(struct bt_packet *packet, + uint64_t value); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/private-event-class.h b/include/babeltrace/trace-ir/private-event-class.h deleted file mode 100644 index 5965137c..00000000 --- a/include/babeltrace/trace-ir/private-event-class.h +++ /dev/null @@ -1,92 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_EVENT_CLASS_H -#define BABELTRACE_TRACE_IR_PRIVATE_EVENT_CLASS_H - -/* - * Copyright 2013, 2014 Jérémie Galarneau - * - * Author: Jérémie Galarneau - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -/* For enum bt_event_class_log_level */ -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_event_class; -struct bt_private_event_class; -struct bt_private_stream_class; - -static inline -struct bt_event_class *bt_private_event_class_as_event_class( - struct bt_private_event_class *priv_event_class) -{ - return (void *) priv_event_class; -} - -extern struct bt_private_event_class *bt_private_event_class_create( - struct bt_private_stream_class *stream_class); - -extern struct bt_private_event_class *bt_private_event_class_create_with_id( - struct bt_private_stream_class *stream_class, uint64_t id); - -extern struct bt_private_stream_class * -bt_private_event_class_borrow_stream_class( - struct bt_private_event_class *event_class); - -extern int bt_private_event_class_set_name( - struct bt_private_event_class *event_class, const char *name); - -extern void bt_private_event_class_set_log_level( - struct bt_private_event_class *event_class, - enum bt_event_class_log_level log_level); - -extern int bt_private_event_class_set_emf_uri( - struct bt_private_event_class *event_class, - const char *emf_uri); - -extern struct bt_private_field_class * -bt_private_event_class_borrow_specific_context_field_class( - struct bt_private_event_class *event_class); - -extern int bt_private_event_class_set_specific_context_field_class( - struct bt_private_event_class *event_class, - struct bt_private_field_class *field_class); - -extern struct bt_private_field_class * -bt_private_event_class_borrow_payload_field_class( - struct bt_private_event_class *event_class); - -extern int bt_private_event_class_set_payload_field_class( - struct bt_private_event_class *event_class, - struct bt_private_field_class *field_class); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_EVENT_CLASS_H */ diff --git a/include/babeltrace/trace-ir/private-field-classes.h b/include/babeltrace/trace-ir/private-field-classes.h deleted file mode 100644 index 017091ac..00000000 --- a/include/babeltrace/trace-ir/private-field-classes.h +++ /dev/null @@ -1,155 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_FIELD_CLASSES_H -#define BABELTRACE_TRACE_IR_PRIVATE_FIELD_CLASSES_H - -/* - * Copyright 2013, 2014 Jérémie Galarneau - * - * Author: Jérémie Galarneau - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -/* For bt_bool */ -#include - -/* For enum bt_field_class_integer_preferred_display_base */ -#include - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_field_class; -struct bt_private_field_class; -struct bt_private_field_path; -struct bt_private_field_class_signed_enumeration_mapping_ranges; -struct bt_private_field_class_unsigned_enumeration_mapping_ranges; - -static inline -struct bt_field_class *bt_private_field_class_as_field_class( - struct bt_private_field_class *priv_field_class) -{ - return (void *) priv_field_class; -} - -extern struct bt_private_field_class * -bt_private_field_class_unsigned_integer_create(void); - -extern struct bt_private_field_class * -bt_private_field_class_signed_integer_create(void); - -extern void bt_private_field_class_integer_set_field_value_range( - struct bt_private_field_class *field_class, uint64_t size); - -extern void bt_private_field_class_integer_set_preferred_display_base( - struct bt_private_field_class *field_class, - enum bt_field_class_integer_preferred_display_base base); - -extern struct bt_private_field_class *bt_private_field_class_real_create(void); - -extern void bt_private_field_class_real_set_is_single_precision( - struct bt_private_field_class *field_class, - bt_bool is_single_precision); - -extern struct bt_private_field_class * -bt_private_field_class_unsigned_enumeration_create(void); - -extern struct bt_private_field_class * -bt_private_field_class_signed_enumeration_create(void); - -extern uint64_t bt_private_field_class_enumeration_get_mapping_count( - struct bt_private_field_class *field_class); - -extern int bt_private_field_class_unsigned_enumeration_map_range( - struct bt_private_field_class *field_class, const char *label, - uint64_t range_lower, uint64_t range_upper); - -extern int bt_private_field_class_signed_enumeration_map_range( - struct bt_private_field_class *field_class, const char *label, - int64_t range_lower, int64_t range_upper); - -extern struct bt_private_field_class * -bt_private_field_class_string_create(void); - -extern struct bt_private_field_class * -bt_private_field_class_structure_create(void); - -extern void bt_private_field_class_structure_borrow_member_by_index( - struct bt_private_field_class *struct_field_class, - uint64_t index, const char **name, - struct bt_private_field_class **field_class); - -extern -struct bt_private_field_class * -bt_private_field_class_structure_borrow_member_field_class_by_name( - struct bt_private_field_class *field_class, const char *name); - -extern int bt_private_field_class_structure_append_member( - struct bt_private_field_class *struct_field_class, - const char *name, struct bt_private_field_class *field_class); - -extern struct bt_private_field_class * -bt_private_field_class_static_array_create( - struct bt_private_field_class *elem_field_class, - uint64_t length); - -extern struct bt_private_field_class * -bt_private_field_class_dynamic_array_create( - struct bt_private_field_class *elem_field_class); - -extern struct bt_private_field_class * -bt_private_field_class_array_borrow_element_field_class( - struct bt_private_field_class *field_class); - -extern int bt_private_field_class_dynamic_array_set_length_field_class( - struct bt_private_field_class *field_class, - struct bt_private_field_class *length_field_class); - -extern struct bt_private_field_class * -bt_private_field_class_variant_create(void); - -extern int bt_private_field_class_variant_set_selector_field_class( - struct bt_private_field_class *field_class, - struct bt_private_field_class *selector_field_class); - -extern void bt_private_field_class_variant_borrow_option_by_index( - struct bt_private_field_class *variant_field_class, - uint64_t index, const char **name, - struct bt_private_field_class **field_class); - -extern -struct bt_private_field_class * -bt_private_field_class_variant_borrow_option_field_class_by_name( - struct bt_private_field_class *field_class, const char *name); - -extern int bt_private_field_class_variant_append_private_option( - struct bt_private_field_class *var_field_class, - const char *name, struct bt_private_field_class *field_class); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_FIELD_CLASSES_H */ diff --git a/include/babeltrace/trace-ir/private-fields.h b/include/babeltrace/trace-ir/private-fields.h deleted file mode 100644 index 1d98f7ac..00000000 --- a/include/babeltrace/trace-ir/private-fields.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_FIELDS_H -#define BABELTRACE_TRACE_IR_PRIVATE_FIELDS_H - -/* - * Copyright 2013, 2014 Jérémie Galarneau - * - * Author: Jérémie Galarneau - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_field; -struct bt_private_field; -struct bt_private_field_class; - -static inline -struct bt_field *bt_private_field_as_field( - struct bt_private_field *priv_field) -{ - return (void *) priv_field; -} - -extern struct bt_private_field_class *bt_private_field_borrow_class( - struct bt_private_field *field); - -extern void bt_private_field_signed_integer_set_value( - struct bt_private_field *field, int64_t value); - -extern void bt_private_field_unsigned_integer_set_value( - struct bt_private_field *field, uint64_t value); - -extern void bt_private_field_real_set_value(struct bt_private_field *field, - double value); - -extern int bt_private_field_string_set_value(struct bt_private_field *field, - const char *value); - -extern int bt_private_field_string_append(struct bt_private_field *field, - const char *value); - -extern int bt_private_field_string_append_with_length( - struct bt_private_field *field, - const char *value, uint64_t length); - -extern int bt_private_field_string_clear(struct bt_private_field *field); - -extern struct bt_private_field * -bt_private_field_structure_borrow_member_field_by_index( - struct bt_private_field *field, uint64_t index); - -extern struct bt_private_field * -bt_private_field_structure_borrow_member_field_by_name( - struct bt_private_field *field, const char *name); - -extern struct bt_private_field * -bt_private_field_array_borrow_element_field_by_index( - struct bt_private_field *field, uint64_t index); - -extern int bt_private_field_dynamic_array_set_length( - struct bt_private_field *field, uint64_t length); - -extern int bt_private_field_variant_select_option_field( - struct bt_private_field *field, uint64_t index); - -extern struct bt_private_field * -bt_private_field_variant_borrow_selected_option_field( - struct bt_private_field *field); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_FIELDS_H */ diff --git a/include/babeltrace/trace-ir/private-packet.h b/include/babeltrace/trace-ir/private-packet.h deleted file mode 100644 index febea34b..00000000 --- a/include/babeltrace/trace-ir/private-packet.h +++ /dev/null @@ -1,92 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_PACKET_H -#define BABELTRACE_TRACE_IR_PRIVATE_PACKET_H - -/* - * Copyright 2016 Philippe Proulx - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_packet; -struct bt_private_packet; -struct bt_private_packet_header_field; -struct bt_private_packet_context_field; -struct bt_private_stream; - -static inline -struct bt_packet *bt_private_packet_as_packet( - struct bt_private_packet *priv_packet) -{ - return (void *) priv_packet; -} - -extern struct bt_private_packet *bt_private_packet_create( - struct bt_private_stream *stream); - -extern struct bt_private_stream *bt_private_packet_borrow_stream( - struct bt_private_packet *packet); - -extern -struct bt_private_field *bt_private_packet_borrow_header_field( - struct bt_private_packet *packet); - -extern -int bt_private_packet_move_header_field( - struct bt_private_packet *packet, - struct bt_private_packet_header_field *header); - -extern -struct bt_private_field *bt_private_packet_borrow_context_field( - struct bt_private_packet *packet); - -extern -int bt_private_packet_move_context_field( - struct bt_private_packet *packet, - struct bt_private_packet_context_field *context); - -extern -void bt_private_packet_set_default_beginning_clock_value( - struct bt_private_packet *packet, uint64_t value_cycles); - -extern -void bt_private_packet_set_default_end_clock_value( - struct bt_private_packet *packet, uint64_t value_cycles); - -extern -void bt_private_packet_set_discarded_event_counter_snapshot( - struct bt_private_packet *packet, uint64_t value); - -extern -void bt_private_packet_set_packet_counter_snapshot( - struct bt_private_packet *packet, uint64_t value); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_PACKET_H */ diff --git a/include/babeltrace/trace-ir/private-stream-class.h b/include/babeltrace/trace-ir/private-stream-class.h deleted file mode 100644 index 78113db0..00000000 --- a/include/babeltrace/trace-ir/private-stream-class.h +++ /dev/null @@ -1,132 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_STREAM_CLASS_H -#define BABELTRACE_TRACE_IR_PRIVATE_STREAM_CLASS_H - -/* - * Copyright 2014 Jérémie Galarneau - * - * Author: Jérémie Galarneau - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -#include - -/* For bt_bool */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_stream_class; -struct bt_private_stream_class; -struct bt_private_trace; -struct bt_private_event_class; -struct bt_private_clock_class; - -static inline -struct bt_stream_class *bt_private_stream_class_as_stream_class( - struct bt_private_stream_class *priv_stream_class) -{ - return (void *) priv_stream_class; -} - -extern struct bt_private_stream_class *bt_private_stream_class_create( - struct bt_private_trace *trace); - -extern struct bt_private_stream_class *bt_private_stream_class_create_with_id( - struct bt_private_trace *trace, uint64_t id); - -extern struct bt_private_trace *bt_private_stream_class_borrow_trace( - struct bt_private_stream_class *stream_class); - -extern int bt_private_stream_class_set_name( - struct bt_private_stream_class *stream_class, - const char *name); - -extern void bt_private_stream_class_set_assigns_automatic_event_class_id( - struct bt_private_stream_class *stream_class, bt_bool value); - -extern void bt_private_stream_class_set_assigns_automatic_stream_id( - struct bt_private_stream_class *stream_class, bt_bool value); - -extern struct bt_private_field_class * -bt_private_stream_class_borrow_packet_context_field_class( - struct bt_private_stream_class *stream_class); - -extern int bt_private_stream_class_set_packet_context_field_class( - struct bt_private_stream_class *stream_class, - struct bt_private_field_class *field_class); - -extern struct bt_private_field_class * -bt_private_stream_class_borrow_event_header_field_class( - struct bt_private_stream_class *stream_class); - -extern int bt_private_stream_class_set_event_header_field_class( - struct bt_private_stream_class *stream_class, - struct bt_private_field_class *field_class); - -extern struct bt_private_field_class * -bt_private_stream_class_borrow_event_common_context_field_class( - struct bt_private_stream_class *stream_class); - -extern int -bt_private_stream_class_set_event_common_context_field_class( - struct bt_private_stream_class *stream_class, - struct bt_private_field_class *field_class); - -extern struct bt_private_event_class * -bt_private_stream_class_borrow_event_class_by_index( - struct bt_private_stream_class *stream_class, uint64_t index); - -extern struct bt_private_event_class * -bt_private_stream_class_borrow_event_class_by_id( - struct bt_private_stream_class *stream_class, uint64_t id); - -extern int bt_private_stream_class_set_default_clock_class( - struct bt_private_stream_class *stream_class, - struct bt_clock_class *clock_class); - -extern bt_bool bt_private_stream_class_default_clock_is_always_known( - struct bt_private_stream_class *stream_class); - -extern void -bt_private_stream_class_set_packets_have_discarded_event_counter_snapshot( - struct bt_private_stream_class *stream_class, bt_bool value); - -extern void -bt_private_stream_class_set_packets_have_packet_counter_snapshot( - struct bt_private_stream_class *stream_class, bt_bool value); - -extern void -bt_private_stream_class_set_packets_have_default_beginning_clock_value( - struct bt_private_stream_class *stream_class, bt_bool value); - -extern void -bt_private_stream_class_set_packets_have_default_end_clock_value( - struct bt_private_stream_class *stream_class, bt_bool value); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_STREAM_CLASS_H */ diff --git a/include/babeltrace/trace-ir/private-trace.h b/include/babeltrace/trace-ir/private-trace.h deleted file mode 100644 index 1336082e..00000000 --- a/include/babeltrace/trace-ir/private-trace.h +++ /dev/null @@ -1,126 +0,0 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_TRACE_H -#define BABELTRACE_TRACE_IR_PRIVATE_TRACE_H - -/* - * Copyright 2014 Jérémie Galarneau - * - * Author: Jérémie Galarneau - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf - */ - -/* For bt_bool, bt_uuid */ -#include - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -struct bt_trace; -struct bt_private_trace; -struct bt_private_stream; -struct bt_private_stream_class; -struct bt_private_field_class; -struct bt_value; -struct bt_private_packet_header_field; - -typedef void (* bt_private_trace_is_static_listener)( - struct bt_private_trace *trace, void *data); - -typedef void (* bt_private_trace_listener_removed)( - struct bt_private_trace *trace, void *data); - -static inline -struct bt_trace *bt_private_trace_as_trace( - struct bt_private_trace *priv_trace) -{ - return (void *) priv_trace; -} - -extern struct bt_private_trace *bt_private_trace_create(void); - -extern void bt_private_trace_set_assigns_automatic_stream_class_id( - struct bt_private_trace *trace, bt_bool value); - -extern int bt_private_trace_set_name(struct bt_private_trace *trace, - const char *name); - -extern void bt_private_trace_set_uuid(struct bt_private_trace *trace, - bt_uuid uuid); - -extern void bt_private_trace_borrow_environment_entry_by_index( - struct bt_private_trace *trace, uint64_t index, - const char **name, const struct bt_value **value); - -extern const struct bt_value * -bt_private_trace_borrow_environment_entry_value_by_name( - struct bt_private_trace *trace, const char *name); - -extern int bt_private_trace_set_environment_entry_integer( - struct bt_private_trace *trace, const char *name, - int64_t value); - -extern int bt_private_trace_set_environment_entry_string( - struct bt_private_trace *trace, const char *name, - const char *value); - -extern struct bt_private_field_class * -bt_private_trace_borrow_packet_header_field_class( - struct bt_private_trace *trace); - -extern int bt_private_trace_set_packet_header_field_class( - struct bt_private_trace *trace, - struct bt_private_field_class *packet_header_field_class); - -extern struct bt_private_stream_class * -bt_private_trace_borrow_stream_class_by_index( - struct bt_private_trace *trace, uint64_t index); - -extern struct bt_private_stream_class * -bt_private_trace_borrow_stream_class_by_id( - struct bt_private_trace *trace, uint64_t id); - -extern struct bt_private_stream * -bt_private_trace_borrow_stream_by_index( - struct bt_private_trace *trace, uint64_t index); - -extern struct bt_private_stream *bt_private_trace_borrow_stream_by_id( - struct bt_private_trace *trace, uint64_t id); - -extern int bt_private_trace_make_static(struct bt_private_trace *trace); - -extern int bt_private_trace_add_is_static_listener( - struct bt_private_trace *trace, - bt_private_trace_is_static_listener listener, - bt_private_trace_listener_removed listener_removed, void *data, - uint64_t *listener_id); - -extern int bt_private_trace_remove_is_static_listener( - struct bt_private_trace *trace, uint64_t listener_id); - -#ifdef __cplusplus -} -#endif - -#endif /* BABELTRACE_TRACE_IR_PRIVATE_TRACE_H */ diff --git a/include/babeltrace/trace-ir/resolve-field-path-internal.h b/include/babeltrace/trace-ir/resolve-field-path-internal.h index d403585f..f7abb4e2 100644 --- a/include/babeltrace/trace-ir/resolve-field-path-internal.h +++ b/include/babeltrace/trace-ir/resolve-field-path-internal.h @@ -27,8 +27,8 @@ */ #include -#include -#include +#include +#include #include struct bt_resolve_field_path_context { diff --git a/include/babeltrace/trace-ir/stream-class-const.h b/include/babeltrace/trace-ir/stream-class-const.h new file mode 100644 index 00000000..2b4cb3d3 --- /dev/null +++ b/include/babeltrace/trace-ir/stream-class-const.h @@ -0,0 +1,108 @@ +#ifndef BABELTRACE_TRACE_IR_STREAM_CLASS_CONST_H +#define BABELTRACE_TRACE_IR_STREAM_CLASS_CONST_H + +/* + * Copyright 2014 Jérémie Galarneau + * + * Author: Jérémie Galarneau + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +#include + +/* For bt_bool */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_trace; +struct bt_stream_class; +struct bt_event_class; +struct bt_clock_class; +struct bt_event_header_field; +struct bt_packet_context_field; + +extern const struct bt_trace *bt_stream_class_borrow_trace_const( + const struct bt_stream_class *stream_class); + +extern const char *bt_stream_class_get_name( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_assigns_automatic_event_class_id( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_assigns_automatic_stream_id( + const struct bt_stream_class *stream_class); + +extern uint64_t bt_stream_class_get_id( + const struct bt_stream_class *stream_class); + +extern const struct bt_field_class * +bt_stream_class_borrow_packet_context_field_class_const( + const struct bt_stream_class *stream_class); + +extern const struct bt_field_class * +bt_stream_class_borrow_event_header_field_class_const( + const struct bt_stream_class *stream_class); + +extern const struct bt_field_class * +bt_stream_class_borrow_event_common_context_field_class_const( + const struct bt_stream_class *stream_class); + +extern uint64_t bt_stream_class_get_event_class_count( + const struct bt_stream_class *stream_class); + +extern const struct bt_event_class * +bt_stream_class_borrow_event_class_by_index_const( + const struct bt_stream_class *stream_class, uint64_t index); + +extern const struct bt_event_class * +bt_stream_class_borrow_event_class_by_id_const( + const struct bt_stream_class *stream_class, uint64_t id); + +extern const struct bt_clock_class * +bt_stream_class_borrow_default_clock_class_const( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_default_clock_is_always_known( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_packets_have_discarded_event_counter_snapshot( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_packets_have_packet_counter_snapshot( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_packets_have_default_beginning_clock_value( + const struct bt_stream_class *stream_class); + +extern bt_bool bt_stream_class_packets_have_default_end_clock_value( + const struct bt_stream_class *stream_class); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_STREAM_CLASS_CONST_H */ diff --git a/include/babeltrace/trace-ir/stream-class-internal.h b/include/babeltrace/trace-ir/stream-class-internal.h index 5c19e560..72bbdd2b 100644 --- a/include/babeltrace/trace-ir/stream-class-internal.h +++ b/include/babeltrace/trace-ir/stream-class-internal.h @@ -71,7 +71,7 @@ struct bt_stream_class { }; BT_HIDDEN -void _bt_stream_class_freeze(struct bt_stream_class *stream_class); +void _bt_stream_class_freeze(const struct bt_stream_class *stream_class); #ifdef BT_DEV_MODE # define bt_stream_class_freeze _bt_stream_class_freeze @@ -81,7 +81,7 @@ void _bt_stream_class_freeze(struct bt_stream_class *stream_class); static inline struct bt_trace *bt_stream_class_borrow_trace_inline( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT(stream_class); return (void *) bt_object_borrow_parent(&stream_class->base); diff --git a/include/babeltrace/trace-ir/stream-class.h b/include/babeltrace/trace-ir/stream-class.h index 6b7bdd35..06ca44a7 100644 --- a/include/babeltrace/trace-ir/stream-class.h +++ b/include/babeltrace/trace-ir/stream-class.h @@ -37,64 +37,71 @@ extern "C" { #endif -struct bt_trace; struct bt_stream_class; +struct bt_trace; struct bt_event_class; struct bt_clock_class; -struct bt_event_header_field; -struct bt_packet_context_field; -extern struct bt_trace *bt_stream_class_borrow_trace( - struct bt_stream_class *stream_class); +extern struct bt_stream_class *bt_stream_class_create(struct bt_trace *trace); -extern const char *bt_stream_class_get_name( - struct bt_stream_class *stream_class); +extern struct bt_stream_class *bt_stream_class_create_with_id( + struct bt_trace *trace, uint64_t id); -extern bt_bool bt_stream_class_assigns_automatic_event_class_id( +extern struct bt_trace *bt_stream_class_borrow_trace( struct bt_stream_class *stream_class); -extern bt_bool bt_stream_class_assigns_automatic_stream_id( - struct bt_stream_class *stream_class); +extern int bt_stream_class_set_name(struct bt_stream_class *stream_class, + const char *name); -extern uint64_t bt_stream_class_get_id(struct bt_stream_class *stream_class); +extern void bt_stream_class_set_assigns_automatic_event_class_id( + struct bt_stream_class *stream_class, bt_bool value); -extern struct bt_field_class *bt_stream_class_borrow_packet_context_field_class( - struct bt_stream_class *stream_class); +extern void bt_stream_class_set_assigns_automatic_stream_id( + struct bt_stream_class *stream_class, bt_bool value); -extern struct bt_field_class * -bt_stream_class_borrow_event_header_field_class( - struct bt_stream_class *stream_class); +extern int bt_stream_class_set_packet_context_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class); -extern struct bt_field_class * -bt_stream_class_borrow_event_common_context_field_class( - struct bt_stream_class *stream_class); +extern int bt_stream_class_set_event_header_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class); -extern uint64_t bt_stream_class_get_event_class_count( - struct bt_stream_class *stream_class); +extern int +bt_stream_class_set_event_common_context_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class); -extern struct bt_event_class *bt_stream_class_borrow_event_class_by_index( +extern struct bt_event_class * +bt_stream_class_borrow_event_class_by_index( struct bt_stream_class *stream_class, uint64_t index); -extern struct bt_event_class *bt_stream_class_borrow_event_class_by_id( +extern struct bt_event_class * +bt_stream_class_borrow_event_class_by_id( struct bt_stream_class *stream_class, uint64_t id); extern struct bt_clock_class *bt_stream_class_borrow_default_clock_class( struct bt_stream_class *stream_class); -extern bt_bool bt_stream_class_default_clock_is_always_known( - struct bt_stream_class *stream_class); +extern int bt_stream_class_set_default_clock_class( + struct bt_stream_class *stream_class, + struct bt_clock_class *clock_class); -extern bt_bool bt_stream_class_packets_have_discarded_event_counter_snapshot( - struct bt_stream_class *stream_class); +extern void +bt_stream_class_set_packets_have_discarded_event_counter_snapshot( + struct bt_stream_class *stream_class, bt_bool value); -extern bt_bool bt_stream_class_packets_have_packet_counter_snapshot( - struct bt_stream_class *stream_class); +extern void +bt_stream_class_set_packets_have_packet_counter_snapshot( + struct bt_stream_class *stream_class, bt_bool value); -extern bt_bool bt_stream_class_packets_have_default_beginning_clock_value( - struct bt_stream_class *stream_class); +extern void +bt_stream_class_set_packets_have_default_beginning_clock_value( + struct bt_stream_class *stream_class, bt_bool value); -extern bt_bool bt_stream_class_packets_have_default_end_clock_value( - struct bt_stream_class *stream_class); +extern void +bt_stream_class_set_packets_have_default_end_clock_value( + struct bt_stream_class *stream_class, bt_bool value); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/private-stream.h b/include/babeltrace/trace-ir/stream-const.h similarity index 64% rename from include/babeltrace/trace-ir/private-stream.h rename to include/babeltrace/trace-ir/stream-const.h index a4e402e5..7d4f0e36 100644 --- a/include/babeltrace/trace-ir/private-stream.h +++ b/include/babeltrace/trace-ir/stream-const.h @@ -1,5 +1,5 @@ -#ifndef BABELTRACE_TRACE_IR_PRIVATE_STREAM_H -#define BABELTRACE_TRACE_IR_PRIVATE_STREAM_H +#ifndef BABELTRACE_TRACE_IR_STREAM_CONST_H +#define BABELTRACE_TRACE_IR_STREAM_CONST_H /* * Copyright 2013, 2014 Jérémie Galarneau @@ -35,30 +35,17 @@ extern "C" { #endif struct bt_stream; -struct bt_private_stream; -struct bt_private_stream_class; +struct bt_stream_class; -static inline -struct bt_stream *bt_private_stream_as_stream( - struct bt_private_stream *priv_stream) -{ - return (void *) priv_stream; -} - -extern struct bt_private_stream *bt_private_stream_create( - struct bt_private_stream_class *stream_class); - -extern struct bt_private_stream *bt_private_stream_create_with_id( - struct bt_private_stream_class *stream_class, uint64_t id); +extern const struct bt_stream_class *bt_stream_borrow_class_const( + const struct bt_stream *stream); -extern struct bt_private_stream_class *bt_private_stream_borrow_class( - struct bt_private_stream *stream); +extern const char *bt_stream_get_name(const struct bt_stream *stream); -extern int bt_private_stream_set_name(struct bt_private_stream *stream, - const char *name); +extern uint64_t bt_stream_get_id(const struct bt_stream *stream); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_TRACE_IR_PRIVATE_STREAM_H */ +#endif /* BABELTRACE_TRACE_IR_STREAM_CONST_H */ diff --git a/include/babeltrace/trace-ir/stream-internal.h b/include/babeltrace/trace-ir/stream-internal.h index 7675b7f9..a22bad25 100644 --- a/include/babeltrace/trace-ir/stream-internal.h +++ b/include/babeltrace/trace-ir/stream-internal.h @@ -57,7 +57,7 @@ struct bt_stream { }; BT_HIDDEN -void _bt_stream_freeze(struct bt_stream *stream); +void _bt_stream_freeze(const struct bt_stream *stream); #ifdef BT_DEV_MODE # define bt_stream_freeze _bt_stream_freeze diff --git a/include/babeltrace/trace-ir/stream.h b/include/babeltrace/trace-ir/stream.h index 3ed0205e..4ef5c179 100644 --- a/include/babeltrace/trace-ir/stream.h +++ b/include/babeltrace/trace-ir/stream.h @@ -37,11 +37,14 @@ extern "C" { struct bt_stream; struct bt_stream_class; -extern struct bt_stream_class *bt_stream_borrow_class(struct bt_stream *stream); +extern struct bt_stream *bt_stream_create(struct bt_stream_class *stream_class); + +extern struct bt_stream *bt_stream_create_with_id( + struct bt_stream_class *stream_class, uint64_t id); -extern const char *bt_stream_get_name(struct bt_stream *stream); +extern struct bt_stream_class *bt_stream_borrow_class(struct bt_stream *stream); -extern uint64_t bt_stream_get_id(struct bt_stream *stream); +extern int bt_stream_set_name(struct bt_stream *stream, const char *name); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/trace-const.h b/include/babeltrace/trace-ir/trace-const.h new file mode 100644 index 00000000..4443056a --- /dev/null +++ b/include/babeltrace/trace-ir/trace-const.h @@ -0,0 +1,105 @@ +#ifndef BABELTRACE_TRACE_IR_TRACE_CONST_H +#define BABELTRACE_TRACE_IR_TRACE_CONST_H + +/* + * Copyright 2014 Jérémie Galarneau + * + * Author: Jérémie Galarneau + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * The Common Trace Format (CTF) Specification is available at + * http://www.efficios.com/ctf + */ + +/* For bt_bool, bt_uuid */ +#include + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct bt_trace; +struct bt_stream; +struct bt_stream_class; +struct bt_field_class; +struct bt_value; + +typedef void (* bt_trace_is_static_listener_func)(const struct bt_trace *trace, + void *data); + +typedef void (* bt_trace_listener_removed_func)(const struct bt_trace *trace, + void *data); + +extern bt_bool bt_trace_assigns_automatic_stream_class_id( + const struct bt_trace *trace); + +extern const char *bt_trace_get_name(const struct bt_trace *trace); + +extern bt_uuid bt_trace_get_uuid(const struct bt_trace *trace); + +extern uint64_t bt_trace_get_environment_entry_count( + const struct bt_trace *trace); + +extern void bt_trace_borrow_environment_entry_by_index_const( + const struct bt_trace *trace, uint64_t index, + const char **name, const struct bt_value **value); + +extern const struct bt_value * +bt_trace_borrow_environment_entry_value_by_name_const( + const struct bt_trace *trace, const char *name); + +extern const struct bt_field_class * +bt_trace_borrow_packet_header_field_class_const( + const struct bt_trace *trace); + +extern uint64_t bt_trace_get_stream_class_count(const struct bt_trace *trace); + +extern const struct bt_stream_class * +bt_trace_borrow_stream_class_by_index_const(const struct bt_trace *trace, + uint64_t index); + +extern const struct bt_stream_class *bt_trace_borrow_stream_class_by_id_const( + const struct bt_trace *trace, uint64_t id); + +extern uint64_t bt_trace_get_stream_count(const struct bt_trace *trace); + +extern const struct bt_stream *bt_trace_borrow_stream_by_index_const( + const struct bt_trace *trace, uint64_t index); + +extern const struct bt_stream *bt_trace_borrow_stream_by_id_const( + const struct bt_trace *trace, uint64_t id); + +extern bt_bool bt_trace_is_static(const struct bt_trace *trace); + +extern int bt_trace_add_is_static_listener(const struct bt_trace *trace, + bt_trace_is_static_listener_func listener, + bt_trace_listener_removed_func listener_removed, void *data, + uint64_t *listener_id); + +extern int bt_trace_remove_is_static_listener(const struct bt_trace *trace, + uint64_t listener_id); + +#ifdef __cplusplus +} +#endif + +#endif /* BABELTRACE_TRACE_IR_TRACE_CONST_H */ diff --git a/include/babeltrace/trace-ir/trace-internal.h b/include/babeltrace/trace-ir/trace-internal.h index 06653092..fcf1bd29 100644 --- a/include/babeltrace/trace-ir/trace-internal.h +++ b/include/babeltrace/trace-ir/trace-internal.h @@ -86,7 +86,7 @@ struct bt_trace { }; BT_HIDDEN -void _bt_trace_freeze(struct bt_trace *trace); +void _bt_trace_freeze(const struct bt_trace *trace); #ifdef BT_DEV_MODE # define bt_trace_freeze _bt_trace_freeze @@ -98,7 +98,7 @@ BT_HIDDEN void bt_trace_add_stream(struct bt_trace *trace, struct bt_stream *stream); BT_HIDDEN -uint64_t bt_trace_get_automatic_stream_id(struct bt_trace *trace, - struct bt_stream_class *stream_class); +uint64_t bt_trace_get_automatic_stream_id(const struct bt_trace *trace, + const struct bt_stream_class *stream_class); #endif /* BABELTRACE_TRACE_IR_TRACE_INTERNAL_H */ diff --git a/include/babeltrace/trace-ir/trace.h b/include/babeltrace/trace-ir/trace.h index 9a1115cb..370a89b3 100644 --- a/include/babeltrace/trace-ir/trace.h +++ b/include/babeltrace/trace-ir/trace.h @@ -42,27 +42,26 @@ struct bt_stream; struct bt_stream_class; struct bt_field_class; struct bt_value; +struct bt_packet_header_field; -extern bt_bool bt_trace_assigns_automatic_stream_class_id( - struct bt_trace *trace); +extern struct bt_trace *bt_trace_create(void); -extern const char *bt_trace_get_name(struct bt_trace *trace); +extern void bt_trace_set_assigns_automatic_stream_class_id( + struct bt_trace *trace, bt_bool value); -extern bt_uuid bt_trace_get_uuid(struct bt_trace *trace); +extern int bt_trace_set_name(struct bt_trace *trace, const char *name); -extern uint64_t bt_trace_get_environment_entry_count(struct bt_trace *trace); +extern void bt_trace_set_uuid(struct bt_trace *trace, bt_uuid uuid); -extern void bt_trace_borrow_environment_entry_by_index( - struct bt_trace *trace, uint64_t index, - const char **name, const struct bt_value **value); +extern int bt_trace_set_environment_entry_integer(struct bt_trace *trace, + const char *name, int64_t value); -extern const struct bt_value *bt_trace_borrow_environment_entry_value_by_name( - struct bt_trace *trace, const char *name); +extern int bt_trace_set_environment_entry_string(struct bt_trace *trace, + const char *name, const char *value); -extern struct bt_field_class *bt_trace_borrow_packet_header_field_class( - struct bt_trace *trace); - -extern uint64_t bt_trace_get_stream_class_count(struct bt_trace *trace); +extern int bt_trace_set_packet_header_field_class( + struct bt_trace *trace, + struct bt_field_class *packet_header_field_class); extern struct bt_stream_class *bt_trace_borrow_stream_class_by_index( struct bt_trace *trace, uint64_t index); @@ -70,15 +69,13 @@ extern struct bt_stream_class *bt_trace_borrow_stream_class_by_index( extern struct bt_stream_class *bt_trace_borrow_stream_class_by_id( struct bt_trace *trace, uint64_t id); -extern uint64_t bt_trace_get_stream_count(struct bt_trace *trace); - -extern struct bt_stream *bt_trace_borrow_stream_by_index( - struct bt_trace *trace, uint64_t index); +extern struct bt_stream *bt_trace_borrow_stream_by_index(struct bt_trace *trace, + uint64_t index); -extern struct bt_stream *bt_trace_borrow_stream_by_id( - struct bt_trace *trace, uint64_t id); +extern struct bt_stream *bt_trace_borrow_stream_by_id(struct bt_trace *trace, + uint64_t id); -extern bt_bool bt_trace_is_static(struct bt_trace *trace); +extern int bt_trace_make_static(struct bt_trace *trace); #ifdef __cplusplus } diff --git a/include/babeltrace/trace-ir/utils-internal.h b/include/babeltrace/trace-ir/utils-internal.h index 7ade7e0f..36cb2908 100644 --- a/include/babeltrace/trace-ir/utils-internal.h +++ b/include/babeltrace/trace-ir/utils-internal.h @@ -53,8 +53,8 @@ uint64_t bt_util_ns_from_value(uint64_t frequency, uint64_t value_cycles) } static inline -int bt_util_ns_from_origin(struct bt_clock_class *clock_class, uint64_t value, - int64_t *ns_from_origin) +int bt_util_ns_from_origin(const struct bt_clock_class *clock_class, + uint64_t value, int64_t *ns_from_origin) { int ret = 0; uint64_t value_ns_unsigned; diff --git a/include/babeltrace/values-const.h b/include/babeltrace/values-const.h index 12e80209..7aec0278 100644 --- a/include/babeltrace/values-const.h +++ b/include/babeltrace/values-const.h @@ -30,15 +30,46 @@ /* For bt_bool */ #include -/* For enum bt_value_status, enum bt_value_type */ -#include - #ifdef __cplusplus extern "C" { #endif struct bt_value; +enum bt_value_status { + /// Operation canceled. + BT_VALUE_STATUS_CANCELED = 125, + + /// Cannot allocate memory. + BT_VALUE_STATUS_NOMEM = -12, + + /// Okay, no error. + BT_VALUE_STATUS_OK = 0, +}; + +enum bt_value_type { + /// Null value object. + BT_VALUE_TYPE_NULL = 0, + + /// Boolean value object (holds #BT_TRUE or #BT_FALSE). + BT_VALUE_TYPE_BOOL = 1, + + /// Integer value object (holds a signed 64-bit integer raw value). + BT_VALUE_TYPE_INTEGER = 2, + + /// Floating point number value object (holds a \c double raw value). + BT_VALUE_TYPE_REAL = 3, + + /// String value object. + BT_VALUE_TYPE_STRING = 4, + + /// Array value object. + BT_VALUE_TYPE_ARRAY = 5, + + /// Map value object. + BT_VALUE_TYPE_MAP = 6, +}; + extern enum bt_value_type bt_value_get_type(const struct bt_value *object); static inline @@ -119,12 +150,12 @@ bt_bool bt_value_map_is_empty(const struct bt_value *map_obj) extern const struct bt_value *bt_value_map_borrow_entry_value_const( const struct bt_value *map_obj, const char *key); -typedef bt_bool (* bt_value_map_foreach_entry_const_cb)(const char *key, +typedef bt_bool (* bt_value_map_foreach_entry_const_func)(const char *key, const struct bt_value *object, void *data); extern enum bt_value_status bt_value_map_foreach_entry_const( const struct bt_value *map_obj, - bt_value_map_foreach_entry_const_cb cb, void *data); + bt_value_map_foreach_entry_const_func func, void *data); extern bt_bool bt_value_map_has_entry(const struct bt_value *map_obj, const char *key); diff --git a/include/babeltrace/values.h b/include/babeltrace/values.h index f6a9de54..85a838e8 100644 --- a/include/babeltrace/values.h +++ b/include/babeltrace/values.h @@ -30,44 +30,13 @@ /* For bt_bool */ #include +/* For enum bt_value_status, enum bt_value_type */ +#include + #ifdef __cplusplus extern "C" { #endif -enum bt_value_status { - /// Operation canceled. - BT_VALUE_STATUS_CANCELED = 125, - - /// Cannot allocate memory. - BT_VALUE_STATUS_NOMEM = -12, - - /// Okay, no error. - BT_VALUE_STATUS_OK = 0, -}; - -enum bt_value_type { - /// Null value object. - BT_VALUE_TYPE_NULL = 0, - - /// Boolean value object (holds #BT_TRUE or #BT_FALSE). - BT_VALUE_TYPE_BOOL = 1, - - /// Integer value object (holds a signed 64-bit integer raw value). - BT_VALUE_TYPE_INTEGER = 2, - - /// Floating point number value object (holds a \c double raw value). - BT_VALUE_TYPE_REAL = 3, - - /// String value object. - BT_VALUE_TYPE_STRING = 4, - - /// Array value object. - BT_VALUE_TYPE_ARRAY = 5, - - /// Map value object. - BT_VALUE_TYPE_MAP = 6, -}; - struct bt_value; extern struct bt_value *bt_value_null; @@ -134,12 +103,12 @@ extern struct bt_value *bt_value_map_create(void); extern struct bt_value *bt_value_map_borrow_entry_value( struct bt_value *map_obj, const char *key); -typedef bt_bool (* bt_value_map_foreach_entry_cb)(const char *key, +typedef bt_bool (* bt_value_map_foreach_entry_func)(const char *key, struct bt_value *object, void *data); extern enum bt_value_status bt_value_map_foreach_entry( struct bt_value *map_obj, - bt_value_map_foreach_entry_cb cb, void *data); + bt_value_map_foreach_entry_func func, void *data); extern enum bt_value_status bt_value_map_insert_entry( struct bt_value *map_obj, const char *key, diff --git a/lib/graph/iterator.c b/lib/graph/iterator.c index ffd2de5a..82f69571 100644 --- a/lib/graph/iterator.c +++ b/lib/graph/iterator.c @@ -27,7 +27,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -67,8 +69,8 @@ #define NOTIF_BATCH_SIZE 15 struct stream_state { - struct bt_stream *stream; /* owned by this */ - struct bt_packet *cur_packet; /* owned by this */ + const struct bt_stream *stream; /* owned by this */ + const struct bt_packet *cur_packet; /* owned by this */ uint64_t expected_notif_seq_num; bt_bool is_ended; }; @@ -91,7 +93,7 @@ void destroy_stream_state(struct stream_state *stream_state) BT_ASSERT_PRE_FUNC static -struct stream_state *create_stream_state(struct bt_stream *stream) +struct stream_state *create_stream_state(const struct bt_stream *stream) { struct stream_state *stream_state = g_new0(struct stream_state, 1); @@ -457,15 +459,16 @@ void bt_self_notification_iterator_set_data( BT_ASSERT_PRE_FUNC static inline void bt_notification_borrow_packet_stream(struct bt_notification *notif, - struct bt_stream **stream, struct bt_packet **packet) + const struct bt_stream **stream, + const struct bt_packet **packet) { BT_ASSERT(notif); switch (notif->type) { case BT_NOTIFICATION_TYPE_EVENT: - *packet = bt_event_borrow_packet( + *packet = bt_event_borrow_packet_const( bt_notification_event_borrow_event(notif)); - *stream = bt_packet_borrow_stream(*packet); + *stream = bt_packet_borrow_stream_const(*packet); break; case BT_NOTIFICATION_TYPE_STREAM_BEGIN: *stream = bt_notification_stream_begin_borrow_stream(notif); @@ -475,11 +478,11 @@ void bt_notification_borrow_packet_stream(struct bt_notification *notif, break; case BT_NOTIFICATION_TYPE_PACKET_BEGIN: *packet = bt_notification_packet_begin_borrow_packet(notif); - *stream = bt_packet_borrow_stream(*packet); + *stream = bt_packet_borrow_stream_const(*packet); break; case BT_NOTIFICATION_TYPE_PACKET_END: *packet = bt_notification_packet_end_borrow_packet(notif); - *stream = bt_packet_borrow_stream(*packet); + *stream = bt_packet_borrow_stream_const(*packet); break; default: break; @@ -494,8 +497,8 @@ bool validate_notification( { bool is_valid = true; struct stream_state *stream_state; - struct bt_stream *stream = NULL; - struct bt_packet *packet = NULL; + const struct bt_stream *stream = NULL; + const struct bt_packet *packet = NULL; BT_ASSERT(notif); bt_notification_borrow_packet_stream(notif, &stream, &packet); @@ -541,8 +544,8 @@ bool validate_notification( abort(); } - g_hash_table_insert(iterator->stream_states, stream, - stream_state); + g_hash_table_insert(iterator->stream_states, + (void *) stream, stream_state); stream_state->expected_notif_seq_num++; goto end; } diff --git a/lib/graph/notification/event.c b/lib/graph/notification/event.c index 09dece0b..9b09bc42 100644 --- a/lib/graph/notification/event.c +++ b/lib/graph/notification/event.c @@ -77,13 +77,11 @@ end: struct bt_private_notification *bt_private_notification_event_create( struct bt_self_notification_iterator *self_notif_iter, - struct bt_private_event_class *priv_event_class, - struct bt_private_packet *priv_packet) + struct bt_event_class *event_class, + struct bt_packet *packet) { struct bt_self_component_port_input_notification_iterator *notif_iter = (void *) self_notif_iter; - struct bt_event_class *event_class = (void *) priv_event_class; - struct bt_packet *packet = (void *) priv_packet; struct bt_notification_event *notification = NULL; struct bt_event *event; @@ -179,8 +177,8 @@ void bt_notification_event_recycle(struct bt_notification *notif) bt_object_pool_recycle_object(&graph->event_notif_pool, notif); } -struct bt_event *bt_notification_event_borrow_event( - struct bt_notification *notification) +static inline +struct bt_event *borrow_event(struct bt_notification *notification) { struct bt_notification_event *event_notification; @@ -191,9 +189,14 @@ struct bt_event *bt_notification_event_borrow_event( return event_notification->event; } -struct bt_private_event *bt_private_notification_event_borrow_event( +struct bt_event *bt_private_notification_event_borrow_event( struct bt_private_notification *notification) { - return (void *) bt_notification_event_borrow_event( - (void *) notification); + return borrow_event((void *) notification); +} + +const struct bt_event *bt_notification_event_borrow_event( + struct bt_notification *notification) +{ + return borrow_event(notification); } diff --git a/lib/graph/notification/packet.c b/lib/graph/notification/packet.c index b15c489b..6e4a5a1b 100644 --- a/lib/graph/notification/packet.c +++ b/lib/graph/notification/packet.c @@ -66,11 +66,10 @@ end: struct bt_private_notification *bt_private_notification_packet_begin_create( struct bt_self_notification_iterator *self_notif_iter, - struct bt_private_packet *priv_packet) + struct bt_packet *packet) { struct bt_self_component_port_input_notification_iterator *notif_iter = (void *) self_notif_iter; - struct bt_packet *packet = (void *) priv_packet; struct bt_notification_packet_begin *notification = NULL; struct bt_stream *stream; struct bt_stream_class *stream_class; @@ -138,24 +137,22 @@ void bt_notification_packet_begin_recycle(struct bt_notification *notif) bt_object_pool_recycle_object(&graph->packet_begin_notif_pool, notif); } -struct bt_packet *bt_notification_packet_begin_borrow_packet( - struct bt_notification *notification) +struct bt_packet *bt_private_notification_packet_begin_borrow_packet( + struct bt_private_notification *notification) { struct bt_notification_packet_begin *packet_begin; BT_ASSERT_PRE_NON_NULL(notification, "Notification"); BT_ASSERT_PRE_NOTIF_IS_TYPE(notification, BT_NOTIFICATION_TYPE_PACKET_BEGIN); - packet_begin = container_of(notification, - struct bt_notification_packet_begin, parent); + packet_begin = (void *) notification; return packet_begin->packet; } -struct bt_private_packet * -bt_private_notification_packet_begin_borrow_packet( - struct bt_private_notification *notification) +const struct bt_packet *bt_notification_packet_begin_borrow_packet( + struct bt_notification *notification) { - return (void *) bt_notification_packet_begin_borrow_packet( + return bt_private_notification_packet_begin_borrow_packet( (void *) notification); } @@ -185,11 +182,10 @@ end: struct bt_private_notification *bt_private_notification_packet_end_create( struct bt_self_notification_iterator *self_notif_iter, - struct bt_private_packet *priv_packet) + struct bt_packet *packet) { struct bt_self_component_port_input_notification_iterator *notif_iter = (void *) self_notif_iter; - struct bt_packet *packet = (void *) priv_packet; struct bt_notification_packet_end *notification = NULL; struct bt_stream *stream; struct bt_stream_class *stream_class; @@ -256,22 +252,21 @@ void bt_notification_packet_end_recycle(struct bt_notification *notif) bt_object_pool_recycle_object(&graph->packet_end_notif_pool, notif); } -struct bt_packet *bt_notification_packet_end_borrow_packet( - struct bt_notification *notification) +struct bt_packet *bt_private_notification_packet_end_borrow_packet( + struct bt_private_notification *notification) { struct bt_notification_packet_end *packet_end; BT_ASSERT_PRE_NON_NULL(notification, "Notification"); BT_ASSERT_PRE_NOTIF_IS_TYPE(notification, BT_NOTIFICATION_TYPE_PACKET_END); - packet_end = container_of(notification, - struct bt_notification_packet_end, parent); + packet_end = (void *) notification; return packet_end->packet; } -struct bt_private_packet *bt_private_notification_packet_end_borrow_packet( - struct bt_private_notification *notification) +const struct bt_packet *bt_notification_packet_end_borrow_packet( + struct bt_notification *notification) { - return (void *) bt_notification_packet_end_borrow_packet( + return bt_private_notification_packet_end_borrow_packet( (void *) notification); } diff --git a/lib/graph/notification/stream.c b/lib/graph/notification/stream.c index 11af10b8..9c903112 100644 --- a/lib/graph/notification/stream.c +++ b/lib/graph/notification/stream.c @@ -57,9 +57,8 @@ void bt_notification_stream_end_destroy(struct bt_object *obj) struct bt_private_notification *bt_private_notification_stream_end_create( struct bt_self_notification_iterator *self_notif_iter, - struct bt_private_stream *priv_stream) + struct bt_stream *stream) { - struct bt_stream *stream = (void *) priv_stream; struct bt_notification_stream_end *notification; struct bt_stream_class *stream_class; @@ -89,23 +88,22 @@ error: return NULL; } -struct bt_stream *bt_notification_stream_end_borrow_stream( - struct bt_notification *notification) +struct bt_stream *bt_private_notification_stream_end_borrow_stream( + struct bt_private_notification *notification) { struct bt_notification_stream_end *stream_end; BT_ASSERT_PRE_NON_NULL(notification, "Notification"); BT_ASSERT_PRE_NOTIF_IS_TYPE(notification, BT_NOTIFICATION_TYPE_STREAM_END); - stream_end = container_of(notification, - struct bt_notification_stream_end, parent); + stream_end = (void *) notification; return stream_end->stream; } -struct bt_private_stream *bt_private_notification_stream_end_borrow_stream( - struct bt_private_notification *notification) +const struct bt_stream *bt_notification_stream_end_borrow_stream( + struct bt_notification *notification) { - return (void *) bt_notification_stream_end_borrow_stream( + return bt_private_notification_stream_end_borrow_stream( (void *) notification); } @@ -163,9 +161,8 @@ void bt_notification_stream_begin_destroy(struct bt_object *obj) struct bt_private_notification *bt_private_notification_stream_begin_create( struct bt_self_notification_iterator *self_notif_iter, - struct bt_private_stream *priv_stream) + struct bt_stream *stream) { - struct bt_stream *stream = (void *) priv_stream; struct bt_notification_stream_begin *notification; struct bt_stream_class *stream_class; @@ -194,23 +191,22 @@ error: return NULL; } -struct bt_stream *bt_notification_stream_begin_borrow_stream( - struct bt_notification *notification) +struct bt_stream *bt_private_notification_stream_begin_borrow_stream( + struct bt_private_notification *notification) { struct bt_notification_stream_begin *stream_begin; BT_ASSERT_PRE_NON_NULL(notification, "Notification"); BT_ASSERT_PRE_NOTIF_IS_TYPE(notification, BT_NOTIFICATION_TYPE_STREAM_BEGIN); - stream_begin = container_of(notification, - struct bt_notification_stream_begin, parent); + stream_begin = (void *) notification; return stream_begin->stream; } -struct bt_private_stream *bt_private_notification_stream_begin_borrow_stream( - struct bt_private_notification *notification) +const struct bt_stream *bt_notification_stream_begin_borrow_stream( + struct bt_notification *notification) { - return (void *) bt_notification_stream_begin_borrow_stream( + return bt_private_notification_stream_begin_borrow_stream( (void *) notification); } diff --git a/lib/graph/query-executor.c b/lib/graph/query-executor.c index 8fd249d8..4f5a64d8 100644 --- a/lib/graph/query-executor.c +++ b/lib/graph/query-executor.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include diff --git a/lib/trace-ir/clock-class.c b/lib/trace-ir/clock-class.c index 4cfd01c8..4ab90d24 100644 --- a/lib/trace-ir/clock-class.c +++ b/lib/trace-ir/clock-class.c @@ -106,7 +106,7 @@ end: return; } -struct bt_private_clock_class *bt_private_clock_class_create(void) +struct bt_clock_class *bt_clock_class_create(void) { int ret; struct bt_clock_class *clock_class = NULL; @@ -153,22 +153,18 @@ error: BT_OBJECT_PUT_REF_AND_RESET(clock_class); end: - return (void *) clock_class; + return clock_class; } -const char *bt_clock_class_get_name( - struct bt_clock_class *clock_class) +const char *bt_clock_class_get_name(const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return clock_class->name.value; } -int bt_private_clock_class_set_name( - struct bt_private_clock_class *priv_clock_class, +int bt_clock_class_set_name(struct bt_clock_class *clock_class, const char *name) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); @@ -178,18 +174,16 @@ int bt_private_clock_class_set_name( return 0; } -const char *bt_clock_class_get_description(struct bt_clock_class *clock_class) +const char *bt_clock_class_get_description( + const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return clock_class->description.value; } -int bt_private_clock_class_set_description( - struct bt_private_clock_class *priv_clock_class, +int bt_clock_class_set_description(struct bt_clock_class *clock_class, const char *descr) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_NON_NULL(descr, "Description"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); @@ -200,18 +194,15 @@ int bt_private_clock_class_set_description( return 0; } -uint64_t bt_clock_class_get_frequency(struct bt_clock_class *clock_class) +uint64_t bt_clock_class_get_frequency(const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return clock_class->frequency; } -void bt_private_clock_class_set_frequency( - struct bt_private_clock_class *priv_clock_class, +void bt_clock_class_set_frequency(struct bt_clock_class *clock_class, uint64_t frequency) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); BT_ASSERT_PRE(frequency != UINT64_C(-1) && frequency != 0, @@ -225,18 +216,15 @@ void bt_private_clock_class_set_frequency( BT_LIB_LOGV("Set clock class's frequency: %!+K", clock_class); } -uint64_t bt_clock_class_get_precision(struct bt_clock_class *clock_class) +uint64_t bt_clock_class_get_precision(const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return clock_class->precision; } -void bt_private_clock_class_set_precision( - struct bt_private_clock_class *priv_clock_class, +void bt_clock_class_set_precision(struct bt_clock_class *clock_class, uint64_t precision) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); BT_ASSERT_PRE(precision != UINT64_C(-1), @@ -246,7 +234,7 @@ void bt_private_clock_class_set_precision( BT_LIB_LOGV("Set clock class's precision: %!+K", clock_class); } -void bt_clock_class_get_offset(struct bt_clock_class *clock_class, +void bt_clock_class_get_offset(const struct bt_clock_class *clock_class, int64_t *seconds, uint64_t *cycles) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); @@ -256,12 +244,9 @@ void bt_clock_class_get_offset(struct bt_clock_class *clock_class, *cycles = clock_class->offset_cycles; } -void bt_private_clock_class_set_offset( - struct bt_private_clock_class *priv_clock_class, +void bt_clock_class_set_offset(struct bt_clock_class *clock_class, int64_t seconds, uint64_t cycles) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); BT_ASSERT_PRE(cycles < clock_class->frequency, @@ -273,18 +258,15 @@ void bt_private_clock_class_set_offset( BT_LIB_LOGV("Set clock class's offset: %!+K", clock_class); } -bt_bool bt_clock_class_is_absolute(struct bt_clock_class *clock_class) +bt_bool bt_clock_class_is_absolute(const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return (bool) clock_class->is_absolute; } -void bt_private_clock_class_set_is_absolute( - struct bt_private_clock_class *priv_clock_class, +void bt_clock_class_set_is_absolute(struct bt_clock_class *clock_class, bt_bool is_absolute) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); clock_class->is_absolute = (bool) is_absolute; @@ -292,18 +274,15 @@ void bt_private_clock_class_set_is_absolute( clock_class); } -bt_uuid bt_clock_class_get_uuid(struct bt_clock_class *clock_class) +bt_uuid bt_clock_class_get_uuid(const struct bt_clock_class *clock_class) { BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); return clock_class->uuid.value; } -void bt_private_clock_class_set_uuid( - struct bt_private_clock_class *priv_clock_class, +void bt_clock_class_set_uuid(struct bt_clock_class *clock_class, bt_uuid uuid) { - struct bt_clock_class *clock_class = (void *) priv_clock_class; - BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_NON_NULL(uuid, "UUID"); BT_ASSERT_PRE_CLOCK_CLASS_HOT(clock_class); @@ -313,7 +292,7 @@ void bt_private_clock_class_set_uuid( } BT_HIDDEN -void _bt_clock_class_freeze(struct bt_clock_class *clock_class) +void _bt_clock_class_freeze(const struct bt_clock_class *clock_class) { BT_ASSERT(clock_class); @@ -322,10 +301,11 @@ void _bt_clock_class_freeze(struct bt_clock_class *clock_class) } BT_LIB_LOGD("Freezing clock class: %!+K", clock_class); - clock_class->frozen = 1; + ((struct bt_clock_class *) clock_class)->frozen = 1; } -int bt_clock_class_cycles_to_ns_from_origin(struct bt_clock_class *clock_class, +int bt_clock_class_cycles_to_ns_from_origin( + const struct bt_clock_class *clock_class, uint64_t cycles, int64_t *ns) { int ret; diff --git a/lib/trace-ir/clock-value.c b/lib/trace-ir/clock-value.c index 32c4b862..a89fdca9 100644 --- a/lib/trace-ir/clock-value.c +++ b/lib/trace-ir/clock-value.c @@ -134,7 +134,7 @@ void bt_clock_value_recycle(struct bt_clock_value *clock_value) bt_object_put_ref(clock_class); } -uint64_t bt_clock_value_get_value(struct bt_clock_value *clock_value) +uint64_t bt_clock_value_get_value(const struct bt_clock_value *clock_value) { BT_ASSERT_PRE_NON_NULL(clock_value, "Clock value"); BT_ASSERT_PRE(clock_value->is_set, @@ -142,7 +142,7 @@ uint64_t bt_clock_value_get_value(struct bt_clock_value *clock_value) return clock_value->value_cycles; } -int bt_clock_value_get_ns_from_origin(struct bt_clock_value *clock_value, +int bt_clock_value_get_ns_from_origin(const struct bt_clock_value *clock_value, int64_t *ret_value_ns) { int ret = 0; @@ -165,8 +165,8 @@ end: return ret; } -struct bt_clock_class *bt_clock_value_borrow_clock_class( - struct bt_clock_value *clock_value) +const struct bt_clock_class *bt_clock_value_borrow_clock_class_const( + const struct bt_clock_value *clock_value) { BT_ASSERT_PRE_NON_NULL(clock_value, "Clock value"); return clock_value->clock_class; diff --git a/lib/trace-ir/event-class.c b/lib/trace-ir/event-class.c index 839e9a99..6841c1ab 100644 --- a/lib/trace-ir/event-class.c +++ b/lib/trace-ir/event-class.c @@ -30,11 +30,10 @@ #include #include #include -#include #include +#include #include #include -#include #include #include #include @@ -51,7 +50,7 @@ #include #define BT_ASSERT_PRE_EVENT_CLASS_HOT(_ec) \ - BT_ASSERT_PRE_HOT(((struct bt_event_class *) (_ec)), \ + BT_ASSERT_PRE_HOT(((const struct bt_event_class *) (_ec)), \ "Event class", ": %!+E", (_ec)) static @@ -88,13 +87,14 @@ void free_event(struct bt_event *event, BT_ASSERT_PRE_FUNC static -bool event_class_id_is_unique(struct bt_stream_class *stream_class, uint64_t id) +bool event_class_id_is_unique(const struct bt_stream_class *stream_class, + uint64_t id) { uint64_t i; bool is_unique = true; for (i = 0; i < stream_class->event_classes->len; i++) { - struct bt_event_class *ec = + const struct bt_event_class *ec = stream_class->event_classes->pdata[i]; if (ec->id == id) { @@ -168,41 +168,35 @@ end: return event_class; } -struct bt_private_event_class *bt_private_event_class_create( - struct bt_private_stream_class *priv_stream_class) +struct bt_event_class *bt_event_class_create( + struct bt_stream_class *stream_class) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE(stream_class->assigns_automatic_event_class_id, "Stream class does not automatically assigns event class IDs: " "%![sc-]+S", stream_class); - return (void *) create_event_class_with_id((void *) stream_class, + return create_event_class_with_id(stream_class, (uint64_t) stream_class->event_classes->len); } -struct bt_private_event_class *bt_private_event_class_create_with_id( - struct bt_private_stream_class *priv_stream_class, uint64_t id) +struct bt_event_class *bt_event_class_create_with_id( + struct bt_stream_class *stream_class, uint64_t id) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE(!stream_class->assigns_automatic_event_class_id, "Stream class automatically assigns event class IDs: " "%![sc-]+S", stream_class); - return (void *) create_event_class_with_id((void *) stream_class, id); + return create_event_class_with_id(stream_class, id); } -const char *bt_event_class_get_name(struct bt_event_class *event_class) +const char *bt_event_class_get_name(const struct bt_event_class *event_class) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); return event_class->name.value; } -int bt_private_event_class_set_name(struct bt_private_event_class *priv_event_class, +int bt_event_class_set_name(struct bt_event_class *event_class, const char *name) { - struct bt_event_class *event_class = (void *) priv_event_class; - BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_EVENT_CLASS_HOT(event_class); @@ -212,14 +206,14 @@ int bt_private_event_class_set_name(struct bt_private_event_class *priv_event_cl return 0; } -uint64_t bt_event_class_get_id(struct bt_event_class *event_class) +uint64_t bt_event_class_get_id(const struct bt_event_class *event_class) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); return event_class->id; } enum bt_property_availability bt_event_class_get_log_level( - struct bt_event_class *event_class, + const struct bt_event_class *event_class, enum bt_event_class_log_level *log_level) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); @@ -229,12 +223,10 @@ enum bt_property_availability bt_event_class_get_log_level( return event_class->log_level.base.avail; } -void bt_private_event_class_set_log_level( - struct bt_private_event_class *priv_event_class, +void bt_event_class_set_log_level( + struct bt_event_class *event_class, enum bt_event_class_log_level log_level) { - struct bt_event_class *event_class = (void *) priv_event_class; - BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); BT_ASSERT_PRE_EVENT_CLASS_HOT(event_class); bt_property_uint_set(&event_class->log_level, @@ -242,18 +234,16 @@ void bt_private_event_class_set_log_level( BT_LIB_LOGV("Set event class's log level: %!+E", event_class); } -const char *bt_event_class_get_emf_uri(struct bt_event_class *event_class) +const char *bt_event_class_get_emf_uri(const struct bt_event_class *event_class) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); return event_class->emf_uri.value; } -int bt_private_event_class_set_emf_uri( - struct bt_private_event_class *priv_event_class, +int bt_event_class_set_emf_uri( + struct bt_event_class *event_class, const char *emf_uri) { - struct bt_event_class *event_class = (void *) priv_event_class; - BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); BT_ASSERT_PRE_NON_NULL(emf_uri, "EMF URI"); BT_ASSERT_PRE_EVENT_CLASS_HOT(event_class); @@ -270,36 +260,26 @@ struct bt_stream_class *bt_event_class_borrow_stream_class( return bt_event_class_borrow_stream_class_inline(event_class); } -struct bt_private_stream_class * -bt_private_event_class_borrow_stream_class( - struct bt_private_event_class *event_class) +const struct bt_stream_class * +bt_event_class_borrow_stream_class_const( + const struct bt_event_class *event_class) { - return (void *) bt_event_class_borrow_stream_class( - (void *) event_class); + return bt_event_class_borrow_stream_class((void *) event_class); } -struct bt_field_class *bt_event_class_borrow_specific_context_field_class( - struct bt_event_class *event_class) +const struct bt_field_class * +bt_event_class_borrow_specific_context_field_class_const( + const struct bt_event_class *event_class) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); return event_class->specific_context_fc; } -struct bt_private_field_class * -bt_private_event_class_borrow_specific_context_field_class( - struct bt_private_event_class *event_class) -{ - return (void *) bt_event_class_borrow_specific_context_field_class( - (void *) event_class); -} - -int bt_private_event_class_set_specific_context_field_class( - struct bt_private_event_class *priv_event_class, - struct bt_private_field_class *priv_field_class) +int bt_event_class_set_specific_context_field_class( + struct bt_event_class *event_class, + struct bt_field_class *field_class) { int ret; - struct bt_event_class *event_class = (void *) priv_event_class; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_stream_class *stream_class; struct bt_trace *trace; struct bt_resolve_field_path_context resolve_ctx = { @@ -344,27 +324,18 @@ end: return ret; } -struct bt_field_class *bt_event_class_borrow_payload_field_class( - struct bt_event_class *event_class) +const struct bt_field_class *bt_event_class_borrow_payload_field_class_const( + const struct bt_event_class *event_class) { BT_ASSERT_PRE_NON_NULL(event_class, "Event class"); return event_class->payload_fc; } -struct bt_private_field_class *bt_private_event_class_borrow_payload_field_class( - struct bt_private_event_class *event_class) -{ - return (void *) bt_event_class_borrow_payload_field_class( - (void *) event_class); -} - -int bt_private_event_class_set_payload_field_class( - struct bt_private_event_class *priv_event_class, - struct bt_private_field_class *priv_field_class) +int bt_event_class_set_payload_field_class( + struct bt_event_class *event_class, + struct bt_field_class *field_class) { int ret; - struct bt_event_class *event_class = (void *) priv_event_class; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_stream_class *stream_class; struct bt_trace *trace; struct bt_resolve_field_path_context resolve_ctx = { @@ -410,10 +381,10 @@ end: } BT_HIDDEN -void _bt_event_class_freeze(struct bt_event_class *event_class) +void _bt_event_class_freeze(const struct bt_event_class *event_class) { /* The field classes are already frozen */ BT_ASSERT(event_class); BT_LIB_LOGD("Freezing event class: %!+E", event_class); - event_class->frozen = true; + ((struct bt_event_class *) event_class)->frozen = true; } diff --git a/lib/trace-ir/event-header-field.c b/lib/trace-ir/event-header-field.c index dce75335..ae16dd1e 100644 --- a/lib/trace-ir/event-header-field.c +++ b/lib/trace-ir/event-header-field.c @@ -24,14 +24,14 @@ #include #include -#include +#include #include #include #include #include -struct bt_private_field *bt_private_event_header_field_borrow_field( - struct bt_private_event_header_field *header_field) +struct bt_field *bt_event_header_field_borrow_field( + struct bt_event_header_field *header_field) { struct bt_field_wrapper *field_wrapper = (void *) header_field; @@ -39,8 +39,8 @@ struct bt_private_field *bt_private_event_header_field_borrow_field( return (void *) field_wrapper->field; } -void bt_private_event_header_field_release( - struct bt_private_event_header_field *header_field) +void bt_event_header_field_release( + struct bt_event_header_field *header_field) { struct bt_field_wrapper *field_wrapper = (void *) header_field; @@ -56,8 +56,8 @@ void bt_private_event_header_field_release( bt_field_wrapper_destroy(field_wrapper); } -struct bt_private_event_header_field *bt_private_event_header_field_create( - struct bt_private_stream_class *priv_stream_class) +struct bt_event_header_field *bt_event_header_field_create( + struct bt_stream_class *priv_stream_class) { struct bt_stream_class *stream_class = (void *) priv_stream_class; struct bt_field_wrapper *field_wrapper; diff --git a/lib/trace-ir/event.c b/lib/trace-ir/event.c index 7d31a401..5b498604 100644 --- a/lib/trace-ir/event.c +++ b/lib/trace-ir/event.c @@ -29,14 +29,15 @@ #include #include #include -#include +#include #include #include -#include +#include #include #include #include #include +#include #include #include #include @@ -51,7 +52,7 @@ #include BT_HIDDEN -void _bt_event_set_is_frozen(struct bt_event *event, bool is_frozen) +void _bt_event_set_is_frozen(const struct bt_event *event, bool is_frozen) { BT_ASSERT(event); BT_LIB_LOGD("Setting event's frozen state: %!+e, is-frozen=%d", @@ -81,7 +82,7 @@ void _bt_event_set_is_frozen(struct bt_event *event, bool is_frozen) is_frozen); } - event->frozen = is_frozen; + ((struct bt_event *) event)->frozen = is_frozen; BT_LOGD_STR("Setting event's packet's frozen state."); bt_packet_set_is_frozen(event->packet, is_frozen); } @@ -107,7 +108,7 @@ struct bt_field_wrapper *create_event_header_field( field_wrapper = bt_field_wrapper_create( &stream_class->event_header_field_pool, - bt_stream_class_borrow_event_header_field_class(stream_class)); + stream_class->event_header_fc); if (!field_wrapper) { goto error; } @@ -142,7 +143,7 @@ struct bt_event *bt_event_new(struct bt_event_class *event_class) stream_class = bt_event_class_borrow_stream_class(event_class); BT_ASSERT(stream_class); - if (bt_stream_class_borrow_event_header_field_class(stream_class)) { + if (stream_class->event_header_fc) { event->header_field = create_event_header_field(stream_class); if (!event->header_field) { BT_LOGE_STR("Cannot create event header field."); @@ -150,8 +151,7 @@ struct bt_event *bt_event_new(struct bt_event_class *event_class) } } - fc = bt_stream_class_borrow_event_common_context_field_class( - stream_class); + fc = stream_class->event_common_context_fc; if (fc) { event->common_context_field = bt_field_create(fc); if (!event->common_context_field) { @@ -160,7 +160,7 @@ struct bt_event *bt_event_new(struct bt_event_class *event_class) } } - fc = bt_event_class_borrow_specific_context_field_class(event_class); + fc = event_class->specific_context_fc; if (fc) { event->specific_context_field = bt_field_create(fc); if (!event->specific_context_field) { @@ -169,7 +169,7 @@ struct bt_event *bt_event_new(struct bt_event_class *event_class) } } - fc = bt_event_class_borrow_payload_field_class(event_class); + fc = event_class->payload_fc; if (fc) { event->payload_field = bt_field_create(fc); if (!event->payload_field) { @@ -205,22 +205,35 @@ struct bt_event_class *bt_event_borrow_class(struct bt_event *event) return event->class; } +const struct bt_event_class *bt_event_borrow_class_const( + const struct bt_event *event) +{ + return bt_event_borrow_class((void *) event); +} + struct bt_stream *bt_event_borrow_stream(struct bt_event *event) { BT_ASSERT_PRE_NON_NULL(event, "Event"); return event->packet ? event->packet->stream : NULL; } +const struct bt_stream *bt_event_borrow_stream_const( + const struct bt_event *event) +{ + return bt_event_borrow_stream((void *) event); +} + struct bt_field *bt_event_borrow_header_field(struct bt_event *event) { BT_ASSERT_PRE_NON_NULL(event, "Event"); return event->header_field ? event->header_field->field : NULL; } -struct bt_private_field *bt_private_event_borrow_header_field( - struct bt_private_event *event) +const struct bt_field *bt_event_borrow_header_field_const( + const struct bt_event *event) { - return (void *) bt_event_borrow_header_field((void *) event); + BT_ASSERT_PRE_NON_NULL(event, "Event"); + return event->header_field ? event->header_field->field : NULL; } struct bt_field *bt_event_borrow_common_context_field(struct bt_event *event) @@ -229,10 +242,11 @@ struct bt_field *bt_event_borrow_common_context_field(struct bt_event *event) return event->common_context_field; } -struct bt_private_field *bt_private_event_borrow_common_context_field( - struct bt_private_event *event) +const struct bt_field *bt_event_borrow_common_context_field_const( + const struct bt_event *event) { - return (void *) bt_event_borrow_common_context_field((void *) event); + BT_ASSERT_PRE_NON_NULL(event, "Event"); + return event->common_context_field; } struct bt_field *bt_event_borrow_specific_context_field(struct bt_event *event) @@ -241,10 +255,11 @@ struct bt_field *bt_event_borrow_specific_context_field(struct bt_event *event) return event->specific_context_field; } -struct bt_private_field *bt_private_event_borrow_specific_context_field( - struct bt_private_event *event) +const struct bt_field *bt_event_borrow_specific_context_field_const( + const struct bt_event *event) { - return (void *) bt_event_borrow_specific_context_field((void *) event); + BT_ASSERT_PRE_NON_NULL(event, "Event"); + return event->specific_context_field; } struct bt_field *bt_event_borrow_payload_field(struct bt_event *event) @@ -253,10 +268,11 @@ struct bt_field *bt_event_borrow_payload_field(struct bt_event *event) return event->payload_field; } -struct bt_private_field *bt_private_event_borrow_payload_field( - struct bt_private_event *event) +const struct bt_field *bt_event_borrow_payload_field_const( + const struct bt_event *event) { - return (void *) bt_event_borrow_payload_field((void *) event); + BT_ASSERT_PRE_NON_NULL(event, "Event"); + return event->payload_field; } static @@ -317,10 +333,9 @@ void bt_event_destroy(struct bt_event *event) g_free(event); } -void bt_private_event_set_default_clock_value( - struct bt_private_event *priv_event, uint64_t value_cycles) +void bt_event_set_default_clock_value(struct bt_event *event, + uint64_t value_cycles) { - struct bt_event *event = (void *) priv_event; struct bt_stream_class *sc; BT_ASSERT_PRE_NON_NULL(event, "Event"); @@ -336,8 +351,9 @@ void bt_private_event_set_default_clock_value( "value=%" PRIu64, event, value_cycles); } -enum bt_clock_value_status bt_event_borrow_default_clock_value( - struct bt_event *event, struct bt_clock_value **clock_value) +enum bt_clock_value_status bt_event_borrow_default_clock_value_const( + const struct bt_event *event, + const struct bt_clock_value **clock_value) { BT_ASSERT_PRE_NON_NULL(event, "Event"); BT_ASSERT_PRE_NON_NULL(clock_value, "Clock value (output)"); @@ -351,20 +367,17 @@ struct bt_packet *bt_event_borrow_packet(struct bt_event *event) return event->packet; } -struct bt_private_packet *bt_private_event_borrow_packet( - struct bt_private_event *event) +const struct bt_packet *bt_event_borrow_packet_const( + const struct bt_event *event) { - return (void *) bt_event_borrow_packet((void *) event); + return bt_event_borrow_packet((void *) event); } -int bt_private_event_move_header_field( - struct bt_private_event *priv_event, - struct bt_private_event_header_field *priv_header_field) +int bt_event_move_header_field(struct bt_event *event, + struct bt_event_header_field *header_field) { struct bt_stream_class *stream_class; - struct bt_event *event = (void *) priv_event; - struct bt_event_class *event_class = (void *) event_class; - struct bt_field_wrapper *field_wrapper = (void *) priv_header_field; + struct bt_field_wrapper *field_wrapper = (void *) header_field; BT_ASSERT_PRE_NON_NULL(event, "Event"); BT_ASSERT_PRE_NON_NULL(field_wrapper, "Header field"); diff --git a/lib/trace-ir/field-classes.c b/lib/trace-ir/field-classes.c index 325d1810..a219ddc0 100644 --- a/lib/trace-ir/field-classes.c +++ b/lib/trace-ir/field-classes.c @@ -26,11 +26,12 @@ #include #include -#include +#include +#include #include #include #include -#include +#include #include #include #include @@ -46,7 +47,8 @@ #include #include -enum bt_field_class_type bt_field_class_get_type(struct bt_field_class *fc) +enum bt_field_class_type bt_field_class_get_type( + const struct bt_field_class *fc) { BT_ASSERT_PRE_NON_NULL(fc, "Field class"); return fc->type; @@ -105,23 +107,23 @@ end: return (void *) int_fc; } -struct bt_private_field_class * -bt_private_field_class_unsigned_integer_create(void) +struct bt_field_class * +bt_field_class_unsigned_integer_create(void) { - return (void *) create_integer_field_class( + return create_integer_field_class( BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER); } -struct bt_private_field_class *bt_private_field_class_signed_integer_create(void) +struct bt_field_class *bt_field_class_signed_integer_create(void) { - return (void *) create_integer_field_class( + return create_integer_field_class( BT_FIELD_CLASS_TYPE_SIGNED_INTEGER); } uint64_t bt_field_class_integer_get_field_value_range( - struct bt_field_class *fc) + const struct bt_field_class *fc) { - struct bt_field_class_integer *int_fc = (void *) fc; + const struct bt_field_class_integer *int_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_IS_INT(fc, "Field class"); @@ -137,10 +139,9 @@ bool size_is_valid_for_enumeration_field_class(struct bt_field_class *fc, return true; } -void bt_private_field_class_integer_set_field_value_range( - struct bt_private_field_class *priv_fc, uint64_t size) +void bt_field_class_integer_set_field_value_range( + struct bt_field_class *fc, uint64_t size) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_integer *int_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -161,20 +162,19 @@ void bt_private_field_class_integer_set_field_value_range( } enum bt_field_class_integer_preferred_display_base -bt_field_class_integer_get_preferred_display_base(struct bt_field_class *fc) +bt_field_class_integer_get_preferred_display_base(const struct bt_field_class *fc) { - struct bt_field_class_integer *int_fc = (void *) fc; + const struct bt_field_class_integer *int_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_IS_INT(fc, "Field class"); return int_fc->base; } -void bt_private_field_class_integer_set_preferred_display_base( - struct bt_private_field_class *priv_fc, +void bt_field_class_integer_set_preferred_display_base( + struct bt_field_class *fc, enum bt_field_class_integer_preferred_display_base base) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_integer *int_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -228,7 +228,8 @@ void destroy_enumeration_field_class(struct bt_object *obj) } static -struct bt_field_class *create_enumeration_field_class(enum bt_field_class_type type) +struct bt_field_class *create_enumeration_field_class( + enum bt_field_class_type type) { struct bt_field_class_enumeration *enum_fc = NULL; @@ -265,36 +266,35 @@ end: return (void *) enum_fc; } -struct bt_private_field_class * -bt_private_field_class_unsigned_enumeration_create(void) +struct bt_field_class *bt_field_class_unsigned_enumeration_create(void) { - return (void *) create_enumeration_field_class( + return create_enumeration_field_class( BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION); } -struct bt_private_field_class * -bt_private_field_class_signed_enumeration_create(void) +struct bt_field_class *bt_field_class_signed_enumeration_create(void) { - return (void *) create_enumeration_field_class( + return create_enumeration_field_class( BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION); } -uint64_t bt_field_class_enumeration_get_mapping_count(struct bt_field_class *fc) +uint64_t bt_field_class_enumeration_get_mapping_count( + const struct bt_field_class *fc) { - struct bt_field_class_enumeration *enum_fc = (void *) fc; + const struct bt_field_class_enumeration *enum_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_IS_ENUM(fc, "Field class"); return (uint64_t) enum_fc->mappings->len; } -void bt_field_class_unsigned_enumeration_borrow_mapping_by_index( - struct bt_field_class *fc, uint64_t index, +void bt_field_class_unsigned_enumeration_borrow_mapping_by_index_const( + const struct bt_field_class *fc, uint64_t index, const char **name, - struct bt_field_class_unsigned_enumeration_mapping_ranges **ranges) + const struct bt_field_class_unsigned_enumeration_mapping_ranges **ranges) { - struct bt_field_class_enumeration *enum_fc = (void *) fc; - struct bt_field_class_enumeration_mapping *mapping; + const struct bt_field_class_enumeration *enum_fc = (const void *) fc; + const struct bt_field_class_enumeration_mapping *mapping; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_NON_NULL(name, "Name (output)"); @@ -307,13 +307,13 @@ void bt_field_class_unsigned_enumeration_borrow_mapping_by_index( *ranges = (void *) mapping; } -void bt_field_class_signed_enumeration_borrow_mapping_by_index( - struct bt_field_class *fc, uint64_t index, +void bt_field_class_signed_enumeration_borrow_mapping_by_index_const( + const struct bt_field_class *fc, uint64_t index, const char **name, - struct bt_field_class_signed_enumeration_mapping_ranges **ranges) + const struct bt_field_class_signed_enumeration_mapping_ranges **ranges) { - struct bt_field_class_enumeration *enum_fc = (void *) fc; - struct bt_field_class_enumeration_mapping *mapping; + const struct bt_field_class_enumeration *enum_fc = (const void *) fc; + const struct bt_field_class_enumeration_mapping *mapping; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_NON_NULL(name, "Name (output)"); @@ -328,30 +328,32 @@ void bt_field_class_signed_enumeration_borrow_mapping_by_index( static inline uint64_t get_enumeration_field_class_mapping_range_count( - struct bt_field_class_enumeration_mapping *mapping) + const struct bt_field_class_enumeration_mapping *mapping) { BT_ASSERT_PRE_NON_NULL(mapping, "Ranges"); return (uint64_t) mapping->ranges->len; } uint64_t bt_field_class_unsigned_enumeration_mapping_ranges_get_range_count( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges) + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges) { - return get_enumeration_field_class_mapping_range_count((void *) ranges); + return get_enumeration_field_class_mapping_range_count( + (const void *) ranges); } uint64_t bt_field_class_signed_enumeration_mapping_ranges_get_range_count( - struct bt_field_class_signed_enumeration_mapping_ranges *ranges) + const struct bt_field_class_signed_enumeration_mapping_ranges *ranges) { - return get_enumeration_field_class_mapping_range_count((void *) ranges); + return get_enumeration_field_class_mapping_range_count( + (const void *) ranges); } static inline void get_enumeration_field_class_mapping_range_at_index( - struct bt_field_class_enumeration_mapping *mapping, + const struct bt_field_class_enumeration_mapping *mapping, uint64_t index, uint64_t *lower, uint64_t *upper) { - struct bt_field_class_enumeration_mapping_range *range; + const struct bt_field_class_enumeration_mapping_range *range; BT_ASSERT_PRE_NON_NULL(mapping, "Ranges"); BT_ASSERT_PRE_NON_NULL(lower, "Range's lower (output)"); @@ -363,29 +365,30 @@ void get_enumeration_field_class_mapping_range_at_index( } void bt_field_class_unsigned_enumeration_mapping_ranges_get_range_by_index( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, uint64_t index, uint64_t *lower, uint64_t *upper) { - get_enumeration_field_class_mapping_range_at_index((void *) ranges, - index, lower, upper); + get_enumeration_field_class_mapping_range_at_index( + (const void *) ranges, index, lower, upper); } void bt_field_class_signed_enumeration_mapping_ranges_get_range_by_index( - struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, + const struct bt_field_class_unsigned_enumeration_mapping_ranges *ranges, uint64_t index, int64_t *lower, int64_t *upper) { - get_enumeration_field_class_mapping_range_at_index((void *) ranges, - index, (uint64_t *) lower, (uint64_t *) upper); + get_enumeration_field_class_mapping_range_at_index( + (const void *) ranges, index, + (uint64_t *) lower, (uint64_t *) upper); } int bt_field_class_unsigned_enumeration_get_mapping_labels_by_value( - struct bt_field_class *fc, uint64_t value, + const struct bt_field_class *fc, uint64_t value, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count) { - struct bt_field_class_enumeration *enum_fc = (void *) fc; + const struct bt_field_class_enumeration *enum_fc = (const void *) fc; uint64_t i; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -397,11 +400,11 @@ int bt_field_class_unsigned_enumeration_get_mapping_labels_by_value( for (i = 0; i < enum_fc->mappings->len; i++) { uint64_t j; - struct bt_field_class_enumeration_mapping *mapping = + const struct bt_field_class_enumeration_mapping *mapping = BT_FIELD_CLASS_ENUM_MAPPING_AT_INDEX(enum_fc, i); for (j = 0; j < mapping->ranges->len; j++) { - struct bt_field_class_enumeration_mapping_range *range = + const struct bt_field_class_enumeration_mapping_range *range = BT_FIELD_CLASS_ENUM_MAPPING_RANGE_AT_INDEX( mapping, j); @@ -420,11 +423,11 @@ int bt_field_class_unsigned_enumeration_get_mapping_labels_by_value( } int bt_field_class_signed_enumeration_get_mapping_labels_by_value( - struct bt_field_class *fc, int64_t value, + const struct bt_field_class *fc, int64_t value, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count) { - struct bt_field_class_enumeration *enum_fc = (void *) fc; + const struct bt_field_class_enumeration *enum_fc = (const void *) fc; uint64_t i; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -436,11 +439,11 @@ int bt_field_class_signed_enumeration_get_mapping_labels_by_value( for (i = 0; i < enum_fc->mappings->len; i++) { uint64_t j; - struct bt_field_class_enumeration_mapping *mapping = + const struct bt_field_class_enumeration_mapping *mapping = BT_FIELD_CLASS_ENUM_MAPPING_AT_INDEX(enum_fc, i); for (j = 0; j < mapping->ranges->len; j++) { - struct bt_field_class_enumeration_mapping_range *range = + const struct bt_field_class_enumeration_mapping_range *range = BT_FIELD_CLASS_ENUM_MAPPING_RANGE_AT_INDEX( mapping, j); @@ -522,11 +525,10 @@ end: return ret; } -int bt_private_field_class_unsigned_enumeration_map_range( - struct bt_private_field_class *priv_fc, const char *label, +int bt_field_class_unsigned_enumeration_map_range( + struct bt_field_class *fc, const char *label, uint64_t range_lower, uint64_t range_upper) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_enumeration *enum_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -548,11 +550,10 @@ int bt_private_field_class_unsigned_enumeration_map_range( range_upper); } -int bt_private_field_class_signed_enumeration_map_range( - struct bt_private_field_class *priv_fc, const char *label, +int bt_field_class_signed_enumeration_map_range( + struct bt_field_class *fc, const char *label, int64_t range_lower, int64_t range_upper) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_enumeration *enum_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -582,7 +583,7 @@ void destroy_real_field_class(struct bt_object *obj) g_free(obj); } -struct bt_private_field_class *bt_private_field_class_real_create(void) +struct bt_field_class *bt_field_class_real_create(void) { struct bt_field_class_real *real_fc = NULL; @@ -605,20 +606,18 @@ end: return (void *) real_fc; } -bt_bool bt_field_class_real_is_single_precision(struct bt_field_class *fc) +bt_bool bt_field_class_real_is_single_precision(const struct bt_field_class *fc) { - struct bt_field_class_real *real_fc = (void *) fc; + const struct bt_field_class_real *real_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_REAL, "Field class"); return real_fc->is_single_precision; } -void bt_private_field_class_real_set_is_single_precision( - struct bt_private_field_class *priv_fc, +void bt_field_class_real_set_is_single_precision(struct bt_field_class *fc, bt_bool is_single_precision) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_real *real_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); @@ -632,7 +631,8 @@ void bt_private_field_class_real_set_is_single_precision( static int init_named_field_classes_container( struct bt_field_class_named_field_class_container *fc, - enum bt_field_class_type type, bt_object_release_func release_func) + enum bt_field_class_type type, + bt_object_release_func release_func) { int ret = 0; @@ -705,7 +705,7 @@ void destroy_structure_field_class(struct bt_object *obj) g_free(obj); } -struct bt_private_field_class *bt_private_field_class_structure_create(void) +struct bt_field_class *bt_field_class_structure_create(void) { int ret; struct bt_field_class_structure *struct_fc = NULL; @@ -772,19 +772,18 @@ end: return ret; } -int bt_private_field_class_structure_append_member( - struct bt_private_field_class *priv_fc, - const char *name, struct bt_private_field_class *member_fc) +int bt_field_class_structure_append_member(struct bt_field_class *fc, + const char *name, struct bt_field_class *member_fc) { - struct bt_field_class *fc = (void *) priv_fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_STRUCTURE, "Field class"); return append_named_field_class_to_container_field_class((void *) fc, - name, (void *) member_fc); + name, member_fc); } -uint64_t bt_field_class_structure_get_member_count(struct bt_field_class *fc) +uint64_t bt_field_class_structure_get_member_count( + const struct bt_field_class *fc) { struct bt_field_class_structure *struct_fc = (void *) fc; @@ -794,12 +793,12 @@ uint64_t bt_field_class_structure_get_member_count(struct bt_field_class *fc) } static -void borrow_named_field_class_from_container_field_class_at_index( - struct bt_field_class_named_field_class_container *fc, +void borrow_named_field_class_from_container_field_class_at_index_const( + const struct bt_field_class_named_field_class_container *fc, uint64_t index, const char **name, - struct bt_field_class **out_fc) + const struct bt_field_class **out_fc) { - struct bt_named_field_class *named_fc; + const struct bt_named_field_class *named_fc; BT_ASSERT(fc); BT_ASSERT_PRE_NON_NULL(name, "Name"); @@ -810,31 +809,24 @@ void borrow_named_field_class_from_container_field_class_at_index( *out_fc = named_fc->fc; } -void bt_field_class_structure_borrow_member_by_index( - struct bt_field_class *fc, uint64_t index, - const char **name, struct bt_field_class **out_fc) +void bt_field_class_structure_borrow_member_by_index_const( + const struct bt_field_class *fc, uint64_t index, + const char **name, const struct bt_field_class **out_fc) { BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_STRUCTURE, "Field class"); - borrow_named_field_class_from_container_field_class_at_index((void *) fc, - index, name, out_fc); -} - -void bt_private_field_class_structure_borrow_member_by_index( - struct bt_private_field_class *fc, uint64_t index, - const char **name, struct bt_private_field_class **out_fc) -{ - bt_field_class_structure_borrow_member_by_index((void *) fc, - index, name, (void *) out_fc); + borrow_named_field_class_from_container_field_class_at_index_const( + (void *) fc, index, name, out_fc); } static -struct bt_field_class *borrow_field_class_from_container_field_class_by_name( - struct bt_field_class_named_field_class_container *fc, +const struct bt_field_class * +borrow_field_class_from_container_field_class_by_name_const( + const struct bt_field_class_named_field_class_container *fc, const char *name) { - struct bt_field_class *ret_fc = NULL; - struct bt_named_field_class *named_fc; + const struct bt_field_class *ret_fc = NULL; + const struct bt_named_field_class *named_fc; gpointer orig_key; gpointer value; @@ -853,21 +845,14 @@ end: return ret_fc; } -struct bt_field_class *bt_field_class_structure_borrow_member_field_class_by_name( - struct bt_field_class *fc, const char *name) +const struct bt_field_class * +bt_field_class_structure_borrow_member_field_class_by_name( + const struct bt_field_class *fc, const char *name) { BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_STRUCTURE, "Field class"); - return borrow_field_class_from_container_field_class_by_name((void *) fc, - name); -} - -struct bt_private_field_class * -bt_private_field_class_structure_borrow_member_field_class_by_name( - struct bt_private_field_class *fc, const char *name) -{ - return (void *) bt_field_class_structure_borrow_member_field_class_by_name( - (void *) fc, name); + return borrow_field_class_from_container_field_class_by_name_const( + (void *) fc, name); } static @@ -885,7 +870,7 @@ void destroy_variant_field_class(struct bt_object *obj) g_free(fc); } -struct bt_private_field_class *bt_private_field_class_variant_create(void) +struct bt_field_class *bt_field_class_variant_create(void) { int ret; struct bt_field_class_variant *var_fc = NULL; @@ -913,11 +898,10 @@ end: return (void *) var_fc; } -int bt_private_field_class_variant_set_selector_field_class( - struct bt_private_field_class *priv_fc, - struct bt_private_field_class *selector_fc) +int bt_field_class_variant_set_selector_field_class( + struct bt_field_class *fc, + struct bt_field_class *selector_fc) { - struct bt_field_class *fc = (void *) priv_fc; struct bt_field_class_variant *var_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Variant field class"); @@ -925,72 +909,57 @@ int bt_private_field_class_variant_set_selector_field_class( BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, "Field class"); BT_ASSERT_PRE_FC_IS_ENUM(selector_fc, "Selector field class"); BT_ASSERT_PRE_FC_HOT(fc, "Variant field class"); - var_fc->selector_fc = (void *) selector_fc; + var_fc->selector_fc = selector_fc; bt_object_get_no_null_check(selector_fc); - bt_field_class_freeze((void *) selector_fc); + bt_field_class_freeze(selector_fc); return 0; } -int bt_private_field_class_variant_append_private_option( - struct bt_private_field_class *priv_fc, - const char *name, struct bt_private_field_class *option_fc) +int bt_field_class_variant_append_option( + struct bt_field_class *fc, + const char *name, struct bt_field_class *option_fc) { - struct bt_field_class *fc = (void *) priv_fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, "Field class"); return append_named_field_class_to_container_field_class((void *) fc, - name, (void *) option_fc); + name, option_fc); } -struct bt_field_class *bt_field_class_variant_borrow_option_field_class_by_name( - struct bt_field_class *fc, const char *name) +const struct bt_field_class * +bt_field_class_variant_borrow_option_field_class_by_name_const( + const struct bt_field_class *fc, const char *name) { BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, "Field class"); - return borrow_field_class_from_container_field_class_by_name((void *) fc, - name); -} - -struct bt_private_field_class * -bt_private_field_class_variant_borrow_option_field_class_by_name( - struct bt_private_field_class *fc, const char *name) -{ - return (void *) bt_field_class_variant_borrow_option_field_class_by_name( + return borrow_field_class_from_container_field_class_by_name_const( (void *) fc, name); } -uint64_t bt_field_class_variant_get_option_count(struct bt_field_class *fc) +uint64_t bt_field_class_variant_get_option_count(const struct bt_field_class *fc) { - struct bt_field_class_variant *var_fc = (void *) fc; + const struct bt_field_class_variant *var_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, "Field class"); return (uint64_t) var_fc->common.named_fcs->len; } -void bt_field_class_variant_borrow_option_by_index( - struct bt_field_class *fc, uint64_t index, - const char **name, struct bt_field_class **out_fc) +void bt_field_class_variant_borrow_option_by_index_const( + const struct bt_field_class *fc, uint64_t index, + const char **name, const struct bt_field_class **out_fc) { BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, "Field class"); - borrow_named_field_class_from_container_field_class_at_index((void *) fc, - index, name, out_fc); + borrow_named_field_class_from_container_field_class_at_index_const( + (void *) fc, index, name, out_fc); } -void bt_private_field_class_variant_borrow_option_by_index( - struct bt_private_field_class *fc, uint64_t index, - const char **name, struct bt_private_field_class **out_fc) +const struct bt_field_path * +bt_field_class_variant_borrow_selector_field_path_const( + const struct bt_field_class *fc) { - bt_field_class_variant_borrow_option_by_index((void *) fc, - index, name, (void *) out_fc); -} - -struct bt_field_path *bt_field_class_variant_borrow_selector_field_path( - struct bt_field_class *fc) -{ - struct bt_field_class_variant *var_fc = (void *) fc; + const struct bt_field_class_variant *var_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_VARIANT, @@ -1027,12 +996,10 @@ void destroy_static_array_field_class(struct bt_object *obj) g_free(obj); } -struct bt_private_field_class * -bt_private_field_class_static_array_create( - struct bt_private_field_class *priv_element_fc, +struct bt_field_class * +bt_field_class_static_array_create(struct bt_field_class *element_fc, uint64_t length) { - struct bt_field_class *element_fc = (void *) priv_element_fc; struct bt_field_class_static_array *array_fc = NULL; BT_ASSERT_PRE_NON_NULL(element_fc, "Element field class"); @@ -1056,27 +1023,20 @@ end: return (void *) array_fc; } -struct bt_field_class *bt_field_class_array_borrow_element_field_class( - struct bt_field_class *fc) +const struct bt_field_class * +bt_field_class_array_borrow_element_field_class_const( + const struct bt_field_class *fc) { - struct bt_field_class_array *array_fc = (void *) fc; + const struct bt_field_class_array *array_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_IS_ARRAY(fc, "Field class"); return array_fc->element_fc; } -struct bt_private_field_class * -bt_private_field_class_array_borrow_element_field_class( - struct bt_private_field_class *fc) +uint64_t bt_field_class_static_array_get_length(const struct bt_field_class *fc) { - return (void *) bt_field_class_array_borrow_element_field_class( - (void *) fc); -} - -uint64_t bt_field_class_static_array_get_length(struct bt_field_class *fc) -{ - struct bt_field_class_static_array *array_fc = (void *) fc; + const struct bt_field_class_static_array *array_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_STATIC_ARRAY, @@ -1099,10 +1059,9 @@ void destroy_dynamic_array_field_class(struct bt_object *obj) g_free(fc); } -struct bt_private_field_class *bt_private_field_class_dynamic_array_create( - struct bt_private_field_class *priv_element_fc) +struct bt_field_class *bt_field_class_dynamic_array_create( + struct bt_field_class *element_fc) { - struct bt_field_class *element_fc = (void *) priv_element_fc; struct bt_field_class_dynamic_array *array_fc = NULL; BT_ASSERT_PRE_NON_NULL(element_fc, "Element field class"); @@ -1113,7 +1072,8 @@ struct bt_private_field_class *bt_private_field_class_dynamic_array_create( goto error; } - init_array_field_class((void *) array_fc, BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, + init_array_field_class((void *) array_fc, + BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, destroy_dynamic_array_field_class, element_fc); BT_LIB_LOGD("Created dynamic array field class object: %!+F", array_fc); goto end; @@ -1125,12 +1085,10 @@ end: return (void *) array_fc; } -int bt_private_field_class_dynamic_array_set_length_field_class( - struct bt_private_field_class *priv_fc, - struct bt_private_field_class *priv_length_fc) +int bt_field_class_dynamic_array_set_length_field_class( + struct bt_field_class *fc, + struct bt_field_class *length_fc) { - struct bt_field_class *fc = (void *) priv_fc; - struct bt_field_class *length_fc = (void *) priv_length_fc; struct bt_field_class_dynamic_array *array_fc = (void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Dynamic array field class"); @@ -1139,16 +1097,17 @@ int bt_private_field_class_dynamic_array_set_length_field_class( "Field class"); BT_ASSERT_PRE_FC_IS_UNSIGNED_INT(length_fc, "Length field class"); BT_ASSERT_PRE_FC_HOT(fc, "Dynamic array field class"); - array_fc->length_fc = (void *) length_fc; + array_fc->length_fc = length_fc; bt_object_get_no_null_check(length_fc); bt_field_class_freeze(length_fc); return 0; } -struct bt_field_path *bt_field_class_dynamic_array_borrow_length_field_path( - struct bt_field_class *fc) +const struct bt_field_path * +bt_field_class_dynamic_array_borrow_length_field_path_const( + const struct bt_field_class *fc) { - struct bt_field_class_dynamic_array *seq_fc = (void *) fc; + const struct bt_field_class_dynamic_array *seq_fc = (const void *) fc; BT_ASSERT_PRE_NON_NULL(fc, "Field class"); BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY, @@ -1164,7 +1123,7 @@ void destroy_string_field_class(struct bt_object *obj) g_free(obj); } -struct bt_private_field_class *bt_private_field_class_string_create(void) +struct bt_field_class *bt_field_class_string_create(void) { struct bt_field_class_string *string_fc = NULL; @@ -1188,19 +1147,21 @@ end: } BT_HIDDEN -void _bt_field_class_freeze(struct bt_field_class *fc) +void _bt_field_class_freeze(const struct bt_field_class *fc) { /* * Element/member/option field classes are frozen when added to * their owner. */ BT_ASSERT(fc); - fc->frozen = true; + ((struct bt_field_class *) fc)->frozen = true; } BT_HIDDEN -void _bt_field_class_make_part_of_trace(struct bt_field_class *fc) +void _bt_field_class_make_part_of_trace(const struct bt_field_class *c_fc) { + struct bt_field_class *fc = (void *) c_fc; + BT_ASSERT(fc); BT_ASSERT_PRE(!fc->part_of_trace, "Field class is already part of a trace: %!+F", fc); diff --git a/lib/trace-ir/field-path.c b/lib/trace-ir/field-path.c index 48a03a86..1074e5ca 100644 --- a/lib/trace-ir/field-path.c +++ b/lib/trace-ir/field-path.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include @@ -78,20 +78,21 @@ end: return field_path; } -enum bt_scope bt_field_path_get_root_scope(struct bt_field_path *field_path) +enum bt_scope bt_field_path_get_root_scope( + const struct bt_field_path *field_path) { BT_ASSERT_PRE_NON_NULL(field_path, "Field path"); return field_path->root; } -uint64_t bt_field_path_get_index_count(struct bt_field_path *field_path) +uint64_t bt_field_path_get_index_count(const struct bt_field_path *field_path) { BT_ASSERT_PRE_NON_NULL(field_path, "Field path"); return (uint64_t) field_path->indexes->len; } -uint64_t bt_field_path_get_index_by_index(struct bt_field_path *field_path, - uint64_t index) +uint64_t bt_field_path_get_index_by_index( + const struct bt_field_path *field_path, uint64_t index) { BT_ASSERT_PRE_NON_NULL(field_path, "Field path"); BT_ASSERT_PRE_VALID_INDEX(index, field_path->indexes->len); diff --git a/lib/trace-ir/fields.c b/lib/trace-ir/fields.c index c769c8a0..519d65e5 100644 --- a/lib/trace-ir/fields.c +++ b/lib/trace-ir/fields.c @@ -26,8 +26,8 @@ #include #include -#include #include +#include #include #include #include @@ -63,16 +63,16 @@ static void set_variant_field_is_frozen(struct bt_field *field, bool is_frozen); static -bool single_field_is_set(struct bt_field *field); +bool single_field_is_set(const struct bt_field *field); static -bool array_field_is_set(struct bt_field *field); +bool array_field_is_set(const struct bt_field *field); static -bool structure_field_is_set(struct bt_field *field); +bool structure_field_is_set(const struct bt_field *field); static -bool variant_field_is_set(struct bt_field *field); +bool variant_field_is_set(const struct bt_field *field); static struct bt_field_methods integer_field_methods = { @@ -183,19 +183,20 @@ void (* const field_destroy_funcs[])(struct bt_field *) = { [BT_FIELD_CLASS_TYPE_VARIANT] = destroy_variant_field, }; -struct bt_field_class *bt_field_borrow_class(struct bt_field *field) +struct bt_field_class *bt_field_borrow_class(const struct bt_field *field) { BT_ASSERT_PRE_NON_NULL(field, "Field"); return field->class; } -struct bt_private_field_class *bt_private_field_borrow_class( - struct bt_private_field *field) +const struct bt_field_class *bt_field_borrow_class_const( + const struct bt_field *field) { - return (void *) bt_field_borrow_class((void *) field); + BT_ASSERT_PRE_NON_NULL(field, "Field"); + return field->class; } -enum bt_field_class_type bt_field_get_class_type(struct bt_field *field) +enum bt_field_class_type bt_field_get_class_type(const struct bt_field *field) { BT_ASSERT_PRE_NON_NULL(field, "Field"); return field->class->type; @@ -483,9 +484,9 @@ end: return (void *) array_field; } -int64_t bt_field_signed_integer_get_value(struct bt_field *field) +int64_t bt_field_signed_integer_get_value(const struct bt_field *field) { - struct bt_field_integer *int_field = (void *) field; + const struct bt_field_integer *int_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_SET(field, "Field"); @@ -493,10 +494,8 @@ int64_t bt_field_signed_integer_get_value(struct bt_field *field) return int_field->value.i; } -void bt_private_field_signed_integer_set_value( - struct bt_private_field *priv_field, int64_t value) +void bt_field_signed_integer_set_value(struct bt_field *field, int64_t value) { - struct bt_field *field = (void *) priv_field; struct bt_field_integer *int_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -510,9 +509,9 @@ void bt_private_field_signed_integer_set_value( bt_field_set_single(field, true); } -uint64_t bt_field_unsigned_integer_get_value(struct bt_field *field) +uint64_t bt_field_unsigned_integer_get_value(const struct bt_field *field) { - struct bt_field_integer *int_field = (void *) field; + const struct bt_field_integer *int_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_SET(field, "Field"); @@ -520,10 +519,8 @@ uint64_t bt_field_unsigned_integer_get_value(struct bt_field *field) return int_field->value.u; } -void bt_private_field_unsigned_integer_set_value( - struct bt_private_field *priv_field, uint64_t value) +void bt_field_unsigned_integer_set_value(struct bt_field *field, uint64_t value) { - struct bt_field *field = (void *) priv_field; struct bt_field_integer *int_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -537,9 +534,9 @@ void bt_private_field_unsigned_integer_set_value( bt_field_set_single(field, true); } -double bt_field_real_get_value(struct bt_field *field) +double bt_field_real_get_value(const struct bt_field *field) { - struct bt_field_real *real_field = (void *) field; + const struct bt_field_real *real_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_SET(field, "Field"); @@ -547,10 +544,8 @@ double bt_field_real_get_value(struct bt_field *field) return real_field->value; } -void bt_private_field_real_set_value(struct bt_private_field *priv_field, - double value) +void bt_field_real_set_value(struct bt_field *field, double value) { - struct bt_field *field = (void *) priv_field; struct bt_field_real *real_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -565,11 +560,12 @@ void bt_private_field_real_set_value(struct bt_private_field *priv_field, bt_field_set_single(field, true); } -int bt_field_unsigned_enumeration_get_mapping_labels(struct bt_field *field, +int bt_field_unsigned_enumeration_get_mapping_labels( + const struct bt_field *field, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count) { - struct bt_field_integer *int_field = (void *) field; + const struct bt_field_integer *int_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_NON_NULL(label_array, "Label array (output)"); @@ -581,11 +577,12 @@ int bt_field_unsigned_enumeration_get_mapping_labels(struct bt_field *field, field->class, int_field->value.u, label_array, count); } -int bt_field_signed_enumeration_get_mapping_labels(struct bt_field *field, +int bt_field_signed_enumeration_get_mapping_labels( + const struct bt_field *field, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count) { - struct bt_field_integer *int_field = (void *) field; + const struct bt_field_integer *int_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_NON_NULL(label_array, "Label array (output)"); @@ -597,9 +594,9 @@ int bt_field_signed_enumeration_get_mapping_labels(struct bt_field *field, field->class, int_field->value.i, label_array, count); } -const char *bt_field_string_get_value(struct bt_field *field) +const char *bt_field_string_get_value(const struct bt_field *field) { - struct bt_field_string *string_field = (void *) field; + const struct bt_field_string *string_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_SET(field, "Field"); @@ -608,9 +605,9 @@ const char *bt_field_string_get_value(struct bt_field *field) return (const char *) string_field->buf->data; } -uint64_t bt_field_string_get_length(struct bt_field *field) +uint64_t bt_field_string_get_length(const struct bt_field *field) { - struct bt_field_string *string_field = (void *) field; + const struct bt_field_string *string_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_SET(field, "Field"); @@ -619,33 +616,27 @@ uint64_t bt_field_string_get_length(struct bt_field *field) return string_field->length; } -int bt_private_field_string_set_value(struct bt_private_field *priv_field, - const char *value) +int bt_field_string_set_value(struct bt_field *field, const char *value) { - struct bt_field *field = (void *) priv_field; - BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_NON_NULL(value, "Value"); BT_ASSERT_PRE_FIELD_HOT(field, "Field"); BT_ASSERT_PRE_FIELD_HAS_CLASS_TYPE(field, BT_FIELD_CLASS_TYPE_STRING, "Field"); - bt_private_field_string_clear(priv_field); - return bt_private_field_string_append_with_length(priv_field, value, + bt_field_string_clear(field); + return bt_field_string_append_with_length(field, value, (uint64_t) strlen(value)); } -int bt_private_field_string_append(struct bt_private_field *field, - const char *value) +int bt_field_string_append(struct bt_field *field, const char *value) { - return bt_private_field_string_append_with_length(field, + return bt_field_string_append_with_length(field, value, (uint64_t) strlen(value)); } -int bt_private_field_string_append_with_length( - struct bt_private_field *priv_field, +int bt_field_string_append_with_length(struct bt_field *field, const char *value, uint64_t length) { - struct bt_field *field = (void *) priv_field; struct bt_field_string *string_field = (void *) field; char *data; uint64_t new_length; @@ -675,9 +666,8 @@ int bt_private_field_string_append_with_length( return 0; } -int bt_private_field_string_clear(struct bt_private_field *priv_field) +int bt_field_string_clear(struct bt_field *field) { - struct bt_field *field = (void *) priv_field; struct bt_field_string *string_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -689,20 +679,18 @@ int bt_private_field_string_clear(struct bt_private_field *priv_field) return 0; } -uint64_t bt_field_array_get_length(struct bt_field *field) +uint64_t bt_field_array_get_length(const struct bt_field *field) { - struct bt_field_array *array_field = (void *) field; + const struct bt_field_array *array_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_IS_ARRAY(field, "Field"); return array_field->length; } -int bt_private_field_dynamic_array_set_length( - struct bt_private_field *priv_field, uint64_t length) +int bt_field_dynamic_array_set_length(struct bt_field *field, uint64_t length) { int ret = 0; - struct bt_field *field = (void *) priv_field; struct bt_field_array *array_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -743,7 +731,8 @@ end: return ret; } -struct bt_field *bt_field_array_borrow_element_field_by_index( +static inline +struct bt_field *borrow_array_field_element_field_by_index( struct bt_field *field, uint64_t index) { struct bt_field_array *array_field = (void *) field; @@ -754,15 +743,21 @@ struct bt_field *bt_field_array_borrow_element_field_by_index( return array_field->fields->pdata[index]; } -struct bt_private_field * -bt_private_field_array_borrow_element_field_by_index( - struct bt_private_field *field, uint64_t index) +struct bt_field *bt_field_array_borrow_element_field_by_index( + struct bt_field *field, uint64_t index) { - return (void *) bt_field_array_borrow_element_field_by_index( - (void *) field, index); + return borrow_array_field_element_field_by_index(field, index); } -struct bt_field *bt_field_structure_borrow_member_field_by_index( +const struct bt_field * +bt_field_array_borrow_element_field_by_index_const( + const struct bt_field *field, uint64_t index) +{ + return borrow_array_field_element_field_by_index((void *) field, index); +} + +static inline +struct bt_field *borrow_structure_field_member_field_by_index( struct bt_field *field, uint64_t index) { struct bt_field_structure *struct_field = (void *) field; @@ -774,15 +769,23 @@ struct bt_field *bt_field_structure_borrow_member_field_by_index( return struct_field->fields->pdata[index]; } -struct bt_private_field * -bt_private_field_structure_borrow_member_field_by_index( - struct bt_private_field *field, uint64_t index) +struct bt_field *bt_field_structure_borrow_member_field_by_index( + struct bt_field *field, uint64_t index) +{ + return borrow_structure_field_member_field_by_index(field, + index); +} + +const struct bt_field * +bt_field_structure_borrow_member_field_by_index_const( + const struct bt_field *field, uint64_t index) { - return (void *) bt_field_structure_borrow_member_field_by_index( + return borrow_structure_field_member_field_by_index( (void *) field, index); } -struct bt_field *bt_field_structure_borrow_member_field_by_name( +static inline +struct bt_field *borrow_structure_field_member_field_by_name( struct bt_field *field, const char *name) { struct bt_field *ret_field = NULL; @@ -809,15 +812,21 @@ end: return ret_field; } -struct bt_private_field * -bt_private_field_structure_borrow_member_field_by_name( - struct bt_private_field *field, const char *name) +struct bt_field *bt_field_structure_borrow_member_field_by_name( + struct bt_field *field, const char *name) +{ + return borrow_structure_field_member_field_by_name(field, name); +} + +const struct bt_field *bt_field_structure_borrow_member_field_by_name_const( + const struct bt_field *field, const char *name) { - return (void *) bt_field_structure_borrow_member_field_by_name( + return borrow_structure_field_member_field_by_name( (void *) field, name); } -struct bt_field *bt_field_variant_borrow_selected_option_field( +static inline +struct bt_field *borrow_variant_field_selected_option_field( struct bt_field *field) { struct bt_field_variant *var_field = (void *) field; @@ -830,18 +839,21 @@ struct bt_field *bt_field_variant_borrow_selected_option_field( return var_field->selected_field; } -struct bt_private_field * -bt_private_field_variant_borrow_selected_option_field( - struct bt_private_field *field) +struct bt_field *bt_field_variant_borrow_selected_option_field( + struct bt_field *field) +{ + return borrow_variant_field_selected_option_field(field); +} + +const struct bt_field *bt_field_variant_borrow_selected_option_field_const( + const struct bt_field *field) { - return (void *) bt_field_variant_borrow_selected_option_field( - (void *) field); + return borrow_variant_field_selected_option_field((void *) field); } -int bt_private_field_variant_select_option_field( - struct bt_private_field *priv_field, uint64_t index) +int bt_field_variant_select_option_field( + struct bt_field *field, uint64_t index) { - struct bt_field *field = (void *) priv_field; struct bt_field_variant *var_field = (void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); @@ -855,9 +867,9 @@ int bt_private_field_variant_select_option_field( } uint64_t bt_field_variant_get_selected_option_field_index( - struct bt_field *field) + const struct bt_field *field) { - struct bt_field_variant *var_field = (void *) field; + const struct bt_field_variant *var_field = (const void *) field; BT_ASSERT_PRE_NON_NULL(field, "Field"); BT_ASSERT_PRE_FIELD_HAS_CLASS_TYPE(field, @@ -1085,29 +1097,29 @@ void set_array_field_is_frozen(struct bt_field *field, bool is_frozen) } BT_HIDDEN -void _bt_field_set_is_frozen(struct bt_field *field, +void _bt_field_set_is_frozen(const struct bt_field *field, bool is_frozen) { BT_ASSERT(field); BT_LIB_LOGD("Setting field object's frozen state: %!+f, is-frozen=%d", field, is_frozen); BT_ASSERT(field->methods->set_is_frozen); - field->methods->set_is_frozen(field, is_frozen); + field->methods->set_is_frozen((void *) field, is_frozen); } static -bool single_field_is_set(struct bt_field *field) +bool single_field_is_set(const struct bt_field *field) { BT_ASSERT(field); return field->is_set; } static -bool structure_field_is_set(struct bt_field *field) +bool structure_field_is_set(const struct bt_field *field) { bool is_set = true; uint64_t i; - struct bt_field_structure *struct_field = (void *) field; + const struct bt_field_structure *struct_field = (const void *) field; BT_ASSERT(field); @@ -1123,9 +1135,9 @@ end: } static -bool variant_field_is_set(struct bt_field *field) +bool variant_field_is_set(const struct bt_field *field) { - struct bt_field_variant *var_field = (void *) field; + const struct bt_field_variant *var_field = (const void *) field; bool is_set = false; BT_ASSERT(field); @@ -1138,11 +1150,11 @@ bool variant_field_is_set(struct bt_field *field) } static -bool array_field_is_set(struct bt_field *field) +bool array_field_is_set(const struct bt_field *field) { bool is_set = true; uint64_t i; - struct bt_field_array *array_field = (void *) field; + const struct bt_field_array *array_field = (const void *) field; BT_ASSERT(field); diff --git a/lib/trace-ir/packet-context-field.c b/lib/trace-ir/packet-context-field.c index b71c6de4..e8c577e8 100644 --- a/lib/trace-ir/packet-context-field.c +++ b/lib/trace-ir/packet-context-field.c @@ -24,14 +24,14 @@ #include #include +#include #include -#include #include #include #include -struct bt_private_field *bt_private_packet_context_field_borrow_field( - struct bt_private_packet_context_field *context_field) +struct bt_field *bt_packet_context_field_borrow_field( + struct bt_packet_context_field *context_field) { struct bt_field_wrapper *field_wrapper = (void *) context_field; @@ -39,8 +39,8 @@ struct bt_private_field *bt_private_packet_context_field_borrow_field( return (void *) field_wrapper->field; } -void bt_private_packet_context_field_release( - struct bt_private_packet_context_field *context_field) +void bt_packet_context_field_release( + struct bt_packet_context_field *context_field) { struct bt_field_wrapper *field_wrapper = (void *) context_field; @@ -56,8 +56,8 @@ void bt_private_packet_context_field_release( bt_field_wrapper_destroy(field_wrapper); } -struct bt_private_packet_context_field *bt_private_packet_context_field_create( - struct bt_private_stream_class *priv_stream_class) +struct bt_packet_context_field *bt_packet_context_field_create( + struct bt_stream_class *priv_stream_class) { struct bt_stream_class *stream_class = (void *) priv_stream_class; struct bt_field_wrapper *field_wrapper; diff --git a/lib/trace-ir/packet-header-field.c b/lib/trace-ir/packet-header-field.c index b381100c..cec6936e 100644 --- a/lib/trace-ir/packet-header-field.c +++ b/lib/trace-ir/packet-header-field.c @@ -24,14 +24,14 @@ #include #include +#include #include -#include #include #include #include -struct bt_private_field *bt_private_packet_header_field_borrow_field( - struct bt_private_packet_header_field *header_field) +struct bt_field *bt_packet_header_field_borrow_field( + struct bt_packet_header_field *header_field) { struct bt_field_wrapper *field_wrapper = (void *) header_field; @@ -39,8 +39,8 @@ struct bt_private_field *bt_private_packet_header_field_borrow_field( return (void *) field_wrapper->field; } -void bt_private_packet_header_field_release( - struct bt_private_packet_header_field *header_field) +void bt_packet_header_field_release( + struct bt_packet_header_field *header_field) { struct bt_field_wrapper *field_wrapper = (void *) header_field; @@ -56,8 +56,8 @@ void bt_private_packet_header_field_release( bt_field_wrapper_destroy(field_wrapper); } -struct bt_private_packet_header_field *bt_private_packet_header_field_create( - struct bt_private_trace *priv_trace) +struct bt_packet_header_field *bt_packet_header_field_create( + struct bt_trace *priv_trace) { struct bt_field_wrapper *field_wrapper; struct bt_trace *trace = (void *) priv_trace; diff --git a/lib/trace-ir/packet.c b/lib/trace-ir/packet.c index 52f462a4..d71c62ed 100644 --- a/lib/trace-ir/packet.c +++ b/lib/trace-ir/packet.c @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include #include @@ -50,10 +50,10 @@ struct bt_stream *bt_packet_borrow_stream(struct bt_packet *packet) return packet->stream; } -struct bt_private_stream *bt_private_packet_borrow_stream( - struct bt_private_packet *packet) +const struct bt_stream *bt_packet_borrow_stream_const( + const struct bt_packet *packet) { - return (void *) bt_packet_borrow_stream((void *) packet); + return bt_packet_borrow_stream((void *) packet); } struct bt_field *bt_packet_borrow_header_field(struct bt_packet *packet) @@ -62,10 +62,10 @@ struct bt_field *bt_packet_borrow_header_field(struct bt_packet *packet) return packet->header_field ? packet->header_field->field : NULL; } -struct bt_private_field *bt_private_packet_borrow_header_field( - struct bt_private_packet *packet) +const struct bt_field *bt_packet_borrow_header_field_const( + const struct bt_packet *packet) { - return (void *) bt_packet_borrow_header_field((void *) packet); + return bt_packet_borrow_header_field((void *) packet); } struct bt_field *bt_packet_borrow_context_field(struct bt_packet *packet) @@ -74,14 +74,14 @@ struct bt_field *bt_packet_borrow_context_field(struct bt_packet *packet) return packet->context_field ? packet->context_field->field : NULL; } -struct bt_private_field *bt_private_packet_borrow_context_field( - struct bt_private_packet *packet) +const struct bt_field *bt_packet_borrow_context_field_const( + const struct bt_packet *packet) { - return (void *) bt_packet_borrow_context_field((void *) packet); + return bt_packet_borrow_context_field((void *) packet); } BT_HIDDEN -void _bt_packet_set_is_frozen(struct bt_packet *packet, bool is_frozen) +void _bt_packet_set_is_frozen(const struct bt_packet *packet, bool is_frozen) { if (!packet) { return; @@ -102,7 +102,7 @@ void _bt_packet_set_is_frozen(struct bt_packet *packet, bool is_frozen) is_frozen); } - packet->frozen = is_frozen; + ((struct bt_packet *) packet)->frozen = is_frozen; } static inline @@ -325,10 +325,8 @@ end: return packet; } -struct bt_private_packet *bt_private_packet_create( - struct bt_private_stream *priv_stream) +struct bt_packet *bt_packet_create(struct bt_stream *stream) { - struct bt_stream *stream = (void *) priv_stream; struct bt_packet *packet = NULL; BT_ASSERT_PRE_NON_NULL(stream, "Stream"); @@ -349,11 +347,9 @@ end: return (void *) packet; } -int bt_private_packet_move_header_field( - struct bt_private_packet *priv_packet, - struct bt_private_packet_header_field *header_field) +int bt_packet_move_header_field(struct bt_packet *packet, + struct bt_packet_header_field *header_field) { - struct bt_packet *packet = (void *) priv_packet; struct bt_trace *trace; struct bt_field_wrapper *field_wrapper = (void *) header_field; @@ -379,11 +375,9 @@ int bt_private_packet_move_header_field( return 0; } -int bt_private_packet_move_context_field( - struct bt_private_packet *priv_packet, - struct bt_private_packet_context_field *context_field) +int bt_packet_move_context_field(struct bt_packet *packet, + struct bt_packet_context_field *context_field) { - struct bt_packet *packet = (void *) priv_packet; struct bt_stream_class *stream_class; struct bt_field_wrapper *field_wrapper = (void *) context_field; @@ -409,11 +403,9 @@ int bt_private_packet_move_context_field( return 0; } -void bt_private_packet_set_default_beginning_clock_value( - struct bt_private_packet *priv_packet, +void bt_packet_set_default_beginning_clock_value(struct bt_packet *packet, uint64_t value_cycles) { - struct bt_packet *packet = (void *) priv_packet; struct bt_stream_class *sc; BT_ASSERT_PRE_NON_NULL(packet, "Packet"); @@ -435,7 +427,8 @@ void bt_private_packet_set_default_beginning_clock_value( } enum bt_clock_value_status bt_packet_borrow_default_beginning_clock_value( - struct bt_packet *packet, struct bt_clock_value **clock_value) + const struct bt_packet *packet, + const struct bt_clock_value **clock_value) { BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_NON_NULL(clock_value, "Clock value (output)"); @@ -443,11 +436,9 @@ enum bt_clock_value_status bt_packet_borrow_default_beginning_clock_value( return BT_CLOCK_VALUE_STATUS_KNOWN; } -void bt_private_packet_set_default_end_clock_value( - struct bt_private_packet *priv_packet, +void bt_packet_set_default_end_clock_value(struct bt_packet *packet, uint64_t value_cycles) { - struct bt_packet *packet = (void *) priv_packet; struct bt_stream_class *sc; BT_ASSERT_PRE_NON_NULL(packet, "Packet"); @@ -468,7 +459,8 @@ void bt_private_packet_set_default_end_clock_value( } enum bt_clock_value_status bt_packet_borrow_default_end_clock_value( - struct bt_packet *packet, struct bt_clock_value **clock_value) + const struct bt_packet *packet, + const struct bt_clock_value **clock_value) { BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_NON_NULL(clock_value, "Clock value (output)"); @@ -477,7 +469,7 @@ enum bt_clock_value_status bt_packet_borrow_default_end_clock_value( } enum bt_property_availability bt_packet_get_discarded_event_counter_snapshot( - struct bt_packet *packet, uint64_t *value) + const struct bt_packet *packet, uint64_t *value) { BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_NON_NULL(value, "Value (output)"); @@ -485,11 +477,9 @@ enum bt_property_availability bt_packet_get_discarded_event_counter_snapshot( return packet->discarded_event_counter_snapshot.base.avail; } -void bt_private_packet_set_discarded_event_counter_snapshot( - struct bt_private_packet *priv_packet, uint64_t value) +void bt_packet_set_discarded_event_counter_snapshot(struct bt_packet *packet, + uint64_t value) { - struct bt_packet *packet = (void *) priv_packet; - BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_PACKET_HOT(packet); BT_ASSERT_PRE(packet->stream->class->packets_have_discarded_event_counter_snapshot, @@ -499,7 +489,7 @@ void bt_private_packet_set_discarded_event_counter_snapshot( } enum bt_property_availability bt_packet_get_packet_counter_snapshot( - struct bt_packet *packet, uint64_t *value) + const struct bt_packet *packet, uint64_t *value) { BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_NON_NULL(value, "Value (output)"); @@ -507,11 +497,9 @@ enum bt_property_availability bt_packet_get_packet_counter_snapshot( return packet->packet_counter_snapshot.base.avail; } -void bt_private_packet_set_packet_counter_snapshot( - struct bt_private_packet *priv_packet, uint64_t value) +void bt_packet_set_packet_counter_snapshot(struct bt_packet *packet, + uint64_t value) { - struct bt_packet *packet = (void *) priv_packet; - BT_ASSERT_PRE_NON_NULL(packet, "Packet"); BT_ASSERT_PRE_PACKET_HOT(packet); BT_ASSERT_PRE(packet->stream->class->packets_have_packet_counter_snapshot, diff --git a/lib/trace-ir/resolve-field-path.c b/lib/trace-ir/resolve-field-path.c index 1b690be7..fc4727bf 100644 --- a/lib/trace-ir/resolve-field-path.c +++ b/lib/trace-ir/resolve-field-path.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/lib/trace-ir/stream-class.c b/lib/trace-ir/stream-class.c index 6b33bca6..3d8d9c37 100644 --- a/lib/trace-ir/stream-class.c +++ b/lib/trace-ir/stream-class.c @@ -31,7 +31,7 @@ #include #include #include -#include +#include #include #include #include @@ -90,13 +90,13 @@ void free_field_wrapper(struct bt_field_wrapper *field_wrapper, BT_ASSERT_PRE_FUNC static -bool stream_class_id_is_unique(struct bt_trace *trace, uint64_t id) +bool stream_class_id_is_unique(const struct bt_trace *trace, uint64_t id) { uint64_t i; bool is_unique = true; for (i = 0; i < trace->stream_classes->len; i++) { - struct bt_stream_class *sc = + const struct bt_stream_class *sc = trace->stream_classes->pdata[i]; if (sc->id == id) { @@ -181,55 +181,49 @@ end: return stream_class; } -struct bt_private_stream_class *bt_private_stream_class_create( - struct bt_private_trace *priv_trace) +struct bt_stream_class *bt_stream_class_create(struct bt_trace *trace) { - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE(trace->assigns_automatic_stream_class_id, "Trace does not automatically assigns stream class IDs: " "%![sc-]+t", trace); - return (void *) create_stream_class_with_id(trace, + return create_stream_class_with_id(trace, (uint64_t) trace->stream_classes->len); } -struct bt_private_stream_class *bt_private_stream_class_create_with_id( - struct bt_private_trace *priv_trace, uint64_t id) +struct bt_stream_class *bt_stream_class_create_with_id( + struct bt_trace *trace, uint64_t id) { - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE(!trace->assigns_automatic_stream_class_id, "Trace automatically assigns stream class IDs: " "%![sc-]+t", trace); - return (void *) create_stream_class_with_id(trace, id); + return create_stream_class_with_id(trace, id); } -struct bt_trace *bt_stream_class_borrow_trace(struct bt_stream_class *stream_class) +struct bt_trace *bt_stream_class_borrow_trace( + struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return bt_stream_class_borrow_trace_inline(stream_class); } -struct bt_private_trace *bt_private_stream_class_borrow_trace( - struct bt_private_stream_class *stream_class) +const struct bt_trace *bt_stream_class_borrow_trace_const( + const struct bt_stream_class *stream_class) { - return (void *) bt_stream_class_borrow_trace((void *) stream_class); + return bt_stream_class_borrow_trace((void *) stream_class); } -const char *bt_stream_class_get_name(struct bt_stream_class *stream_class) +const char *bt_stream_class_get_name(const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return stream_class->name.value; } -int bt_private_stream_class_set_name( - struct bt_private_stream_class *priv_stream_class, +int bt_stream_class_set_name( + struct bt_stream_class *stream_class, const char *name) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); @@ -239,14 +233,14 @@ int bt_private_stream_class_set_name( return 0; } -uint64_t bt_stream_class_get_id(struct bt_stream_class *stream_class) +uint64_t bt_stream_class_get_id(const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return stream_class->id; } uint64_t bt_stream_class_get_event_class_count( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (uint64_t) stream_class->event_classes->len; @@ -260,11 +254,11 @@ struct bt_event_class *bt_stream_class_borrow_event_class_by_index( return g_ptr_array_index(stream_class->event_classes, index); } -struct bt_private_event_class * -bt_private_stream_class_borrow_event_class_by_index( - struct bt_private_stream_class *stream_class, uint64_t index) +const struct bt_event_class * +bt_stream_class_borrow_event_class_by_index_const( + const struct bt_stream_class *stream_class, uint64_t index) { - return (void *) bt_stream_class_borrow_event_class_by_index( + return bt_stream_class_borrow_event_class_by_index( (void *) stream_class, index); } @@ -290,36 +284,27 @@ end: return event_class; } -struct bt_private_event_class * -bt_private_stream_class_borrow_event_class_by_id( - struct bt_private_stream_class *stream_class, uint64_t id) +const struct bt_event_class * +bt_stream_class_borrow_event_class_by_id_const( + const struct bt_stream_class *stream_class, uint64_t id) { - return (void *) bt_stream_class_borrow_event_class_by_id( + return bt_stream_class_borrow_event_class_by_id( (void *) stream_class, id); } -struct bt_field_class *bt_stream_class_borrow_packet_context_field_class( - struct bt_stream_class *stream_class) +const struct bt_field_class * +bt_stream_class_borrow_packet_context_field_class_const( + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return stream_class->packet_context_fc; } -struct bt_private_field_class * -bt_private_stream_class_borrow_packet_context_field_class( - struct bt_private_stream_class *stream_class) -{ - return (void *) bt_stream_class_borrow_packet_context_field_class( - (void *) stream_class); -} - -int bt_private_stream_class_set_packet_context_field_class( - struct bt_private_stream_class *priv_stream_class, - struct bt_private_field_class *priv_field_class) +int bt_stream_class_set_packet_context_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class) { int ret; - struct bt_stream_class *stream_class = (void *) priv_stream_class; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_resolve_field_path_context resolve_ctx = { .packet_header = NULL, .packet_context = field_class, @@ -355,28 +340,18 @@ end: return ret; } -struct bt_field_class *bt_stream_class_borrow_event_header_field_class( - struct bt_stream_class *stream_class) +const struct bt_field_class *bt_stream_class_borrow_event_header_field_class_const( + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return stream_class->event_header_fc; } -struct bt_private_field_class * -bt_private_stream_class_borrow_event_header_field_class( - struct bt_private_stream_class *stream_class) -{ - return (void *) bt_stream_class_borrow_event_header_field_class( - (void *) stream_class); -} - -int bt_private_stream_class_set_event_header_field_class( - struct bt_private_stream_class *priv_stream_class, - struct bt_private_field_class *priv_field_class) +int bt_stream_class_set_event_header_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class) { int ret; - struct bt_stream_class *stream_class = (void *) priv_stream_class; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_resolve_field_path_context resolve_ctx = { .packet_header = NULL, .packet_context = NULL, @@ -413,28 +388,19 @@ end: return ret; } -struct bt_field_class *bt_stream_class_borrow_event_common_context_field_class( - struct bt_stream_class *stream_class) +const struct bt_field_class * +bt_stream_class_borrow_event_common_context_field_class_const( + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return stream_class->event_common_context_fc; } -struct bt_private_field_class * -bt_private_stream_class_borrow_event_common_context_field_class( - struct bt_private_stream_class *stream_class) -{ - return (void *) bt_stream_class_borrow_event_common_context_field_class( - (void *) stream_class); -} - -int bt_private_stream_class_set_event_common_context_field_class( - struct bt_private_stream_class *priv_stream_class, - struct bt_private_field_class *priv_field_class) +int bt_stream_class_set_event_common_context_field_class( + struct bt_stream_class *stream_class, + struct bt_field_class *field_class) { int ret; - struct bt_stream_class *stream_class = (void *) priv_stream_class; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_resolve_field_path_context resolve_ctx = { .packet_header = NULL, .packet_context = NULL, @@ -473,20 +439,18 @@ end: } BT_HIDDEN -void _bt_stream_class_freeze(struct bt_stream_class *stream_class) +void _bt_stream_class_freeze(const struct bt_stream_class *stream_class) { /* The field classes and default clock class are already frozen */ BT_ASSERT(stream_class); BT_LIB_LOGD("Freezing stream class: %!+S", stream_class); - stream_class->frozen = true; + ((struct bt_stream_class *) stream_class)->frozen = true; } -int bt_private_stream_class_set_default_clock_class( - struct bt_private_stream_class *priv_stream_class, +int bt_stream_class_set_default_clock_class( + struct bt_stream_class *stream_class, struct bt_clock_class *clock_class) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_NON_NULL(clock_class, "Clock class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); @@ -506,19 +470,24 @@ struct bt_clock_class *bt_stream_class_borrow_default_clock_class( return stream_class->default_clock_class; } +const struct bt_clock_class *bt_stream_class_borrow_default_clock_class_const( + const struct bt_stream_class *stream_class) +{ + BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); + return stream_class->default_clock_class; +} + bt_bool bt_stream_class_assigns_automatic_event_class_id( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->assigns_automatic_event_class_id; } -void bt_private_stream_class_set_assigns_automatic_event_class_id( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_assigns_automatic_event_class_id( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); stream_class->assigns_automatic_event_class_id = (bool) value; @@ -527,18 +496,16 @@ void bt_private_stream_class_set_assigns_automatic_event_class_id( } bt_bool bt_stream_class_assigns_automatic_stream_id( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->assigns_automatic_stream_id; } -void bt_private_stream_class_set_assigns_automatic_stream_id( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_assigns_automatic_stream_id( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); stream_class->assigns_automatic_stream_id = (bool) value; @@ -547,18 +514,16 @@ void bt_private_stream_class_set_assigns_automatic_stream_id( } bt_bool bt_stream_class_packets_have_discarded_event_counter_snapshot( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->packets_have_discarded_event_counter_snapshot; } -void bt_private_stream_class_set_packets_have_discarded_event_counter_snapshot( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_packets_have_discarded_event_counter_snapshot( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); stream_class->packets_have_discarded_event_counter_snapshot = @@ -569,18 +534,16 @@ void bt_private_stream_class_set_packets_have_discarded_event_counter_snapshot( } bt_bool bt_stream_class_packets_have_packet_counter_snapshot( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->packets_have_packet_counter_snapshot; } -void bt_private_stream_class_set_packets_have_packet_counter_snapshot( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_packets_have_packet_counter_snapshot( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); stream_class->packets_have_packet_counter_snapshot = @@ -591,18 +554,16 @@ void bt_private_stream_class_set_packets_have_packet_counter_snapshot( } bt_bool bt_stream_class_packets_have_default_beginning_clock_value( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->packets_have_default_beginning_cv; } -void bt_private_stream_class_set_packets_have_default_beginning_clock_value( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_packets_have_default_beginning_clock_value( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); BT_ASSERT_PRE(!value || stream_class->default_clock_class, @@ -615,18 +576,16 @@ void bt_private_stream_class_set_packets_have_default_beginning_clock_value( } bt_bool bt_stream_class_packets_have_default_end_clock_value( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); return (bt_bool) stream_class->packets_have_default_end_cv; } -void bt_private_stream_class_set_packets_have_default_end_clock_value( - struct bt_private_stream_class *priv_stream_class, +void bt_stream_class_set_packets_have_default_end_clock_value( + struct bt_stream_class *stream_class, bt_bool value) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); BT_ASSERT_PRE_STREAM_CLASS_HOT(stream_class); BT_ASSERT_PRE(!value || stream_class->default_clock_class, @@ -639,7 +598,7 @@ void bt_private_stream_class_set_packets_have_default_end_clock_value( } bt_bool bt_stream_class_default_clock_is_always_known( - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { /* BT_CLOCK_VALUE_STATUS_UNKNOWN is not supported as of 2.0 */ return BT_TRUE; diff --git a/lib/trace-ir/stream.c b/lib/trace-ir/stream.c index c90728da..c1352400 100644 --- a/lib/trace-ir/stream.c +++ b/lib/trace-ir/stream.c @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include #include @@ -145,10 +145,8 @@ end: return stream; } -struct bt_private_stream *bt_private_stream_create( - struct bt_private_stream_class *priv_stream_class) +struct bt_stream *bt_stream_create(struct bt_stream_class *stream_class) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; uint64_t id; BT_ASSERT_PRE_NON_NULL(stream_class, "Stream class"); @@ -158,19 +156,16 @@ struct bt_private_stream *bt_private_stream_create( id = bt_trace_get_automatic_stream_id( bt_stream_class_borrow_trace_inline(stream_class), stream_class); - return (void *) create_stream_with_id(stream_class, id); + return create_stream_with_id(stream_class, id); } -struct bt_private_stream *bt_private_stream_create_with_id( - struct bt_private_stream_class *priv_stream_class, +struct bt_stream *bt_stream_create_with_id(struct bt_stream_class *stream_class, uint64_t id) { - struct bt_stream_class *stream_class = (void *) priv_stream_class; - BT_ASSERT_PRE(!stream_class->assigns_automatic_stream_id, "Stream class automatically assigns stream IDs: " "%![sc-]+S", stream_class); - return (void *) create_stream_with_id(stream_class, id); + return create_stream_with_id(stream_class, id); } struct bt_stream_class *bt_stream_borrow_class(struct bt_stream *stream) @@ -179,23 +174,20 @@ struct bt_stream_class *bt_stream_borrow_class(struct bt_stream *stream) return stream->class; } -struct bt_private_stream_class *bt_private_stream_borrow_class( - struct bt_private_stream *priv_stream) +const struct bt_stream_class *bt_stream_borrow_class_const( + const struct bt_stream *stream) { - return (void *) bt_stream_borrow_class((void *) priv_stream); + return bt_stream_borrow_class((void *) stream); } -const char *bt_stream_get_name(struct bt_stream *stream) +const char *bt_stream_get_name(const struct bt_stream *stream) { BT_ASSERT_PRE_NON_NULL(stream, "Stream class"); return stream->name.value; } -int bt_private_stream_set_name(struct bt_private_stream *priv_stream, - const char *name) +int bt_stream_set_name(struct bt_stream *stream, const char *name) { - struct bt_stream *stream = (void *) priv_stream; - BT_ASSERT_PRE_NON_NULL(stream, "Clock class"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_STREAM_HOT(stream); @@ -205,17 +197,17 @@ int bt_private_stream_set_name(struct bt_private_stream *priv_stream, return 0; } -uint64_t bt_stream_get_id(struct bt_stream *stream) +uint64_t bt_stream_get_id(const struct bt_stream *stream) { BT_ASSERT_PRE_NON_NULL(stream, "Stream class"); return stream->id; } BT_HIDDEN -void _bt_stream_freeze(struct bt_stream *stream) +void _bt_stream_freeze(const struct bt_stream *stream) { /* The field classes and default clock class are already frozen */ BT_ASSERT(stream); BT_LIB_LOGD("Freezing stream: %!+s", stream); - stream->frozen = true; + ((struct bt_stream *) stream)->frozen = true; } diff --git a/lib/trace-ir/trace.c b/lib/trace-ir/trace.c index d2b58899..5fe179d7 100644 --- a/lib/trace-ir/trace.c +++ b/lib/trace-ir/trace.c @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include #include @@ -56,8 +56,8 @@ #include struct bt_trace_is_static_listener_elem { - bt_private_trace_is_static_listener func; - bt_private_trace_listener_removed removed; + bt_trace_is_static_listener_func func; + bt_trace_listener_removed_func removed; void *data; }; @@ -136,7 +136,7 @@ void free_packet_header_field(struct bt_field_wrapper *field_wrapper, bt_field_wrapper_destroy(field_wrapper); } -struct bt_private_trace *bt_private_trace_create(void) +struct bt_trace *bt_trace_create(void) { struct bt_trace *trace = NULL; int ret; @@ -210,17 +210,14 @@ end: return (void *) trace; } -const char *bt_trace_get_name(struct bt_trace *trace) +const char *bt_trace_get_name(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return trace->name.value; } -int bt_private_trace_set_name(struct bt_private_trace *priv_trace, - const char *name) +int bt_trace_set_name(struct bt_trace *trace, const char *name) { - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_TRACE_HOT(trace); @@ -230,17 +227,14 @@ int bt_private_trace_set_name(struct bt_private_trace *priv_trace, return 0; } -bt_uuid bt_trace_get_uuid(struct bt_trace *trace) +bt_uuid bt_trace_get_uuid(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return trace->uuid.value; } -void bt_private_trace_set_uuid(struct bt_private_trace *priv_trace, - bt_uuid uuid) +void bt_trace_set_uuid(struct bt_trace *trace, bt_uuid uuid) { - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_NON_NULL(uuid, "UUID"); BT_ASSERT_PRE_TRACE_HOT(trace); @@ -251,7 +245,7 @@ void bt_private_trace_set_uuid(struct bt_private_trace *priv_trace, BT_ASSERT_FUNC static -bool trace_has_environment_entry(struct bt_trace *trace, const char *name) +bool trace_has_environment_entry(const struct bt_trace *trace, const char *name) { BT_ASSERT(trace); @@ -286,14 +280,12 @@ int set_environment_entry(struct bt_trace *trace, const char *name, return ret; } -int bt_private_trace_set_environment_entry_string( - struct bt_private_trace *priv_trace, +int bt_trace_set_environment_entry_string( + struct bt_trace *trace, const char *name, const char *value) { int ret; struct bt_value *value_obj; - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_NON_NULL(name, "Name"); BT_ASSERT_PRE_NON_NULL(value, "Value"); @@ -312,14 +304,11 @@ end: return ret; } -int bt_private_trace_set_environment_entry_integer( - struct bt_private_trace *priv_trace, +int bt_trace_set_environment_entry_integer(struct bt_trace *trace, const char *name, int64_t value) { int ret; struct bt_value *value_obj; - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_NON_NULL(name, "Name"); value_obj = bt_value_integer_create_init(value); @@ -337,7 +326,7 @@ end: return ret; } -uint64_t bt_trace_get_environment_entry_count(struct bt_trace *trace) +uint64_t bt_trace_get_environment_entry_count(const struct bt_trace *trace) { int64_t ret; @@ -347,8 +336,8 @@ uint64_t bt_trace_get_environment_entry_count(struct bt_trace *trace) return (uint64_t) ret; } -void bt_trace_borrow_environment_entry_by_index( - struct bt_trace *trace, uint64_t index, +void bt_trace_borrow_environment_entry_by_index_const( + const struct bt_trace *trace, uint64_t index, const char **name, const struct bt_value **value) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); @@ -362,16 +351,8 @@ void bt_trace_borrow_environment_entry_by_index( BT_ASSERT(*name); } -void bt_private_trace_borrow_environment_entry_by_index( - struct bt_private_trace *trace, uint64_t index, - const char **name, const struct bt_value **value) -{ - bt_trace_borrow_environment_entry_by_index((void *) trace, - index, name, (void *) value); -} - -const struct bt_value *bt_trace_borrow_environment_entry_value_by_name( - struct bt_trace *trace, const char *name) +const struct bt_value *bt_trace_borrow_environment_entry_value_by_name_const( + const struct bt_trace *trace, const char *name) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_NON_NULL(name, "Name"); @@ -379,15 +360,7 @@ const struct bt_value *bt_trace_borrow_environment_entry_value_by_name( name); } -const struct bt_value * -bt_private_trace_borrow_environment_entry_value_by_name( - struct bt_private_trace *trace, const char *name) -{ - return (void *) bt_trace_borrow_environment_entry_value_by_name( - (void *) trace, name); -} - -uint64_t bt_trace_get_stream_count(struct bt_trace *trace) +uint64_t bt_trace_get_stream_count(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return (uint64_t) trace->streams->len; @@ -401,14 +374,14 @@ struct bt_stream *bt_trace_borrow_stream_by_index( return g_ptr_array_index(trace->streams, index); } -struct bt_private_stream *bt_private_trace_borrow_stream_by_index( - struct bt_private_trace *trace, uint64_t index) +const struct bt_stream *bt_trace_borrow_stream_by_index_const( + const struct bt_trace *trace, uint64_t index) { - return (void *) bt_trace_borrow_stream_by_index((void *) trace, index); + return bt_trace_borrow_stream_by_index((void *) trace, index); } -struct bt_stream *bt_trace_borrow_stream_by_id( - struct bt_trace *trace, uint64_t id) +struct bt_stream *bt_trace_borrow_stream_by_id(struct bt_trace *trace, + uint64_t id) { struct bt_stream *stream = NULL; uint64_t i; @@ -429,13 +402,13 @@ end: return stream; } -struct bt_private_stream *bt_private_trace_borrow_private_stream_by_id( - struct bt_private_trace *trace, uint64_t id) +const struct bt_stream *bt_trace_borrow_stream_by_id_const( + const struct bt_trace *trace, uint64_t id) { - return (void *) bt_trace_borrow_stream_by_id((void *) trace, id); + return bt_trace_borrow_stream_by_id((void *) trace, id); } -uint64_t bt_trace_get_stream_class_count(struct bt_trace *trace) +uint64_t bt_trace_get_stream_class_count(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return (uint64_t) trace->stream_classes->len; @@ -449,11 +422,11 @@ struct bt_stream_class *bt_trace_borrow_stream_class_by_index( return g_ptr_array_index(trace->stream_classes, index); } -struct bt_private_stream_class * -bt_private_trace_borrow_stream_class_by_index( - struct bt_private_trace *trace, uint64_t index) +const struct bt_stream_class * +bt_trace_borrow_stream_class_by_index_const( + const struct bt_trace *trace, uint64_t index) { - return (void *) bt_trace_borrow_stream_class_by_index( + return bt_trace_borrow_stream_class_by_index( (void *) trace, index); } @@ -479,27 +452,25 @@ end: return stream_class; } -struct bt_private_stream_class * -bt_private_trace_borrow_stream_class_by_id( - struct bt_private_trace *trace, uint64_t id) +const struct bt_stream_class * +bt_trace_borrow_stream_class_by_id_const( + const struct bt_trace *trace, uint64_t id) { - return (void *) bt_trace_borrow_stream_class_by_id((void *) trace, id); + return bt_trace_borrow_stream_class_by_id((void *) trace, id); } -struct bt_field_class *bt_trace_borrow_packet_header_field_class( - struct bt_trace *trace) +const struct bt_field_class *bt_trace_borrow_packet_header_field_class_const( + const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return trace->packet_header_fc; } -int bt_private_trace_set_packet_header_field_class( - struct bt_private_trace *priv_trace, - struct bt_private_field_class *priv_field_class) +int bt_trace_set_packet_header_field_class( + struct bt_trace *trace, + struct bt_field_class *field_class) { int ret; - struct bt_trace *trace = (void *) priv_trace; - struct bt_field_class *field_class = (void *) priv_field_class; struct bt_resolve_field_path_context resolve_ctx = { .packet_header = field_class, .packet_context = NULL, @@ -532,16 +503,14 @@ end: return ret; } -bt_bool bt_trace_is_static(struct bt_trace *trace) +bt_bool bt_trace_is_static(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return (bt_bool) trace->is_static; } -int bt_private_trace_make_static(struct bt_private_trace *priv_trace) -{ - struct bt_trace *trace = (void *) priv_trace; - uint64_t i; +int bt_trace_make_static(struct bt_trace *trace) +{ uint64_t i; BT_ASSERT_PRE_NON_NULL(trace, "Trace"); trace->is_static = true; @@ -562,13 +531,13 @@ int bt_private_trace_make_static(struct bt_private_trace *priv_trace) return 0; } -int bt_private_trace_add_is_static_listener( - struct bt_private_trace *priv_trace, - bt_private_trace_is_static_listener listener, - bt_private_trace_listener_removed listener_removed, void *data, +int bt_trace_add_is_static_listener( + const struct bt_trace *c_trace, + bt_trace_is_static_listener_func listener, + bt_trace_listener_removed_func listener_removed, void *data, uint64_t *listener_id) { - struct bt_trace *trace = (void *) priv_trace; + struct bt_trace *trace = (void *) c_trace; uint64_t i; struct bt_trace_is_static_listener_elem new_elem = { .func = listener, @@ -612,7 +581,7 @@ int bt_private_trace_add_is_static_listener( BT_ASSERT_PRE_FUNC static -bool has_listener_id(struct bt_trace *trace, uint64_t listener_id) +bool has_listener_id(const struct bt_trace *trace, uint64_t listener_id) { BT_ASSERT(listener_id < trace->is_static_listeners->len); return (&g_array_index(trace->is_static_listeners, @@ -620,10 +589,10 @@ bool has_listener_id(struct bt_trace *trace, uint64_t listener_id) listener_id))->func != NULL; } -int bt_private_trace_remove_is_static_listener( - struct bt_private_trace *priv_trace, uint64_t listener_id) +int bt_trace_remove_is_static_listener(const struct bt_trace *c_trace, + uint64_t listener_id) { - struct bt_trace *trace = (void *) priv_trace; + struct bt_trace *trace = (void *) c_trace; struct bt_trace_is_static_listener_elem *elem; BT_ASSERT_PRE_NON_NULL(trace, "Trace"); @@ -660,25 +629,23 @@ int bt_private_trace_remove_is_static_listener( } BT_HIDDEN -void _bt_trace_freeze(struct bt_trace *trace) +void _bt_trace_freeze(const struct bt_trace *trace) { /* The packet header field classe is already frozen */ BT_ASSERT(trace); BT_LIB_LOGD("Freezing trace: %!+t", trace); - trace->frozen = true; + ((struct bt_trace *) trace)->frozen = true; } -bt_bool bt_trace_assigns_automatic_stream_class_id(struct bt_trace *trace) +bt_bool bt_trace_assigns_automatic_stream_class_id(const struct bt_trace *trace) { BT_ASSERT_PRE_NON_NULL(trace, "Trace"); return (bt_bool) trace->assigns_automatic_stream_class_id; } -void bt_private_trace_set_assigns_automatic_stream_class_id( - struct bt_private_trace *priv_trace, bt_bool value) +void bt_trace_set_assigns_automatic_stream_class_id(struct bt_trace *trace, + bt_bool value) { - struct bt_trace *trace = (void *) priv_trace; - BT_ASSERT_PRE_NON_NULL(trace, "Trace"); BT_ASSERT_PRE_TRACE_HOT(trace); trace->assigns_automatic_stream_class_id = (bool) value; @@ -706,8 +673,8 @@ void bt_trace_add_stream(struct bt_trace *trace, struct bt_stream *stream) } BT_HIDDEN -uint64_t bt_trace_get_automatic_stream_id(struct bt_trace *trace, - struct bt_stream_class *stream_class) +uint64_t bt_trace_get_automatic_stream_id(const struct bt_trace *trace, + const struct bt_stream_class *stream_class) { gpointer orig_key; gpointer value; diff --git a/lib/values.c b/lib/values.c index 70c3676a..afbabc65 100644 --- a/lib/values.c +++ b/lib/values.c @@ -1113,7 +1113,7 @@ enum bt_value_status bt_value_map_insert_empty_map_entry( } enum bt_value_status bt_value_map_foreach_entry(struct bt_value *map_obj, - bt_value_map_foreach_entry_cb cb, void *data) + bt_value_map_foreach_entry_func func, void *data) { enum bt_value_status ret = BT_VALUE_STATUS_OK; gpointer key, element_obj; @@ -1121,14 +1121,14 @@ enum bt_value_status bt_value_map_foreach_entry(struct bt_value *map_obj, struct bt_value_map *typed_map_obj = BT_VALUE_TO_MAP(map_obj); BT_ASSERT_PRE_NON_NULL(map_obj, "Value object"); - BT_ASSERT_PRE_NON_NULL(cb, "Callback"); + BT_ASSERT_PRE_NON_NULL(func, "Callback"); BT_ASSERT_PRE_VALUE_IS_TYPE(map_obj, BT_VALUE_TYPE_MAP); g_hash_table_iter_init(&iter, typed_map_obj->ght); while (g_hash_table_iter_next(&iter, &key, &element_obj)) { const char *key_str = g_quark_to_string(GPOINTER_TO_UINT(key)); - if (!cb(key_str, element_obj, data)) { + if (!func(key_str, element_obj, data)) { BT_LOGV("User canceled the loop: key=\"%s\", " "value-addr=%p, data=%p", key_str, element_obj, data); @@ -1142,10 +1142,10 @@ enum bt_value_status bt_value_map_foreach_entry(struct bt_value *map_obj, enum bt_value_status bt_value_map_foreach_entry_const( const struct bt_value *map_obj, - bt_value_map_foreach_entry_const_cb cb, void *data) + bt_value_map_foreach_entry_const_func func, void *data) { return bt_value_map_foreach_entry((void *) map_obj, - (bt_value_map_foreach_entry_cb) cb, data); + (bt_value_map_foreach_entry_func) func, data); } struct extend_map_element_data { diff --git a/plugins/ctf/common/metadata/ast.h b/plugins/ctf/common/metadata/ast.h index b2212fff..601f046d 100644 --- a/plugins/ctf/common/metadata/ast.h +++ b/plugins/ctf/common/metadata/ast.h @@ -324,7 +324,7 @@ struct ctf_visitor_generate_ir *ctf_visitor_generate_ir_create( void ctf_visitor_generate_ir_destroy(struct ctf_visitor_generate_ir *visitor); BT_HIDDEN -struct bt_private_trace *ctf_visitor_generate_ir_get_ir_trace( +struct bt_trace *ctf_visitor_generate_ir_get_ir_trace( struct ctf_visitor_generate_ir *visitor); BT_HIDDEN diff --git a/plugins/ctf/common/metadata/ctf-meta-translate.c b/plugins/ctf/common/metadata/ctf-meta-translate.c index 3603d177..93d61d2e 100644 --- a/plugins/ctf/common/metadata/ctf-meta-translate.c +++ b/plugins/ctf/common/metadata/ctf-meta-translate.c @@ -26,31 +26,31 @@ #include "ctf-meta-visitors.h" static inline -struct bt_private_field_class *ctf_field_class_to_ir(struct ctf_field_class *fc, +struct bt_field_class *ctf_field_class_to_ir(struct ctf_field_class *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec); static inline void ctf_field_class_int_set_props(struct ctf_field_class_int *fc, - struct bt_private_field_class *ir_fc) + struct bt_field_class *ir_fc) { - bt_private_field_class_integer_set_field_value_range(ir_fc, + bt_field_class_integer_set_field_value_range(ir_fc, fc->base.size); - bt_private_field_class_integer_set_preferred_display_base(ir_fc, + bt_field_class_integer_set_preferred_display_base(ir_fc, fc->disp_base); } static inline -struct bt_private_field_class *ctf_field_class_int_to_ir( +struct bt_field_class *ctf_field_class_int_to_ir( struct ctf_field_class_int *fc) { - struct bt_private_field_class *ir_fc; + struct bt_field_class *ir_fc; if (fc->is_signed) { - ir_fc = bt_private_field_class_signed_integer_create(); + ir_fc = bt_field_class_signed_integer_create(); } else { - ir_fc = bt_private_field_class_unsigned_integer_create(); + ir_fc = bt_field_class_unsigned_integer_create(); } BT_ASSERT(ir_fc); @@ -59,17 +59,17 @@ struct bt_private_field_class *ctf_field_class_int_to_ir( } static inline -struct bt_private_field_class *ctf_field_class_enum_to_ir( +struct bt_field_class *ctf_field_class_enum_to_ir( struct ctf_field_class_enum *fc) { int ret; - struct bt_private_field_class *ir_fc; + struct bt_field_class *ir_fc; uint64_t i; if (fc->base.is_signed) { - ir_fc = bt_private_field_class_signed_enumeration_create(); + ir_fc = bt_field_class_signed_enumeration_create(); } else { - ir_fc = bt_private_field_class_unsigned_enumeration_create(); + ir_fc = bt_field_class_unsigned_enumeration_create(); } BT_ASSERT(ir_fc); @@ -80,11 +80,11 @@ struct bt_private_field_class *ctf_field_class_enum_to_ir( ctf_field_class_enum_borrow_mapping_by_index(fc, i); if (fc->base.is_signed) { - ret = bt_private_field_class_signed_enumeration_map_range( + ret = bt_field_class_signed_enumeration_map_range( ir_fc, mapping->label->str, mapping->range.lower.i, mapping->range.upper.i); } else { - ret = bt_private_field_class_unsigned_enumeration_map_range( + ret = bt_field_class_unsigned_enumeration_map_range( ir_fc, mapping->label->str, mapping->range.lower.u, mapping->range.upper.u); } @@ -96,16 +96,16 @@ struct bt_private_field_class *ctf_field_class_enum_to_ir( } static inline -struct bt_private_field_class *ctf_field_class_float_to_ir( +struct bt_field_class *ctf_field_class_float_to_ir( struct ctf_field_class_float *fc) { - struct bt_private_field_class *ir_fc; + struct bt_field_class *ir_fc; - ir_fc = bt_private_field_class_real_create(); + ir_fc = bt_field_class_real_create(); BT_ASSERT(ir_fc); if (fc->base.size == 32) { - bt_private_field_class_real_set_is_single_precision(ir_fc, + bt_field_class_real_set_is_single_precision(ir_fc, BT_TRUE); } @@ -113,26 +113,26 @@ struct bt_private_field_class *ctf_field_class_float_to_ir( } static inline -struct bt_private_field_class *ctf_field_class_string_to_ir( +struct bt_field_class *ctf_field_class_string_to_ir( struct ctf_field_class_string *fc) { - struct bt_private_field_class *ir_fc = - bt_private_field_class_string_create(); + struct bt_field_class *ir_fc = + bt_field_class_string_create(); BT_ASSERT(ir_fc); return ir_fc; } static inline -struct bt_private_field_class *ctf_field_class_struct_to_ir( +struct bt_field_class *ctf_field_class_struct_to_ir( struct ctf_field_class_struct *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { int ret; - struct bt_private_field_class *ir_fc = - bt_private_field_class_structure_create(); + struct bt_field_class *ir_fc = + bt_field_class_structure_create(); uint64_t i; BT_ASSERT(ir_fc); @@ -140,7 +140,7 @@ struct bt_private_field_class *ctf_field_class_struct_to_ir( for (i = 0; i < fc->members->len; i++) { struct ctf_named_field_class *named_fc = ctf_field_class_struct_borrow_member_by_index(fc, i); - struct bt_private_field_class *member_ir_fc; + struct bt_field_class *member_ir_fc; if (!named_fc->fc->in_ir) { continue; @@ -148,7 +148,7 @@ struct bt_private_field_class *ctf_field_class_struct_to_ir( member_ir_fc = ctf_field_class_to_ir(named_fc->fc, tc, sc, ec); BT_ASSERT(member_ir_fc); - ret = bt_private_field_class_structure_append_member( + ret = bt_field_class_structure_append_member( ir_fc, named_fc->name->str, member_ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(member_ir_fc); @@ -158,13 +158,13 @@ struct bt_private_field_class *ctf_field_class_struct_to_ir( } static inline -struct bt_private_field_class *borrow_ir_ft_from_field_path( +struct bt_field_class *borrow_ir_ft_from_field_path( struct ctf_field_path *field_path, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { - struct bt_private_field_class *ir_fc = NULL; + struct bt_field_class *ir_fc = NULL; struct ctf_field_class *fc = ctf_field_path_borrow_field_class( field_path, tc, sc, ec); @@ -178,31 +178,31 @@ struct bt_private_field_class *borrow_ir_ft_from_field_path( } static inline -struct bt_private_field_class *ctf_field_class_variant_to_ir( +struct bt_field_class *ctf_field_class_variant_to_ir( struct ctf_field_class_variant *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { int ret; - struct bt_private_field_class *ir_fc = - bt_private_field_class_variant_create(); + struct bt_field_class *ir_fc = + bt_field_class_variant_create(); uint64_t i; BT_ASSERT(ir_fc); - ret = bt_private_field_class_variant_set_selector_field_class( + ret = bt_field_class_variant_set_selector_field_class( ir_fc, borrow_ir_ft_from_field_path(&fc->tag_path, tc, sc, ec)); BT_ASSERT(ret == 0); for (i = 0; i < fc->options->len; i++) { struct ctf_named_field_class *named_fc = ctf_field_class_variant_borrow_option_by_index(fc, i); - struct bt_private_field_class *option_ir_fc; + struct bt_field_class *option_ir_fc; BT_ASSERT(named_fc->fc->in_ir); option_ir_fc = ctf_field_class_to_ir(named_fc->fc, tc, sc, ec); BT_ASSERT(option_ir_fc); - ret = bt_private_field_class_variant_append_private_option( + ret = bt_field_class_variant_append_option( ir_fc, named_fc->name->str, option_ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(option_ir_fc); @@ -212,24 +212,24 @@ struct bt_private_field_class *ctf_field_class_variant_to_ir( } static inline -struct bt_private_field_class *ctf_field_class_array_to_ir( +struct bt_field_class *ctf_field_class_array_to_ir( struct ctf_field_class_array *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { - struct bt_private_field_class *ir_fc; - struct bt_private_field_class *elem_ir_fc; + struct bt_field_class *ir_fc; + struct bt_field_class *elem_ir_fc; if (fc->base.is_text) { - ir_fc = bt_private_field_class_string_create(); + ir_fc = bt_field_class_string_create(); BT_ASSERT(ir_fc); goto end; } elem_ir_fc = ctf_field_class_to_ir(fc->base.elem_fc, tc, sc, ec); BT_ASSERT(elem_ir_fc); - ir_fc = bt_private_field_class_static_array_create(elem_ir_fc, + ir_fc = bt_field_class_static_array_create(elem_ir_fc, fc->length); BT_ASSERT(ir_fc); bt_object_put_ref(elem_ir_fc); @@ -239,29 +239,29 @@ end: } static inline -struct bt_private_field_class *ctf_field_class_sequence_to_ir( +struct bt_field_class *ctf_field_class_sequence_to_ir( struct ctf_field_class_sequence *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { int ret; - struct bt_private_field_class *ir_fc; - struct bt_private_field_class *elem_ir_fc; + struct bt_field_class *ir_fc; + struct bt_field_class *elem_ir_fc; if (fc->base.is_text) { - ir_fc = bt_private_field_class_string_create(); + ir_fc = bt_field_class_string_create(); BT_ASSERT(ir_fc); goto end; } elem_ir_fc = ctf_field_class_to_ir(fc->base.elem_fc, tc, sc, ec); BT_ASSERT(elem_ir_fc); - ir_fc = bt_private_field_class_dynamic_array_create(elem_ir_fc); + ir_fc = bt_field_class_dynamic_array_create(elem_ir_fc); BT_ASSERT(ir_fc); bt_object_put_ref(elem_ir_fc); BT_ASSERT(ir_fc); - ret = bt_private_field_class_dynamic_array_set_length_field_class( + ret = bt_field_class_dynamic_array_set_length_field_class( ir_fc, borrow_ir_ft_from_field_path(&fc->length_path, tc, sc, ec)); BT_ASSERT(ret == 0); @@ -271,12 +271,12 @@ end: } static inline -struct bt_private_field_class *ctf_field_class_to_ir(struct ctf_field_class *fc, +struct bt_field_class *ctf_field_class_to_ir(struct ctf_field_class *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { - struct bt_private_field_class *ir_fc = NULL; + struct bt_field_class *ir_fc = NULL; BT_ASSERT(fc); BT_ASSERT(fc->in_ir); @@ -336,12 +336,12 @@ end: } static inline -struct bt_private_field_class *scope_ctf_field_class_to_ir(struct ctf_field_class *fc, +struct bt_field_class *scope_ctf_field_class_to_ir(struct ctf_field_class *fc, struct ctf_trace_class *tc, struct ctf_stream_class *sc, struct ctf_event_class *ec) { - struct bt_private_field_class *ir_fc = NULL; + struct bt_field_class *ir_fc = NULL; if (!fc) { goto end; @@ -391,30 +391,30 @@ end: } static inline -struct bt_private_event_class *ctf_event_class_to_ir(struct ctf_event_class *ec, - struct bt_private_stream_class *ir_sc, struct ctf_trace_class *tc, +struct bt_event_class *ctf_event_class_to_ir(struct ctf_event_class *ec, + struct bt_stream_class *ir_sc, struct ctf_trace_class *tc, struct ctf_stream_class *sc) { int ret; - struct bt_private_event_class *ir_ec = NULL; + struct bt_event_class *ir_ec = NULL; if (ec->is_translated) { - ir_ec = bt_private_stream_class_borrow_event_class_by_id( + ir_ec = bt_stream_class_borrow_event_class_by_id( ir_sc, ec->id); BT_ASSERT(ir_ec); goto end; } - ir_ec = bt_private_event_class_create_with_id(ir_sc, ec->id); + ir_ec = bt_event_class_create_with_id(ir_sc, ec->id); BT_ASSERT(ir_ec); bt_object_put_ref(ir_ec); if (ec->spec_context_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( ec->spec_context_fc, tc, sc, ec); if (ir_fc) { - ret = bt_private_event_class_set_specific_context_field_class( + ret = bt_event_class_set_specific_context_field_class( ir_ec, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); @@ -422,11 +422,11 @@ struct bt_private_event_class *ctf_event_class_to_ir(struct ctf_event_class *ec, } if (ec->payload_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( ec->payload_fc, tc, sc, ec); if (ir_fc) { - ret = bt_private_event_class_set_payload_field_class(ir_ec, + ret = bt_event_class_set_payload_field_class(ir_ec, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); @@ -434,17 +434,17 @@ struct bt_private_event_class *ctf_event_class_to_ir(struct ctf_event_class *ec, } if (ec->name->len > 0) { - ret = bt_private_event_class_set_name(ir_ec, ec->name->str); + ret = bt_event_class_set_name(ir_ec, ec->name->str); BT_ASSERT(ret == 0); } if (ec->emf_uri->len > 0) { - ret = bt_private_event_class_set_emf_uri(ir_ec, ec->emf_uri->str); + ret = bt_event_class_set_emf_uri(ir_ec, ec->emf_uri->str); BT_ASSERT(ret == 0); } if (ec->log_level != -1) { - bt_private_event_class_set_log_level(ir_ec, ec->log_level); + bt_event_class_set_log_level(ir_ec, ec->log_level); } ec->is_translated = true; @@ -456,30 +456,30 @@ end: static inline -struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class *sc, - struct bt_private_trace *ir_trace, struct ctf_trace_class *tc) +struct bt_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class *sc, + struct bt_trace *ir_trace, struct ctf_trace_class *tc) { int ret; - struct bt_private_stream_class *ir_sc = NULL; + struct bt_stream_class *ir_sc = NULL; struct ctf_field_class_int *int_fc; if (sc->is_translated) { - ir_sc = bt_private_trace_borrow_stream_class_by_id( + ir_sc = bt_trace_borrow_stream_class_by_id( ir_trace, sc->id); BT_ASSERT(ir_sc); goto end; } - ir_sc = bt_private_stream_class_create_with_id(ir_trace, sc->id); + ir_sc = bt_stream_class_create_with_id(ir_trace, sc->id); BT_ASSERT(ir_sc); bt_object_put_ref(ir_sc); if (sc->packet_context_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( sc->packet_context_fc, tc, sc, NULL); if (ir_fc) { - ret = bt_private_stream_class_set_packet_context_field_class( + ret = bt_stream_class_set_packet_context_field_class( ir_sc, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); @@ -487,11 +487,11 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * } if (sc->event_header_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( sc->event_header_fc, tc, sc, NULL); if (ir_fc) { - ret = bt_private_stream_class_set_event_header_field_class( + ret = bt_stream_class_set_event_header_field_class( ir_sc, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); @@ -499,24 +499,24 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * } if (sc->event_common_context_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( sc->event_common_context_fc, tc, sc, NULL); if (ir_fc) { - ret = bt_private_stream_class_set_event_common_context_field_class( + ret = bt_stream_class_set_event_common_context_field_class( ir_sc, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); } } - bt_private_stream_class_set_assigns_automatic_event_class_id(ir_sc, + bt_stream_class_set_assigns_automatic_event_class_id(ir_sc, BT_FALSE); - bt_private_stream_class_set_assigns_automatic_stream_id(ir_sc, BT_FALSE); + bt_stream_class_set_assigns_automatic_stream_id(ir_sc, BT_FALSE); if (sc->default_clock_class) { - ret = bt_private_stream_class_set_default_clock_class(ir_sc, - bt_private_clock_class_as_clock_class(sc->default_clock_class)); + ret = bt_stream_class_set_default_clock_class(ir_sc, + sc->default_clock_class); BT_ASSERT(ret == 0); } @@ -524,7 +524,7 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * "events_discarded"); if (int_fc) { if (int_fc->meaning == CTF_FIELD_CLASS_MEANING_DISC_EV_REC_COUNTER_SNAPSHOT) { - bt_private_stream_class_set_packets_have_discarded_event_counter_snapshot( + bt_stream_class_set_packets_have_discarded_event_counter_snapshot( ir_sc, BT_TRUE); } } @@ -533,7 +533,7 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * "packet_seq_num"); if (int_fc) { if (int_fc->meaning == CTF_FIELD_CLASS_MEANING_PACKET_COUNTER_SNAPSHOT) { - bt_private_stream_class_set_packets_have_packet_counter_snapshot( + bt_stream_class_set_packets_have_packet_counter_snapshot( ir_sc, BT_TRUE); } } @@ -542,7 +542,7 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * "timestamp_begin"); if (int_fc) { if (int_fc->meaning == CTF_FIELD_CLASS_MEANING_PACKET_BEGINNING_TIME) { - bt_private_stream_class_set_packets_have_default_beginning_clock_value( + bt_stream_class_set_packets_have_default_beginning_clock_value( ir_sc, BT_TRUE); } } @@ -551,7 +551,7 @@ struct bt_private_stream_class *ctf_stream_class_to_ir(struct ctf_stream_class * "timestamp_end"); if (int_fc) { if (int_fc->meaning == CTF_FIELD_CLASS_MEANING_PACKET_END_TIME) { - bt_private_stream_class_set_packets_have_default_end_clock_value( + bt_stream_class_set_packets_have_default_end_clock_value( ir_sc, BT_TRUE); } } @@ -564,7 +564,7 @@ end: } static inline -int ctf_trace_class_to_ir(struct bt_private_trace *ir_trace, +int ctf_trace_class_to_ir(struct bt_trace *ir_trace, struct ctf_trace_class *tc) { int ret = 0; @@ -575,11 +575,11 @@ int ctf_trace_class_to_ir(struct bt_private_trace *ir_trace, } if (tc->packet_header_fc) { - struct bt_private_field_class *ir_fc = scope_ctf_field_class_to_ir( + struct bt_field_class *ir_fc = scope_ctf_field_class_to_ir( tc->packet_header_fc, tc, NULL, NULL); if (ir_fc) { - ret = bt_private_trace_set_packet_header_field_class( + ret = bt_trace_set_packet_header_field_class( ir_trace, ir_fc); BT_ASSERT(ret == 0); bt_object_put_ref(ir_fc); @@ -587,14 +587,14 @@ int ctf_trace_class_to_ir(struct bt_private_trace *ir_trace, } if (tc->name->len > 0) { - ret = bt_private_trace_set_name(ir_trace, tc->name->str); + ret = bt_trace_set_name(ir_trace, tc->name->str); if (ret) { goto end; } } if (tc->is_uuid_set) { - bt_private_trace_set_uuid(ir_trace, tc->uuid); + bt_trace_set_uuid(ir_trace, tc->uuid); } for (i = 0; i < tc->env_entries->len; i++) { @@ -603,12 +603,12 @@ int ctf_trace_class_to_ir(struct bt_private_trace *ir_trace, switch (env_entry->type) { case CTF_TRACE_CLASS_ENV_ENTRY_TYPE_INT: - ret = bt_private_trace_set_environment_entry_integer( + ret = bt_trace_set_environment_entry_integer( ir_trace, env_entry->name->str, env_entry->value.i); break; case CTF_TRACE_CLASS_ENV_ENTRY_TYPE_STR: - ret = bt_private_trace_set_environment_entry_string( + ret = bt_trace_set_environment_entry_string( ir_trace, env_entry->name->str, env_entry->value.str->str); break; @@ -621,7 +621,7 @@ int ctf_trace_class_to_ir(struct bt_private_trace *ir_trace, } } - bt_private_trace_set_assigns_automatic_stream_class_id(ir_trace, + bt_trace_set_assigns_automatic_stream_class_id(ir_trace, BT_FALSE); tc->is_translated = true; tc->ir_tc = ir_trace; @@ -631,7 +631,7 @@ end: } BT_HIDDEN -int ctf_trace_class_translate(struct bt_private_trace *ir_trace, +int ctf_trace_class_translate(struct bt_trace *ir_trace, struct ctf_trace_class *tc) { int ret = 0; @@ -645,7 +645,7 @@ int ctf_trace_class_translate(struct bt_private_trace *ir_trace, for (i = 0; i < tc->stream_classes->len; i++) { uint64_t j; struct ctf_stream_class *sc = tc->stream_classes->pdata[i]; - struct bt_private_stream_class *ir_sc; + struct bt_stream_class *ir_sc; ir_sc = ctf_stream_class_to_ir(sc, ir_trace, tc); if (!ir_sc) { @@ -655,7 +655,7 @@ int ctf_trace_class_translate(struct bt_private_trace *ir_trace, for (j = 0; j < sc->event_classes->len; j++) { struct ctf_event_class *ec = sc->event_classes->pdata[j]; - struct bt_private_event_class *ir_ec; + struct bt_event_class *ir_ec; ir_ec = ctf_event_class_to_ir(ec, ir_sc, tc, sc); if (!ir_ec) { diff --git a/plugins/ctf/common/metadata/ctf-meta-update-default-clock-classes.c b/plugins/ctf/common/metadata/ctf-meta-update-default-clock-classes.c index 01d94946..d000c688 100644 --- a/plugins/ctf/common/metadata/ctf-meta-update-default-clock-classes.c +++ b/plugins/ctf/common/metadata/ctf-meta-update-default-clock-classes.c @@ -27,7 +27,7 @@ static inline int find_mapped_clock_class(struct ctf_field_class *fc, - struct bt_private_clock_class **clock_class) + struct bt_clock_class **clock_class) { int ret = 0; uint64_t i; @@ -48,12 +48,8 @@ int find_mapped_clock_class(struct ctf_field_class *fc, BT_LOGE("Stream class contains more than one " "clock class: expected-cc-name=\"%s\", " "other-cc-name=\"%s\"", - bt_clock_class_get_name( - bt_private_clock_class_as_clock_class( - *clock_class)), - bt_clock_class_get_name( - bt_private_clock_class_as_clock_class( - int_fc->mapped_clock_class))); + bt_clock_class_get_name(*clock_class), + bt_clock_class_get_name(int_fc->mapped_clock_class)); ret = -1; goto end; } @@ -124,7 +120,7 @@ int update_stream_class_default_clock_class( struct ctf_stream_class *stream_class) { int ret = 0; - struct bt_private_clock_class *clock_class = + struct bt_clock_class *clock_class = stream_class->default_clock_class; uint64_t i; @@ -177,7 +173,7 @@ int ctf_trace_class_update_default_clock_classes(struct ctf_trace_class *ctf_tc) { uint64_t i; int ret = 0; - struct bt_private_clock_class *clock_class = NULL; + struct bt_clock_class *clock_class = NULL; ret = find_mapped_clock_class(ctf_tc->packet_header_fc, &clock_class); diff --git a/plugins/ctf/common/metadata/ctf-meta-visitors.h b/plugins/ctf/common/metadata/ctf-meta-visitors.h index f4c93b74..caeddf32 100644 --- a/plugins/ctf/common/metadata/ctf-meta-visitors.h +++ b/plugins/ctf/common/metadata/ctf-meta-visitors.h @@ -24,7 +24,7 @@ BT_HIDDEN int ctf_trace_class_resolve_field_classes(struct ctf_trace_class *tc); BT_HIDDEN -int ctf_trace_class_translate(struct bt_private_trace *ir_trace, +int ctf_trace_class_translate(struct bt_trace *ir_trace, struct ctf_trace_class *tc); BT_HIDDEN diff --git a/plugins/ctf/common/metadata/ctf-meta.h b/plugins/ctf/common/metadata/ctf-meta.h index 481a3b6c..4c9aacf4 100644 --- a/plugins/ctf/common/metadata/ctf-meta.h +++ b/plugins/ctf/common/metadata/ctf-meta.h @@ -66,7 +66,7 @@ struct ctf_field_class { bool in_ir; /* Weak, set during translation. NULL if `in_ir` is false below. */ - struct bt_private_field_class *ir_fc; + struct bt_field_class *ir_fc; }; struct ctf_field_class_bit_array { @@ -84,7 +84,7 @@ struct ctf_field_class_int { int64_t storing_index; /* Owned by this */ - struct bt_private_clock_class *mapped_clock_class; + struct bt_clock_class *mapped_clock_class; }; struct ctf_range { @@ -198,7 +198,7 @@ struct ctf_event_class { struct ctf_field_class *payload_fc; /* Weak, set during translation */ - struct bt_private_event_class *ir_ec; + struct bt_event_class *ir_ec; }; struct ctf_stream_class { @@ -224,10 +224,10 @@ struct ctf_stream_class { GHashTable *event_classes_by_id; /* Owned by this */ - struct bt_private_clock_class *default_clock_class; + struct bt_clock_class *default_clock_class; /* Weak, set during translation */ - struct bt_private_stream_class *ir_sc; + struct bt_stream_class *ir_sc; }; enum ctf_trace_class_env_entry_type { @@ -258,7 +258,7 @@ struct ctf_trace_class { uint64_t stored_value_count; - /* Array of `struct bt_private_clock_class *` (owned by this) */ + /* Array of `struct bt_clock_class *` (owned by this) */ GPtrArray *clock_classes; /* Array of `struct ctf_stream_class *` */ @@ -270,7 +270,7 @@ struct ctf_trace_class { bool is_translated; /* Weak, set during translation */ - struct bt_private_trace *ir_tc; + struct bt_trace *ir_tc; }; static inline @@ -1549,19 +1549,18 @@ end: } static inline -struct bt_private_clock_class *ctf_trace_class_borrow_clock_class_by_name( +struct bt_clock_class *ctf_trace_class_borrow_clock_class_by_name( struct ctf_trace_class *tc, const char *name) { uint64_t i; - struct bt_private_clock_class *ret_cc = NULL; + struct bt_clock_class *ret_cc = NULL; BT_ASSERT(tc); BT_ASSERT(name); for (i = 0; i < tc->clock_classes->len; i++) { - struct bt_private_clock_class *cc = tc->clock_classes->pdata[i]; - const char *cc_name = bt_clock_class_get_name( - bt_private_clock_class_as_clock_class(cc)); + struct bt_clock_class *cc = tc->clock_classes->pdata[i]; + const char *cc_name = bt_clock_class_get_name(cc); BT_ASSERT(cc_name); if (strcmp(cc_name, name) == 0) { diff --git a/plugins/ctf/common/metadata/decoder.c b/plugins/ctf/common/metadata/decoder.c index 85a9fbe1..38733ae3 100644 --- a/plugins/ctf/common/metadata/decoder.c +++ b/plugins/ctf/common/metadata/decoder.c @@ -556,7 +556,7 @@ end: } BT_HIDDEN -struct bt_private_trace *ctf_metadata_decoder_get_ir_trace( +struct bt_trace *ctf_metadata_decoder_get_ir_trace( struct ctf_metadata_decoder *mdec) { return ctf_visitor_generate_ir_get_ir_trace(mdec->visitor); diff --git a/plugins/ctf/common/metadata/decoder.h b/plugins/ctf/common/metadata/decoder.h index 171cbb35..51d3a185 100644 --- a/plugins/ctf/common/metadata/decoder.h +++ b/plugins/ctf/common/metadata/decoder.h @@ -89,7 +89,7 @@ enum ctf_metadata_decoder_status ctf_metadata_decoder_decode( struct ctf_metadata_decoder *metadata_decoder, FILE *fp); BT_HIDDEN -struct bt_private_trace *ctf_metadata_decoder_get_ir_trace( +struct bt_trace *ctf_metadata_decoder_get_ir_trace( struct ctf_metadata_decoder *mdec); BT_HIDDEN diff --git a/plugins/ctf/common/metadata/visitor-generate-ir.c b/plugins/ctf/common/metadata/visitor-generate-ir.c index 69149a50..d746b27e 100644 --- a/plugins/ctf/common/metadata/visitor-generate-ir.c +++ b/plugins/ctf/common/metadata/visitor-generate-ir.c @@ -194,7 +194,7 @@ struct ctx_decl_scope { */ struct ctx { /* Trace IR trace being filled (owned by this) */ - struct bt_private_trace *trace; + struct bt_trace *trace; /* CTF meta trace being filled (owned by this) */ struct ctf_trace_class *ctf_tc; @@ -590,7 +590,7 @@ struct ctx *ctx_create(const struct ctf_metadata_decoder_config *decoder_config, goto error; } - ctx->trace = bt_private_trace_create(); + ctx->trace = bt_trace_create(); if (!ctx->trace) { BT_LOGE_STR("Cannot create empty trace."); goto error; @@ -2365,7 +2365,7 @@ int visit_integer_decl(struct ctx *ctx, int signedness = 0; struct ctf_node *expression; uint64_t alignment = 0, size = 0; - struct bt_private_clock_class *mapped_clock_class = NULL; + struct bt_clock_class *mapped_clock_class = NULL; enum ctf_encoding encoding = CTF_ENCODING_NONE; enum bt_field_class_integer_preferred_display_base base = BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_DECIMAL; @@ -3577,7 +3577,7 @@ static int auto_map_field_to_trace_clock_class(struct ctx *ctx, struct ctf_field_class *fc) { - struct bt_private_clock_class *clock_class_to_map_to = NULL; + struct bt_clock_class *clock_class_to_map_to = NULL; struct ctf_field_class_int *int_fc = (void *) fc; int ret = 0; uint64_t clock_class_count; @@ -3605,11 +3605,11 @@ int auto_map_field_to_trace_clock_class(struct ctx *ctx, * implicit one at 1 GHz, named `default`, and use this clock * class. */ - clock_class_to_map_to = bt_private_clock_class_create(); + clock_class_to_map_to = bt_clock_class_create(); BT_ASSERT(clock_class_to_map_to); - bt_private_clock_class_set_frequency(clock_class_to_map_to, + bt_clock_class_set_frequency(clock_class_to_map_to, UINT64_C(1000000000)); - ret = bt_private_clock_class_set_name(clock_class_to_map_to, + ret = bt_clock_class_set_name(clock_class_to_map_to, "default"); BT_ASSERT(ret == 0); g_ptr_array_add(ctx->ctf_tc->clock_classes, @@ -4370,7 +4370,7 @@ error: static int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, - struct bt_private_clock_class *clock, int *set, int64_t *offset_seconds, + struct bt_clock_class *clock, int *set, int64_t *offset_seconds, uint64_t *offset_cycles) { int ret = 0; @@ -4409,7 +4409,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - ret = bt_private_clock_class_set_name(clock, right); + ret = bt_clock_class_set_name(clock, right); if (ret) { _BT_LOGE_NODE(entry_node, "cannot set clock class's name"); @@ -4435,7 +4435,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - bt_private_clock_class_set_uuid(clock, uuid); + bt_clock_class_set_uuid(clock, uuid); _SET(set, _CLOCK_UUID_SET); } else if (!strcmp(left, "description")) { char *right; @@ -4456,7 +4456,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - ret = bt_private_clock_class_set_description(clock, right); + ret = bt_clock_class_set_description(clock, right); if (ret) { _BT_LOGE_NODE(entry_node, "Cannot set clock class's description."); @@ -4492,7 +4492,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - bt_private_clock_class_set_frequency(clock, freq); + bt_clock_class_set_frequency(clock, freq); _SET(set, _CLOCK_FREQ_SET); } else if (!strcmp(left, "precision")) { uint64_t precision; @@ -4513,7 +4513,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - bt_private_clock_class_set_precision(clock, precision); + bt_clock_class_set_precision(clock, precision); _SET(set, _CLOCK_PRECISION_SET); } else if (!strcmp(left, "offset_s")) { if (_IS_SET(set, _CLOCK_OFFSET_S_SET)) { @@ -4571,7 +4571,7 @@ int visit_clock_decl_entry(struct ctx *ctx, struct ctf_node *entry_node, goto error; } - bt_private_clock_class_set_is_absolute(clock, ret); + bt_clock_class_set_is_absolute(clock, ret); _SET(set, _CLOCK_ABSOLUTE_SET); } else { _BT_LOGW_NODE(entry_node, @@ -4617,7 +4617,7 @@ void calibrate_clock_class_offsets(int64_t *offset_seconds, static void apply_clock_class_offset(struct ctx *ctx, - struct bt_private_clock_class *clock) + struct bt_clock_class *clock) { uint64_t freq; int64_t offset_s_to_apply = ctx->decoder_config.clock_class_offset_s; @@ -4652,10 +4652,9 @@ void apply_clock_class_offset(struct ctx *ctx, offset_s_to_apply += extra_s; } - freq = bt_clock_class_get_frequency( - bt_private_clock_class_as_clock_class(clock)); - bt_clock_class_get_offset(bt_private_clock_class_as_clock_class(clock), - &cur_offset_s, &cur_offset_cycles); + freq = bt_clock_class_get_frequency(clock); + bt_clock_class_get_offset(clock, + &cur_offset_s, &cur_offset_cycles); /* Apply offsets */ cur_offset_s += offset_s_to_apply; @@ -4668,7 +4667,7 @@ void apply_clock_class_offset(struct ctx *ctx, calibrate_clock_class_offsets(&cur_offset_s, &cur_offset_cycles, freq); /* Set final offsets */ - bt_private_clock_class_set_offset(clock, cur_offset_s, cur_offset_cycles); + bt_clock_class_set_offset(clock, cur_offset_s, cur_offset_cycles); end: return; @@ -4679,7 +4678,7 @@ int visit_clock_decl(struct ctx *ctx, struct ctf_node *clock_node) { int ret = 0; int set = 0; - struct bt_private_clock_class *clock; + struct bt_clock_class *clock; struct ctf_node *entry_node; struct bt_list_head *decl_list = &clock_node->u.clock.declaration_list; const char *clock_class_name; @@ -4694,7 +4693,7 @@ int visit_clock_decl(struct ctx *ctx, struct ctf_node *clock_node) clock_node->visited = TRUE; /* CTF 1.8's default frequency for a clock class is 1 GHz */ - clock = bt_private_clock_class_create(); + clock = bt_clock_class_create(); if (!clock) { _BT_LOGE_NODE(clock_node, "Cannot create default clock class."); @@ -4703,7 +4702,7 @@ int visit_clock_decl(struct ctx *ctx, struct ctf_node *clock_node) } /* CTF: not absolute by default */ - bt_private_clock_class_set_is_absolute(clock, BT_FALSE); + bt_clock_class_set_is_absolute(clock, BT_FALSE); bt_list_for_each_entry(entry_node, decl_list, siblings) { ret = visit_clock_decl_entry(ctx, entry_node, clock, &set, @@ -4723,8 +4722,7 @@ int visit_clock_decl(struct ctx *ctx, struct ctf_node *clock_node) goto end; } - clock_class_name = bt_clock_class_get_name( - bt_private_clock_class_as_clock_class(clock)); + clock_class_name = bt_clock_class_get_name(clock); BT_ASSERT(clock_class_name); if (ctx->is_lttng && strcmp(clock_class_name, "monotonic") == 0) { /* @@ -4733,19 +4731,17 @@ int visit_clock_decl(struct ctx *ctx, struct ctf_node *clock_node) * it's a condition to be able to sort notifications * from different sources. */ - bt_private_clock_class_set_is_absolute(clock, BT_TRUE); + bt_clock_class_set_is_absolute(clock, BT_TRUE); } /* * Adjust offsets so that the part in cycles is less than the * frequency (move to the part in seconds). */ - freq = bt_clock_class_get_frequency( - bt_private_clock_class_as_clock_class(clock)); + freq = bt_clock_class_get_frequency(clock); calibrate_clock_class_offsets(&offset_seconds, &offset_cycles, freq); - BT_ASSERT(offset_cycles < bt_clock_class_get_frequency( - bt_private_clock_class_as_clock_class(clock))); - bt_private_clock_class_set_offset(clock, offset_seconds, offset_cycles); + BT_ASSERT(offset_cycles < bt_clock_class_get_frequency(clock)); + bt_clock_class_set_offset(clock, offset_seconds, offset_cycles); apply_clock_class_offset(ctx, clock); g_ptr_array_add(ctx->ctf_tc->clock_classes, clock); bt_object_get_ref(clock); @@ -4899,7 +4895,7 @@ void ctf_visitor_generate_ir_destroy(struct ctf_visitor_generate_ir *visitor) } BT_HIDDEN -struct bt_private_trace *ctf_visitor_generate_ir_get_ir_trace( +struct bt_trace *ctf_visitor_generate_ir_get_ir_trace( struct ctf_visitor_generate_ir *visitor) { struct ctx *ctx = (void *) visitor; diff --git a/plugins/ctf/common/notif-iter/notif-iter.c b/plugins/ctf/common/notif-iter/notif-iter.c index 750f4a10..e6b4f8b7 100644 --- a/plugins/ctf/common/notif-iter/notif-iter.c +++ b/plugins/ctf/common/notif-iter/notif-iter.c @@ -56,7 +56,7 @@ struct stack_entry { * * Field is borrowed. */ - struct bt_private_field *base; + struct bt_field *base; /* Index of next field to set */ size_t index; @@ -111,7 +111,7 @@ struct bt_notif_iter { * This is set by read_dscope_begin_state() and contains the * value of one of the pointers in `dscopes` below. */ - struct bt_private_field *cur_dscope_field; + struct bt_field *cur_dscope_field; /* * True if we're done filling a string field from a text @@ -127,34 +127,34 @@ struct bt_notif_iter { } meta; /* Current packet header field wrapper (NULL if not created yet) */ - struct bt_private_packet_header_field *packet_header_field; + struct bt_packet_header_field *packet_header_field; /* Current packet header field wrapper (NULL if not created yet) */ - struct bt_private_packet_context_field *packet_context_field; + struct bt_packet_context_field *packet_context_field; /* Current event header field (NULL if not created yet) */ - struct bt_private_event_header_field *event_header_field; + struct bt_event_header_field *event_header_field; /* Current packet (NULL if not created yet) */ - struct bt_private_packet *packet; + struct bt_packet *packet; /* Current stream (NULL if not set yet) */ - struct bt_private_stream *stream; + struct bt_stream *stream; /* Current event (NULL if not created yet) */ - struct bt_private_event *event; + struct bt_event *event; /* Current event notification (NULL if not created yet) */ struct bt_private_notification *event_notif; /* Database of current dynamic scopes */ struct { - struct bt_private_field *trace_packet_header; - struct bt_private_field *stream_packet_context; - struct bt_private_field *event_header; - struct bt_private_field *event_common_context; - struct bt_private_field *event_spec_context; - struct bt_private_field *event_payload; + struct bt_field *trace_packet_header; + struct bt_field *stream_packet_context; + struct bt_field *event_header; + struct bt_field *event_common_context; + struct bt_field *event_spec_context; + struct bt_field *event_payload; } dscopes; /* Current state */ @@ -325,7 +325,7 @@ void stack_destroy(struct stack *stack) } static -void stack_push(struct stack *stack, struct bt_private_field *base) +void stack_push(struct stack *stack, struct bt_field *base) { struct stack_entry *entry; @@ -520,7 +520,7 @@ enum bt_notif_iter_status read_dscope_begin_state( struct bt_notif_iter *notit, struct ctf_field_class *dscope_fc, enum state done_state, enum state continue_state, - struct bt_private_field *dscope_field) + struct bt_field *dscope_field) { enum bt_notif_iter_status status = BT_NOTIF_ITER_STATUS_OK; enum bt_bfcr_status bfcr_status; @@ -619,7 +619,7 @@ void release_event_dscopes(struct bt_notif_iter *notit) notit->dscopes.event_header = NULL; if (notit->event_header_field) { - bt_private_event_header_field_release(notit->event_header_field); + bt_event_header_field_release(notit->event_header_field); notit->event_header_field = NULL; } @@ -634,14 +634,14 @@ void release_all_dscopes(struct bt_notif_iter *notit) notit->dscopes.trace_packet_header = NULL; if (notit->packet_header_field) { - bt_private_packet_header_field_release(notit->packet_header_field); + bt_packet_header_field_release(notit->packet_header_field); notit->packet_header_field = NULL; } notit->dscopes.stream_packet_context = NULL; if (notit->packet_context_field) { - bt_private_packet_context_field_release(notit->packet_context_field); + bt_packet_context_field_release(notit->packet_context_field); notit->packet_context_field = NULL; } @@ -682,7 +682,7 @@ enum bt_notif_iter_status read_packet_header_begin_state( * the ID of the stream class to select. */ notit->packet_header_field = - bt_private_packet_header_field_create( + bt_packet_header_field_create( notit->meta.tc->ir_tc); if (!notit->packet_header_field) { BT_LOGE_STR("Cannot create packet header field wrapper from trace."); @@ -691,7 +691,7 @@ enum bt_notif_iter_status read_packet_header_begin_state( } notit->dscopes.trace_packet_header = - bt_private_packet_header_field_borrow_field( + bt_packet_header_field_borrow_field( notit->packet_header_field); BT_ASSERT(notit->dscopes.trace_packet_header); } @@ -799,7 +799,7 @@ static inline enum bt_notif_iter_status set_current_stream(struct bt_notif_iter *notit) { enum bt_notif_iter_status status = BT_NOTIF_ITER_STATUS_OK; - struct bt_private_stream *stream = NULL; + struct bt_stream *stream = NULL; BT_LOGV("Calling user function (get stream): notit-addr=%p, " "stream-class-addr=%p, stream-class-id=%" PRId64, @@ -835,7 +835,7 @@ static inline enum bt_notif_iter_status set_current_packet(struct bt_notif_iter *notit) { enum bt_notif_iter_status status = BT_NOTIF_ITER_STATUS_OK; - struct bt_private_packet *packet = NULL; + struct bt_packet *packet = NULL; BT_LOGV("Creating packet for packet notification: " "notit-addr=%p", notit); @@ -848,7 +848,7 @@ enum bt_notif_iter_status set_current_packet(struct bt_notif_iter *notit) /* Create packet */ BT_ASSERT(notit->stream); - packet = bt_private_packet_create(notit->stream); + packet = bt_packet_create(notit->stream); if (!packet) { BT_LOGE("Cannot create packet from stream: " "notit-addr=%p, stream-addr=%p, " @@ -919,7 +919,7 @@ enum bt_notif_iter_status read_packet_context_begin_state( * (bt_notif_iter_borrow_packet_header_context_fields()). */ notit->packet_context_field = - bt_private_packet_context_field_create( + bt_packet_context_field_create( notit->meta.sc->ir_sc); if (!notit->packet_context_field) { BT_LOGE_STR("Cannot create packet context field wrapper from stream class."); @@ -928,7 +928,7 @@ enum bt_notif_iter_status read_packet_context_begin_state( } notit->dscopes.stream_packet_context = - bt_private_packet_context_field_borrow_field( + bt_packet_context_field_borrow_field( notit->packet_context_field); BT_ASSERT(notit->dscopes.stream_packet_context); } @@ -1097,7 +1097,7 @@ enum bt_notif_iter_status read_event_header_begin_state( if (event_header_fc->in_ir) { BT_ASSERT(!notit->event_header_field); notit->event_header_field = - bt_private_event_header_field_create( + bt_event_header_field_create( notit->meta.sc->ir_sc); if (!notit->event_header_field) { BT_LOGE_STR("Cannot create event header field wrapper from trace."); @@ -1106,7 +1106,7 @@ enum bt_notif_iter_status read_event_header_begin_state( } notit->dscopes.event_header = - bt_private_event_header_field_borrow_field( + bt_event_header_field_borrow_field( notit->event_header_field); BT_ASSERT(notit->dscopes.event_header); } @@ -1256,7 +1256,7 @@ enum bt_notif_iter_status after_event_header_state( int ret; BT_ASSERT(notit->event); - ret = bt_private_event_move_header_field(notit->event, + ret = bt_event_move_header_field(notit->event, notit->event_header_field); if (ret) { status = BT_NOTIF_ITER_STATUS_ERROR; @@ -1270,7 +1270,7 @@ enum bt_notif_iter_status after_event_header_state( * the same value as the event header field within * notit->event. */ - BT_ASSERT(bt_private_event_borrow_header_field( + BT_ASSERT(bt_event_borrow_header_field( notit->event) == notit->dscopes.event_header); } @@ -1296,7 +1296,7 @@ enum bt_notif_iter_status read_event_common_context_begin_state( if (event_common_context_fc->in_ir) { BT_ASSERT(!notit->dscopes.event_common_context); notit->dscopes.event_common_context = - bt_private_event_borrow_common_context_field( + bt_event_borrow_common_context_field( notit->event); BT_ASSERT(notit->dscopes.event_common_context); } @@ -1349,7 +1349,7 @@ enum bt_notif_iter_status read_event_spec_context_begin_state( if (event_spec_context_fc->in_ir) { BT_ASSERT(!notit->dscopes.event_spec_context); notit->dscopes.event_spec_context = - bt_private_event_borrow_specific_context_field( + bt_event_borrow_specific_context_field( notit->event); BT_ASSERT(notit->dscopes.event_spec_context); } @@ -1405,7 +1405,7 @@ enum bt_notif_iter_status read_event_payload_begin_state( if (event_payload_fc->in_ir) { BT_ASSERT(!notit->dscopes.event_payload); notit->dscopes.event_payload = - bt_private_event_borrow_payload_field( + bt_event_borrow_payload_field( notit->event); BT_ASSERT(notit->dscopes.event_payload); } @@ -1587,17 +1587,17 @@ void bt_notif_iter_reset(struct bt_notif_iter *notit) notit->cur_dscope_field = NULL; if (notit->packet_header_field) { - bt_private_packet_header_field_release(notit->packet_header_field); + bt_packet_header_field_release(notit->packet_header_field); notit->packet_header_field = NULL; } if (notit->packet_context_field) { - bt_private_packet_context_field_release(notit->packet_context_field); + bt_packet_context_field_release(notit->packet_context_field); notit->packet_context_field = NULL; } if (notit->event_header_field) { - bt_private_event_header_field_release(notit->event_header_field); + bt_event_header_field_release(notit->event_header_field); notit->event_header_field = NULL; } @@ -1680,44 +1680,41 @@ end: } static -struct bt_private_field *borrow_next_field(struct bt_notif_iter *notit) +struct bt_field *borrow_next_field(struct bt_notif_iter *notit) { - struct bt_private_field *next_field = NULL; - struct bt_private_field *base_field; - struct bt_private_field_class *base_fc; + struct bt_field *next_field = NULL; + struct bt_field *base_field; + const struct bt_field_class *base_fc; size_t index; BT_ASSERT(!stack_empty(notit->stack)); index = stack_top(notit->stack)->index; base_field = stack_top(notit->stack)->base; BT_ASSERT(base_field); - base_fc = bt_private_field_borrow_class(base_field); + base_fc = bt_field_borrow_class_const(base_field); BT_ASSERT(base_fc); - switch (bt_field_class_get_type( - bt_private_field_class_as_field_class(base_fc))) { + switch (bt_field_class_get_type(base_fc)) { case BT_FIELD_CLASS_TYPE_STRUCTURE: { BT_ASSERT(index < bt_field_class_structure_get_member_count( - bt_private_field_class_as_field_class( - bt_private_field_borrow_class( - base_field)))); + bt_field_borrow_class_const( + base_field))); next_field = - bt_private_field_structure_borrow_member_field_by_index( + bt_field_structure_borrow_member_field_by_index( base_field, index); break; } case BT_FIELD_CLASS_TYPE_STATIC_ARRAY: case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY: - BT_ASSERT(index < bt_field_array_get_length( - bt_private_field_as_field(base_field))); - next_field = bt_private_field_array_borrow_element_field_by_index( + BT_ASSERT(index < bt_field_array_get_length(base_field)); + next_field = bt_field_array_borrow_element_field_by_index( base_field, index); break; case BT_FIELD_CLASS_TYPE_VARIANT: BT_ASSERT(index == 0); - next_field = bt_private_field_variant_borrow_selected_option_field( + next_field = bt_field_variant_borrow_selected_option_field( base_field); break; default: @@ -1776,7 +1773,7 @@ enum bt_bfcr_status bfcr_unsigned_int_cb(uint64_t value, { struct bt_notif_iter *notit = data; enum bt_bfcr_status status = BT_BFCR_STATUS_OK; - struct bt_private_field *field = NULL; + struct bt_field *field = NULL; struct ctf_field_class_int *int_fc = (void *) fc; BT_LOGV("Unsigned integer function called from BFCR: " @@ -1845,13 +1842,12 @@ update_def_clock: field = borrow_next_field(notit); BT_ASSERT(field); - BT_ASSERT(bt_private_field_borrow_class(field) == fc->ir_fc); - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || - bt_field_get_class_type(bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION); - bt_private_field_unsigned_integer_set_value(field, value); + BT_ASSERT(bt_field_borrow_class_const(field) == fc->ir_fc); + BT_ASSERT(bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || + bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION); + bt_field_unsigned_integer_set_value(field, value); stack_top(notit->stack)->index++; end: @@ -1865,7 +1861,7 @@ enum bt_bfcr_status bfcr_unsigned_int_char_cb(uint64_t value, int ret; struct bt_notif_iter *notit = data; enum bt_bfcr_status status = BT_BFCR_STATUS_OK; - struct bt_private_field *string_field = NULL; + struct bt_field *string_field = NULL; struct ctf_field_class_int *int_fc = (void *) fc; char str[2] = {'\0', '\0'}; @@ -1891,13 +1887,12 @@ enum bt_bfcr_status bfcr_unsigned_int_char_cb(uint64_t value, } string_field = stack_top(notit->stack)->base; - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(string_field)) == - BT_FIELD_CLASS_TYPE_STRING); + BT_ASSERT(bt_field_get_class_type(string_field) == + BT_FIELD_CLASS_TYPE_STRING); /* Append character */ str[0] = (char) value; - ret = bt_private_field_string_append_with_length(string_field, str, 1); + ret = bt_field_string_append_with_length(string_field, str, 1); if (ret) { BT_LOGE("Cannot append character to string field's value: " "notit-addr=%p, field-addr=%p, ret=%d", @@ -1915,7 +1910,7 @@ enum bt_bfcr_status bfcr_signed_int_cb(int64_t value, struct ctf_field_class *fc, void *data) { enum bt_bfcr_status status = BT_BFCR_STATUS_OK; - struct bt_private_field *field = NULL; + struct bt_field *field = NULL; struct bt_notif_iter *notit = data; struct ctf_field_class_int *int_fc = (void *) fc; @@ -1936,13 +1931,12 @@ enum bt_bfcr_status bfcr_signed_int_cb(int64_t value, field = borrow_next_field(notit); BT_ASSERT(field); - BT_ASSERT(bt_private_field_borrow_class(field) == fc->ir_fc); - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || - bt_field_get_class_type(bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION); - bt_private_field_signed_integer_set_value(field, value); + BT_ASSERT(bt_field_borrow_class_const(field) == fc->ir_fc); + BT_ASSERT(bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_SIGNED_INTEGER || + bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION); + bt_field_signed_integer_set_value(field, value); stack_top(notit->stack)->index++; end: @@ -1954,7 +1948,7 @@ enum bt_bfcr_status bfcr_floating_point_cb(double value, struct ctf_field_class *fc, void *data) { enum bt_bfcr_status status = BT_BFCR_STATUS_OK; - struct bt_private_field *field = NULL; + struct bt_field *field = NULL; struct bt_notif_iter *notit = data; BT_LOGV("Floating point number function called from BFCR: " @@ -1964,11 +1958,10 @@ enum bt_bfcr_status bfcr_floating_point_cb(double value, BT_ASSERT(fc->in_ir); field = borrow_next_field(notit); BT_ASSERT(field); - BT_ASSERT(bt_private_field_borrow_class(field) == fc->ir_fc); - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_REAL); - bt_private_field_real_set_value(field, value); + BT_ASSERT(bt_field_borrow_class_const(field) == fc->ir_fc); + BT_ASSERT(bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_REAL); + bt_field_real_set_value(field, value); stack_top(notit->stack)->index++; return status; } @@ -1977,7 +1970,7 @@ static enum bt_bfcr_status bfcr_string_begin_cb( struct ctf_field_class *fc, void *data) { - struct bt_private_field *field = NULL; + struct bt_field *field = NULL; struct bt_notif_iter *notit = data; int ret; @@ -1989,11 +1982,10 @@ enum bt_bfcr_status bfcr_string_begin_cb( BT_ASSERT(fc->in_ir); field = borrow_next_field(notit); BT_ASSERT(field); - BT_ASSERT(bt_private_field_borrow_class(field) == fc->ir_fc); - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_STRING); - ret = bt_private_field_string_clear(field); + BT_ASSERT(bt_field_borrow_class_const(field) == fc->ir_fc); + BT_ASSERT(bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_STRING); + ret = bt_field_string_clear(field); BT_ASSERT(ret == 0); /* @@ -2010,7 +2002,7 @@ enum bt_bfcr_status bfcr_string_cb(const char *value, size_t len, struct ctf_field_class *fc, void *data) { enum bt_bfcr_status status = BT_BFCR_STATUS_OK; - struct bt_private_field *field = NULL; + struct bt_field *field = NULL; struct bt_notif_iter *notit = data; int ret; @@ -2024,7 +2016,7 @@ enum bt_bfcr_status bfcr_string_cb(const char *value, BT_ASSERT(field); /* Append current substring */ - ret = bt_private_field_string_append_with_length(field, value, len); + ret = bt_field_string_append_with_length(field, value, len); if (ret) { BT_LOGE("Cannot append substring to string field's value: " "notit-addr=%p, field-addr=%p, string-length=%zu, " @@ -2061,7 +2053,7 @@ enum bt_bfcr_status bfcr_compound_begin_cb( struct ctf_field_class *fc, void *data) { struct bt_notif_iter *notit = data; - struct bt_private_field *field; + struct bt_field *field; BT_LOGV("Compound (beginning) function called from BFCR: " "notit-addr=%p, bfcr-addr=%p, fc-addr=%p, " @@ -2083,7 +2075,7 @@ enum bt_bfcr_status bfcr_compound_begin_cb( /* Push field */ BT_ASSERT(field); - BT_ASSERT(bt_private_field_borrow_class(field) == fc->ir_fc); + BT_ASSERT(bt_field_borrow_class_const(field) == fc->ir_fc); stack_push(notit->stack, field); /* @@ -2097,11 +2089,10 @@ enum bt_bfcr_status bfcr_compound_begin_cb( if (array_fc->is_text) { int ret; - BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field(field)) == - BT_FIELD_CLASS_TYPE_STRING); + BT_ASSERT(bt_field_get_class_type(field) == + BT_FIELD_CLASS_TYPE_STRING); notit->done_filling_string = false; - ret = bt_private_field_string_clear(field); + ret = bt_field_string_clear(field); BT_ASSERT(ret == 0); bt_bfcr_set_unsigned_int_cb(notit->bfcr, bfcr_unsigned_int_char_cb); @@ -2127,7 +2118,7 @@ enum bt_bfcr_status bfcr_compound_end_cb( } BT_ASSERT(!stack_empty(notit->stack)); - BT_ASSERT(bt_private_field_borrow_class(stack_top(notit->stack)->base) == + BT_ASSERT(bt_field_borrow_class_const(stack_top(notit->stack)->base) == fc->ir_fc); /* @@ -2140,8 +2131,7 @@ enum bt_bfcr_status bfcr_compound_end_cb( if (array_fc->is_text) { BT_ASSERT(bt_field_get_class_type( - bt_private_field_as_field( - stack_top(notit->stack)->base)) == + stack_top(notit->stack)->base) == BT_FIELD_CLASS_TYPE_STRING); bt_bfcr_set_unsigned_int_cb(notit->bfcr, bfcr_unsigned_int_cb); @@ -2163,7 +2153,7 @@ end: static int64_t bfcr_get_sequence_length_cb(struct ctf_field_class *fc, void *data) { - struct bt_private_field *seq_field; + struct bt_field *seq_field; struct bt_notif_iter *notit = data; struct ctf_field_class_sequence *seq_fc = (void *) fc; int64_t length = -1; @@ -2173,7 +2163,7 @@ int64_t bfcr_get_sequence_length_cb(struct ctf_field_class *fc, void *data) seq_fc->stored_length_index); seq_field = stack_top(notit->stack)->base; BT_ASSERT(seq_field); - ret = bt_private_field_dynamic_array_set_length(seq_field, (uint64_t) length); + ret = bt_field_dynamic_array_set_length(seq_field, (uint64_t) length); if (ret) { BT_LOGE("Cannot set dynamic array field's length field: " "notit-addr=%p, field-addr=%p, " @@ -2243,9 +2233,9 @@ struct ctf_field_class *bfcr_borrow_variant_selected_field_class_cb( var_fc, (uint64_t) option_index); if (selected_option->fc->in_ir) { - struct bt_private_field *var_field = stack_top(notit->stack)->base; + struct bt_field *var_field = stack_top(notit->stack)->base; - ret = bt_private_field_variant_select_option_field( + ret = bt_field_variant_select_option_field( var_field, option_index); if (ret) { BT_LOGW("Cannot select variant field's option field: " @@ -2265,16 +2255,15 @@ end: static void set_event_default_clock_value(struct bt_notif_iter *notit) { - struct bt_private_event *event = + struct bt_event *event = bt_private_notification_event_borrow_event( notit->event_notif); - struct bt_stream_class *sc = bt_private_stream_class_as_stream_class( - notit->meta.sc->ir_sc); + struct bt_stream_class *sc = notit->meta.sc->ir_sc; BT_ASSERT(event); if (bt_stream_class_borrow_default_clock_class(sc)) { - bt_private_event_set_default_clock_value(event, + bt_event_set_default_clock_value(event, notit->default_clock_val); } } @@ -2338,7 +2327,7 @@ void notify_new_packet(struct bt_notif_iter *notit, int ret; enum bt_notif_iter_status status; struct bt_private_notification *notif = NULL; - struct bt_stream_class *sc; + const struct bt_stream_class *sc; status = set_current_packet(notit); if (status != BT_NOTIF_ITER_STATUS_OK) { @@ -2346,35 +2335,35 @@ void notify_new_packet(struct bt_notif_iter *notit, } BT_ASSERT(notit->packet); - sc = bt_private_stream_class_as_stream_class(notit->meta.sc->ir_sc); + sc = notit->meta.sc->ir_sc; BT_ASSERT(sc); if (bt_stream_class_packets_have_discarded_event_counter_snapshot(sc)) { BT_ASSERT(notit->snapshots.discarded_events != UINT64_C(-1)); - bt_private_packet_set_discarded_event_counter_snapshot( + bt_packet_set_discarded_event_counter_snapshot( notit->packet, notit->snapshots.discarded_events); } if (bt_stream_class_packets_have_packet_counter_snapshot(sc)) { BT_ASSERT(notit->snapshots.packets != UINT64_C(-1)); - bt_private_packet_set_packet_counter_snapshot( + bt_packet_set_packet_counter_snapshot( notit->packet, notit->snapshots.packets); } if (bt_stream_class_packets_have_default_beginning_clock_value(sc)) { BT_ASSERT(notit->snapshots.beginning_clock != UINT64_C(-1)); - bt_private_packet_set_default_beginning_clock_value( + bt_packet_set_default_beginning_clock_value( notit->packet, notit->snapshots.beginning_clock); } if (bt_stream_class_packets_have_default_end_clock_value(sc)) { BT_ASSERT(notit->snapshots.end_clock != UINT64_C(-1)); - bt_private_packet_set_default_end_clock_value( + bt_packet_set_default_end_clock_value( notit->packet, notit->snapshots.end_clock); } if (notit->packet_header_field) { - ret = bt_private_packet_move_header_field( + ret = bt_packet_move_header_field( notit->packet, notit->packet_header_field); if (ret) { goto end; @@ -2387,13 +2376,13 @@ void notify_new_packet(struct bt_notif_iter *notit, * the same value as the packet header field within * notit->packet. */ - BT_ASSERT(bt_private_packet_borrow_header_field( + BT_ASSERT(bt_packet_borrow_header_field( notit->packet) == notit->dscopes.trace_packet_header); } if (notit->packet_context_field) { - ret = bt_private_packet_move_context_field( + ret = bt_packet_move_context_field( notit->packet, notit->packet_context_field); if (ret) { goto end; @@ -2406,7 +2395,7 @@ void notify_new_packet(struct bt_notif_iter *notit, * the same value as the packet header field within * notit->packet. */ - BT_ASSERT(bt_private_packet_borrow_context_field( + BT_ASSERT(bt_packet_borrow_context_field( notit->packet) == notit->dscopes.stream_packet_context); } @@ -2657,8 +2646,8 @@ end: BT_HIDDEN enum bt_notif_iter_status bt_notif_iter_borrow_packet_header_context_fields( struct bt_notif_iter *notit, - struct bt_private_field **packet_header_field, - struct bt_private_field **packet_context_field) + struct bt_field **packet_header_field, + struct bt_field **packet_context_field) { int ret; enum bt_notif_iter_status status = BT_NOTIF_ITER_STATUS_OK; diff --git a/plugins/ctf/common/notif-iter/notif-iter.h b/plugins/ctf/common/notif-iter/notif-iter.h index 315f54cd..7d69bb1f 100644 --- a/plugins/ctf/common/notif-iter/notif-iter.h +++ b/plugins/ctf/common/notif-iter/notif-iter.h @@ -228,8 +228,8 @@ struct bt_notif_iter_medium_ops { * @returns Stream instance (weak reference) or * \c NULL on error */ - struct bt_private_stream * (* borrow_stream)( - struct bt_private_stream_class *stream_class, + struct bt_stream * (* borrow_stream)( + struct bt_stream_class *stream_class, int64_t stream_id, void *data); }; @@ -305,8 +305,8 @@ enum bt_notif_iter_status bt_notif_iter_get_next_notification( BT_HIDDEN enum bt_notif_iter_status bt_notif_iter_borrow_packet_header_context_fields( struct bt_notif_iter *notit, - struct bt_private_field **packet_header_field, - struct bt_private_field **packet_context_field); + struct bt_field **packet_header_field, + struct bt_field **packet_context_field); struct bt_notif_iter_packet_properties { uint64_t exp_packet_total_size; diff --git a/plugins/ctf/fs-sink/write.c b/plugins/ctf/fs-sink/write.c index 64aed260..b386eec8 100644 --- a/plugins/ctf/fs-sink/write.c +++ b/plugins/ctf/fs-sink/write.c @@ -38,13 +38,13 @@ #include "writer.h" static -void unref_stream_class(struct bt_stream_class *writer_stream_class) +void unref_stream_class(const struct bt_stream_class *writer_stream_class) { bt_object_put_ref(writer_stream_class); } static -void unref_stream(struct bt_stream_class *writer_stream) +void unref_stream(const struct bt_stream_class *writer_stream) { bt_object_put_ref(writer_stream); } @@ -59,7 +59,7 @@ static gboolean empty_streams_ht(gpointer key, gpointer value, gpointer user_data) { int ret; - struct bt_stream *writer_stream = value; + const struct bt_stream *writer_stream = value; ret = bt_stream_flush(writer_stream); if (ret) { @@ -86,7 +86,7 @@ void check_completed_trace(gpointer key, gpointer value, gpointer user_data) } static -void trace_is_static_listener(struct bt_trace *trace, void *data) +void trace_is_static_listener(const struct bt_trace *trace, void *data) { struct fs_writer *fs_writer = data; int trace_completed = 1; @@ -103,13 +103,13 @@ void trace_is_static_listener(struct bt_trace *trace, void *data) } static -struct bt_stream_class *insert_new_stream_class( +const struct bt_stream_class *insert_new_stream_class( struct writer_component *writer_component, struct fs_writer *fs_writer, - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { - struct bt_stream_class *writer_stream_class = NULL; - struct bt_trace *trace = NULL, *writer_trace = NULL; + const struct bt_stream_class *writer_stream_class = NULL; + const struct bt_trace *trace = NULL, *writer_trace = NULL; struct bt_ctf_writer *ctf_writer = fs_writer->writer; enum bt_component_status ret; @@ -155,7 +155,7 @@ end: static enum fs_writer_stream_state *insert_new_stream_state( struct writer_component *writer_component, - struct fs_writer *fs_writer, struct bt_stream *stream) + struct fs_writer *fs_writer, const struct bt_stream *stream) { enum fs_writer_stream_state *v = NULL; @@ -214,7 +214,7 @@ end: static int make_trace_path(struct writer_component *writer_component, - struct bt_trace *trace, char *trace_path) + const struct bt_trace *trace, char *trace_path) { int ret; const char *trace_name; @@ -280,13 +280,13 @@ end: static struct fs_writer *insert_new_writer( struct writer_component *writer_component, - struct bt_trace *trace) + const struct bt_trace *trace) { struct bt_ctf_writer *ctf_writer = NULL; - struct bt_trace *writer_trace = NULL; + const struct bt_trace *writer_trace = NULL; char trace_path[PATH_MAX]; enum bt_component_status ret; - struct bt_stream *stream = NULL; + const struct bt_stream *stream = NULL; struct fs_writer *fs_writer = NULL; int nr_stream, i; @@ -375,9 +375,9 @@ end: static struct fs_writer *get_fs_writer(struct writer_component *writer_component, - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { - struct bt_trace *trace = NULL; + const struct bt_trace *trace = NULL; struct fs_writer *fs_writer; trace = bt_stream_class_get_trace(stream_class); @@ -396,9 +396,9 @@ struct fs_writer *get_fs_writer(struct writer_component *writer_component, static struct fs_writer *get_fs_writer_from_stream( struct writer_component *writer_component, - struct bt_stream *stream) + const struct bt_stream *stream) { - struct bt_stream_class *stream_class = NULL; + const struct bt_stream_class *stream_class = NULL; struct fs_writer *fs_writer; stream_class = bt_stream_get_class(stream); @@ -411,37 +411,37 @@ struct fs_writer *get_fs_writer_from_stream( } static -struct bt_stream_class *lookup_stream_class( +const struct bt_stream_class *lookup_stream_class( struct writer_component *writer_component, - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { struct fs_writer *fs_writer = get_fs_writer( writer_component, stream_class); BT_ASSERT(fs_writer); - return (struct bt_stream_class *) g_hash_table_lookup( + return (const struct bt_stream_class *) g_hash_table_lookup( fs_writer->stream_class_map, (gpointer) stream_class); } static -struct bt_stream *lookup_stream(struct writer_component *writer_component, - struct bt_stream *stream) +const struct bt_stream *lookup_stream(struct writer_component *writer_component, + const struct bt_stream *stream) { struct fs_writer *fs_writer = get_fs_writer_from_stream( writer_component, stream); BT_ASSERT(fs_writer); - return (struct bt_stream *) g_hash_table_lookup( + return (const struct bt_stream *) g_hash_table_lookup( fs_writer->stream_map, (gpointer) stream); } static -struct bt_stream *insert_new_stream( +const struct bt_stream *insert_new_stream( struct writer_component *writer_component, struct fs_writer *fs_writer, - struct bt_stream_class *stream_class, - struct bt_stream *stream) + const struct bt_stream_class *stream_class, + const struct bt_stream *stream) { - struct bt_stream *writer_stream = NULL; - struct bt_stream_class *writer_stream_class = NULL; + const struct bt_stream *writer_stream = NULL; + const struct bt_stream_class *writer_stream_class = NULL; struct bt_ctf_writer *ctf_writer = bt_object_get_ref(fs_writer->writer); writer_stream_class = lookup_stream_class(writer_component, @@ -474,20 +474,20 @@ end: } static -struct bt_event_class *get_event_class(struct writer_component *writer_component, - struct bt_stream_class *writer_stream_class, - struct bt_event_class *event_class) +const struct bt_event_class *get_event_class(struct writer_component *writer_component, + const struct bt_stream_class *writer_stream_class, + const struct bt_event_class *event_class) { return bt_stream_class_get_event_class_by_id(writer_stream_class, bt_event_class_get_id(event_class)); } static -struct bt_stream *get_writer_stream( +const struct bt_stream *get_writer_stream( struct writer_component *writer_component, - struct bt_packet *packet, struct bt_stream *stream) + const struct bt_packet *packet, const struct bt_stream *stream) { - struct bt_stream *writer_stream = NULL; + const struct bt_stream *writer_stream = NULL; writer_stream = lookup_stream(writer_component, stream); if (!writer_stream) { @@ -532,11 +532,11 @@ void writer_close(struct writer_component *writer_component, BT_HIDDEN enum bt_component_status writer_stream_begin( struct writer_component *writer_component, - struct bt_stream *stream) + const struct bt_stream *stream) { - struct bt_stream_class *stream_class = NULL; + const struct bt_stream_class *stream_class = NULL; struct fs_writer *fs_writer; - struct bt_stream *writer_stream = NULL; + const struct bt_stream *writer_stream = NULL; enum bt_component_status ret = BT_COMPONENT_STATUS_OK; enum fs_writer_stream_state *state; @@ -584,11 +584,11 @@ end: BT_HIDDEN enum bt_component_status writer_stream_end( struct writer_component *writer_component, - struct bt_stream *stream) + const struct bt_stream *stream) { - struct bt_stream_class *stream_class = NULL; + const struct bt_stream_class *stream_class = NULL; struct fs_writer *fs_writer; - struct bt_trace *trace = NULL; + const struct bt_trace *trace = NULL; enum bt_component_status ret = BT_COMPONENT_STATUS_OK; enum fs_writer_stream_state *state; @@ -635,9 +635,9 @@ end: BT_HIDDEN enum bt_component_status writer_new_packet( struct writer_component *writer_component, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_stream *stream = NULL, *writer_stream = NULL; + const struct bt_stream *stream = NULL, *writer_stream = NULL; enum bt_component_status ret = BT_COMPONENT_STATUS_OK; int int_ret; @@ -678,9 +678,9 @@ end: BT_HIDDEN enum bt_component_status writer_close_packet( struct writer_component *writer_component, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_stream *stream = NULL, *writer_stream = NULL; + const struct bt_stream *stream = NULL, *writer_stream = NULL; enum bt_component_status ret; stream = bt_packet_get_stream(packet); @@ -717,15 +717,15 @@ end: BT_HIDDEN enum bt_component_status writer_output_event( struct writer_component *writer_component, - struct bt_event *event) + const struct bt_event *event) { enum bt_component_status ret; - struct bt_event_class *event_class = NULL, *writer_event_class = NULL; - struct bt_stream *stream = NULL, *writer_stream = NULL; - struct bt_stream_class *stream_class = NULL, *writer_stream_class = NULL; - struct bt_event *writer_event = NULL; + const struct bt_event_class *event_class = NULL, *writer_event_class = NULL; + const struct bt_stream *stream = NULL, *writer_stream = NULL; + const struct bt_stream_class *stream_class = NULL, *writer_stream_class = NULL; + const struct bt_event *writer_event = NULL; int int_ret; - struct bt_trace *writer_trace = NULL; + const struct bt_trace *writer_trace = NULL; event_class = bt_event_get_class(event); BT_ASSERT(event_class); diff --git a/plugins/ctf/fs-sink/writer.c b/plugins/ctf/fs-sink/writer.c index 0142ed6d..b87d78d2 100644 --- a/plugins/ctf/fs-sink/writer.c +++ b/plugins/ctf/fs-sink/writer.c @@ -123,7 +123,7 @@ enum bt_component_status handle_notification( switch (bt_notification_get_type(notification)) { case BT_NOTIFICATION_TYPE_PACKET_BEGIN: { - struct bt_packet *packet = + const struct bt_packet *packet = bt_notification_packet_begin_get_packet(notification); if (!packet) { @@ -137,7 +137,7 @@ enum bt_component_status handle_notification( } case BT_NOTIFICATION_TYPE_PACKET_END: { - struct bt_packet *packet = + const struct bt_packet *packet = bt_notification_packet_end_get_packet(notification); if (!packet) { @@ -150,7 +150,7 @@ enum bt_component_status handle_notification( } case BT_NOTIFICATION_TYPE_EVENT: { - struct bt_event *event = bt_notification_event_get_event( + const struct bt_event *event = bt_notification_event_get_event( notification); if (!event) { @@ -166,7 +166,7 @@ enum bt_component_status handle_notification( } case BT_NOTIFICATION_TYPE_STREAM_BEGIN: { - struct bt_stream *stream = + const struct bt_stream *stream = bt_notification_stream_begin_get_stream(notification); if (!stream) { @@ -179,7 +179,7 @@ enum bt_component_status handle_notification( } case BT_NOTIFICATION_TYPE_STREAM_END: { - struct bt_stream *stream = + const struct bt_stream *stream = bt_notification_stream_end_get_stream(notification); if (!stream) { diff --git a/plugins/ctf/fs-sink/writer.h b/plugins/ctf/fs-sink/writer.h index 9469d398..2d40b7e4 100644 --- a/plugins/ctf/fs-sink/writer.h +++ b/plugins/ctf/fs-sink/writer.h @@ -59,8 +59,8 @@ enum fs_writer_stream_state { struct fs_writer { struct bt_ctf_writer *writer; - struct bt_trace *trace; - struct bt_trace *writer_trace; + const struct bt_trace *trace; + const struct bt_trace *writer_trace; struct writer_component *writer_component; int static_listener_id; int trace_static; @@ -76,19 +76,19 @@ void writer_close(struct writer_component *writer_component, struct fs_writer *fs_writer); BT_HIDDEN enum bt_component_status writer_output_event(struct writer_component *writer, - struct bt_event *event); + const struct bt_event *event); BT_HIDDEN enum bt_component_status writer_new_packet(struct writer_component *writer, - struct bt_packet *packet); + const struct bt_packet *packet); BT_HIDDEN enum bt_component_status writer_close_packet(struct writer_component *writer, - struct bt_packet *packet); + const struct bt_packet *packet); BT_HIDDEN enum bt_component_status writer_stream_begin(struct writer_component *writer, - struct bt_stream *stream); + const struct bt_stream *stream); BT_HIDDEN enum bt_component_status writer_stream_end(struct writer_component *writer, - struct bt_stream *stream); + const struct bt_stream *stream); BT_HIDDEN enum bt_component_status writer_component_init( diff --git a/plugins/ctf/fs-src/data-stream-file.c b/plugins/ctf/fs-src/data-stream-file.c index 1a95ae09..d046b0df 100644 --- a/plugins/ctf/fs-src/data-stream-file.c +++ b/plugins/ctf/fs-src/data-stream-file.c @@ -173,15 +173,15 @@ end: } static -struct bt_private_stream *medop_borrow_stream( - struct bt_private_stream_class *stream_class, int64_t stream_id, +struct bt_stream *medop_borrow_stream( + struct bt_stream_class *stream_class, int64_t stream_id, void *data) { struct ctf_fs_ds_file *ds_file = data; - struct bt_private_stream_class *ds_file_stream_class; - struct bt_private_stream *stream = NULL; + struct bt_stream_class *ds_file_stream_class; + struct bt_stream *stream = NULL; - ds_file_stream_class = bt_private_stream_borrow_class( + ds_file_stream_class = bt_stream_borrow_class( ds_file->stream); if (stream_class != ds_file_stream_class) { @@ -293,11 +293,11 @@ struct ctf_fs_ds_index_entry *ctf_fs_ds_index_add_new_entry( } static -int convert_cycles_to_ns(struct bt_private_clock_class *clock_class, +int convert_cycles_to_ns(struct bt_clock_class *clock_class, uint64_t cycles, int64_t *ns) { - return bt_clock_class_cycles_to_ns_from_origin( - bt_private_clock_class_as_clock_class(clock_class), cycles, ns); + return bt_clock_class_cycles_to_ns_from_origin(clock_class, cycles, + ns); } static @@ -626,7 +626,7 @@ struct ctf_fs_ds_file *ctf_fs_ds_file_create( struct ctf_fs_trace *ctf_fs_trace, struct bt_self_notification_iterator *pc_notif_iter, struct bt_notif_iter *notif_iter, - struct bt_private_stream *stream, const char *path) + struct bt_stream *stream, const char *path) { int ret; const size_t page_size = bt_common_get_page_size(); @@ -742,8 +742,8 @@ enum bt_notification_iterator_status ctf_fs_ds_file_next( BT_HIDDEN int ctf_fs_ds_file_borrow_packet_header_context_fields( struct ctf_fs_ds_file *ds_file, - struct bt_private_field **packet_header_field, - struct bt_private_field **packet_context_field) + struct bt_field **packet_header_field, + struct bt_field **packet_context_field) { enum bt_notif_iter_status notif_iter_status; int ret = 0; diff --git a/plugins/ctf/fs-src/data-stream-file.h b/plugins/ctf/fs-src/data-stream-file.h index 3a4daad8..a0ac6c74 100644 --- a/plugins/ctf/fs-src/data-stream-file.h +++ b/plugins/ctf/fs-src/data-stream-file.h @@ -97,7 +97,7 @@ struct ctf_fs_ds_file { struct ctf_fs_file *file; /* Owned by this */ - struct bt_private_stream *stream; + struct bt_stream *stream; /* Weak */ struct bt_notif_iter *notif_iter; @@ -130,13 +130,13 @@ struct ctf_fs_ds_file *ctf_fs_ds_file_create( struct ctf_fs_trace *ctf_fs_trace, struct bt_self_notification_iterator *pc_notif_iter, struct bt_notif_iter *notif_iter, - struct bt_private_stream *stream, const char *path); + struct bt_stream *stream, const char *path); BT_HIDDEN int ctf_fs_ds_file_borrow_packet_header_context_fields( struct ctf_fs_ds_file *ds_file, - struct bt_private_field **packet_header_field, - struct bt_private_field **packet_context_field); + struct bt_field **packet_header_field, + struct bt_field **packet_context_field); BT_HIDDEN void ctf_fs_ds_file_destroy(struct ctf_fs_ds_file *stream); diff --git a/plugins/ctf/fs-src/fs.c b/plugins/ctf/fs-src/fs.c index 2dfaa19f..a36179fb 100644 --- a/plugins/ctf/fs-src/fs.c +++ b/plugins/ctf/fs-src/fs.c @@ -518,7 +518,7 @@ void ctf_fs_ds_file_group_destroy(struct ctf_fs_ds_file_group *ds_file_group) static struct ctf_fs_ds_file_group *ctf_fs_ds_file_group_create( struct ctf_fs_trace *ctf_fs_trace, - struct bt_private_stream_class *stream_class, + struct bt_stream_class *stream_class, uint64_t stream_instance_id) { struct ctf_fs_ds_file_group *ds_file_group; @@ -612,7 +612,7 @@ static int add_ds_file_to_ds_file_group(struct ctf_fs_trace *ctf_fs_trace, const char *path) { - struct bt_private_stream_class *stream_class = NULL; + struct bt_stream_class *stream_class = NULL; int64_t stream_instance_id = -1; int64_t begin_ns = -1; struct ctf_fs_ds_file_group *ds_file_group = NULL; @@ -658,8 +658,7 @@ int add_ds_file_to_ds_file_group(struct ctf_fs_trace *ctf_fs_trace, if (props.snapshots.beginning_clock != UINT64_C(-1)) { BT_ASSERT(sc->default_clock_class); ret = bt_clock_class_cycles_to_ns_from_origin( - bt_private_clock_class_as_clock_class( - sc->default_clock_class), + sc->default_clock_class, props.snapshots.beginning_clock, &begin_ns); if (ret) { BT_LOGE("Cannot convert clock cycles to nanoseconds from origin (`%s`).", @@ -860,13 +859,13 @@ int create_ds_file_groups(struct ctf_fs_trace *ctf_fs_trace) if (ds_file_group->stream_id == UINT64_C(-1)) { /* No stream ID: use 0 */ - ds_file_group->stream = bt_private_stream_create_with_id( + ds_file_group->stream = bt_stream_create_with_id( ds_file_group->stream_class, ctf_fs_trace->next_stream_id); ctf_fs_trace->next_stream_id++; } else { /* Specific stream ID */ - ds_file_group->stream = bt_private_stream_create_with_id( + ds_file_group->stream = bt_stream_create_with_id( ds_file_group->stream_class, (uint64_t) ds_file_group->stream_id); } @@ -879,7 +878,7 @@ int create_ds_file_groups(struct ctf_fs_trace *ctf_fs_trace) goto error; } - ret = bt_private_stream_set_name(ds_file_group->stream, + ret = bt_stream_set_name(ds_file_group->stream, name->str); if (ret) { BT_LOGE("Cannot set stream's name: " @@ -959,7 +958,7 @@ struct ctf_fs_trace *ctf_fs_trace_create(const char *path, const char *name, * trace needs. There won't be any more. Therefore it is safe to * make this trace static. */ - (void) bt_private_trace_make_static(ctf_fs_trace->metadata->trace); + (void) bt_trace_make_static(ctf_fs_trace->metadata->trace); goto end; diff --git a/plugins/ctf/fs-src/fs.h b/plugins/ctf/fs-src/fs.h index c5590d7e..4b4dcc01 100644 --- a/plugins/ctf/fs-src/fs.h +++ b/plugins/ctf/fs-src/fs.h @@ -53,7 +53,7 @@ struct ctf_fs_metadata { struct ctf_metadata_decoder *decoder; /* Owned by this */ - struct bt_private_trace *trace; + struct bt_trace *trace; /* Weak (owned by `decoder` above) */ struct ctf_trace_class *tc; @@ -111,10 +111,10 @@ struct ctf_fs_ds_file_group { GPtrArray *ds_file_infos; /* Owned by this */ - struct bt_private_stream_class *stream_class; + struct bt_stream_class *stream_class; /* Owned by this */ - struct bt_private_stream *stream; + struct bt_stream *stream; /* Stream (instance) ID; -1ULL means none */ uint64_t stream_id; diff --git a/plugins/ctf/fs-src/query.c b/plugins/ctf/fs-src/query.c index dd143366..6f2017b2 100644 --- a/plugins/ctf/fs-src/query.c +++ b/plugins/ctf/fs-src/query.c @@ -226,12 +226,12 @@ end: } static -int add_stream_ids(struct bt_value *info, struct bt_stream *stream) +int add_stream_ids(struct bt_value *info, const struct bt_stream *stream) { int ret = 0; int64_t stream_class_id, stream_instance_id; enum bt_value_status status; - struct bt_stream_class *stream_class = NULL; + const struct bt_stream_class *stream_class = NULL; stream_instance_id = bt_stream_get_id(stream); if (stream_instance_id != -1) { @@ -243,7 +243,7 @@ int add_stream_ids(struct bt_value *info, struct bt_stream *stream) } } - stream_class = bt_stream_borrow_class(stream); + stream_class = bt_stream_borrow_class_const(stream); if (!stream_class) { ret = -1; goto end; @@ -331,8 +331,7 @@ int populate_stream_info(struct ctf_fs_ds_file_group *group, goto end; } - ret = add_stream_ids(group_info, - bt_private_stream_as_stream(group->stream)); + ret = add_stream_ids(group_info, group->stream); if (ret) { goto end; } diff --git a/plugins/ctf/lttng-live/data-stream.c b/plugins/ctf/lttng-live/data-stream.c index 944adf7c..16927151 100644 --- a/plugins/ctf/lttng-live/data-stream.c +++ b/plugins/ctf/lttng-live/data-stream.c @@ -72,8 +72,8 @@ enum bt_notif_iter_medium_status medop_request_bytes( } static -struct bt_stream *medop_get_stream( - struct bt_stream_class *stream_class, +const struct bt_stream *medop_get_stream( + const struct bt_stream_class *stream_class, uint64_t stream_id, void *data) { struct lttng_live_stream_iterator *lttng_live_stream = data; diff --git a/plugins/ctf/lttng-live/lttng-live-internal.h b/plugins/ctf/lttng-live/lttng-live-internal.h index edad6474..a698e6be 100644 --- a/plugins/ctf/lttng-live/lttng-live-internal.h +++ b/plugins/ctf/lttng-live/lttng-live-internal.h @@ -69,7 +69,7 @@ struct lttng_live_stream_iterator_generic { struct lttng_live_stream_iterator { struct lttng_live_stream_iterator_generic p; - struct bt_stream *stream; + const struct bt_stream *stream; struct lttng_live_trace *trace; struct bt_private_port *port; /* weak ref. */ @@ -138,7 +138,7 @@ struct lttng_live_trace { uint64_t id; /* ctf trace ID within the session. */ - struct bt_trace *trace; + const struct bt_trace *trace; struct lttng_live_metadata *metadata; struct bt_clock_class_priority_map *cc_prio_map; diff --git a/plugins/ctf/lttng-live/lttng-live.c b/plugins/ctf/lttng-live/lttng-live.c index 99f6d51c..d8dd3fc7 100644 --- a/plugins/ctf/lttng-live/lttng-live.c +++ b/plugins/ctf/lttng-live/lttng-live.c @@ -562,7 +562,7 @@ enum bt_lttng_live_iterator_status emit_inactivity_notification( enum bt_lttng_live_iterator_status ret = BT_LTTNG_LIVE_ITERATOR_STATUS_OK; struct lttng_live_trace *trace; - struct bt_clock_class *clock_class = NULL; + const struct bt_clock_class *clock_class = NULL; struct bt_clock_value *clock_value = NULL; struct bt_notification *notif = NULL; int retval; @@ -607,7 +607,7 @@ enum bt_lttng_live_iterator_status lttng_live_iterator_next_handle_one_quiescent { enum bt_lttng_live_iterator_status ret = BT_LTTNG_LIVE_ITERATOR_STATUS_OK; - struct bt_clock_class *clock_class = NULL; + const struct bt_clock_class *clock_class = NULL; struct bt_clock_value *clock_value = NULL; if (lttng_live_stream->state != LTTNG_LIVE_STREAM_QUIESCENT) { diff --git a/plugins/ctf/lttng-live/metadata.c b/plugins/ctf/lttng-live/metadata.c index 93b8adda..4cfd8830 100644 --- a/plugins/ctf/lttng-live/metadata.c +++ b/plugins/ctf/lttng-live/metadata.c @@ -72,7 +72,7 @@ enum bt_lttng_live_iterator_status lttng_live_update_clock_map( BT_ASSERT(count >= 0); for (i = 0; i < count; i++) { - struct bt_clock_class *clock_class = + const struct bt_clock_class *clock_class = bt_trace_get_clock_class_by_index(trace->trace, i); BT_ASSERT(clock_class); diff --git a/plugins/libctfcopytrace/clock-fields.c b/plugins/libctfcopytrace/clock-fields.c index 0096527e..1e28c899 100644 --- a/plugins/libctfcopytrace/clock-fields.c +++ b/plugins/libctfcopytrace/clock-fields.c @@ -37,54 +37,54 @@ static int find_update_struct_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class); + const struct bt_clock_class *writer_clock_class); static int find_update_array_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class); + const struct bt_clock_class *writer_clock_class); static int find_update_enum_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class); + const struct bt_clock_class *writer_clock_class); static int find_update_sequence_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class); + const struct bt_clock_class *writer_clock_class); static int find_update_variant_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class); + const struct bt_clock_class *writer_clock_class); static int copy_find_clock_int_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field); + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field); static int copy_find_clock_struct_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field); + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field); static int copy_find_clock_array_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field); + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field); static int copy_find_clock_sequence_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field); + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field); static -int copy_find_clock_variant_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field_type *type, struct bt_field *copy_field); +int copy_find_clock_variant_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + struct bt_field_type *type, const struct bt_field *copy_field); static -int copy_find_clock_enum_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field_type *type, struct bt_field *copy_field); +int copy_find_clock_enum_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + struct bt_field_type *type, const struct bt_field *copy_field); static int update_header_clock_int_field_type(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { - struct bt_clock_class *clock = NULL; + const struct bt_clock_class *clock = NULL; int ret; clock = bt_field_type_integer_get_mapped_clock_class(type); @@ -112,7 +112,7 @@ end: static int find_update_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int ret; @@ -147,7 +147,7 @@ int find_update_clock_fields(FILE *err, struct bt_field_type *type, static int find_update_variant_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int count, i, ret; struct bt_field_type *entry_type = NULL; @@ -184,7 +184,7 @@ end: static int find_update_struct_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int count, i, ret; struct bt_field_type *entry_type = NULL; @@ -220,7 +220,7 @@ end: static int find_update_sequence_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int ret; struct bt_field_type *entry_type = NULL; @@ -246,7 +246,7 @@ end: static int find_update_array_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int ret = 0; struct bt_field_type *entry_type = NULL; @@ -268,7 +268,7 @@ end: static int find_update_enum_clock_fields(FILE *err, struct bt_field_type *type, - struct bt_clock_class *writer_clock_class) + const struct bt_clock_class *writer_clock_class) { int ret; struct bt_field_type *entry_type = NULL; @@ -295,10 +295,10 @@ end: BT_HIDDEN struct bt_field_type *override_header_type(FILE *err, struct bt_field_type *type, - struct bt_trace *writer_trace) + const struct bt_trace *writer_trace) { struct bt_field_type *new_type = NULL; - struct bt_clock_class *writer_clock_class = NULL; + const struct bt_clock_class *writer_clock_class = NULL; int ret; /* FIXME multi-clock? */ @@ -334,9 +334,9 @@ end: } static -int copy_float_field(FILE *err, struct bt_field *field, +int copy_float_field(FILE *err, const struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_field *copy_field) { double value; int ret; @@ -364,9 +364,9 @@ end: } static -int copy_string_field(FILE *err, struct bt_field *field, +int copy_string_field(FILE *err, const struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_field *copy_field) { const char *value; int ret; @@ -394,9 +394,9 @@ end: } BT_HIDDEN -int copy_override_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field *copy_field) +int copy_override_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + const struct bt_field *copy_field) { struct bt_field_type *type = NULL; int ret = 0; @@ -447,12 +447,12 @@ int copy_override_field(FILE *err, struct bt_event *event, } static -int copy_find_clock_enum_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field_type *type, struct bt_field *copy_field) +int copy_find_clock_enum_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + struct bt_field_type *type, const struct bt_field *copy_field) { int ret; - struct bt_field *container = NULL, *copy_container = NULL; + const struct bt_field *container = NULL, *copy_container = NULL; container = bt_field_enumeration_get_container(field); BT_ASSERT(container); @@ -480,13 +480,13 @@ end: } static -int copy_find_clock_variant_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field_type *type, struct bt_field *copy_field) +int copy_find_clock_variant_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + struct bt_field_type *type, const struct bt_field *copy_field) { int ret; - struct bt_field *tag = NULL; - struct bt_field *variant_field = NULL, *copy_variant_field = NULL; + const struct bt_field *tag = NULL; + const struct bt_field *variant_field = NULL, *copy_variant_field = NULL; tag = bt_field_variant_get_tag(field); BT_ASSERT(tag); @@ -521,14 +521,14 @@ end: static int copy_find_clock_sequence_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field) { int ret; uint64_t i, count; - struct bt_field *length_field = NULL; - struct bt_field *entry_field = NULL, *entry_copy = NULL; + const struct bt_field *length_field = NULL; + const struct bt_field *entry_field = NULL, *entry_copy = NULL; length_field = bt_field_sequence_get_length(field); BT_ASSERT(length_field); @@ -580,12 +580,12 @@ end: static int copy_find_clock_array_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field) { int ret, count, i; - struct bt_field *entry_field = NULL, *entry_copy = NULL; + const struct bt_field *entry_field = NULL, *entry_copy = NULL; count = bt_field_type_array_get_length(type); for (i = 0; i < count; i++) { @@ -623,13 +623,13 @@ end: static int copy_find_clock_struct_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field) { int count, i, ret; struct bt_field_type *entry_type = NULL; - struct bt_field *entry_field = NULL, *entry_copy = NULL; + const struct bt_field *entry_field = NULL, *entry_copy = NULL; count = bt_field_type_structure_get_field_count(type); for (i = 0; i < count; i++) { @@ -675,8 +675,8 @@ end: } static -int set_int_value(FILE *err, struct bt_field *field, - struct bt_field *copy_field, +int set_int_value(FILE *err, const struct bt_field *field, + const struct bt_field *copy_field, struct bt_field_type *type) { uint64_t uvalue; @@ -720,11 +720,11 @@ end: return ret; } -struct bt_clock_class *stream_class_get_clock_class(FILE *err, - struct bt_stream_class *stream_class) +const struct bt_clock_class *stream_class_get_clock_class(FILE *err, + const struct bt_stream_class *stream_class) { - struct bt_trace *trace = NULL; - struct bt_clock_class *clock_class = NULL; + const struct bt_trace *trace = NULL; + const struct bt_clock_class *clock_class = NULL; trace = bt_stream_class_get_trace(stream_class); BT_ASSERT(trace); @@ -737,11 +737,11 @@ struct bt_clock_class *stream_class_get_clock_class(FILE *err, return clock_class; } -struct bt_clock_class *event_get_clock_class(FILE *err, struct bt_event *event) +const struct bt_clock_class *event_get_clock_class(FILE *err, const struct bt_event *event) { - struct bt_event_class *event_class = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_clock_class *clock_class = NULL; + const struct bt_event_class *event_class = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_clock_class *clock_class = NULL; event_class = bt_event_get_class(event); BT_ASSERT(event_class); @@ -758,11 +758,11 @@ struct bt_clock_class *event_get_clock_class(FILE *err, struct bt_event *event) static int copy_find_clock_int_field(FILE *err, - struct bt_event *event, struct bt_event *writer_event, - struct bt_field *field, struct bt_field_type *type, - struct bt_field *copy_field) + const struct bt_event *event, const struct bt_event *writer_event, + const struct bt_field *field, struct bt_field_type *type, + const struct bt_field *copy_field) { - struct bt_clock_class *clock_class = NULL, *writer_clock_class = NULL; + const struct bt_clock_class *clock_class = NULL, *writer_clock_class = NULL; struct bt_clock_value *clock_value = NULL, *writer_clock_value = NULL; uint64_t value; int ret; diff --git a/plugins/libctfcopytrace/clock-fields.h b/plugins/libctfcopytrace/clock-fields.h index 54dcb9af..b3643501 100644 --- a/plugins/libctfcopytrace/clock-fields.h +++ b/plugins/libctfcopytrace/clock-fields.h @@ -38,20 +38,20 @@ extern "C" { BT_HIDDEN struct bt_field_type *override_header_type(FILE *err, struct bt_field_type *type, - struct bt_trace *writer_trace); + const struct bt_trace *writer_trace); BT_HIDDEN -int copy_override_field(FILE *err, struct bt_event *event, - struct bt_event *writer_event, struct bt_field *field, - struct bt_field *copy_field); +int copy_override_field(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event, const struct bt_field *field, + const struct bt_field *copy_field); BT_HIDDEN -struct bt_clock_class *stream_class_get_clock_class(FILE *err, - struct bt_stream_class *stream_class); +const struct bt_clock_class *stream_class_get_clock_class(FILE *err, + const struct bt_stream_class *stream_class); BT_HIDDEN -struct bt_clock_class *event_get_clock_class(FILE *err, - struct bt_event *event); +const struct bt_clock_class *event_get_clock_class(FILE *err, + const struct bt_event *event); #ifdef __cplusplus } diff --git a/plugins/libctfcopytrace/ctfcopytrace.c b/plugins/libctfcopytrace/ctfcopytrace.c index 316f8884..fc3f8592 100644 --- a/plugins/libctfcopytrace/ctfcopytrace.c +++ b/plugins/libctfcopytrace/ctfcopytrace.c @@ -36,14 +36,14 @@ #include "clock-fields.h" BT_HIDDEN -struct bt_clock_class *ctf_copy_clock_class(FILE *err, - struct bt_clock_class *clock_class) +const struct bt_clock_class *ctf_copy_clock_class(FILE *err, + const struct bt_clock_class *clock_class) { int64_t offset, offset_s; int int_ret; uint64_t u64_ret; const char *name, *description; - struct bt_clock_class *writer_clock_class = NULL; + const struct bt_clock_class *writer_clock_class = NULL; BT_ASSERT(err && clock_class); @@ -95,9 +95,9 @@ end: BT_HIDDEN enum bt_component_status ctf_copy_clock_classes(FILE *err, - struct bt_trace *writer_trace, - struct bt_stream_class *writer_stream_class, - struct bt_trace *trace) + const struct bt_trace *writer_trace, + const struct bt_stream_class *writer_stream_class, + const struct bt_trace *trace) { enum bt_component_status ret; int int_ret, clock_class_count, i; @@ -105,8 +105,8 @@ enum bt_component_status ctf_copy_clock_classes(FILE *err, clock_class_count = bt_trace_get_clock_class_count(trace); for (i = 0; i < clock_class_count; i++) { - struct bt_clock_class *writer_clock_class; - struct bt_clock_class *clock_class = + const struct bt_clock_class *writer_clock_class; + const struct bt_clock_class *clock_class = bt_trace_get_clock_class_by_index(trace, i); BT_ASSERT(clock_class); @@ -140,7 +140,7 @@ end: } static -void replace_clock_classes(struct bt_trace *trace_copy, +void replace_clock_classes(const struct bt_trace *trace_copy, struct bt_field_type *field_type) { int ret; @@ -151,9 +151,9 @@ void replace_clock_classes(struct bt_trace *trace_copy, switch (bt_field_type_get_type_id(field_type)) { case BT_FIELD_TYPE_ID_INTEGER: { - struct bt_clock_class *mapped_clock_class = + const struct bt_clock_class *mapped_clock_class = bt_field_type_integer_get_mapped_clock_class(field_type); - struct bt_clock_class *clock_class_copy = NULL; + const struct bt_clock_class *clock_class_copy = NULL; const char *name; if (!mapped_clock_class) { @@ -246,11 +246,11 @@ void replace_clock_classes(struct bt_trace *trace_copy, } BT_HIDDEN -struct bt_event_class *ctf_copy_event_class(FILE *err, - struct bt_trace *trace_copy, - struct bt_event_class *event_class) +const struct bt_event_class *ctf_copy_event_class(FILE *err, + const struct bt_trace *trace_copy, + const struct bt_event_class *event_class) { - struct bt_event_class *writer_event_class = NULL; + const struct bt_event_class *writer_event_class = NULL; struct bt_field_type *context = NULL, *payload_type = NULL; const char *name; int ret; @@ -260,7 +260,7 @@ struct bt_event_class *ctf_copy_event_class(FILE *err, name = bt_event_class_get_name(event_class); - writer_event_class = bt_private_event_class_create(name); + writer_event_class = bt_event_class_create(name); BT_ASSERT(writer_event_class); id = bt_event_class_get_id(event_class); @@ -278,7 +278,7 @@ struct bt_event_class *ctf_copy_event_class(FILE *err, goto error; } - ret = bt_private_event_class_set_log_level(writer_event_class, log_level); + ret = bt_event_class_set_log_level(writer_event_class, log_level); if (ret) { BT_LOGE_STR("Failed to set log_level."); goto error; @@ -286,7 +286,7 @@ struct bt_event_class *ctf_copy_event_class(FILE *err, emf_uri = bt_event_class_get_emf_uri(event_class); if (emf_uri) { - ret = bt_private_event_class_set_emf_uri(writer_event_class, + ret = bt_event_class_set_emf_uri(writer_event_class, emf_uri); if (ret) { BT_LOGE_STR("Failed to set emf uri."); @@ -343,13 +343,13 @@ end: BT_HIDDEN enum bt_component_status ctf_copy_event_classes(FILE *err, - struct bt_stream_class *stream_class, - struct bt_stream_class *writer_stream_class) + const struct bt_stream_class *stream_class, + const struct bt_stream_class *writer_stream_class) { enum bt_component_status ret = BT_COMPONENT_STATUS_OK; - struct bt_event_class *event_class = NULL, *writer_event_class = NULL; + const struct bt_event_class *event_class = NULL, *writer_event_class = NULL; int count, i; - struct bt_trace *writer_trace = + const struct bt_trace *writer_trace = bt_stream_class_get_trace(writer_stream_class); BT_ASSERT(writer_trace); @@ -409,14 +409,14 @@ end: } BT_HIDDEN -struct bt_stream_class *ctf_copy_stream_class(FILE *err, - struct bt_stream_class *stream_class, - struct bt_trace *writer_trace, +const struct bt_stream_class *ctf_copy_stream_class(FILE *err, + const struct bt_stream_class *stream_class, + const struct bt_trace *writer_trace, bool override_ts64) { struct bt_field_type *type = NULL; struct bt_field_type *type_copy = NULL; - struct bt_stream_class *writer_stream_class = NULL; + const struct bt_stream_class *writer_stream_class = NULL; int ret_int; const char *name = bt_stream_class_get_name(stream_class); @@ -510,10 +510,10 @@ end: } BT_HIDDEN -int ctf_stream_copy_packet_header(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream) +int ctf_stream_copy_packet_header(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream) { - struct bt_field *packet_header = NULL, *writer_packet_header = NULL; + const struct bt_field *packet_header = NULL, *writer_packet_header = NULL; int ret = 0; packet_header = bt_packet_get_header(packet); @@ -545,10 +545,10 @@ end: } BT_HIDDEN -int ctf_packet_copy_header(FILE *err, struct bt_packet *packet, - struct bt_packet *writer_packet) +int ctf_packet_copy_header(FILE *err, const struct bt_packet *packet, + const struct bt_packet *writer_packet) { - struct bt_field *packet_header = NULL, *writer_packet_header = NULL; + const struct bt_field *packet_header = NULL, *writer_packet_header = NULL; int ret = 0; packet_header = bt_packet_get_header(packet); @@ -579,10 +579,10 @@ end: } BT_HIDDEN -int ctf_stream_copy_packet_context(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream) +int ctf_stream_copy_packet_context(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream) { - struct bt_field *packet_context = NULL, *writer_packet_context = NULL; + const struct bt_field *packet_context = NULL, *writer_packet_context = NULL; int ret = 0; packet_context = bt_packet_get_context(packet); @@ -614,11 +614,11 @@ end: } BT_HIDDEN -int ctf_packet_copy_context(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream, - struct bt_packet *writer_packet) +int ctf_packet_copy_context(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream, + const struct bt_packet *writer_packet) { - struct bt_field *packet_context = NULL, *writer_packet_context = NULL; + const struct bt_field *packet_context = NULL, *writer_packet_context = NULL; int ret = 0; packet_context = bt_packet_get_context(packet); @@ -649,16 +649,16 @@ end: } BT_HIDDEN -int ctf_copy_event_header(FILE *err, struct bt_event *event, - struct bt_event_class *writer_event_class, - struct bt_event *writer_event, - struct bt_field *event_header) +int ctf_copy_event_header(FILE *err, const struct bt_event *event, + const struct bt_event_class *writer_event_class, + const struct bt_event *writer_event, + const struct bt_field *event_header) { - struct bt_clock_class *clock_class = NULL, *writer_clock_class = NULL; + const struct bt_clock_class *clock_class = NULL, *writer_clock_class = NULL; struct bt_clock_value *clock_value = NULL, *writer_clock_value = NULL; int ret; - struct bt_field *writer_event_header = NULL; + const struct bt_field *writer_event_header = NULL; uint64_t value; clock_class = event_get_clock_class(err, event); @@ -722,11 +722,11 @@ end: } static -struct bt_trace *event_class_get_trace(FILE *err, - struct bt_event_class *event_class) +const struct bt_trace *event_class_get_trace(FILE *err, + const struct bt_event_class *event_class) { - struct bt_trace *trace = NULL; - struct bt_stream_class *stream_class = NULL; + const struct bt_trace *trace = NULL; + const struct bt_stream_class *stream_class = NULL; stream_class = bt_event_class_get_stream_class(event_class); BT_ASSERT(stream_class); @@ -739,13 +739,13 @@ struct bt_trace *event_class_get_trace(FILE *err, } BT_HIDDEN -struct bt_event *ctf_copy_event(FILE *err, struct bt_event *event, - struct bt_event_class *writer_event_class, +const struct bt_event *ctf_copy_event(FILE *err, const struct bt_event *event, + const struct bt_event_class *writer_event_class, bool override_ts64) { - struct bt_event *writer_event = NULL; - struct bt_field *field = NULL, *copy_field = NULL; - struct bt_trace *writer_trace = NULL; + const struct bt_event *writer_event = NULL; + const struct bt_field *field = NULL, *copy_field = NULL; + const struct bt_trace *writer_trace = NULL; int ret; writer_event = bt_event_create(writer_event_class); @@ -855,8 +855,8 @@ end: } BT_HIDDEN -enum bt_component_status ctf_copy_trace(FILE *err, struct bt_trace *trace, - struct bt_trace *writer_trace) +enum bt_component_status ctf_copy_trace(FILE *err, const struct bt_trace *trace, + const struct bt_trace *writer_trace) { enum bt_component_status ret = BT_COMPONENT_STATUS_OK; int field_count, i, int_ret; diff --git a/plugins/libctfcopytrace/ctfcopytrace.h b/plugins/libctfcopytrace/ctfcopytrace.h index a02e33d0..c57f488b 100644 --- a/plugins/libctfcopytrace/ctfcopytrace.h +++ b/plugins/libctfcopytrace/ctfcopytrace.h @@ -40,8 +40,8 @@ extern "C" { * * Returns NULL on error. */ -struct bt_clock_class *ctf_copy_clock_class(FILE *err, - struct bt_clock_class *clock_class); +const struct bt_clock_class *ctf_copy_clock_class(FILE *err, + const struct bt_clock_class *clock_class); /* * Copy all the clock classes from the input trace and add them to the writer @@ -52,9 +52,9 @@ struct bt_clock_class *ctf_copy_clock_class(FILE *err, */ BT_HIDDEN enum bt_component_status ctf_copy_clock_classes(FILE *err, - struct bt_trace *writer_trace, - struct bt_stream_class *writer_stream_class, - struct bt_trace *trace); + const struct bt_trace *writer_trace, + const struct bt_stream_class *writer_stream_class, + const struct bt_trace *trace); /* * Create a copy of the event class passed in parameter. @@ -62,9 +62,9 @@ enum bt_component_status ctf_copy_clock_classes(FILE *err, * Returns NULL on error. */ BT_HIDDEN -struct bt_event_class *ctf_copy_event_class(FILE *err, - struct bt_trace *trace_copy, - struct bt_event_class *event_class); +const struct bt_event_class *ctf_copy_event_class(FILE *err, + const struct bt_trace *trace_copy, + const struct bt_event_class *event_class); /* * Copy all the event classes from the input stream class and add them to the @@ -75,8 +75,8 @@ struct bt_event_class *ctf_copy_event_class(FILE *err, */ BT_HIDDEN enum bt_component_status ctf_copy_event_classes(FILE *err, - struct bt_stream_class *stream_class, - struct bt_stream_class *writer_stream_class); + const struct bt_stream_class *stream_class, + const struct bt_stream_class *writer_stream_class); /* * Create a copy of the stream class passed in parameter. @@ -84,9 +84,9 @@ enum bt_component_status ctf_copy_event_classes(FILE *err, * Returns NULL or error. */ BT_HIDDEN -struct bt_stream_class *ctf_copy_stream_class(FILE *err, - struct bt_stream_class *stream_class, - struct bt_trace *writer_trace, +const struct bt_stream_class *ctf_copy_stream_class(FILE *err, + const struct bt_stream_class *stream_class, + const struct bt_trace *writer_trace, bool override_ts64); /* @@ -98,8 +98,8 @@ struct bt_stream_class *ctf_copy_stream_class(FILE *err, */ BT_HIDDEN enum bt_component_status ctf_copy_packet_context_field(FILE *err, - struct bt_field *field, const char *field_name, - struct bt_field *writer_packet_context, + const struct bt_field *field, const char *field_name, + const struct bt_field *writer_packet_context, struct bt_field_type *writer_packet_context_type); @@ -110,8 +110,8 @@ enum bt_component_status ctf_copy_packet_context_field(FILE *err, * Returns 0 on success or -1 on error. */ BT_HIDDEN -int ctf_stream_copy_packet_header(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream); +int ctf_stream_copy_packet_header(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream); /* * Copy the packet_header from the packet passed in parameter and assign it @@ -120,8 +120,8 @@ int ctf_stream_copy_packet_header(FILE *err, struct bt_packet *packet, * Returns 0 on success or -1 on error. */ BT_HIDDEN -int ctf_packet_copy_header(FILE *err, struct bt_packet *packet, - struct bt_packet *writer_packet); +int ctf_packet_copy_header(FILE *err, const struct bt_packet *packet, + const struct bt_packet *writer_packet); /* * Copy all the field values of the packet context from the packet passed in @@ -130,8 +130,8 @@ int ctf_packet_copy_header(FILE *err, struct bt_packet *packet, * Returns 0 on success or -1 on error. */ BT_HIDDEN -int ctf_stream_copy_packet_context(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream); +int ctf_stream_copy_packet_context(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream); /* * Copy all the field values of the packet context from the packet passed in @@ -140,9 +140,9 @@ int ctf_stream_copy_packet_context(FILE *err, struct bt_packet *packet, * Returns 0 on success or -1 on error. */ BT_HIDDEN -int ctf_packet_copy_context(FILE *err, struct bt_packet *packet, - struct bt_stream *writer_stream, - struct bt_packet *writer_packet); +int ctf_packet_copy_context(FILE *err, const struct bt_packet *packet, + const struct bt_stream *writer_stream, + const struct bt_packet *writer_packet); /* * Create and return a copy of the event passed in parameter. The caller has to @@ -151,8 +151,8 @@ int ctf_packet_copy_context(FILE *err, struct bt_packet *packet, * Returns NULL on error. */ BT_HIDDEN -struct bt_event *ctf_copy_event(FILE *err, struct bt_event *event, - struct bt_event_class *writer_event_class, +const struct bt_event *ctf_copy_event(FILE *err, const struct bt_event *event, + const struct bt_event_class *writer_event_class, bool override_ts64); /* @@ -161,10 +161,10 @@ struct bt_event *ctf_copy_event(FILE *err, struct bt_event *event, * Returns 0 on success, -1 on error. */ BT_HIDDEN -int ctf_copy_event_header(FILE *err, struct bt_event *event, - struct bt_event_class *writer_event_class, - struct bt_event *writer_event, - struct bt_field *event_header); +int ctf_copy_event_header(FILE *err, const struct bt_event *event, + const struct bt_event_class *writer_event_class, + const struct bt_event *writer_event, + const struct bt_field *event_header); /* * Copy the environment and the packet header from the input trace to the @@ -174,8 +174,8 @@ int ctf_copy_event_header(FILE *err, struct bt_event *event, * error. */ BT_HIDDEN -enum bt_component_status ctf_copy_trace(FILE *err, struct bt_trace *trace, - struct bt_trace *writer_trace); +enum bt_component_status ctf_copy_trace(FILE *err, const struct bt_trace *trace, + const struct bt_trace *writer_trace); #ifdef __cplusplus } diff --git a/plugins/lttng-utils/copy.c b/plugins/lttng-utils/copy.c index 5467d384..adb6619e 100644 --- a/plugins/lttng-utils/copy.c +++ b/plugins/lttng-utils/copy.c @@ -37,25 +37,25 @@ #include "debug-info.h" static -struct bt_stream *insert_new_stream( +const struct bt_stream *insert_new_stream( struct debug_info_iterator *debug_it, - struct bt_stream *stream, + const struct bt_stream *stream, struct debug_info_trace *di_trace); static -void unref_stream(struct bt_stream *stream) +void unref_stream(const struct bt_stream *stream) { bt_object_put_ref(stream); } static -void unref_packet(struct bt_packet *packet) +void unref_packet(const struct bt_packet *packet) { bt_object_put_ref(packet); } static -void unref_stream_class(struct bt_stream_class *stream_class) +void unref_stream_class(const struct bt_stream_class *stream_class) { bt_object_put_ref(stream_class); } @@ -73,11 +73,11 @@ void destroy_stream_state_key(gpointer key) } static -struct bt_field *get_payload_field(FILE *err, - struct bt_event *event, const char *field_name) +const struct bt_field *get_payload_field(FILE *err, + const struct bt_event *event, const char *field_name) { - struct bt_field *field = NULL, *payload = NULL; - struct bt_field_class *payload_class = NULL; + const struct bt_field *field = NULL, *payload = NULL; + const struct bt_field_class *payload_class = NULL; payload = bt_event_get_payload(event, NULL); BT_ASSERT(payload); @@ -100,11 +100,11 @@ end: } static -struct bt_field *get_stream_event_context_field(FILE *err, - struct bt_event *event, const char *field_name) +const struct bt_field *get_stream_event_context_field(FILE *err, + const struct bt_event *event, const char *field_name) { - struct bt_field *field = NULL, *sec = NULL; - struct bt_field_class *sec_class = NULL; + const struct bt_field *field = NULL, *sec = NULL; + const struct bt_field_class *sec_class = NULL; sec = bt_event_get_stream_event_context(event); if (!sec) { @@ -130,12 +130,12 @@ end: BT_HIDDEN int get_stream_event_context_unsigned_int_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint64_t *value) { int ret; - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; field = get_stream_event_context_field(err, event, field_name); if (!field) { @@ -174,11 +174,11 @@ end: } BT_HIDDEN -int get_stream_event_context_int_field_value(FILE *err, struct bt_event *event, +int get_stream_event_context_int_field_value(FILE *err, const struct bt_event *event, const char *field_name, int64_t *value) { - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; int ret; field = get_stream_event_context_field(err, event, field_name); @@ -213,11 +213,11 @@ end: BT_HIDDEN int get_payload_unsigned_int_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint64_t *value) { - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; int ret; field = get_payload_field(err, event, field_name); @@ -258,11 +258,11 @@ end: } BT_HIDDEN -int get_payload_int_field_value(FILE *err, struct bt_event *event, +int get_payload_int_field_value(FILE *err, const struct bt_event *event, const char *field_name, int64_t *value) { - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; int ret; field = get_payload_field(err, event, field_name); @@ -303,11 +303,11 @@ end: BT_HIDDEN int get_payload_string_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, const char **value) { - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; int ret; /* @@ -347,12 +347,12 @@ end: BT_HIDDEN int get_payload_build_id_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint8_t **build_id, uint64_t *build_id_len) { - struct bt_field *field = NULL, *seq_len = NULL; - struct bt_field_class *field_class = NULL; - struct bt_field *seq_field = NULL; + const struct bt_field *field = NULL, *seq_len = NULL; + const struct bt_field_class *field_class = NULL; + const struct bt_field *seq_field = NULL; uint64_t i; int ret; @@ -424,7 +424,7 @@ end: static struct debug_info *lookup_trace_debug_info(struct debug_info_iterator *debug_it, - struct bt_trace *writer_trace, + const struct bt_trace *writer_trace, struct debug_info_trace *di_trace) { return (struct debug_info *) g_hash_table_lookup( @@ -434,7 +434,7 @@ struct debug_info *lookup_trace_debug_info(struct debug_info_iterator *debug_it, static struct debug_info *insert_new_debug_info(struct debug_info_iterator *debug_it, - struct bt_trace *writer_trace, + const struct bt_trace *writer_trace, struct debug_info_trace *di_trace) { struct debug_info *debug_info = NULL; @@ -487,7 +487,7 @@ end: static struct debug_info *get_trace_debug_info(struct debug_info_iterator *debug_it, - struct bt_trace *writer_trace, + const struct bt_trace *writer_trace, struct debug_info_trace *di_trace) { struct debug_info *debug_info; @@ -505,7 +505,7 @@ end: static struct debug_info_trace *lookup_trace(struct debug_info_iterator *debug_it, - struct bt_trace *trace) + const struct bt_trace *trace) { return (struct debug_info_trace *) g_hash_table_lookup( debug_it->trace_map, @@ -515,7 +515,7 @@ struct debug_info_trace *lookup_trace(struct debug_info_iterator *debug_it, static enum debug_info_stream_state *insert_new_stream_state( struct debug_info_iterator *debug_it, - struct debug_info_trace *di_trace, struct bt_stream *stream) + struct debug_info_trace *di_trace, const struct bt_stream *stream) { enum debug_info_stream_state *v = NULL; @@ -586,11 +586,11 @@ void debug_info_close_trace(struct debug_info_iterator *debug_it, static int sync_event_classes(struct debug_info_iterator *debug_it, - struct bt_stream *stream, - struct bt_stream *writer_stream) + const struct bt_stream *stream, + const struct bt_stream *writer_stream) { int int_ret; - struct bt_stream_class *stream_class = NULL, + const struct bt_stream_class *stream_class = NULL, *writer_stream_class = NULL; enum bt_component_status ret; @@ -619,12 +619,12 @@ end: } static -void trace_is_static_listener(struct bt_trace *trace, void *data) +void trace_is_static_listener(const struct bt_trace *trace, void *data) { struct debug_info_trace *di_trace = data; int trace_completed = 1, ret, nr_stream, i; - struct bt_stream *stream = NULL, *writer_stream = NULL; - struct bt_trace *writer_trace = di_trace->writer_trace; + const struct bt_stream *stream = NULL, *writer_stream = NULL; + const struct bt_trace *writer_trace = di_trace->writer_trace; /* * When the trace becomes static, make sure that we have all @@ -666,12 +666,12 @@ error: static struct debug_info_trace *insert_new_trace(struct debug_info_iterator *debug_it, - struct bt_stream *stream) { - struct bt_trace *writer_trace = NULL; + const struct bt_stream *stream) { + const struct bt_trace *writer_trace = NULL; struct debug_info_trace *di_trace = NULL; - struct bt_trace *trace = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_stream *writer_stream = NULL; + const struct bt_trace *trace = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_stream *writer_stream = NULL; int ret, nr_stream, i; writer_trace = bt_trace_create(); @@ -764,22 +764,22 @@ end: } static -struct bt_packet *lookup_packet(struct debug_info_iterator *debug_it, - struct bt_packet *packet, +const struct bt_packet *lookup_packet(struct debug_info_iterator *debug_it, + const struct bt_packet *packet, struct debug_info_trace *di_trace) { - return (struct bt_packet *) g_hash_table_lookup( + return (const struct bt_packet *) g_hash_table_lookup( di_trace->packet_map, (gpointer) packet); } static -struct bt_packet *insert_new_packet(struct debug_info_iterator *debug_it, - struct bt_packet *packet, - struct bt_stream *writer_stream, +const struct bt_packet *insert_new_packet(struct debug_info_iterator *debug_it, + const struct bt_packet *packet, + const struct bt_stream *writer_stream, struct debug_info_trace *di_trace) { - struct bt_packet *writer_packet; + const struct bt_packet *writer_packet; int ret; writer_packet = bt_packet_create(writer_stream); @@ -806,10 +806,10 @@ end: static int add_debug_info_fields(FILE *err, - struct bt_field_class *writer_event_context_class, + const struct bt_field_class *writer_event_context_class, struct debug_info_component *component) { - struct bt_field_class *ip_field = NULL, *debug_field_class = NULL, + const struct bt_field_class *ip_field = NULL, *debug_field_class = NULL, *bin_field_class = NULL, *func_field_class = NULL, *src_field_class = NULL; int ret = 0; @@ -898,15 +898,15 @@ end: static int create_debug_info_event_context_class(FILE *err, - struct bt_field_class *event_context_class, - struct bt_field_class *writer_event_context_class, + const struct bt_field_class *event_context_class, + const struct bt_field_class *writer_event_context_class, struct debug_info_component *component) { int ret, nr_fields, i; nr_fields = bt_field_class_structure_get_field_count(event_context_class); for (i = 0; i < nr_fields; i++) { - struct bt_field_class *field_class = NULL; + const struct bt_field_class *field_class = NULL; const char *field_name; if (bt_field_class_structure_get_field_by_index(event_context_class, @@ -937,14 +937,14 @@ end: } static -struct bt_stream_class *copy_stream_class_debug_info(FILE *err, - struct bt_stream_class *stream_class, - struct bt_trace *writer_trace, +const struct bt_stream_class *copy_stream_class_debug_info(FILE *err, + const struct bt_stream_class *stream_class, + const struct bt_trace *writer_trace, struct debug_info_component *component) { - struct bt_field_class *cls = NULL; - struct bt_stream_class *writer_stream_class = NULL; - struct bt_field_class *writer_event_context_class = NULL; + const struct bt_field_class *cls = NULL; + const struct bt_stream_class *writer_stream_class = NULL; + const struct bt_field_class *writer_event_context_class = NULL; int ret_int; const char *name = bt_stream_class_get_name(stream_class); @@ -1016,18 +1016,18 @@ end: * to update the integers mapping to a clock. */ static -int add_clock_classes(FILE *err, struct bt_trace *writer_trace, - struct bt_stream_class *writer_stream_class, - struct bt_trace *trace) +int add_clock_classes(FILE *err, const struct bt_trace *writer_trace, + const struct bt_stream_class *writer_stream_class, + const struct bt_trace *trace) { int ret, clock_class_count, i; clock_class_count = bt_trace_get_clock_class_count(trace); for (i = 0; i < clock_class_count; i++) { - struct bt_clock_class *clock_class = + const struct bt_clock_class *clock_class = bt_trace_get_clock_class_by_index(trace, i); - struct bt_clock_class *existing_clock_class = NULL; + const struct bt_clock_class *existing_clock_class = NULL; BT_ASSERT(clock_class); @@ -1058,12 +1058,12 @@ end: } static -struct bt_stream_class *insert_new_stream_class( +const struct bt_stream_class *insert_new_stream_class( struct debug_info_iterator *debug_it, - struct bt_stream_class *stream_class) + const struct bt_stream_class *stream_class) { - struct bt_stream_class *writer_stream_class = NULL; - struct bt_trace *trace, *writer_trace = NULL; + const struct bt_stream_class *writer_stream_class = NULL; + const struct bt_trace *trace, *writer_trace = NULL; struct debug_info_trace *di_trace; enum bt_component_status ret; int int_ret; @@ -1114,14 +1114,14 @@ end: } static -struct bt_stream *insert_new_stream( +const struct bt_stream *insert_new_stream( struct debug_info_iterator *debug_it, - struct bt_stream *stream, + const struct bt_stream *stream, struct debug_info_trace *di_trace) { - struct bt_stream *writer_stream = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_stream_class *writer_stream_class = NULL; + const struct bt_stream *writer_stream = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_stream_class *writer_stream_class = NULL; int64_t id; stream_class = bt_stream_get_class(stream); @@ -1170,18 +1170,18 @@ end: } static -struct bt_stream *lookup_stream(struct debug_info_iterator *debug_it, - struct bt_stream *stream, +const struct bt_stream *lookup_stream(struct debug_info_iterator *debug_it, + const struct bt_stream *stream, struct debug_info_trace *di_trace) { - return (struct bt_stream *) g_hash_table_lookup( + return (const struct bt_stream *) g_hash_table_lookup( di_trace->stream_map, (gpointer) stream); } static -struct bt_event_class *get_event_class(struct debug_info_iterator *debug_it, - struct bt_stream_class *writer_stream_class, - struct bt_event_class *event_class) +const struct bt_event_class *get_event_class(struct debug_info_iterator *debug_it, + const struct bt_stream_class *writer_stream_class, + const struct bt_event_class *event_class) { return bt_stream_class_get_event_class_by_id(writer_stream_class, bt_event_class_get_id(event_class)); @@ -1190,10 +1190,10 @@ struct bt_event_class *get_event_class(struct debug_info_iterator *debug_it, static struct debug_info_trace *lookup_di_trace_from_stream( struct debug_info_iterator *debug_it, - struct bt_stream *stream) + const struct bt_stream *stream) { - struct bt_stream_class *stream_class = NULL; - struct bt_trace *trace = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_trace *trace = NULL; struct debug_info_trace *di_trace = NULL; stream_class = bt_stream_get_class(stream); @@ -1211,12 +1211,12 @@ struct debug_info_trace *lookup_di_trace_from_stream( } static -struct bt_stream *get_writer_stream( +const struct bt_stream *get_writer_stream( struct debug_info_iterator *debug_it, - struct bt_packet *packet, struct bt_stream *stream) + const struct bt_packet *packet, const struct bt_stream *stream) { - struct bt_stream_class *stream_class = NULL; - struct bt_stream *writer_stream = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_stream *writer_stream = NULL; struct debug_info_trace *di_trace = NULL; stream_class = bt_stream_get_class(stream); @@ -1245,13 +1245,13 @@ end: } BT_HIDDEN -struct bt_packet *debug_info_new_packet( +const struct bt_packet *debug_info_new_packet( struct debug_info_iterator *debug_it, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_stream *stream = NULL, *writer_stream = NULL; - struct bt_packet *writer_packet = NULL; - struct bt_field *packet_context = NULL; + const struct bt_stream *stream = NULL, *writer_stream = NULL; + const struct bt_packet *writer_packet = NULL; + const struct bt_field *packet_context = NULL; struct debug_info_trace *di_trace; int int_ret; @@ -1311,12 +1311,12 @@ end: } BT_HIDDEN -struct bt_packet *debug_info_close_packet( +const struct bt_packet *debug_info_close_packet( struct debug_info_iterator *debug_it, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_packet *writer_packet = NULL; - struct bt_stream *stream = NULL; + const struct bt_packet *writer_packet = NULL; + const struct bt_stream *stream = NULL; struct debug_info_trace *di_trace; stream = bt_packet_get_stream(packet); @@ -1342,11 +1342,11 @@ end: } BT_HIDDEN -struct bt_stream *debug_info_stream_begin( +const struct bt_stream *debug_info_stream_begin( struct debug_info_iterator *debug_it, - struct bt_stream *stream) + const struct bt_stream *stream) { - struct bt_stream *writer_stream = NULL; + const struct bt_stream *writer_stream = NULL; enum debug_info_stream_state *state; struct debug_info_trace *di_trace = NULL; @@ -1394,10 +1394,10 @@ end: } BT_HIDDEN -struct bt_stream *debug_info_stream_end(struct debug_info_iterator *debug_it, - struct bt_stream *stream) +const struct bt_stream *debug_info_stream_end(struct debug_info_iterator *debug_it, + const struct bt_stream *stream) { - struct bt_stream *writer_stream = NULL; + const struct bt_stream *writer_stream = NULL; struct debug_info_trace *di_trace = NULL; enum debug_info_stream_state *state; @@ -1450,7 +1450,7 @@ end: static struct debug_info_source *lookup_debug_info(FILE *err, - struct bt_event *event, + const struct bt_event *event, struct debug_info *debug_info) { int64_t vpid; @@ -1478,14 +1478,14 @@ end: } static -int set_debug_info_field(FILE *err, struct bt_field *debug_field, +int set_debug_info_field(FILE *err, const struct bt_field *debug_field, struct debug_info_source *dbg_info_src, struct debug_info_component *component) { int i, nr_fields, ret = 0; - struct bt_field_class *debug_field_class = NULL; - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field_class *debug_field_class = NULL; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL; debug_field_class = bt_field_get_class(debug_field); BT_ASSERT(debug_field_class); @@ -1568,17 +1568,17 @@ end: static int copy_set_debug_info_stream_event_context(FILE *err, - struct bt_field *event_context, - struct bt_event *event, - struct bt_event *writer_event, + const struct bt_field *event_context, + const struct bt_event *event, + const struct bt_event *writer_event, struct debug_info *debug_info, struct debug_info_component *component) { - struct bt_field_class *writer_event_context_class = NULL, + const struct bt_field_class *writer_event_context_class = NULL, *event_context_class = NULL; - struct bt_field *writer_event_context = NULL; - struct bt_field *field = NULL, *copy_field = NULL, *debug_field = NULL; - struct bt_field_class *field_class = NULL; + const struct bt_field *writer_event_context = NULL; + const struct bt_field *field = NULL, *copy_field = NULL, *debug_field = NULL; + const struct bt_field_class *field_class = NULL; struct debug_info_source *dbg_info_src; int ret, nr_fields, i; @@ -1675,11 +1675,11 @@ end: } static -struct bt_clock_class *stream_class_get_clock_class(FILE *err, - struct bt_stream_class *stream_class) +const struct bt_clock_class *stream_class_get_clock_class(FILE *err, + const struct bt_stream_class *stream_class) { - struct bt_trace *trace = NULL; - struct bt_clock_class *clock_class = NULL; + const struct bt_trace *trace = NULL; + const struct bt_clock_class *clock_class = NULL; trace = bt_stream_class_get_trace(stream_class); BT_ASSERT(trace); @@ -1699,11 +1699,11 @@ end: } static -struct bt_clock_class *event_get_clock_class(FILE *err, struct bt_event *event) +const struct bt_clock_class *event_get_clock_class(FILE *err, const struct bt_event *event) { - struct bt_event_class *event_class = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_clock_class *clock_class = NULL; + const struct bt_event_class *event_class = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_clock_class *clock_class = NULL; event_class = bt_event_get_class(event); BT_ASSERT(event_class); @@ -1721,10 +1721,10 @@ end: } static -int set_event_clock_value(FILE *err, struct bt_event *event, - struct bt_event *writer_event) +int set_event_clock_value(FILE *err, const struct bt_event *event, + const struct bt_event *writer_event) { - struct bt_clock_class *clock_class = NULL; + const struct bt_clock_class *clock_class = NULL; struct bt_clock_value *clock_value = NULL; int ret = 0; @@ -1762,13 +1762,13 @@ end: } static -struct bt_event *debug_info_copy_event(FILE *err, struct bt_event *event, - struct bt_event_class *writer_event_class, +const struct bt_event *debug_info_copy_event(FILE *err, const struct bt_event *event, + const struct bt_event_class *writer_event_class, struct debug_info *debug_info, struct debug_info_component *component) { - struct bt_event *writer_event = NULL; - struct bt_field *field = NULL, *copy_field = NULL; + const struct bt_event *writer_event = NULL; + const struct bt_field *field = NULL, *copy_field = NULL; int ret; writer_event = bt_event_create(writer_event_class); @@ -1850,16 +1850,16 @@ end: } BT_HIDDEN -struct bt_event *debug_info_output_event( +const struct bt_event *debug_info_output_event( struct debug_info_iterator *debug_it, - struct bt_event *event) + const struct bt_event *event) { - struct bt_event_class *event_class = NULL, *writer_event_class = NULL; - struct bt_stream_class *stream_class = NULL, *writer_stream_class = NULL; - struct bt_event *writer_event = NULL; - struct bt_packet *packet = NULL, *writer_packet = NULL; - struct bt_trace *writer_trace = NULL; - struct bt_stream *stream = NULL; + const struct bt_event_class *event_class = NULL, *writer_event_class = NULL; + const struct bt_stream_class *stream_class = NULL, *writer_stream_class = NULL; + const struct bt_event *writer_event = NULL; + const struct bt_packet *packet = NULL, *writer_packet = NULL; + const struct bt_trace *writer_trace = NULL; + const struct bt_stream *stream = NULL; struct debug_info_trace *di_trace; struct debug_info *debug_info; int int_ret; diff --git a/plugins/lttng-utils/copy.h b/plugins/lttng-utils/copy.h index 77588779..1c4d83f5 100644 --- a/plugins/lttng-utils/copy.h +++ b/plugins/lttng-utils/copy.h @@ -32,43 +32,43 @@ #include BT_HIDDEN -struct bt_event *debug_info_output_event(struct debug_info_iterator *debug_it, - struct bt_event *event); +const struct bt_event *debug_info_output_event(struct debug_info_iterator *debug_it, + const struct bt_event *event); BT_HIDDEN -struct bt_packet *debug_info_new_packet(struct debug_info_iterator *debug_it, - struct bt_packet *packet); +const struct bt_packet *debug_info_new_packet(struct debug_info_iterator *debug_it, + const struct bt_packet *packet); BT_HIDDEN -struct bt_packet *debug_info_close_packet(struct debug_info_iterator *debug_it, - struct bt_packet *packet); +const struct bt_packet *debug_info_close_packet(struct debug_info_iterator *debug_it, + const struct bt_packet *packet); BT_HIDDEN -struct bt_stream *debug_info_stream_begin( +const struct bt_stream *debug_info_stream_begin( struct debug_info_iterator *debug_it, - struct bt_stream *stream); + const struct bt_stream *stream); BT_HIDDEN -struct bt_stream *debug_info_stream_end(struct debug_info_iterator *debug_it, - struct bt_stream *stream); +const struct bt_stream *debug_info_stream_end(struct debug_info_iterator *debug_it, + const struct bt_stream *stream); BT_HIDDEN int get_stream_event_context_unsigned_int_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint64_t *value); BT_HIDDEN -int get_stream_event_context_int_field_value(FILE *err, struct bt_event *event, +int get_stream_event_context_int_field_value(FILE *err, const struct bt_event *event, const char *field_name, int64_t *value); BT_HIDDEN int get_payload_unsigned_int_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint64_t *value); BT_HIDDEN -int get_payload_int_field_value(FILE *err, struct bt_event *event, +int get_payload_int_field_value(FILE *err, const struct bt_event *event, const char *field_name, int64_t *value); BT_HIDDEN int get_payload_string_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, const char **value); BT_HIDDEN int get_payload_build_id_field_value(FILE *err, - struct bt_event *event, const char *field_name, + const struct bt_event *event, const char *field_name, uint8_t **build_id, uint64_t *build_id_len); #endif /* BABELTRACE_PLUGIN_TRIMMER_COPY_H */ diff --git a/plugins/lttng-utils/debug-info.c b/plugins/lttng-utils/debug-info.c index a455e47c..45b0f1c1 100644 --- a/plugins/lttng-utils/debug-info.c +++ b/plugins/lttng-utils/debug-info.c @@ -373,7 +373,7 @@ end: static void handle_statedump_build_id_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { struct proc_debug_info_sources *proc_dbg_info_src; struct bin_info *bin = NULL; @@ -439,7 +439,7 @@ end: static void handle_statedump_debug_link_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { struct proc_debug_info_sources *proc_dbg_info_src; struct bin_info *bin = NULL; @@ -508,7 +508,7 @@ end: static void handle_bin_info_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event, bool has_pic_field) + const struct bt_event *event, bool has_pic_field) { struct proc_debug_info_sources *proc_dbg_info_src; struct bin_info *bin; @@ -614,21 +614,21 @@ end: static inline void handle_statedump_bin_info_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { handle_bin_info_event(err, debug_info, event, true); } static inline void handle_lib_load_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { handle_bin_info_event(err, debug_info, event, false); } static inline void handle_lib_unload_event(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { struct proc_debug_info_sources *proc_dbg_info_src; uint64_t baddr; @@ -666,7 +666,7 @@ end: static void handle_statedump_start(FILE *err, struct debug_info *debug_info, - struct bt_event *event) + const struct bt_event *event) { struct proc_debug_info_sources *proc_dbg_info_src; int64_t vpid; @@ -692,10 +692,10 @@ end: } BT_HIDDEN -void debug_info_handle_event(FILE *err, struct bt_event *event, +void debug_info_handle_event(FILE *err, const struct bt_event *event, struct debug_info *debug_info) { - struct bt_event_class *event_class; + const struct bt_event_class *event_class; const char *event_name; GQuark q_event_name; diff --git a/plugins/lttng-utils/debug-info.h b/plugins/lttng-utils/debug-info.h index 3f067280..56f9bc1e 100644 --- a/plugins/lttng-utils/debug-info.h +++ b/plugins/lttng-utils/debug-info.h @@ -74,8 +74,8 @@ struct debug_info_iterator { }; struct debug_info_trace { - struct bt_trace *trace; - struct bt_trace *writer_trace; + const struct bt_trace *trace; + const struct bt_trace *writer_trace; struct debug_info_component *debug_info_component; struct debug_info_iterator *debug_it; int static_listener_id; @@ -120,7 +120,7 @@ struct debug_info_source *debug_info_query(struct debug_info *debug_info, int64_t vpid, uint64_t ip); BT_HIDDEN -void debug_info_handle_event(FILE *err, struct bt_event *event, +void debug_info_handle_event(FILE *err, const struct bt_event *event, struct debug_info *debug_info); BT_HIDDEN diff --git a/plugins/lttng-utils/plugin.c b/plugins/lttng-utils/plugin.c index 7d24bf56..ae1648a3 100644 --- a/plugins/lttng-utils/plugin.c +++ b/plugins/lttng-utils/plugin.c @@ -114,9 +114,9 @@ struct bt_notification *handle_notification(FILE *err, switch (bt_notification_get_type(notification)) { case BT_NOTIFICATION_TYPE_PACKET_BEGIN: { - struct bt_packet *packet = + const struct bt_packet *packet = bt_notification_packet_begin_get_packet(notification); - struct bt_packet *writer_packet; + const struct bt_packet *writer_packet; if (!packet) { goto end; @@ -133,9 +133,9 @@ struct bt_notification *handle_notification(FILE *err, } case BT_NOTIFICATION_TYPE_PACKET_END: { - struct bt_packet *packet = + const struct bt_packet *packet = bt_notification_packet_end_get_packet(notification); - struct bt_packet *writer_packet; + const struct bt_packet *writer_packet; if (!packet) { goto end; @@ -152,9 +152,9 @@ struct bt_notification *handle_notification(FILE *err, } case BT_NOTIFICATION_TYPE_EVENT: { - struct bt_event *event = bt_notification_event_get_event( + const struct bt_event *event = bt_notification_event_get_event( notification); - struct bt_event *writer_event; + const struct bt_event *writer_event; struct bt_clock_class_priority_map *cc_prio_map = bt_notification_event_get_clock_class_priority_map( notification); @@ -174,9 +174,9 @@ struct bt_notification *handle_notification(FILE *err, } case BT_NOTIFICATION_TYPE_STREAM_BEGIN: { - struct bt_stream *stream = + const struct bt_stream *stream = bt_notification_stream_begin_get_stream(notification); - struct bt_stream *writer_stream; + const struct bt_stream *writer_stream; if (!stream) { goto end; @@ -193,9 +193,9 @@ struct bt_notification *handle_notification(FILE *err, } case BT_NOTIFICATION_TYPE_STREAM_END: { - struct bt_stream *stream = + const struct bt_stream *stream = bt_notification_stream_end_get_stream(notification); - struct bt_stream *writer_stream; + const struct bt_stream *writer_stream; if (!stream) { goto end; diff --git a/plugins/text/dmesg/dmesg.c b/plugins/text/dmesg/dmesg.c index 8a9d4fff..9a8b5beb 100644 --- a/plugins/text/dmesg/dmesg.c +++ b/plugins/text/dmesg/dmesg.c @@ -68,34 +68,34 @@ struct dmesg_component { bt_bool no_timestamp; } params; - struct bt_private_trace *trace; - struct bt_private_stream_class *stream_class; - struct bt_private_event_class *event_class; - struct bt_private_stream *stream; - struct bt_private_packet *packet; - struct bt_private_clock_class *clock_class; + struct bt_trace *trace; + struct bt_stream_class *stream_class; + struct bt_event_class *event_class; + struct bt_stream *stream; + struct bt_packet *packet; + struct bt_clock_class *clock_class; }; static -struct bt_private_field_class *create_event_payload_fc(void) +struct bt_field_class *create_event_payload_fc(void) { - struct bt_private_field_class *root_fc = NULL; - struct bt_private_field_class *fc = NULL; + struct bt_field_class *root_fc = NULL; + struct bt_field_class *fc = NULL; int ret; - root_fc = bt_private_field_class_structure_create(); + root_fc = bt_field_class_structure_create(); if (!root_fc) { BT_LOGE_STR("Cannot create an empty structure field class object."); goto error; } - fc = bt_private_field_class_string_create(); + fc = bt_field_class_string_create(); if (!fc) { BT_LOGE_STR("Cannot create a string field class object."); goto error; } - ret = bt_private_field_class_structure_append_member(root_fc, + ret = bt_field_class_structure_append_member(root_fc, "str", fc); if (ret) { BT_LOGE("Cannot add `str` member to structure field class: " @@ -116,12 +116,12 @@ end: static int create_meta(struct dmesg_component *dmesg_comp, bool has_ts) { - struct bt_private_field_class *fc = NULL; + struct bt_field_class *fc = NULL; const char *trace_name = NULL; gchar *basename = NULL; int ret = 0; - dmesg_comp->trace = bt_private_trace_create(); + dmesg_comp->trace = bt_trace_create(); if (!dmesg_comp->trace) { BT_LOGE_STR("Cannot create an empty trace object."); goto error; @@ -140,14 +140,14 @@ int create_meta(struct dmesg_component *dmesg_comp, bool has_ts) } if (trace_name) { - ret = bt_private_trace_set_name(dmesg_comp->trace, trace_name); + ret = bt_trace_set_name(dmesg_comp->trace, trace_name); if (ret) { BT_LOGE("Cannot set trace's name: name=\"%s\"", trace_name); goto error; } } - dmesg_comp->stream_class = bt_private_stream_class_create( + dmesg_comp->stream_class = bt_stream_class_create( dmesg_comp->trace); if (!dmesg_comp->stream_class) { BT_LOGE_STR("Cannot create a stream class object."); @@ -155,30 +155,28 @@ int create_meta(struct dmesg_component *dmesg_comp, bool has_ts) } if (has_ts) { - dmesg_comp->clock_class = bt_private_clock_class_create(); + dmesg_comp->clock_class = bt_clock_class_create(); if (!dmesg_comp->clock_class) { BT_LOGE_STR("Cannot create clock class."); goto error; } - ret = bt_private_stream_class_set_default_clock_class( - dmesg_comp->stream_class, - bt_private_clock_class_as_clock_class( - dmesg_comp->clock_class)); + ret = bt_stream_class_set_default_clock_class( + dmesg_comp->stream_class, dmesg_comp->clock_class); if (ret) { BT_LOGE_STR("Cannot set stream class's default clock class."); goto error; } } - dmesg_comp->event_class = bt_private_event_class_create( + dmesg_comp->event_class = bt_event_class_create( dmesg_comp->stream_class); if (!dmesg_comp->event_class) { BT_LOGE_STR("Cannot create an event class object."); goto error; } - ret = bt_private_event_class_set_name(dmesg_comp->event_class, "string"); + ret = bt_event_class_set_name(dmesg_comp->event_class, "string"); if (ret) { BT_LOGE_STR("Cannot set event class's name."); goto error; @@ -190,7 +188,7 @@ int create_meta(struct dmesg_component *dmesg_comp, bool has_ts) goto error; } - ret = bt_private_event_class_set_payload_field_class(dmesg_comp->event_class, fc); + ret = bt_event_class_set_payload_field_class(dmesg_comp->event_class, fc); if (ret) { BT_LOGE_STR("Cannot set event class's event payload field class."); goto error; @@ -270,19 +268,19 @@ int create_packet_and_stream(struct dmesg_component *dmesg_comp) { int ret = 0; - dmesg_comp->stream = bt_private_stream_create(dmesg_comp->stream_class); + dmesg_comp->stream = bt_stream_create(dmesg_comp->stream_class); if (!dmesg_comp->stream) { BT_LOGE_STR("Cannot create stream object."); goto error; } - dmesg_comp->packet = bt_private_packet_create(dmesg_comp->stream); + dmesg_comp->packet = bt_packet_create(dmesg_comp->stream); if (!dmesg_comp->packet) { BT_LOGE_STR("Cannot create packet object."); goto error; } - ret = bt_private_trace_make_static(dmesg_comp->trace); + ret = bt_trace_make_static(dmesg_comp->trace); if (ret) { BT_LOGE_STR("Cannot make trace static."); goto error; @@ -430,7 +428,7 @@ struct bt_private_notification *create_init_event_notif_from_line( struct dmesg_notif_iter *notif_iter, const char *line, const char **new_start) { - struct bt_private_event *event; + struct bt_event *event; struct bt_private_notification *notif = NULL; bool has_timestamp = false; unsigned long sec, usec, msec; @@ -512,7 +510,7 @@ skip_ts: BT_ASSERT(event); if (dmesg_comp->clock_class) { - bt_private_event_set_default_clock_value(event, ts); + bt_event_set_default_clock_value(event, ts); } goto end; @@ -526,16 +524,16 @@ end: static int fill_event_payload_from_line(const char *line, - struct bt_private_event *event) + struct bt_event *event) { - struct bt_private_field *ep_field = NULL; - struct bt_private_field *str_field = NULL; + struct bt_field *ep_field = NULL; + struct bt_field *str_field = NULL; size_t len; int ret; - ep_field = bt_private_event_borrow_payload_field(event); + ep_field = bt_event_borrow_payload_field(event); BT_ASSERT(ep_field); - str_field = bt_private_field_structure_borrow_member_field_by_index( + str_field = bt_field_structure_borrow_member_field_by_index( ep_field, 0); if (!str_field) { BT_LOGE_STR("Cannot borrow `timestamp` field from event payload structure field."); @@ -548,13 +546,13 @@ int fill_event_payload_from_line(const char *line, len--; } - ret = bt_private_field_string_clear(str_field); + ret = bt_field_string_clear(str_field); if (ret) { BT_LOGE_STR("Cannot clear string field object."); goto error; } - ret = bt_private_field_string_append_with_length(str_field, line, len); + ret = bt_field_string_append_with_length(str_field, line, len); if (ret) { BT_LOGE("Cannot append value to string field object: " "len=%zu", len); @@ -574,7 +572,7 @@ static struct bt_private_notification *create_notif_from_line( struct dmesg_notif_iter *dmesg_notif_iter, const char *line) { - struct bt_private_event *event = NULL; + struct bt_event *event = NULL; struct bt_private_notification *notif = NULL; const char *new_start; int ret; diff --git a/plugins/text/pretty/print.c b/plugins/text/pretty/print.c index 83579b88..4dae1882 100644 --- a/plugins/text/pretty/print.c +++ b/plugins/text/pretty/print.c @@ -51,7 +51,7 @@ struct timestamp { static int print_field(struct pretty_component *pretty, - struct bt_field *field, bool print_names, + const struct bt_field *field, bool print_names, GQuark *filters_fields, int filter_array_len); static @@ -78,13 +78,13 @@ void print_field_name_equal(struct pretty_component *pretty, const char *name) static void print_timestamp_cycles(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { - struct bt_clock_value *clock_value; + const struct bt_clock_value *clock_value; uint64_t cycles; enum bt_clock_value_status cv_status; - cv_status = bt_event_borrow_default_clock_value(event, &clock_value); + cv_status = bt_event_borrow_default_clock_value_const(event, &clock_value); if (cv_status != BT_CLOCK_VALUE_STATUS_KNOWN || !clock_value) { g_string_append(pretty->string, "????????????????????"); return; @@ -101,7 +101,7 @@ void print_timestamp_cycles(struct pretty_component *pretty, static void print_timestamp_wall(struct pretty_component *pretty, - struct bt_clock_value *clock_value) + const struct bt_clock_value *clock_value) { int ret; int64_t ts_nsec = 0; /* add configurable offset */ @@ -216,34 +216,35 @@ end: static int print_event_timestamp(struct pretty_component *pretty, - struct bt_event *event, bool *start_line) + const struct bt_event *event, bool *start_line) { bool print_names = pretty->options.print_header_field_names; int ret = 0; - struct bt_stream *stream = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_trace *trace = NULL; - struct bt_clock_value *clock_value = NULL; + const struct bt_stream *stream = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_trace *trace = NULL; + const struct bt_clock_value *clock_value = NULL; enum bt_clock_value_status cv_status; - stream = bt_event_borrow_stream(event); + stream = bt_event_borrow_stream_const(event); if (!stream) { ret = -1; goto end; } - stream_class = bt_stream_borrow_class(stream); + stream_class = bt_stream_borrow_class_const(stream); if (!stream_class) { ret = -1; goto end; } - trace = bt_stream_class_borrow_trace(stream_class); + trace = bt_stream_class_borrow_trace_const(stream_class); if (!trace) { ret = -1; goto end; } - cv_status = bt_event_borrow_default_clock_value(event, &clock_value); + cv_status = bt_event_borrow_default_clock_value_const(event, + &clock_value); if (cv_status != BT_CLOCK_VALUE_STATUS_KNOWN || !clock_value) { /* No default clock value: skip the timestamp without an error */ goto end; @@ -261,7 +262,7 @@ int print_event_timestamp(struct pretty_component *pretty, print_timestamp_cycles(pretty, event); } else { clock_value = NULL; - cv_status = bt_event_borrow_default_clock_value(event, + cv_status = bt_event_borrow_default_clock_value_const(event, &clock_value); print_timestamp_wall(pretty, clock_value); } @@ -313,27 +314,27 @@ end: static int print_event_header(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { bool print_names = pretty->options.print_header_field_names; int ret = 0; - struct bt_event_class *event_class = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_trace *trace_class = NULL; + const struct bt_event_class *event_class = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_trace *trace_class = NULL; int dom_print = 0; enum bt_property_availability prop_avail; - event_class = bt_event_borrow_class(event); + event_class = bt_event_borrow_class_const(event); if (!event_class) { ret = -1; goto end; } - stream_class = bt_event_class_borrow_stream_class(event_class); + stream_class = bt_event_class_borrow_stream_class_const(event_class); if (!stream_class) { ret = -1; goto end; } - trace_class = bt_stream_class_borrow_trace(stream_class); + trace_class = bt_stream_class_borrow_trace_const(stream_class); if (!trace_class) { ret = -1; goto end; @@ -364,7 +365,7 @@ int print_event_header(struct pretty_component *pretty, if (pretty->options.print_trace_hostname_field) { const struct bt_value *hostname_str; - hostname_str = bt_trace_borrow_environment_entry_value_by_name( + hostname_str = bt_trace_borrow_environment_entry_value_by_name_const( trace_class, "hostname"); if (hostname_str) { const char *str; @@ -383,7 +384,7 @@ int print_event_header(struct pretty_component *pretty, if (pretty->options.print_trace_domain_field) { const struct bt_value *domain_str; - domain_str = bt_trace_borrow_environment_entry_value_by_name( + domain_str = bt_trace_borrow_environment_entry_value_by_name_const( trace_class, "domain"); if (domain_str) { const char *str; @@ -404,7 +405,7 @@ int print_event_header(struct pretty_component *pretty, if (pretty->options.print_trace_procname_field) { const struct bt_value *procname_str; - procname_str = bt_trace_borrow_environment_entry_value_by_name( + procname_str = bt_trace_borrow_environment_entry_value_by_name_const( trace_class, "procname"); if (procname_str) { const char *str; @@ -425,7 +426,7 @@ int print_event_header(struct pretty_component *pretty, if (pretty->options.print_trace_vpid_field) { const struct bt_value *vpid_value; - vpid_value = bt_trace_borrow_environment_entry_value_by_name( + vpid_value = bt_trace_borrow_environment_entry_value_by_name_const( trace_class, "vpid"); if (vpid_value) { int64_t value; @@ -533,11 +534,11 @@ end: static int print_integer(struct pretty_component *pretty, - struct bt_field *field) + const struct bt_field *field) { int ret = 0; enum bt_field_class_integer_preferred_display_base base; - struct bt_field_class *int_fc; + const struct bt_field_class *int_fc; union { uint64_t u; int64_t s; @@ -545,7 +546,7 @@ int print_integer(struct pretty_component *pretty, bool rst_color = false; enum bt_field_class_type ft_type; - int_fc = bt_field_borrow_class(field); + int_fc = bt_field_borrow_class_const(field); BT_ASSERT(int_fc); ft_type = bt_field_get_class_type(field); if (ft_type == BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER || @@ -700,15 +701,15 @@ void print_escape_string(struct pretty_component *pretty, const char *str) static int print_enum(struct pretty_component *pretty, - struct bt_field *field) + const struct bt_field *field) { int ret = 0; - struct bt_field_class *enumeration_field_class = NULL; + const struct bt_field_class *enumeration_field_class = NULL; bt_field_class_enumeration_mapping_label_array label_array; uint64_t label_count; uint64_t i; - enumeration_field_class = bt_field_borrow_class(field); + enumeration_field_class = bt_field_borrow_class_const(field); if (!enumeration_field_class) { ret = -1; goto end; @@ -789,23 +790,23 @@ int filter_field_name(struct pretty_component *pretty, const char *field_name, static int print_struct_field(struct pretty_component *pretty, - struct bt_field *_struct, - struct bt_field_class *struct_class, + const struct bt_field *_struct, + const struct bt_field_class *struct_class, uint64_t i, bool print_names, uint64_t *nr_printed_fields, GQuark *filter_fields, int filter_array_len) { int ret = 0; const char *field_name; - struct bt_field *field = NULL; - struct bt_field_class *field_class = NULL;; + const struct bt_field *field = NULL; + const struct bt_field_class *field_class = NULL;; - field = bt_field_structure_borrow_member_field_by_index(_struct, i); + field = bt_field_structure_borrow_member_field_by_index_const(_struct, i); if (!field) { ret = -1; goto end; } - bt_field_class_structure_borrow_member_by_index(struct_class, i, + bt_field_class_structure_borrow_member_by_index_const(struct_class, i, &field_name, &field_class); if (filter_fields && !filter_field_name(pretty, field_name, @@ -831,14 +832,14 @@ end: static int print_struct(struct pretty_component *pretty, - struct bt_field *_struct, bool print_names, + const struct bt_field *_struct, bool print_names, GQuark *filter_fields, int filter_array_len) { int ret = 0; - struct bt_field_class *struct_class = NULL; + const struct bt_field_class *struct_class = NULL; uint64_t nr_fields, i, nr_printed_fields; - struct_class = bt_field_borrow_class(_struct); + struct_class = bt_field_borrow_class_const(_struct); if (!struct_class) { ret = -1; goto end; @@ -868,9 +869,9 @@ end: static int print_array_field(struct pretty_component *pretty, - struct bt_field *array, uint64_t i, bool print_names) + const struct bt_field *array, uint64_t i, bool print_names) { - struct bt_field *field = NULL; + const struct bt_field *field = NULL; if (i != 0) { g_string_append(pretty->string, ", "); @@ -881,21 +882,21 @@ int print_array_field(struct pretty_component *pretty, g_string_append_printf(pretty->string, "[%" PRIu64 "] = ", i); } - field = bt_field_array_borrow_element_field_by_index(array, i); + field = bt_field_array_borrow_element_field_by_index_const(array, i); BT_ASSERT(field); return print_field(pretty, field, print_names, NULL, 0); } static int print_array(struct pretty_component *pretty, - struct bt_field *array, bool print_names) + const struct bt_field *array, bool print_names) { int ret = 0; - struct bt_field_class *array_class = NULL; + const struct bt_field_class *array_class = NULL; uint64_t len; uint64_t i; - array_class = bt_field_borrow_class(array); + array_class = bt_field_borrow_class_const(array); if (!array_class) { ret = -1; goto end; @@ -918,9 +919,9 @@ end: static int print_sequence_field(struct pretty_component *pretty, - struct bt_field *seq, uint64_t i, bool print_names) + const struct bt_field *seq, uint64_t i, bool print_names) { - struct bt_field *field = NULL; + const struct bt_field *field = NULL; if (i != 0) { g_string_append(pretty->string, ", "); @@ -931,14 +932,14 @@ int print_sequence_field(struct pretty_component *pretty, g_string_append_printf(pretty->string, "[%" PRIu64 "] = ", i); } - field = bt_field_array_borrow_element_field_by_index(seq, i); + field = bt_field_array_borrow_element_field_by_index_const(seq, i); BT_ASSERT(field); return print_field(pretty, field, print_names, NULL, 0); } static int print_sequence(struct pretty_component *pretty, - struct bt_field *seq, bool print_names) + const struct bt_field *seq, bool print_names) { int ret = 0; uint64_t len; @@ -968,12 +969,12 @@ end: static int print_variant(struct pretty_component *pretty, - struct bt_field *variant, bool print_names) + const struct bt_field *variant, bool print_names) { int ret = 0; - struct bt_field *field = NULL; + const struct bt_field *field = NULL; - field = bt_field_variant_borrow_selected_option_field(variant); + field = bt_field_variant_borrow_selected_option_field_const(variant); BT_ASSERT(field); g_string_append(pretty->string, "{ "); pretty->depth++; @@ -994,7 +995,7 @@ end: static int print_field(struct pretty_component *pretty, - struct bt_field *field, bool print_names, + const struct bt_field *field, bool print_names, GQuark *filter_fields, int filter_array_len) { enum bt_field_class_type class_id; @@ -1057,18 +1058,18 @@ int print_field(struct pretty_component *pretty, static int print_stream_packet_context(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { int ret = 0; - struct bt_packet *packet = NULL; - struct bt_field *main_field = NULL; + const struct bt_packet *packet = NULL; + const struct bt_field *main_field = NULL; - packet = bt_event_borrow_packet(event); + packet = bt_event_borrow_packet_const(event); if (!packet) { ret = -1; goto end; } - main_field = bt_packet_borrow_context_field(packet); + main_field = bt_packet_borrow_context_field_const(packet); if (!main_field) { goto end; } @@ -1090,12 +1091,12 @@ end: static int print_event_header_raw(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { int ret = 0; - struct bt_field *main_field = NULL; + const struct bt_field *main_field = NULL; - main_field = bt_event_borrow_header_field(event); + main_field = bt_event_borrow_header_field_const(event); if (!main_field) { goto end; } @@ -1115,12 +1116,12 @@ end: static int print_stream_event_context(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { int ret = 0; - struct bt_field *main_field = NULL; + const struct bt_field *main_field = NULL; - main_field = bt_event_borrow_common_context_field(event); + main_field = bt_event_borrow_common_context_field_const(event); if (!main_field) { goto end; } @@ -1140,12 +1141,12 @@ end: static int print_event_context(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { int ret = 0; - struct bt_field *main_field = NULL; + const struct bt_field *main_field = NULL; - main_field = bt_event_borrow_specific_context_field(event); + main_field = bt_event_borrow_specific_context_field_const(event); if (!main_field) { goto end; } @@ -1165,12 +1166,12 @@ end: static int print_event_payload(struct pretty_component *pretty, - struct bt_event *event) + const struct bt_event *event) { int ret = 0; - struct bt_field *main_field = NULL; + const struct bt_field *main_field = NULL; - main_field = bt_event_borrow_payload_field(event); + main_field = bt_event_borrow_payload_field_const(event); if (!main_field) { goto end; } @@ -1210,7 +1211,7 @@ int pretty_print_event(struct pretty_component *pretty, struct bt_notification *event_notif) { int ret; - struct bt_event *event = + const struct bt_event *event = bt_notification_event_borrow_event(event_notif); BT_ASSERT(event); @@ -1260,14 +1261,14 @@ end: static int print_discarded_elements_msg( - struct pretty_component *pretty, struct bt_packet *packet, + struct pretty_component *pretty, const struct bt_packet *packet, uint64_t count, const char *elem_type) { #if 0 int ret = 0; - struct bt_stream *stream = NULL; - struct bt_stream_class *stream_class = NULL; - struct bt_trace *trace = NULL; + const struct bt_stream *stream = NULL; + const struct bt_stream_class *stream_class = NULL; + const struct bt_trace *trace = NULL; const char *stream_name; const char *trace_name; const unsigned char *trace_uuid; @@ -1278,12 +1279,12 @@ int print_discarded_elements_msg( /* Stream name */ BT_ASSERT(packet); - stream = bt_packet_borrow_stream(packet); + stream = bt_packet_borrow_stream_const(packet); BT_ASSERT(stream); stream_name = bt_stream_get_name(stream); /* Stream class ID */ - stream_class = bt_stream_borrow_class(stream); + stream_class = bt_stream_borrow_class_const(stream); BT_ASSERT(stream_class); stream_class_id = bt_stream_class_get_id(stream_class); @@ -1291,7 +1292,7 @@ int print_discarded_elements_msg( stream_id = bt_stream_get_id(stream); /* Trace name */ - trace = bt_stream_class_borrow_trace(stream_class); + trace = bt_stream_class_borrow_trace_const(stream_class); BT_ASSERT(trace); trace_name = bt_trace_get_name(trace); if (!trace_name) { @@ -1302,9 +1303,9 @@ int print_discarded_elements_msg( trace_uuid = bt_trace_get_uuid(trace); /* Beginning and end times */ - (void) bt_packet_borrow_previous_packet_default_end_clock_value( + (void) bt_packet_borrow_previous_packet_default_end_clock_value_const( packet, &begin_clock_value); - (void) bt_packet_borrow_default_end_clock_value(packet, + (void) bt_packet_borrow_default_end_clock_value_const(packet, &end_clock_value); /* Format message */ @@ -1384,7 +1385,7 @@ int pretty_print_packet(struct pretty_component *pretty, struct bt_notification *packet_beginning_notif) { #if 0 - struct bt_packet *packet = bt_notification_packet_begin_borrow_packet( + const struct bt_packet *packet = bt_notification_packet_begin_borrow_packet_const( packet_beginning_notif); uint64_t count; int status = 0; diff --git a/plugins/utils/muxer/muxer.c b/plugins/utils/muxer/muxer.c index 229bb1be..7c5991ab 100644 --- a/plugins/utils/muxer/muxer.c +++ b/plugins/utils/muxer/muxer.c @@ -603,9 +603,9 @@ int get_notif_ts_ns(struct muxer_comp *muxer_comp, struct bt_notification *notif, int64_t last_returned_ts_ns, int64_t *ts_ns) { - struct bt_clock_class *clock_class = NULL; - struct bt_clock_value *clock_value = NULL; - struct bt_event *event = NULL; + const struct bt_clock_class *clock_class = NULL; + const struct bt_clock_value *clock_value = NULL; + const struct bt_event *event = NULL; int ret = 0; const unsigned char *cc_uuid; const char *cc_name; @@ -623,7 +623,7 @@ int get_notif_ts_ns(struct muxer_comp *muxer_comp, case BT_NOTIFICATION_TYPE_EVENT: event = bt_notification_event_borrow_event(notif); BT_ASSERT(event); - cv_status = bt_event_borrow_default_clock_value(event, + cv_status = bt_event_borrow_default_clock_value_const(event, &clock_value); break; @@ -657,7 +657,7 @@ int get_notif_ts_ns(struct muxer_comp *muxer_comp, goto end; } - clock_class = bt_clock_value_borrow_clock_class(clock_value); + clock_class = bt_clock_value_borrow_clock_class_const(clock_value); BT_ASSERT(clock_class); cc_uuid = bt_clock_class_get_uuid(clock_class); cc_name = bt_clock_class_get_name(clock_class); diff --git a/plugins/utils/trimmer/copy.c b/plugins/utils/trimmer/copy.c index 0607beb5..79d1e8b2 100644 --- a/plugins/utils/trimmer/copy.c +++ b/plugins/utils/trimmer/copy.c @@ -36,20 +36,20 @@ #include "iterator.h" static -struct bt_packet *lookup_packet(struct trimmer_iterator *trim_it, - struct bt_packet *packet) +const struct bt_packet *lookup_packet(struct trimmer_iterator *trim_it, + const struct bt_packet *packet) { - return (struct bt_packet *) g_hash_table_lookup( + return (const struct bt_packet *) g_hash_table_lookup( trim_it->packet_map, (gpointer) packet); } static -struct bt_packet *insert_new_packet(struct trimmer_iterator *trim_it, - struct bt_packet *packet, - struct bt_stream *stream) +const struct bt_packet *insert_new_packet(struct trimmer_iterator *trim_it, + const struct bt_packet *packet, + const struct bt_stream *stream) { - struct bt_packet *writer_packet = NULL; + const struct bt_packet *writer_packet = NULL; int ret; BT_LOGD_STR("Inserting a new packet."); @@ -77,13 +77,13 @@ end: BT_HIDDEN enum bt_component_status update_packet_context_field(FILE *err, - struct bt_packet *writer_packet, + const struct bt_packet *writer_packet, const char *name, int64_t value) { enum bt_component_status ret; - struct bt_field *packet_context = NULL, *writer_packet_context = NULL; - struct bt_field_class *struct_class = NULL, *field_class = NULL; - struct bt_field *field = NULL, *writer_field = NULL; + const struct bt_field *packet_context = NULL, *writer_packet_context = NULL; + const struct bt_field_class *struct_class = NULL, *field_class = NULL; + const struct bt_field *field = NULL, *writer_field = NULL; int nr_fields, i, int_ret; BT_LOGD("Updating packet context field: name=%s", name); @@ -152,12 +152,12 @@ end: } BT_HIDDEN -struct bt_packet *trimmer_new_packet( +const struct bt_packet *trimmer_new_packet( struct trimmer_iterator *trim_it, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_stream *stream = NULL; - struct bt_packet *writer_packet = NULL; + const struct bt_stream *stream = NULL; + const struct bt_packet *writer_packet = NULL; int int_ret; stream = bt_packet_get_stream(packet); @@ -197,11 +197,11 @@ end: } BT_HIDDEN -struct bt_packet *trimmer_close_packet( +const struct bt_packet *trimmer_close_packet( struct trimmer_iterator *trim_it, - struct bt_packet *packet) + const struct bt_packet *packet) { - struct bt_packet *writer_packet = NULL; + const struct bt_packet *writer_packet = NULL; writer_packet = lookup_packet(trim_it, packet); if (!writer_packet) { @@ -216,13 +216,13 @@ end: } BT_HIDDEN -struct bt_event *trimmer_output_event( +const struct bt_event *trimmer_output_event( struct trimmer_iterator *trim_it, - struct bt_event *event) + const struct bt_event *event) { - struct bt_event_class *event_class = NULL; - struct bt_event *writer_event = NULL; - struct bt_packet *packet = NULL, *writer_packet = NULL; + const struct bt_event_class *event_class = NULL; + const struct bt_event *writer_event = NULL; + const struct bt_packet *packet = NULL, *writer_packet = NULL; const char *event_name; int int_ret; diff --git a/plugins/utils/trimmer/copy.h b/plugins/utils/trimmer/copy.h index 0ee0899f..066fafd1 100644 --- a/plugins/utils/trimmer/copy.h +++ b/plugins/utils/trimmer/copy.h @@ -32,17 +32,17 @@ #include BT_HIDDEN -struct bt_event *trimmer_output_event(struct trimmer_iterator *trim_it, - struct bt_event *event); +const struct bt_event *trimmer_output_event(struct trimmer_iterator *trim_it, + const struct bt_event *event); BT_HIDDEN -struct bt_packet *trimmer_new_packet(struct trimmer_iterator *trim_it, - struct bt_packet *packet); +const struct bt_packet *trimmer_new_packet(struct trimmer_iterator *trim_it, + const struct bt_packet *packet); BT_HIDDEN -struct bt_packet *trimmer_close_packet(struct trimmer_iterator *trim_it, - struct bt_packet *packet); +const struct bt_packet *trimmer_close_packet(struct trimmer_iterator *trim_it, + const struct bt_packet *packet); BT_HIDDEN enum bt_component_status update_packet_context_field(FILE *err, - struct bt_packet *writer_packet, + const struct bt_packet *writer_packet, const char *name, int64_t value); #endif /* BABELTRACE_PLUGIN_TRIMMER_COPY_H */ diff --git a/plugins/utils/trimmer/iterator.c b/plugins/utils/trimmer/iterator.c index f4ee3ead..6b5699a2 100644 --- a/plugins/utils/trimmer/iterator.c +++ b/plugins/utils/trimmer/iterator.c @@ -42,7 +42,7 @@ static gboolean close_packets(gpointer key, gpointer value, gpointer user_data) { - struct bt_packet *writer_packet = value; + const struct bt_packet *writer_packet = value; bt_object_put_ref(writer_packet); return TRUE; @@ -182,12 +182,12 @@ struct bt_notification *evaluate_event_notification( { int64_t ts; int clock_ret; - struct bt_event *event = NULL, *writer_event; + const struct bt_event *event = NULL, *writer_event; bool in_range = true; - struct bt_clock_class *clock_class = NULL; - struct bt_trace *trace = NULL; - struct bt_stream *stream = NULL; - struct bt_stream_class *stream_class = NULL; + const struct bt_clock_class *clock_class = NULL; + const struct bt_trace *trace = NULL; + const struct bt_stream *stream = NULL; + const struct bt_stream_class *stream_class = NULL; struct bt_clock_value *clock_value = NULL; bool lazy_update = false; struct bt_notification *new_notification = NULL; @@ -268,13 +268,13 @@ end: } static -int ns_from_integer_field(struct bt_field *integer, int64_t *ns) +int ns_from_integer_field(const struct bt_field *integer, int64_t *ns) { int ret = 0; int is_signed; uint64_t raw_clock_value; - struct bt_field_class *integer_class = NULL; - struct bt_clock_class *clock_class = NULL; + const struct bt_field_class *integer_class = NULL; + const struct bt_clock_class *clock_class = NULL; struct bt_clock_value *clock_value = NULL; integer_class = bt_field_get_class(integer); @@ -329,14 +329,14 @@ static uint64_t ns_from_value(uint64_t frequency, uint64_t value) * timestamp minus the offset. */ static -int64_t get_raw_timestamp(struct bt_packet *writer_packet, +int64_t get_raw_timestamp(const struct bt_packet *writer_packet, int64_t timestamp) { - struct bt_clock_class *writer_clock_class; + const struct bt_clock_class *writer_clock_class; int64_t sec_offset, cycles_offset, ns; - struct bt_trace *writer_trace; - struct bt_stream *writer_stream; - struct bt_stream_class *writer_stream_class; + const struct bt_trace *writer_trace; + const struct bt_stream *writer_stream; + const struct bt_stream_class *writer_stream_class; int ret; uint64_t freq; @@ -383,8 +383,8 @@ struct bt_notification *evaluate_packet_notification( { int64_t begin_ns, pkt_begin_ns, end_ns, pkt_end_ns; bool in_range = true; - struct bt_packet *packet = NULL, *writer_packet = NULL; - struct bt_field *packet_context = NULL, + const struct bt_packet *packet = NULL, *writer_packet = NULL; + const struct bt_field *packet_context = NULL, *timestamp_begin = NULL, *timestamp_end = NULL; struct bt_notification *new_notification = NULL; @@ -505,7 +505,7 @@ struct bt_notification *evaluate_stream_notification( struct bt_notification *notification, struct trimmer_iterator *trim_it) { - struct bt_stream *stream; + const struct bt_stream *stream; stream = bt_notification_stream_end_get_stream(notification); BT_ASSERT(stream); diff --git a/tests/lib/test_bt_notification_iterator.c b/tests/lib/test_bt_notification_iterator.c index 02724cf4..3b1b1527 100644 --- a/tests/lib/test_bt_notification_iterator.c +++ b/tests/lib/test_bt_notification_iterator.c @@ -47,28 +47,28 @@ enum test_event_type { struct test_event { enum test_event_type type; - struct bt_stream *stream; - struct bt_packet *packet; + const struct bt_stream *stream; + const struct bt_packet *packet; }; static bool debug = false; static enum test current_test; static GArray *test_events; static struct bt_private_graph *graph; -static struct bt_private_stream_class *src_stream_class; -static struct bt_private_event_class *src_event_class; -static struct bt_private_stream *src_stream1; -static struct bt_private_stream *src_stream2; -static struct bt_private_packet *src_stream1_packet1; -static struct bt_private_packet *src_stream1_packet2; -static struct bt_private_packet *src_stream2_packet1; -static struct bt_private_packet *src_stream2_packet2; -static struct bt_stream *pub_src_stream1; -static struct bt_stream *pub_src_stream2; -static struct bt_packet *pub_src_stream1_packet1; -static struct bt_packet *pub_src_stream1_packet2; -static struct bt_packet *pub_src_stream2_packet1; -static struct bt_packet *pub_src_stream2_packet2; +static struct bt_stream_class *src_stream_class; +static struct bt_event_class *src_event_class; +static struct bt_stream *src_stream1; +static struct bt_stream *src_stream2; +static struct bt_packet *src_stream1_packet1; +static struct bt_packet *src_stream1_packet2; +static struct bt_packet *src_stream2_packet1; +static struct bt_packet *src_stream2_packet2; +static const struct bt_stream *pub_src_stream1; +static const struct bt_stream *pub_src_stream2; +static const struct bt_packet *pub_src_stream1_packet1; +static const struct bt_packet *pub_src_stream1_packet2; +static const struct bt_packet *pub_src_stream2_packet1; +static const struct bt_packet *pub_src_stream2_packet2; enum { SEQ_END = -1, @@ -247,41 +247,37 @@ bool compare_test_events(const struct test_event *expected_events) static void init_static_data(void) { - struct bt_private_trace *trace; + struct bt_trace *trace; /* Test events */ test_events = g_array_new(FALSE, TRUE, sizeof(struct test_event)); BT_ASSERT(test_events); /* Metadata */ - trace = bt_private_trace_create(); + trace = bt_trace_create(); BT_ASSERT(trace); - src_stream_class = bt_private_stream_class_create(trace); + src_stream_class = bt_stream_class_create(trace); BT_ASSERT(src_stream_class); - src_event_class = bt_private_event_class_create(src_stream_class); + src_event_class = bt_event_class_create(src_stream_class); BT_ASSERT(src_event_class); - src_stream1 = bt_private_stream_create(src_stream_class); + src_stream1 = bt_stream_create(src_stream_class); BT_ASSERT(src_stream1); - pub_src_stream1 = bt_private_stream_as_stream(src_stream1); - src_stream2 = bt_private_stream_create(src_stream_class); + pub_src_stream1 = src_stream1; + src_stream2 = bt_stream_create(src_stream_class); BT_ASSERT(src_stream2); - pub_src_stream2 = bt_private_stream_as_stream(src_stream2); - src_stream1_packet1 = bt_private_packet_create(src_stream1); + pub_src_stream2 = src_stream2; + src_stream1_packet1 = bt_packet_create(src_stream1); BT_ASSERT(src_stream1_packet1); - pub_src_stream1_packet1 = bt_private_packet_as_packet( - src_stream1_packet1); - src_stream1_packet2 = bt_private_packet_create(src_stream1); + pub_src_stream1_packet1 = src_stream1_packet1; + src_stream1_packet2 = bt_packet_create(src_stream1); BT_ASSERT(src_stream1_packet2); - pub_src_stream1_packet2 = bt_private_packet_as_packet( - src_stream1_packet2); - src_stream2_packet1 = bt_private_packet_create(src_stream2); + pub_src_stream1_packet2 = src_stream1_packet2; + src_stream2_packet1 = bt_packet_create(src_stream2); BT_ASSERT(src_stream2_packet1); - pub_src_stream2_packet1 = bt_private_packet_as_packet( - src_stream2_packet1); - src_stream2_packet2 = bt_private_packet_create(src_stream2); + pub_src_stream2_packet1 = src_stream2_packet1; + src_stream2_packet2 = bt_packet_create(src_stream2); BT_ASSERT(src_stream2_packet2); - pub_src_stream2_packet2 = bt_private_packet_as_packet( - src_stream2_packet2); + pub_src_stream2_packet2 = src_stream2_packet2; if (debug) { fprintf(stderr, ":: stream 1: %p\n", src_stream1); @@ -353,7 +349,7 @@ void src_iter_next_seq_one(struct bt_self_notification_iterator* notif_iter, struct src_iter_user_data *user_data, struct bt_notification **notif) { - struct bt_private_packet *event_packet = NULL; + struct bt_packet *event_packet = NULL; switch (user_data->seq[user_data->at]) { case SEQ_STREAM1_BEGIN: @@ -512,19 +508,20 @@ void append_test_events_from_notification(struct bt_notification *notification) switch (bt_notification_get_type(notification)) { case BT_NOTIFICATION_TYPE_EVENT: { - struct bt_event *event; + const struct bt_event *event; test_event.type = TEST_EV_TYPE_NOTIF_EVENT; event = bt_notification_event_borrow_event(notification); BT_ASSERT(event); - test_event.packet = bt_event_borrow_packet(event); + test_event.packet = bt_event_borrow_packet_const(event); BT_ASSERT(test_event.packet); break; } case BT_NOTIFICATION_TYPE_STREAM_BEGIN: test_event.type = TEST_EV_TYPE_NOTIF_STREAM_BEGIN; test_event.stream = - bt_notification_stream_begin_borrow_stream(notification); + bt_notification_stream_begin_borrow_stream( + notification); BT_ASSERT(test_event.stream); break; case BT_NOTIFICATION_TYPE_STREAM_END: @@ -536,7 +533,8 @@ void append_test_events_from_notification(struct bt_notification *notification) case BT_NOTIFICATION_TYPE_PACKET_BEGIN: test_event.type = TEST_EV_TYPE_NOTIF_PACKET_BEGIN; test_event.packet = - bt_notification_packet_begin_borrow_packet(notification); + bt_notification_packet_begin_borrow_packet( + notification); BT_ASSERT(test_event.packet); break; case BT_NOTIFICATION_TYPE_PACKET_END: @@ -551,7 +549,8 @@ void append_test_events_from_notification(struct bt_notification *notification) } if (test_event.packet) { - test_event.stream = bt_packet_borrow_stream(test_event.packet); + test_event.stream = bt_packet_borrow_stream_const( + test_event.packet); BT_ASSERT(test_event.stream); } diff --git a/tests/lib/test_trace_ir_ref.c b/tests/lib/test_trace_ir_ref.c index d8af80b9..44fd5246 100644 --- a/tests/lib/test_trace_ir_ref.c +++ b/tests/lib/test_trace_ir_ref.c @@ -29,11 +29,11 @@ #define NR_TESTS 37 struct user { - struct bt_private_trace *tc; - struct bt_private_stream_class *sc; - struct bt_private_event_class *ec; - struct bt_private_stream *stream; - struct bt_private_event *event; + struct bt_trace *tc; + struct bt_stream_class *sc; + struct bt_event_class *ec; + struct bt_stream *stream; + struct bt_event *event; }; struct writer_user { @@ -63,30 +63,30 @@ static const size_t WRITER_USER_NR_ELEMENTS = * - uint16_t payload_16; * - uint32_t payload_32; */ -static struct bt_private_field_class *create_integer_struct(void) +static struct bt_field_class *create_integer_struct(void) { int ret; - struct bt_private_field_class *structure = NULL; - struct bt_private_field_class *ui8 = NULL, *ui16 = NULL, *ui32 = NULL; + struct bt_field_class *structure = NULL; + struct bt_field_class *ui8 = NULL, *ui16 = NULL, *ui32 = NULL; - structure = bt_private_field_class_structure_create(); + structure = bt_field_class_structure_create(); BT_ASSERT(structure); - ui8 = bt_private_field_class_unsigned_integer_create(); + ui8 = bt_field_class_unsigned_integer_create(); BT_ASSERT(ui8); - bt_private_field_class_integer_set_field_value_range(ui8, 8); - ret = bt_private_field_class_structure_append_member(structure, + bt_field_class_integer_set_field_value_range(ui8, 8); + ret = bt_field_class_structure_append_member(structure, "payload_8", ui8); BT_ASSERT(ret == 0); - ui16 = bt_private_field_class_unsigned_integer_create(); + ui16 = bt_field_class_unsigned_integer_create(); BT_ASSERT(ui16); - bt_private_field_class_integer_set_field_value_range(ui16, 16); - ret = bt_private_field_class_structure_append_member(structure, + bt_field_class_integer_set_field_value_range(ui16, 16); + ret = bt_field_class_structure_append_member(structure, "payload_16", ui16); BT_ASSERT(ret == 0); - ui32 = bt_private_field_class_unsigned_integer_create(); + ui32 = bt_field_class_unsigned_integer_create(); BT_ASSERT(ui32); - bt_private_field_class_integer_set_field_value_range(ui32, 32); - ret = bt_private_field_class_structure_append_member(structure, + bt_field_class_integer_set_field_value_range(ui32, 32); + ret = bt_field_class_structure_append_member(structure, "payload_32", ui32); BT_ASSERT(ret == 0); BT_OBJECT_PUT_REF_AND_RESET(ui8); @@ -130,21 +130,21 @@ static struct bt_ctf_field_type *create_writer_integer_struct(void) * - uint16_t payload_16; * - uint32_t payload_32; */ -static struct bt_private_event_class *create_simple_event( - struct bt_private_stream_class *sc, const char *name) +static struct bt_event_class *create_simple_event( + struct bt_stream_class *sc, const char *name) { int ret; - struct bt_private_event_class *event = NULL; - struct bt_private_field_class *payload = NULL; + struct bt_event_class *event = NULL; + struct bt_field_class *payload = NULL; BT_ASSERT(name); - event = bt_private_event_class_create(sc); + event = bt_event_class_create(sc); BT_ASSERT(event); - ret = bt_private_event_class_set_name(event, name); + ret = bt_event_class_set_name(event, name); BT_ASSERT(ret == 0); payload = create_integer_struct(); BT_ASSERT(payload); - ret = bt_private_event_class_set_payload_field_class(event, payload); + ret = bt_event_class_set_payload_field_class(event, payload); BT_ASSERT(ret == 0); BT_OBJECT_PUT_REF_AND_RESET(payload); return event; @@ -160,27 +160,27 @@ static struct bt_private_event_class *create_simple_event( * - uint16_t payload_16; * - uint32_t payload_32; */ -static struct bt_private_event_class *create_complex_event( - struct bt_private_stream_class *sc, +static struct bt_event_class *create_complex_event( + struct bt_stream_class *sc, const char *name) { int ret; - struct bt_private_event_class *event = NULL; - struct bt_private_field_class *inner = NULL, *outer = NULL; + struct bt_event_class *event = NULL; + struct bt_field_class *inner = NULL, *outer = NULL; BT_ASSERT(name); - event = bt_private_event_class_create(sc); + event = bt_event_class_create(sc); BT_ASSERT(event); - ret = bt_private_event_class_set_name(event, name); + ret = bt_event_class_set_name(event, name); BT_ASSERT(ret == 0); outer = create_integer_struct(); BT_ASSERT(outer); inner = create_integer_struct(); BT_ASSERT(inner); - ret = bt_private_field_class_structure_append_member(outer, + ret = bt_field_class_structure_append_member(outer, "payload_struct", inner); BT_ASSERT(ret == 0); - ret = bt_private_event_class_set_payload_field_class(event, outer); + ret = bt_event_class_set_payload_field_class(event, outer); BT_ASSERT(ret == 0); BT_OBJECT_PUT_REF_AND_RESET(inner); BT_OBJECT_PUT_REF_AND_RESET(outer); @@ -188,117 +188,117 @@ static struct bt_private_event_class *create_complex_event( } static void set_stream_class_field_classes( - struct bt_private_stream_class *stream_class) + struct bt_stream_class *stream_class) { - struct bt_private_field_class *packet_context_type; - struct bt_private_field_class *event_header_type; - struct bt_private_field_class *fc; + struct bt_field_class *packet_context_type; + struct bt_field_class *event_header_type; + struct bt_field_class *fc; int ret; - packet_context_type = bt_private_field_class_structure_create(); + packet_context_type = bt_field_class_structure_create(); BT_ASSERT(packet_context_type); - fc = bt_private_field_class_unsigned_integer_create(); + fc = bt_field_class_unsigned_integer_create(); BT_ASSERT(fc); - bt_private_field_class_integer_set_field_value_range(fc, 32); - ret = bt_private_field_class_structure_append_member(packet_context_type, + bt_field_class_integer_set_field_value_range(fc, 32); + ret = bt_field_class_structure_append_member(packet_context_type, "packet_size", fc); BT_ASSERT(ret == 0); bt_object_put_ref(fc); - fc = bt_private_field_class_unsigned_integer_create(); + fc = bt_field_class_unsigned_integer_create(); BT_ASSERT(fc); - bt_private_field_class_integer_set_field_value_range(fc, 32); - ret = bt_private_field_class_structure_append_member(packet_context_type, + bt_field_class_integer_set_field_value_range(fc, 32); + ret = bt_field_class_structure_append_member(packet_context_type, "content_size", fc); BT_ASSERT(ret == 0); bt_object_put_ref(fc); - event_header_type = bt_private_field_class_structure_create(); + event_header_type = bt_field_class_structure_create(); BT_ASSERT(event_header_type); - fc = bt_private_field_class_unsigned_integer_create(); + fc = bt_field_class_unsigned_integer_create(); BT_ASSERT(fc); - bt_private_field_class_integer_set_field_value_range(fc, 32); - ret = bt_private_field_class_structure_append_member(event_header_type, + bt_field_class_integer_set_field_value_range(fc, 32); + ret = bt_field_class_structure_append_member(event_header_type, "id", fc); BT_ASSERT(ret == 0); bt_object_put_ref(fc); - ret = bt_private_stream_class_set_packet_context_field_class( + ret = bt_stream_class_set_packet_context_field_class( stream_class, packet_context_type); BT_ASSERT(ret == 0); - ret = bt_private_stream_class_set_event_header_field_class( + ret = bt_stream_class_set_event_header_field_class( stream_class, event_header_type); BT_ASSERT(ret == 0); bt_object_put_ref(packet_context_type); bt_object_put_ref(event_header_type); } -static void create_sc1(struct bt_private_trace *trace) +static void create_sc1(struct bt_trace *trace) { int ret; - struct bt_private_event_class *ec1 = NULL, *ec2 = NULL; - struct bt_private_stream_class *sc1 = NULL, *ret_stream = NULL; + struct bt_event_class *ec1 = NULL, *ec2 = NULL; + struct bt_stream_class *sc1 = NULL, *ret_stream = NULL; - sc1 = bt_private_stream_class_create(trace); + sc1 = bt_stream_class_create(trace); BT_ASSERT(sc1); - ret = bt_private_stream_class_set_name(sc1, "sc1"); + ret = bt_stream_class_set_name(sc1, "sc1"); BT_ASSERT(ret == 0); set_stream_class_field_classes(sc1); ec1 = create_complex_event(sc1, "ec1"); BT_ASSERT(ec1); ec2 = create_simple_event(sc1, "ec2"); BT_ASSERT(ec2); - ret_stream = bt_private_event_class_borrow_stream_class(ec1); + ret_stream = bt_event_class_borrow_stream_class(ec1); ok(ret_stream == sc1, "Borrow parent stream SC1 from EC1"); - ret_stream = bt_private_event_class_borrow_stream_class(ec2); + ret_stream = bt_event_class_borrow_stream_class(ec2); ok(ret_stream == sc1, "Borrow parent stream SC1 from EC2"); BT_OBJECT_PUT_REF_AND_RESET(ec1); BT_OBJECT_PUT_REF_AND_RESET(ec2); BT_OBJECT_PUT_REF_AND_RESET(sc1); } -static void create_sc2(struct bt_private_trace *trace) +static void create_sc2(struct bt_trace *trace) { int ret; - struct bt_private_event_class *ec3 = NULL; - struct bt_private_stream_class *sc2 = NULL, *ret_stream = NULL; + struct bt_event_class *ec3 = NULL; + struct bt_stream_class *sc2 = NULL, *ret_stream = NULL; - sc2 = bt_private_stream_class_create(trace); + sc2 = bt_stream_class_create(trace); BT_ASSERT(sc2); - ret = bt_private_stream_class_set_name(sc2, "sc2"); + ret = bt_stream_class_set_name(sc2, "sc2"); BT_ASSERT(ret == 0); set_stream_class_field_classes(sc2); ec3 = create_simple_event(sc2, "ec3"); - ret_stream = bt_private_event_class_borrow_stream_class(ec3); + ret_stream = bt_event_class_borrow_stream_class(ec3); ok(ret_stream == sc2, "Borrow parent stream SC2 from EC3"); BT_OBJECT_PUT_REF_AND_RESET(ec3); BT_OBJECT_PUT_REF_AND_RESET(sc2); } -static void set_trace_packet_header(struct bt_private_trace *trace) +static void set_trace_packet_header(struct bt_trace *trace) { - struct bt_private_field_class *packet_header_type; - struct bt_private_field_class *fc; + struct bt_field_class *packet_header_type; + struct bt_field_class *fc; int ret; - packet_header_type = bt_private_field_class_structure_create(); + packet_header_type = bt_field_class_structure_create(); BT_ASSERT(packet_header_type); - fc = bt_private_field_class_unsigned_integer_create(); + fc = bt_field_class_unsigned_integer_create(); BT_ASSERT(fc); - bt_private_field_class_integer_set_field_value_range(fc, 32); - ret = bt_private_field_class_structure_append_member(packet_header_type, + bt_field_class_integer_set_field_value_range(fc, 32); + ret = bt_field_class_structure_append_member(packet_header_type, "stream_id", fc); BT_ASSERT(ret == 0); bt_object_put_ref(fc); - ret = bt_private_trace_set_packet_header_field_class(trace, + ret = bt_trace_set_packet_header_field_class(trace, packet_header_type); BT_ASSERT(ret == 0); bt_object_put_ref(packet_header_type); } -static struct bt_private_trace *create_tc1(void) +static struct bt_trace *create_tc1(void) { - struct bt_private_trace *tc1 = NULL; + struct bt_trace *tc1 = NULL; - tc1 = bt_private_trace_create(); + tc1 = bt_trace_create(); BT_ASSERT(tc1); set_trace_packet_header(tc1); create_sc1(tc1); @@ -306,20 +306,20 @@ static struct bt_private_trace *create_tc1(void) return tc1; } -static void init_weak_refs(struct bt_private_trace *tc, - struct bt_private_trace **tc1, - struct bt_private_stream_class **sc1, - struct bt_private_stream_class **sc2, - struct bt_private_event_class **ec1, - struct bt_private_event_class **ec2, - struct bt_private_event_class **ec3) +static void init_weak_refs(struct bt_trace *tc, + struct bt_trace **tc1, + struct bt_stream_class **sc1, + struct bt_stream_class **sc2, + struct bt_event_class **ec1, + struct bt_event_class **ec2, + struct bt_event_class **ec3) { *tc1 = tc; - *sc1 = bt_private_trace_borrow_stream_class_by_index(tc, 0); - *sc2 = bt_private_trace_borrow_stream_class_by_index(tc, 1); - *ec1 = bt_private_stream_class_borrow_event_class_by_index(*sc1, 0); - *ec2 = bt_private_stream_class_borrow_event_class_by_index(*sc1, 1); - *ec3 = bt_private_stream_class_borrow_event_class_by_index(*sc2, 0); + *sc1 = bt_trace_borrow_stream_class_by_index(tc, 0); + *sc2 = bt_trace_borrow_stream_class_by_index(tc, 1); + *ec1 = bt_stream_class_borrow_event_class_by_index(*sc1, 0); + *ec2 = bt_stream_class_borrow_event_class_by_index(*sc1, 1); + *ec3 = bt_stream_class_borrow_event_class_by_index(*sc2, 0); } static void test_example_scenario(void) @@ -331,9 +331,9 @@ static void test_example_scenario(void) * of expected reference counts without affecting them by taking * "real" references to the objects. */ - struct bt_private_trace *tc1 = NULL, *weak_tc1 = NULL; - struct bt_private_stream_class *weak_sc1 = NULL, *weak_sc2 = NULL; - struct bt_private_event_class *weak_ec1 = NULL, *weak_ec2 = NULL, + struct bt_trace *tc1 = NULL, *weak_tc1 = NULL; + struct bt_stream_class *weak_sc1 = NULL, *weak_sc2 = NULL; + struct bt_event_class *weak_ec1 = NULL, *weak_ec2 = NULL, *weak_ec3 = NULL; struct user user_a = { 0 }, user_b = { 0 }, user_c = { 0 }; @@ -360,7 +360,7 @@ static void test_example_scenario(void) "TC1 reference count is 1"); /* User A acquires a reference to SC2 from TC1. */ - user_a.sc = bt_private_trace_borrow_stream_class_by_index( + user_a.sc = bt_trace_borrow_stream_class_by_index( user_a.tc, 1); bt_object_get_ref(user_a.sc); ok(user_a.sc, "User A acquires SC2 from TC1"); @@ -370,7 +370,7 @@ static void test_example_scenario(void) "SC2 reference count is 1"); /* User A acquires a reference to EC3 from SC2. */ - user_a.ec = bt_private_stream_class_borrow_event_class_by_index( + user_a.ec = bt_stream_class_borrow_event_class_by_index( user_a.sc, 0); bt_object_get_ref(user_a.ec); ok(user_a.ec, "User A acquires EC3 from SC2"); @@ -420,7 +420,7 @@ static void test_example_scenario(void) /* User C acquires a reference to EC1. */ diag("User C acquires a reference to EC1"); - user_c.ec = bt_private_stream_class_borrow_event_class_by_index( + user_c.ec = bt_stream_class_borrow_event_class_by_index( user_b.sc, 0); bt_object_get_ref(user_c.ec); ok(bt_object_get_ref_count((void *) weak_ec1) == 1, -- 2.34.1