summaryrefslogtreecommitdiffstats
path: root/server/dcc.h
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@gmail.com>2013-09-25 18:31:39 +0200
committerFrediano Ziglio <fziglio@redhat.com>2015-11-24 08:56:33 +0000
commit6df1558523c624dbbf414a034e673d277fe8a439 (patch)
tree336a92e5690e94fb83dbbd8160d456f6551a34ac /server/dcc.h
parent1549f751b8b9cdaf17b721a8400b6cffce7e36ed (diff)
downloadspice-6df1558523c624dbbf414a034e673d277fe8a439.tar.gz
spice-6df1558523c624dbbf414a034e673d277fe8a439.tar.xz
spice-6df1558523c624dbbf414a034e673d277fe8a439.zip
worker: move dcc_add_drawable*
Acked-by: Fabiano Fidêncio <fidencio@redhat.com>
Diffstat (limited to 'server/dcc.h')
-rw-r--r--server/dcc.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/server/dcc.h b/server/dcc.h
index a6e1cc7f..12bb38e7 100644
--- a/server/dcc.h
+++ b/server/dcc.h
@@ -135,6 +135,17 @@ typedef struct ImageItem {
uint8_t data[0];
} ImageItem;
+typedef struct DrawablePipeItem {
+ RingItem base; /* link for a list of pipe items held by Drawable */
+ PipeItem dpi_pipe_item; /* link for the client's pipe itself */
+ Drawable *drawable;
+ DisplayChannelClient *dcc;
+ uint8_t refs;
+} DrawablePipeItem;
+
+void drawable_pipe_item_unref (DrawablePipeItem *dpi);
+DrawablePipeItem* drawable_pipe_item_ref (DrawablePipeItem *dpi);
+
DisplayChannelClient* dcc_new (DisplayChannel *display,
RedClient *client,
RedsStream *stream,
@@ -172,6 +183,13 @@ void dcc_palette_cache_palette (DisplayCha
uint8_t *flags);
int dcc_pixmap_cache_unlocked_add (DisplayChannelClient *dcc,
uint64_t id, uint32_t size, int lossy);
+void dcc_prepend_drawable (DisplayChannelClient *dcc,
+ Drawable *drawable);
+void dcc_append_drawable (DisplayChannelClient *dcc,
+ Drawable *drawable);
+void dcc_add_drawable_after (DisplayChannelClient *dcc,
+ Drawable *drawable,
+ PipeItem *pos);
typedef struct compress_send_data_t {
void* comp_buf;