1 #ifndef _LTTNG_RB_CLIENT_H
2 #define _LTTNG_RB_CLIENT_H
5 * Copyright (c) 2013 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; only
10 * version 2.1 of the License.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 struct lttng_ust_client_lib_ring_buffer_client_cb
{
25 struct lttng_ust_lib_ring_buffer_client_cb parent
;
27 int (*timestamp_begin
) (struct lttng_ust_lib_ring_buffer
*buf
,
28 struct lttng_ust_shm_handle
*handle
,
29 uint64_t *timestamp_begin
);
30 int (*timestamp_end
) (struct lttng_ust_lib_ring_buffer
*buf
,
31 struct lttng_ust_shm_handle
*handle
,
32 uint64_t *timestamp_end
);
33 int (*events_discarded
) (struct lttng_ust_lib_ring_buffer
*buf
,
34 struct lttng_ust_shm_handle
*handle
,
35 uint64_t *events_discarded
);
36 int (*content_size
) (struct lttng_ust_lib_ring_buffer
*buf
,
37 struct lttng_ust_shm_handle
*handle
,
38 uint64_t *content_size
);
39 int (*packet_size
) (struct lttng_ust_lib_ring_buffer
*buf
,
40 struct lttng_ust_shm_handle
*handle
,
41 uint64_t *packet_size
);
42 int (*stream_id
) (struct lttng_ust_lib_ring_buffer
*buf
,
43 struct lttng_ust_shm_handle
*handle
,
45 int (*current_timestamp
) (struct lttng_ust_lib_ring_buffer
*buf
,
46 struct lttng_ust_shm_handle
*handle
,
48 int (*sequence_number
) (struct lttng_ust_lib_ring_buffer
*buf
,
49 struct lttng_ust_shm_handle
*handle
, uint64_t *seq
);
50 int (*instance_id
) (struct lttng_ust_lib_ring_buffer
*buf
,
51 struct lttng_ust_shm_handle
*handle
, uint64_t *id
);
54 #endif /* _LTTNG_RB_CLIENT_H */