/* generate-offsets.c * Генерирует offsets.inc с смещениями полей структур */ #include #include #include "window.h" int main(void) { printf("; offsets.inc — generated automatically\n"); // window_draw_info offsets printf("WDI_DATA equ %zu\n", offsetof(struct window_draw_info, data)); printf("WDI_WIDTH equ %zu\n", offsetof(struct window_draw_info, width)); printf("WDI_HEIGHT equ %zu\n", offsetof(struct window_draw_info, height)); printf("WDI_FIGURE equ %zu\n", offsetof(struct window_draw_info, figure)); printf("WDI_FIGURE_MUTEX equ %zu\n", offsetof(struct window_draw_info, figure_mutex)); printf("\n"); // figure_animation_info offsets printf("FIG_TYPE equ %zu\n", offsetof(struct figure_animation_info, type)); printf("FIG_POSITION equ %zu\n", offsetof(struct figure_animation_info, position)); printf("FIG_VELOCITY equ %zu\n", offsetof(struct figure_animation_info, velocity)); printf("FIG_ANGLE equ %zu\n", offsetof(struct figure_animation_info, angle)); printf("FIG_ANG_VEL equ %zu\n", offsetof(struct figure_animation_info, angular_velocity)); printf("FIG_SPEED equ %zu\n", offsetof(struct figure_animation_info, speed)); printf("FIG_RADIUS equ %zu\n", offsetof(struct figure_animation_info, radius)); return 0; }