diff options
author | Marc-André Lureau <marcandre.lureau@gmail.com> | 2013-09-02 17:39:57 +0200 |
---|---|---|
committer | Frediano Ziglio <fziglio@redhat.com> | 2015-10-22 10:05:22 +0100 |
commit | 15da68dbded450a4d31692aaa78d5fa3b5d0c6c8 (patch) | |
tree | 3326637d1a579c1ece78a1c1ef5b08a311f7dfee /server/red_worker.h | |
parent | 31292412c9986ab6aaa893390f20406310b6cc24 (diff) | |
download | spice-15da68dbded450a4d31692aaa78d5fa3b5d0c6c8.tar.gz spice-15da68dbded450a4d31692aaa78d5fa3b5d0c6c8.tar.xz spice-15da68dbded450a4d31692aaa78d5fa3b5d0c6c8.zip |
server/dispatcher: move worker enums to dispatcher header
Group enums with their respective struct location.
Acked-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Fabiano Fidêncio <fabiano@fidencio.org>
Diffstat (limited to 'server/red_worker.h')
-rw-r--r-- | server/red_worker.h | 93 |
1 files changed, 1 insertions, 92 deletions
diff --git a/server/red_worker.h b/server/red_worker.h index ca8aadbc..c71e9c83 100644 --- a/server/red_worker.h +++ b/server/red_worker.h @@ -21,6 +21,7 @@ #include <unistd.h> #include <errno.h> #include "red_common.h" +#include "red_dispatcher.h" enum { RED_WORKER_PENDING_WAKEUP, @@ -28,54 +29,6 @@ enum { }; enum { - RED_WORKER_MESSAGE_NOP, - RED_WORKER_MESSAGE_UPDATE, - RED_WORKER_MESSAGE_WAKEUP, - RED_WORKER_MESSAGE_OOM, - RED_WORKER_MESSAGE_READY, - RED_WORKER_MESSAGE_DISPLAY_CONNECT, - RED_WORKER_MESSAGE_DISPLAY_DISCONNECT, - RED_WORKER_MESSAGE_DISPLAY_MIGRATE, - RED_WORKER_MESSAGE_START, - RED_WORKER_MESSAGE_STOP, - RED_WORKER_MESSAGE_CURSOR_CONNECT, - RED_WORKER_MESSAGE_CURSOR_DISCONNECT, - RED_WORKER_MESSAGE_CURSOR_MIGRATE, - RED_WORKER_MESSAGE_SET_COMPRESSION, - RED_WORKER_MESSAGE_SET_STREAMING_VIDEO, - RED_WORKER_MESSAGE_SET_MOUSE_MODE, - RED_WORKER_MESSAGE_ADD_MEMSLOT, - RED_WORKER_MESSAGE_DEL_MEMSLOT, - RED_WORKER_MESSAGE_RESET_MEMSLOTS, - RED_WORKER_MESSAGE_DESTROY_SURFACES, - RED_WORKER_MESSAGE_CREATE_PRIMARY_SURFACE, - RED_WORKER_MESSAGE_DESTROY_PRIMARY_SURFACE, - RED_WORKER_MESSAGE_RESET_CURSOR, - RED_WORKER_MESSAGE_RESET_IMAGE_CACHE, - RED_WORKER_MESSAGE_DESTROY_SURFACE_WAIT, - RED_WORKER_MESSAGE_LOADVM_COMMANDS, - /* async commands */ - RED_WORKER_MESSAGE_UPDATE_ASYNC, - RED_WORKER_MESSAGE_ADD_MEMSLOT_ASYNC, - RED_WORKER_MESSAGE_DESTROY_SURFACES_ASYNC, - RED_WORKER_MESSAGE_CREATE_PRIMARY_SURFACE_ASYNC, - RED_WORKER_MESSAGE_DESTROY_PRIMARY_SURFACE_ASYNC, - RED_WORKER_MESSAGE_DESTROY_SURFACE_WAIT_ASYNC, - /* suspend/windows resolution change command */ - RED_WORKER_MESSAGE_FLUSH_SURFACES_ASYNC, - - RED_WORKER_MESSAGE_DISPLAY_CHANNEL_CREATE, - RED_WORKER_MESSAGE_CURSOR_CHANNEL_CREATE, - - RED_WORKER_MESSAGE_MONITORS_CONFIG_ASYNC, - RED_WORKER_MESSAGE_DRIVER_UNLOAD, - - RED_WORKER_MESSAGE_COUNT // LAST -}; - -typedef uint32_t RedWorkerMessage; - -enum { RED_RENDERER_INVALID, RED_RENDERER_SW, RED_RENDERER_OGL_PBUF, @@ -84,8 +37,6 @@ enum { RED_RENDERER_LAST }; -typedef struct RedDispatcher RedDispatcher; - typedef struct WorkerInitData { struct QXLInstance *qxl; int id; @@ -107,46 +58,4 @@ typedef struct WorkerInitData { void *red_worker_main(void *arg); -static inline void send_data(int fd, void *in_buf, int n) -{ - uint8_t *buf = in_buf; - do { - int now; - if ((now = write(fd, buf, n)) == -1) { - if (errno == EINTR) { - continue; - } - spice_error("%s", strerror(errno)); - } - buf += now; - n -= now; - } while (n); -} - -static inline void write_message(int fd, RedWorkerMessage *message) -{ - send_data(fd, message, sizeof(RedWorkerMessage)); -} - -static inline void receive_data(int fd, void *in_buf, int n) -{ - uint8_t *buf = in_buf; - do { - int now; - if ((now = read(fd, buf, n)) == -1) { - if (errno == EINTR) { - continue; - } - spice_error("%s", strerror(errno)); - } - buf += now; - n -= now; - } while (n); -} - -static inline void read_message(int fd, RedWorkerMessage *message) -{ - receive_data(fd, message, sizeof(RedWorkerMessage)); -} - #endif |