Commit | Line | Data |
---|---|---|
f79cf0f0 | 1 | /* |
0235b0db | 2 | * SPDX-License-Identifier: MIT |
f79cf0f0 | 3 | * |
0235b0db | 4 | * Copyright 2016-2018 Philippe Proulx <pproulx@efficios.com> |
f79cf0f0 PP |
5 | */ |
6 | ||
0235b0db MJ |
7 | #ifndef BABELTRACE_TRACE_IR_PACKET_INTERNAL_H |
8 | #define BABELTRACE_TRACE_IR_PACKET_INTERNAL_H | |
9 | ||
ccf82993 | 10 | #include <stdbool.h> |
578e048b | 11 | #include "common/assert.h" |
43c59509 | 12 | #include <babeltrace2/trace-ir/clock-snapshot.h> |
3fadfbc0 MJ |
13 | #include <babeltrace2/trace-ir/packet.h> |
14 | #include <babeltrace2/trace-ir/field.h> | |
15 | #include <babeltrace2/trace-ir/stream.h> | |
578e048b | 16 | #include "lib/object.h" |
91d81473 | 17 | #include "common/macros.h" |
578e048b MJ |
18 | #include "lib/property.h" |
19 | ||
20 | #include "field-wrapper.h" | |
ccf82993 | 21 | |
50842bdc | 22 | struct bt_packet { |
f79cf0f0 | 23 | struct bt_object base; |
44c440bc | 24 | struct bt_field_wrapper *context_field; |
50842bdc | 25 | struct bt_stream *stream; |
44c440bc | 26 | bool frozen; |
f79cf0f0 PP |
27 | }; |
28 | ||
29 | BT_HIDDEN | |
40f4ba76 | 30 | void _bt_packet_set_is_frozen(const struct bt_packet *packet, bool is_frozen); |
f6ccaed9 PP |
31 | |
32 | #ifdef BT_DEV_MODE | |
6c677fb5 | 33 | # define bt_packet_set_is_frozen _bt_packet_set_is_frozen |
f6ccaed9 | 34 | #else |
6c677fb5 | 35 | # define bt_packet_set_is_frozen(_packet, _is_frozen) |
f6ccaed9 | 36 | #endif /* BT_DEV_MODE */ |
f79cf0f0 | 37 | |
312c056a PP |
38 | BT_HIDDEN |
39 | struct bt_packet *bt_packet_new(struct bt_stream *stream); | |
40 | ||
41 | BT_HIDDEN | |
42 | void bt_packet_recycle(struct bt_packet *packet); | |
43 | ||
44 | BT_HIDDEN | |
45 | void bt_packet_destroy(struct bt_packet *packet); | |
46 | ||
56e18c4c | 47 | #endif /* BABELTRACE_TRACE_IR_PACKET_INTERNAL_H */ |