xref: /aosp_15_r20/external/mesa3d/src/gallium/frontends/nine/nine_queue.h (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1 /*
2  * Copyright 2016 Patrick Rudolph <[email protected]>
3  * SPDX-License-Identifier: MIT
4  */
5 
6 #ifndef _NINE_QUEUE_H_
7 #define _NINE_QUEUE_H_
8 
9 #include "util/compiler.h"
10 
11 struct nine_queue_pool;
12 
13 void
14 nine_queue_wait_flush(struct nine_queue_pool* ctx);
15 
16 void *
17 nine_queue_get(struct nine_queue_pool* ctx);
18 
19 void
20 nine_queue_flush(struct nine_queue_pool* ctx);
21 
22 void *
23 nine_queue_alloc(struct nine_queue_pool* ctx, unsigned space);
24 
25 bool
26 nine_queue_no_flushed_work(struct nine_queue_pool* ctx);
27 
28 bool
29 nine_queue_isempty(struct nine_queue_pool* ctx);
30 
31 struct nine_queue_pool*
32 nine_queue_create(void);
33 
34 void
35 nine_queue_delete(struct nine_queue_pool *ctx);
36 
37 #endif /* _NINE_QUEUE_H_ */
38