1 #if !defined(HIKARI_MARK_H) 2 #define HIKARI_MARK_H 3 4 #include <stdbool.h> 5 6 struct hikari_view; 7 8 struct hikari_mark { 9 char *name; 10 int nr; 11 struct hikari_view *view; 12 }; 13 14 #define HIKARI_NR_OF_MARKS 26 15 16 extern struct hikari_mark hikari_marks[HIKARI_NR_OF_MARKS]; 17 18 extern struct hikari_mark *HIKARI_MARK_a; 19 extern struct hikari_mark *HIKARI_MARK_b; 20 extern struct hikari_mark *HIKARI_MARK_c; 21 extern struct hikari_mark *HIKARI_MARK_d; 22 extern struct hikari_mark *HIKARI_MARK_e; 23 extern struct hikari_mark *HIKARI_MARK_f; 24 extern struct hikari_mark *HIKARI_MARK_g; 25 extern struct hikari_mark *HIKARI_MARK_h; 26 extern struct hikari_mark *HIKARI_MARK_i; 27 extern struct hikari_mark *HIKARI_MARK_j; 28 extern struct hikari_mark *HIKARI_MARK_k; 29 extern struct hikari_mark *HIKARI_MARK_l; 30 extern struct hikari_mark *HIKARI_MARK_m; 31 extern struct hikari_mark *HIKARI_MARK_n; 32 extern struct hikari_mark *HIKARI_MARK_o; 33 extern struct hikari_mark *HIKARI_MARK_p; 34 extern struct hikari_mark *HIKARI_MARK_q; 35 extern struct hikari_mark *HIKARI_MARK_r; 36 extern struct hikari_mark *HIKARI_MARK_s; 37 extern struct hikari_mark *HIKARI_MARK_t; 38 extern struct hikari_mark *HIKARI_MARK_u; 39 extern struct hikari_mark *HIKARI_MARK_v; 40 extern struct hikari_mark *HIKARI_MARK_w; 41 extern struct hikari_mark *HIKARI_MARK_x; 42 extern struct hikari_mark *HIKARI_MARK_y; 43 extern struct hikari_mark *HIKARI_MARK_z; 44 45 void 46 hikari_marks_init(void); 47 48 void 49 hikari_marks_fini(void); 50 51 void 52 hikari_mark_clear(struct hikari_mark *mark); 53 54 void 55 hikari_mark_set(struct hikari_mark *mark, struct hikari_view *view); 56 57 bool 58 hikari_mark_get(char reg, struct hikari_mark **mark); 59 60 #endif 61