lib: split trace API into trace class and trace APIs
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Fri, 7 Dec 2018 20:02:41 +0000 (15:02 -0500)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 3 May 2019 22:19:36 +0000 (18:19 -0400)
commit10b7a2e4edf77cb8a63062e151c580b1157a40e8
tree40fa4a109d336904eb7538b7576c7fba82f4c0b9
parent7b53201cfb06ec02f4203e28458dfbcf53d87988
lib: split trace API into trace class and trace APIs

This patch adds the _trace class_ object and its API, moving some trace
API functions to this one instead.

The trace object was the only one holding both metadata and data objects
(stream classes and streams, for example). To be more consistent, a
trace class now deals with metadata only (no streams, no static state)
and a trace with data only. A trace is an instance (data streams) of a
trace class: you can have many traces described by the same trace class.

You create a trace class with no parameters, while you create a trace
with an existing trace class.

Like for the trace object, the trace class API has both const and
non-const APIs.

Both a trace and a trace class can have a name (optional), just like
both a stream and a stream class can have a name, and so on. With this
patch, I chose to set the name of the trace object in both src.ctf.fs
and src.text.dmesg, and to display the trace object's name in
sink.text.pretty.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
47 files changed:
include/Makefile.am
include/babeltrace/babeltrace.h
include/babeltrace/lib-logging-internal.h
include/babeltrace/trace-ir/event-internal.h
include/babeltrace/trace-ir/field-classes-internal.h
include/babeltrace/trace-ir/packet-header-field.h
include/babeltrace/trace-ir/stream-class-const.h
include/babeltrace/trace-ir/stream-class-internal.h
include/babeltrace/trace-ir/stream-class.h
include/babeltrace/trace-ir/stream-const.h
include/babeltrace/trace-ir/stream-internal.h
include/babeltrace/trace-ir/stream.h
include/babeltrace/trace-ir/trace-class-const.h [new file with mode: 0644]
include/babeltrace/trace-ir/trace-class-internal.h [new file with mode: 0644]
include/babeltrace/trace-ir/trace-class.h [new file with mode: 0644]
include/babeltrace/trace-ir/trace-const.h
include/babeltrace/trace-ir/trace-internal.h
include/babeltrace/trace-ir/trace.h
lib/graph/notification/event.c
lib/lib-logging.c
lib/trace-ir/Makefile.am
lib/trace-ir/event-class.c
lib/trace-ir/event-header-field.c
lib/trace-ir/field-classes.c
lib/trace-ir/packet-context-field.c
lib/trace-ir/packet-header-field.c
lib/trace-ir/packet.c
lib/trace-ir/stream-class.c
lib/trace-ir/stream.c
lib/trace-ir/trace-class.c [new file with mode: 0644]
lib/trace-ir/trace.c
plugins/ctf/common/metadata/ast.h
plugins/ctf/common/metadata/ctf-meta-translate.c
plugins/ctf/common/metadata/ctf-meta-visitors.h
plugins/ctf/common/metadata/ctf-meta.h
plugins/ctf/common/metadata/decoder.c
plugins/ctf/common/metadata/decoder.h
plugins/ctf/common/metadata/visitor-generate-ir.c
plugins/ctf/common/notif-iter/notif-iter.c
plugins/ctf/fs-src/fs.c
plugins/ctf/fs-src/fs.h
plugins/ctf/fs-src/metadata.c
plugins/ctf/fs-src/metadata.h
plugins/text/dmesg/dmesg.c
plugins/text/pretty/print.c
tests/lib/test_bt_notification_iterator.c
tests/lib/test_trace_ir_ref.c
This page took 0.033805 seconds and 4 git commands to generate.