sig
  val init_fenetre : x:int -> y:int -> unit -> unit
  val from_rgb : Graphics.color -> int * int * int
  val draw_rect : int -> int -> int -> int -> unit
  val draw_int : x:int -> y:int -> i:int -> unit
  val couleur_fond : Graphics.color
  val couleur_lignes : Graphics.color
  val genere_echelle_couleur :
    cmin:Graphics.color ->
    cmax:Graphics.color -> nb:int -> Graphics.color array
  exception Error_Annule of int
  val faire : string -> unit
  val zenity_info : string -> unit
  val ask_couleur : unit -> Graphics.color
  val ask_int : unit -> int
  val ask_int_msg : string -> unit -> int
  val ask_echelle_couleur : int -> unit -> Graphics.color array
  val fill_custom : Resolution.couleur -> (int * int) array -> unit -> unit
  val line_custom :
    Resolution.couleur -> int -> int -> int -> int -> unit -> unit
  val echelle_globale_fichier_initialisee_une_fois :
    Graphics.color array Pervasives.ref
  val afficher_piece :
    ?x:int -> ?y:int -> p:Resolution.piece -> ?s:int -> c:int -> unit
  val afficher_piece_option :
    ?x:int -> ?y:int -> p:Resolution.piece option -> ?s:int -> c:int -> unit
  exception Fin
  val squel :
    f_init:(unit -> 'a) ->
    f_end:(unit -> unit) ->
    f_key:(char -> unit) ->
    f_mouse:(int -> int -> unit) -> f_except:(exn -> unit) -> unit
  val trait_char : int -> char -> unit
  val exemples_piece_aleatoire : int -> unit
  exception Erreur_trop_grand_h
  exception Erreur_trop_grand_v
  val resolution_x : int
  val resolution_y : int
  val taille_piece : int
  val afficher_plateau : Resolution.plateau -> unit
  val test_random : m:int -> n:int -> c:int -> nb:int -> unit
  val actualise_taille : s:int -> n:int -> m:int -> unit -> unit
  val lit_et_affiche_plateau : file:string -> unit
  val afficher_instance : Resolution.instance -> unit
  val lit_et_affiche_instance : file:string -> unit
  val creer_instance_random_et_affiche :
    m:int -> n:int -> c:int -> Resolution.instance
  val aff_random : m:int -> n:int -> c:int -> Resolution.instance
  val printP : Resolution.plateau -> unit
  val resoud_naivement_graphique : Resolution.instance -> Resolution.plateau
  val aide_interface : string
  val aide_ic : unit -> unit
  val new_n_ic : unit -> int
  val new_m_ic : unit -> int
  val new_c_ic : unit -> int
  val ask_fichier : unit -> string
  val browse_instance : unit -> Resolution.instance
  val ask_value : string -> unit -> string
  val demande_confirmation_graphique : string -> unit
  val capture_ecran : unit -> unit
  val titre_ic : c:int -> n:int -> m:int -> unit
  val fail_recherche : Resolution.instance -> unit -> unit
  val ask_piece : c:int -> unit -> Resolution.piece
  val ask_position : n:int -> m:int -> s:int -> unit -> int * int
  val interface_complete : unit -> unit
end