1 #ifndef DS_TIZEN_BACKEND_TDM_BUFFER_QUEUE_H
2 #define DS_TIZEN_BACKEND_TDM_BUFFER_QUEUE_H
4 #include <tbm_surface_queue.h>
5 #include <libds/interfaces/buffer.h>
9 struct ds_tdm_buffer_queue
11 tbm_surface_queue_h tbm_surface_queue;
12 struct wl_event_source *acquirable_source;
14 struct wl_list buffers; // ds_tdm_queue_buffer.link
17 struct wl_signal acquirable;
23 struct ds_tdm_queue_buffer
25 struct ds_buffer base;
27 struct ds_tdm_output *output;
28 struct ds_tdm_buffer_queue *queue;
29 tbm_surface_h surface;
32 struct wl_listener buffer_release;
37 struct ds_tdm_buffer_queue *create_buffer_queue(struct ds_tdm_output *output);
39 void buffer_queue_destroy(struct ds_tdm_buffer_queue *queue);
41 struct ds_tdm_queue_buffer *
42 buffer_queue_find_buffer(struct ds_tdm_buffer_queue *queue,
43 struct ds_buffer *ds_buffer);