2 * SPDX-License-Identifier: LGPL-2.1-only
4 * Copyright (C) 2020 Francis Deslauriers <francis.deslauriers@efficios.com>
7 #ifndef _LTTNG_UST_MSGPACK_H
8 #define _LTTNG_UST_MSGPACK_H
12 #include <linux/types.h>
13 #else /* __KERNEL__ */
15 #endif /* __KERNEL__ */
17 struct lttng_msgpack_writer
{
20 const uint8_t *end_write_pos
;
21 uint8_t array_nesting
;
25 __attribute__((visibility("hidden")))
26 void lttng_msgpack_writer_init(
27 struct lttng_msgpack_writer
*writer
,
28 uint8_t *buffer
, size_t size
);
30 __attribute__((visibility("hidden")))
31 void lttng_msgpack_writer_fini(struct lttng_msgpack_writer
*writer
);
33 __attribute__((visibility("hidden")))
34 int lttng_msgpack_write_nil(struct lttng_msgpack_writer
*writer
);
36 __attribute__((visibility("hidden")))
37 int lttng_msgpack_write_true(struct lttng_msgpack_writer
*writer
);
39 __attribute__((visibility("hidden")))
40 int lttng_msgpack_write_false(struct lttng_msgpack_writer
*writer
);
42 __attribute__((visibility("hidden")))
43 int lttng_msgpack_write_unsigned_integer(
44 struct lttng_msgpack_writer
*writer
, uint64_t value
);
46 __attribute__((visibility("hidden")))
47 int lttng_msgpack_write_signed_integer(
48 struct lttng_msgpack_writer
*writer
, int64_t value
);
50 __attribute__((visibility("hidden")))
51 int lttng_msgpack_write_double(struct lttng_msgpack_writer
*writer
, double value
);
53 __attribute__((visibility("hidden")))
54 int lttng_msgpack_write_str(struct lttng_msgpack_writer
*writer
,
57 __attribute__((visibility("hidden")))
58 int lttng_msgpack_begin_map(struct lttng_msgpack_writer
*writer
, size_t count
);
60 __attribute__((visibility("hidden")))
61 int lttng_msgpack_end_map(struct lttng_msgpack_writer
*writer
);
63 __attribute__((visibility("hidden")))
64 int lttng_msgpack_begin_array(
65 struct lttng_msgpack_writer
*writer
, size_t count
);
67 __attribute__((visibility("hidden")))
68 int lttng_msgpack_end_array(struct lttng_msgpack_writer
*writer
);
70 #endif /* _LTTNG_UST_MSGPACK_H */
This page took 0.049888 seconds and 4 git commands to generate.