/* ************************************************************************** */ /* */ /* :::::::: */ /* push_swap.h :+: :+: */ /* +:+ */ /* By: houtworm +#+ */ /* +#+ */ /* Created: 2023/10/26 19:03:11 by houtworm #+# #+# */ /* Updated: 2023/10/26 19:03:11 by houtworm ######## odam.nl */ /* */ /* ************************************************************************** */ #ifndef PUSH_SWAP_H # define PUSH_SWAP_H # include # include "libft/libft.h" # include "printf/ft_printf.h" # include "getnextline/get_next_line.h" typedef struct s_stack { long data; long id; struct s_stack *n; struct s_stack *p; } t_stack; typedef struct s_varlist { struct s_stack *a; struct s_stack *b; long high; long low; long moves; long nbrs; int direction; long idcounter; long oldlow; long hdiv; long ldiv; long odiv; } t_varlist; int initstack(t_varlist *vl, long value); int popb(t_varlist *vl, int print); int popa(t_varlist *vl, int print); int printlist(t_varlist *vl, char c); int charactercheck(char **stack); int finddouble(char **stack); int sa(t_varlist *vl, int print); int sb(t_varlist *vl, int print); int ss(t_varlist *vl, int print); int pa(t_varlist *vl, int print); int pb(t_varlist *vl, int print); int ra(t_varlist *vl, int print); int rb(t_varlist *vl, int print); int rr(t_varlist *vl, int print); int rra(t_varlist *vl, int print); int rrb(t_varlist *vl, int print); int rrr(t_varlist *vl, int print); int idall(t_varlist *vl); void threenumbers(t_varlist *vl); int findhighlow(t_varlist *vl, char stack); int highorlow(t_varlist *vl); int upordownbetween(t_varlist *vl); void matchatob(t_varlist *vl); int upordownfinal(t_varlist *vl); int lowontop(t_varlist *vl); void fourtothirty(int i, t_varlist *vl); int findfastroutehigh(t_varlist *vl, char stack); int findfastroutelow(t_varlist *vl, char stack); void sorttostacklow(t_varlist *vl); void sorttostackhigh(t_varlist *vl); void dividetostack(t_varlist *vl); void morethanthirty(t_varlist *vl, int division); void thirtyorless(int argc, t_varlist *vl); t_varlist *create_struct(t_varlist *vl); int printall(t_varlist *vl); int freeall(t_varlist *vl); int errorreturn(t_varlist *vl, int type); long long ft_ps_atol(char *str); #endif