diff options
author | Tectu <joel@unormal.org> | 2012-07-18 03:42:05 +0200 |
---|---|---|
committer | Tectu <joel@unormal.org> | 2012-07-18 03:42:05 +0200 |
commit | 096701a6ad8f2ba5512aff4ee430ca0d626fff7a (patch) | |
tree | 647c32fb1ffbcc895b4b1ffa119c8c3ee88f9948 /glcd/worker.h | |
parent | 24692be747aa4d94e264219d6f18bcc6beec76ff (diff) | |
download | uGFX-096701a6ad8f2ba5512aff4ee430ca0d626fff7a.tar.gz uGFX-096701a6ad8f2ba5512aff4ee430ca0d626fff7a.tar.bz2 uGFX-096701a6ad8f2ba5512aff4ee430ca0d626fff7a.zip |
restructorizing
Diffstat (limited to 'glcd/worker.h')
-rw-r--r-- | glcd/worker.h | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/glcd/worker.h b/glcd/worker.h new file mode 100644 index 00000000..d08cae9d --- /dev/null +++ b/glcd/worker.h @@ -0,0 +1,112 @@ +#ifndef WORKER_H +#define WORKER_H + +#define GLCD_WORKER_SIZE 512 + +enum glcd_action { GLCD_SET_POWERMODE, + GLCD_SET_ORIENTATION, + GLCD_SET_WINDOW, + GLCD_FILL_AREA, + GLCD_WRITE_AREA, + GLCD_CLEAR, + GLCD_GET_PIXEL_COLOR, + GLCD_DRAW_PIXEL, + GLCD_WRITE_STREAM_START, + GLCD_WRITE_STREAM_STOP, + GLCD_WRITE_STREAM, + }; + +enum glcd_result { GLCD_DONE, + GLCD_FAILED, + GLCD_PROGRESS, + }; + +#define _glcd_msg_base \ + enum glcd_action action; \ + enum glcd_result result; + +struct glcd_msg_base { + _glcd_msg_base +}; + +struct glcd_msg_powermode { + _glcd_msg_base + + uint8_t powermode; +}; + +struct glcd_msg_orientation { + _glcd_msg_base + + uint8_t newOrientation; +}; + +struct glcd_msg_set_window { + _glcd_msg_base + + uint16_t x0; + uint16_t y0; + uint16_t x1; + uint16_t y1; +}; + +struct glcd_msg_fill_area { + _glcd_msg_base + + uint16_t x0; + uint16_t y0; + uint16_t x1; + uint16_t y1; + uint16_t color; +}; + +struct glcd_msg_write_area { + _glcd_msg_base + + uint16_t x0; + uint16_t y0; + uint16_t x1; + uint16_t y1; + uint16_t *buffer; + size_t size; +}; + +struct glcd_msg_clear { + _glcd_msg_base + + uint16_t color; +}; + +struct glcd_msg_get_pixel_color { + _glcd_msg_base + + uint16_t x; + uint16_t y; + uint16_t color; +}; + +struct glcd_msg_draw_pixel { + _glcd_msg_base + + uint16_t x; + uint16_t y; + uint16_t color; +}; + +struct glcd_msg_write_stream_start { + _glcd_msg_base +}; + +struct glcd_msg_write_stream_stop { + _glcd_msg_base +}; + +struct glcd_msg_write_stream { + _glcd_msg_base + + uint16_t *buffer; + uint16_t size; +}; + +#endif + |