- 在项目中集成 uC/OS-II 源代码和配置文件 - 修改 CMakeLists.txt 以包含 uC/OS-II 相关路径和源文件 - 更新 main.c 以使用 uC/OS-II 创建任务和管理调度 - 移除原有的裸机程序结构,为使用操作系统做准备
43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
#ifndef __GE_RENDER_H__
|
|
#define __GE_RENDER_H__
|
|
|
|
#include "ge_resource.h"
|
|
|
|
typedef int ge_render_unit_t;
|
|
typedef uint16_t ge_render_color_t;
|
|
|
|
typedef struct ge_render_pos2 {
|
|
ge_render_unit_t x;
|
|
ge_render_unit_t y;
|
|
} ge_render_pos2_t;
|
|
|
|
typedef struct ge_render_rect {
|
|
ge_render_pos2_t pos;
|
|
ge_render_pos2_t size;
|
|
} ge_render_rect_t;
|
|
|
|
struct ge_render;
|
|
typedef struct ge_render ge_render_t;
|
|
|
|
typedef int(*ge_render_init_func_t) (ge_render_t* ctx, const ge_render_pos2_t* init_screen_size);
|
|
typedef int(*ge_render_flush_func_t) (ge_render_t* ctx);
|
|
|
|
typedef int(*ge_render_draw_point_func_t) (ge_render_t* ctx, const ge_render_pos2_t* pos, ge_render_color_t color);
|
|
typedef int(*ge_render_draw_rect_func_t) (ge_render_t* ctx, const ge_render_rect_t* rect, ge_render_color_t color);
|
|
typedef int(*ge_render_draw_text_func_t) (ge_render_t* ctx, const ge_render_pos2_t* pos, const char* text);
|
|
typedef int(*ge_render_draw_resource_func_t)(ge_render_t* ctx, const ge_render_pos2_t* pos, const ge_resource_t* res);
|
|
|
|
struct ge_render {
|
|
void* context;
|
|
ge_render_pos2_t screen_size;
|
|
ge_render_init_func_t init_func;
|
|
ge_render_flush_func_t func_flush;
|
|
|
|
ge_render_draw_point_func_t func_draw_point;
|
|
ge_render_draw_rect_func_t func_draw_rect;
|
|
ge_render_draw_text_func_t func_draw_text;
|
|
ge_render_draw_resource_func_t func_draw_res;
|
|
};
|
|
|
|
#endif // __GE_RENDER_H__
|