/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* fillit.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: gtertysh +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/14 16:42:06 by gtertysh #+# #+# */ /* Updated: 2016/12/14 16:45:34 by gtertysh ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef FILLIT_H # define FILLIT_H #include "libft.h" #include #include #include #include // warning! # define BUF_S 8192 typedef struct s_tetrominoes { uint16_t line[16]; int offset_y; } t_tetrominoes; typedef struct s_map { uint16_t line[16]; unsigned int size; t_tetrominoes *figure[26]; unsigned int figure_amount; } t_map; // obsolete, rewrite for unit16 typedef struct s_tetrominoes_templates { char figure[17]; } t_tetrominoes_templates; t_tetrominoes *convert_tetramino(char *s); t_map *map_initialization(char **tetramino_table); // reads from file char *read_file(char *path); // convert string to table by spliting by '\n' char **to_table(char **string); // print table returned by to_table() void print_table(char **table); // creates new table where each string represent whole figrure char **glue_figure(char **table); // move tetromino in top left corner void move_up_left(char **table); // print table returned by glue_figure() void print_one_string(char **glued); // compare 19 templates with each tetromino in *ttr table void test_check(char **ttr, t_tetrominoes_templates *tamplates); // change hashes ('#') with letters // obsolete, rewrite for structs array void to_letters(char **ttr); #endif