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)
committerFrancis Deslauriers <francis.deslauriers@efficios.com>
Thu, 2 May 2019 20:50:15 +0000 (20:50 +0000)
commit862ca4ed7b3a8ef14f69529d252bccc48a33108a
treec6e3eb64ee413f28edefde107fe3c761f3946fe7
parent0d72b8c329ad51d14ab4e83330b38c2c8da69dd4
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.02855 seconds and 4 git commands to generate.