sig
module Mgk :
sig
type t
val new_genesis : unit -> Mgk_cmd.Mgk.t
val input_image : string -> Mgk_cmd.Mgk.t -> unit
val set_size : wh:int * int -> Mgk_cmd.Mgk.t -> unit
val init_canvas : string -> Mgk_cmd.Mgk.t -> unit
val set_filename : string -> Mgk_cmd.Mgk.t -> unit
val write_command : Mgk_cmd.Mgk.t -> unit
val display : Mgk_cmd.Mgk.t -> unit
val new_genesis7 : unit -> Mgk_cmd.Mgk.t
val draw_line : int * int -> int * int -> Mgk_cmd.Mgk.t -> unit
val draw_point : int * int -> Mgk_cmd.Mgk.t -> unit
val draw_rectangle : int * int -> int * int -> Mgk_cmd.Mgk.t -> unit
val draw_circle : int * int -> int -> Mgk_cmd.Mgk.t -> unit
val draw_ellipse : int * int -> int * int -> Mgk_cmd.Mgk.t -> unit
val draw_qbcurve :
int * int -> int * int -> int * int -> Mgk_cmd.Mgk.t -> unit
val draw_cbcurve :
int * int ->
int * int -> int * int -> int * int -> Mgk_cmd.Mgk.t -> unit
val draw_polygon : (int * int) list -> Mgk_cmd.Mgk.t -> unit
val draw_text : int * int -> string -> Mgk_cmd.Mgk.t -> unit
val set_font : string -> Mgk_cmd.Mgk.t -> unit
val set_pointsize : int -> Mgk_cmd.Mgk.t -> unit
val set_strokewidth : float -> Mgk_cmd.Mgk.t -> unit
val set_fill : string -> Mgk_cmd.Mgk.t -> unit
val set_stroke : string -> Mgk_cmd.Mgk.t -> unit
type path =
M of int * int
| L of int * int
| Q of (int * int) * (int * int)
| C of (int * int) * (int * int) * (int * int)
| A of (int * int) * int * (int * int) * (int * int)
| Z
val draw_path : Mgk_cmd.Mgk.path list -> Mgk_cmd.Mgk.t -> unit
type comp_op = string
val over : Mgk_cmd.Mgk.comp_op
val multiply : Mgk_cmd.Mgk.comp_op
val screen : Mgk_cmd.Mgk.comp_op
val overlay : Mgk_cmd.Mgk.comp_op
val darken : Mgk_cmd.Mgk.comp_op
val lighten : Mgk_cmd.Mgk.comp_op
val add : Mgk_cmd.Mgk.comp_op
val subtract : Mgk_cmd.Mgk.comp_op
val plus : Mgk_cmd.Mgk.comp_op
val xor : Mgk_cmd.Mgk.comp_op
val atop : Mgk_cmd.Mgk.comp_op
val out : Mgk_cmd.Mgk.comp_op
val src : Mgk_cmd.Mgk.comp_op
val src_in : Mgk_cmd.Mgk.comp_op
val src_out : Mgk_cmd.Mgk.comp_op
val src_over : Mgk_cmd.Mgk.comp_op
val src_atop : Mgk_cmd.Mgk.comp_op
val dst_in : Mgk_cmd.Mgk.comp_op
val dst_out : Mgk_cmd.Mgk.comp_op
val dst_over : Mgk_cmd.Mgk.comp_op
val dst_atop : Mgk_cmd.Mgk.comp_op
val divide_src : Mgk_cmd.Mgk.comp_op
val divide_dst : Mgk_cmd.Mgk.comp_op
val minus_src : Mgk_cmd.Mgk.comp_op
val minus_dst : Mgk_cmd.Mgk.comp_op
val dissolve : Mgk_cmd.Mgk.comp_op
val difference : Mgk_cmd.Mgk.comp_op
val color_burn : Mgk_cmd.Mgk.comp_op
val color_dodge : Mgk_cmd.Mgk.comp_op
val linear_burn : Mgk_cmd.Mgk.comp_op
val linear_dodge : Mgk_cmd.Mgk.comp_op
val hard_light : Mgk_cmd.Mgk.comp_op
val soft_light : Mgk_cmd.Mgk.comp_op
val copy_opacity : Mgk_cmd.Mgk.comp_op
val seamless_blend : Mgk_cmd.Mgk.comp_op
val compositeop_of_string : string -> Mgk_cmd.Mgk.comp_op
val set_composite_op : Mgk_cmd.Mgk.comp_op -> Mgk_cmd.Mgk.t -> unit
val composite : Mgk_cmd.Mgk.t -> unit
val open_layer : (Mgk_cmd.Mgk.t -> unit) -> Mgk_cmd.Mgk.t -> unit
val set_geometry : int * int -> Mgk_cmd.Mgk.t -> unit
val base_layer : (Mgk_cmd.Mgk.t -> unit) -> Mgk_cmd.Mgk.t -> unit
val list_compose : Mgk_cmd.Mgk.t -> unit
val negate : Mgk_cmd.Mgk.t -> unit
val blur : int -> Mgk_cmd.Mgk.t -> unit
val normalize : Mgk_cmd.Mgk.t -> unit
val charcoal : int -> Mgk_cmd.Mgk.t -> unit
val grayscale : Mgk_cmd.Mgk.t -> unit
val sharpen : int -> Mgk_cmd.Mgk.t -> unit
val shade : int * int -> Mgk_cmd.Mgk.t -> unit
val modulate : int * int * int -> Mgk_cmd.Mgk.t -> unit
val resize : string -> Mgk_cmd.Mgk.t -> unit
val flip : Mgk_cmd.Mgk.t -> unit
val flop : Mgk_cmd.Mgk.t -> unit
val posterize : int -> Mgk_cmd.Mgk.t -> unit
val paint : int -> Mgk_cmd.Mgk.t -> unit
val monochrome : Mgk_cmd.Mgk.t -> unit
val emboss : int -> Mgk_cmd.Mgk.t -> unit
val edge : int -> Mgk_cmd.Mgk.t -> unit
val auto_level : Mgk_cmd.Mgk.t -> unit
val convolve_sobel : Mgk_cmd.Mgk.t -> unit
type dither_method = string
val dither_riemersma : Mgk_cmd.Mgk.dither_method
val dither : Mgk_cmd.Mgk.dither_method -> Mgk_cmd.Mgk.t -> unit
val colors : int -> Mgk_cmd.Mgk.t -> unit
val clone_last : Mgk_cmd.Mgk.t -> unit
val clone : int -> Mgk_cmd.Mgk.t -> unit
val clone_range : int * int -> Mgk_cmd.Mgk.t -> unit
end
end