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