]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1da177e4 LT |
2 | /* $Id: dqueue.h,v 1.1.2.2 2001/02/08 12:25:43 armin Exp $ */ |
3 | ||
4 | #ifndef _DIVA_USER_MODE_IDI_DATA_QUEUE_H__ | |
5 | #define _DIVA_USER_MODE_IDI_DATA_QUEUE_H__ | |
6 | ||
7 | #define DIVA_UM_IDI_MAX_MSGS 64 | |
8 | ||
9 | typedef struct _diva_um_idi_data_queue { | |
10 | int segments; | |
11 | int max_length; | |
12 | int read; | |
13 | int write; | |
14 | int count; | |
15 | int segment_pending; | |
16 | void *data[DIVA_UM_IDI_MAX_MSGS]; | |
17 | int length[DIVA_UM_IDI_MAX_MSGS]; | |
18 | } diva_um_idi_data_queue_t; | |
19 | ||
475be4d8 | 20 | int diva_data_q_init(diva_um_idi_data_queue_t *q, |
1da177e4 | 21 | int max_length, int max_segments); |
475be4d8 JP |
22 | int diva_data_q_finit(diva_um_idi_data_queue_t *q); |
23 | int diva_data_q_get_max_length(const diva_um_idi_data_queue_t *q); | |
24 | void *diva_data_q_get_segment4write(diva_um_idi_data_queue_t *q); | |
25 | void diva_data_q_ack_segment4write(diva_um_idi_data_queue_t *q, | |
1da177e4 LT |
26 | int length); |
27 | const void *diva_data_q_get_segment4read(const diva_um_idi_data_queue_t * | |
28 | q); | |
475be4d8 JP |
29 | int diva_data_q_get_segment_length(const diva_um_idi_data_queue_t *q); |
30 | void diva_data_q_ack_segment4read(diva_um_idi_data_queue_t *q); | |
1da177e4 LT |
31 | |
32 | #endif |