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)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Fri, 12 Apr 2019 21:25:50 +0000 (17:25 -0400)
commit6d2d37fd081ba708ca32ffc197b51aa79c389c67
treea319fa9d579952156307b04bce313bd0ed88744e
parent9f03ab2500d71474047eb0f5a5d67a2202d934ef
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.051045 seconds and 5 git commands to generate.