sig
type pos = int * int
type state = {
mutable window : Curses.window;
mutable window_cave : Curses.window;
mutable cave : PathVisual.Cave.wall_types array array;
mutable cursor : PathVisual.UI.pos;
mutable src : PathVisual.UI.pos;
mutable dst : PathVisual.UI.pos;
mutable path : (int * int) list;
mutable alg : int;
mutable auto_path : bool;
mutable dist_alg : int;
mutable path_opt_alg : int;
mutable map_type : int;
mutable cave_x : int;
mutable cave_y : int;
}
val printf : ('a, Pervasives.out_channel, unit) Pervasives.format -> 'a
val sprintf : ('a, unit, string) Pervasives.format -> 'a
val string_of_char : char -> string
val getch' : int -> string
val getch : unit -> string
val get_pathfinding :
int ->
PathVisual.Cave.t ->
PathVisual.PathFinding.pos ->
PathVisual.PathFinding.pos ->
PathVisual.PathFinding.distance_function -> PathVisual.PathFinding.path
val get_pathfinding_name : int -> string
val get_dist_alg :
int -> PathVisual.PathFinding.pos -> PathVisual.PathFinding.pos -> float
val get_dist_alg_name : int -> string
val get_path_opt_alg :
int ->
PathVisual.Cave.t ->
PathVisual.PathFinding.path -> PathVisual.PathFinding.path
val get_path_opt_alg_name : int -> string
val get_map_type : int -> int -> int -> PathVisual.Cave.t
val get_map_type_name : int -> string
val printcave : Curses.window -> PathVisual.Cave.t -> unit
val set_cursor_ifvalid : PathVisual.UI.state -> int * int -> unit
val waddstr : Curses.window -> int -> int -> string -> unit
val refresh : PathVisual.UI.state -> unit
val draw_path : PathVisual.UI.state -> unit
val my_draw : PathVisual.UI.state -> unit
val debug_path_legend : PathVisual.UI.state -> unit
val debug_path : PathVisual.UI.state -> unit
val set_path : PathVisual.UI.state -> unit
val debug_opt_legend : PathVisual.UI.state -> unit
val debug_opt : PathVisual.UI.state -> unit
val new_map : PathVisual.UI.state -> unit
val loop : PathVisual.UI.state -> unit
val main : unit -> unit
val curses_keys : unit -> 'a
end