libdragon
graphics.h
Go to the documentation of this file.
00001 
00006 #ifndef __LIBDRAGON_GRAPHICS_H
00007 #define __LIBDRAGON_GRAPHICS_H
00008 
00009 #include "display.h"
00010 
00017 typedef struct
00018 {
00020     uint8_t r;
00022     uint8_t g;
00024     uint8_t b;
00026     uint8_t a;
00027 } color_t;
00028 
00030 typedef struct
00031 {
00033     uint16_t width;
00035     uint16_t height;
00041     uint8_t bitdepth;
00046     uint8_t format;
00048     uint8_t hslices;
00050     uint8_t vslices;
00051 
00053     uint32_t data[0];
00054 } sprite_t;
00055 
00056 #ifdef __cplusplus
00057 extern "C" {
00058 #endif
00059 
00060 uint32_t graphics_make_color( int r, int g, int b, int a );
00061 uint32_t graphics_convert_color( color_t color );
00062 void graphics_draw_pixel( display_context_t disp, int x, int y, uint32_t c );
00063 void graphics_draw_pixel_trans( display_context_t disp, int x, int y, uint32_t c );
00064 void graphics_draw_line( display_context_t disp, int x0, int y0, int x1, int y1, uint32_t c );
00065 void graphics_draw_line_trans( display_context_t disp, int x0, int y0, int x1, int y1, uint32_t c );
00066 void graphics_draw_box( display_context_t disp, int x, int y, int width, int height, uint32_t color );
00067 void graphics_draw_box_trans( display_context_t disp, int x, int y, int width, int height, uint32_t color );
00068 void graphics_fill_screen( display_context_t disp, uint32_t c );
00069 void graphics_set_color( uint32_t forecolor, uint32_t backcolor );
00070 void graphics_draw_character( display_context_t disp, int x, int y, char c );
00071 void graphics_draw_text( display_context_t disp, int x, int y, const char * const msg );
00072 void graphics_draw_sprite( display_context_t disp, int x, int y, sprite_t *sprite );
00073 void graphics_draw_sprite_stride( display_context_t disp, int x, int y, sprite_t *sprite, int offset );
00074 void graphics_draw_sprite_trans( display_context_t disp, int x, int y, sprite_t *sprite );
00075 void graphics_draw_sprite_trans_stride( display_context_t disp, int x, int y, sprite_t *sprite, int offset );
00076 
00077 #ifdef __cplusplus
00078 }
00079 #endif
00080  /* graphics */
00082 
00083 #endif
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines