summaryrefslogtreecommitdiffstats
path: root/server/red_worker.h
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@gmail.com>2013-09-02 17:39:57 +0200
committerFrediano Ziglio <fziglio@redhat.com>2015-10-22 10:05:22 +0100
commit15da68dbded450a4d31692aaa78d5fa3b5d0c6c8 (patch)
tree3326637d1a579c1ece78a1c1ef5b08a311f7dfee /server/red_worker.h
parent31292412c9986ab6aaa893390f20406310b6cc24 (diff)
downloadspice-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.h93
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