/* ** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ** !!!Code originally from /http://www.openasthra.com/c-tidbits/printing-binary-trees-in-ascii/ ** !!! Just saved it, cause the website is down. ** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ** I use it here for learning. */ #ifndef _PRINT_ASCII_TREE_H #define _PRINT_ASCII_TREE_H struct asciinode_struct; typedef struct asciinode_struct asciinode; #define MAX_HEIGHT 1000 #ifndef INFINITY #define INFINITY (1 << 20) #endif int MIN (int X, int Y); int MAX (int X, int Y); asciinode *build_ascii_tree_recursive(Tree t); asciinode *build_ascii_tree(Tree t); void free_ascii_tree(asciinode *node); void compute_lprofile(asciinode *node, int x, int y); void compute_rprofile(asciinode *node, int x, int y); void compute_edge_lengths(asciinode *node); void print_level(asciinode *node, int x, int level); void print_ascii_tree(Tree t); #endif