Implement consumer ring buffer position sampling
[lttng-tools.git] / src / common / kernel-consumer / kernel-consumer.h
CommitLineData
3bd1e081
MD
1/*
2 * Copyright (C) 2011 - Julien Desfossez <julien.desfossez@polymtl.ca>
3 * Copyright (C) 2011 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
e9404c27 4 * Copyright (C) 2017 - Jérémie Galarneau <jeremie.galarneau@efficios.com>
3bd1e081 5 *
d14d33bf
AM
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License, version 2 only,
8 * as published by the Free Software Foundation.
3bd1e081
MD
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d14d33bf 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3bd1e081
MD
13 * GNU General Public License for more details.
14 *
d14d33bf
AM
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
3bd1e081
MD
18 */
19
20#ifndef _LTTNG_KCONSUMER_H
21#define _LTTNG_KCONSUMER_H
22
c8fea79c 23#include <common/consumer/consumer.h>
3bd1e081 24
ffe60014 25int lttng_kconsumer_take_snapshot(struct lttng_consumer_stream *stream);
e9404c27
JG
26int lttng_kconsumer_sample_snapshot_positions(
27 struct lttng_consumer_stream *stream);
ffe60014 28int lttng_kconsumer_get_produced_snapshot(struct lttng_consumer_stream *stream,
3bd1e081 29 unsigned long *pos);
d3e2ba59
JD
30int lttng_kconsumer_get_consumed_snapshot(struct lttng_consumer_stream *stream,
31 unsigned long *pos);
3bd1e081
MD
32int lttng_kconsumer_recv_cmd(struct lttng_consumer_local_data *ctx,
33 int sock, struct pollfd *consumer_sockpoll);
4078b776 34ssize_t lttng_kconsumer_read_subbuffer(struct lttng_consumer_stream *stream,
d41f73b7
MD
35 struct lttng_consumer_local_data *ctx);
36int lttng_kconsumer_on_recv_stream(struct lttng_consumer_stream *stream);
6d805429 37int lttng_kconsumer_data_pending(struct lttng_consumer_stream *stream);
94d49140 38int lttng_kconsumer_sync_metadata(struct lttng_consumer_stream *metadata);
d41f73b7 39
3bd1e081 40#endif /* _LTTNG_KCONSUMER_H */
This page took 0.043995 seconds and 4 git commands to generate.