sig
type t
external init_with_gc_and_fullname :
gc:CL_GraphicContext.t -> fullname:string -> CL_Sprite.t
= "caml_CL_Sprite_init_with_gc_and_fullname"
external init_with_gc_filename_vdir :
gc:CL_GraphicContext.t ->
filename:string -> dir:CL_VirtualDirectory.t -> CL_Sprite.t
= "caml_CL_Sprite_init_with_gc_filename_vdir"
external init_with_gc_and_io :
gc:CL_GraphicContext.t ->
file:'a CL_IODevice.t -> image_type:string -> CL_Sprite.t
= "caml_CL_Sprite_init_with_gc_and_io"
type file_dir_src = { filename : string; dir : CL_VirtualDirectory.t; }
type 'a io_src = { image_in : 'a CL_IODevice.t; image_type : string; }
type 'a sprite_src =
[ `File_dir_src of CL_Sprite.file_dir_src
| `Fullname of string
| `IO of 'a CL_Sprite.io_src ]
val init_with :
gc:CL_GraphicContext.t -> src:'a CL_Sprite.sprite_src -> CL_Sprite.t
external init : unit -> CL_Sprite.t = "caml_CL_Sprite_init"
external delete : CL_Sprite.t -> unit = "caml_CL_Sprite_delete"
external set_angle : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_set_angle" [@@noalloc]
external set_angle_pitch : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_set_angle_pitch" [@@noalloc]
external set_angle_yaw : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_set_angle_yaw" [@@noalloc]
external rotate : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_rotate" [@@noalloc]
external rotate_pitch : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_rotate_pitch" [@@noalloc]
external rotate_yaw : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_rotate_yaw" [@@noalloc]
external set_base_angle : CL_Sprite.t -> angle:CL_Angle.t -> unit
= "caml_CL_Sprite_set_base_angle" [@@noalloc]
external set_scale : CL_Sprite.t -> x:float -> y:float -> unit
= "caml_CL_Sprite_set_scale" [@@noalloc]
external set_alpha : CL_Sprite.t -> alpha:float -> unit
= "caml_CL_Sprite_set_alpha" [@@noalloc]
external set_frame : CL_Sprite.t -> frame:CL_Type.uint -> unit
= "caml_CL_Sprite_set_frame" [@@noalloc]
external set_delay : CL_Sprite.t -> delay_ms:int -> unit
= "caml_CL_Sprite_set_delay" [@@noalloc]
external set_frame_delay : CL_Sprite.t -> frame:int -> delay_ms:int -> unit
= "caml_CL_Sprite_set_frame_delay" [@@noalloc]
external set_frame_offset :
CL_Sprite.t -> frame:int -> offset:CL_Point.t -> unit
= "caml_CL_Sprite_set_frame_offset" [@@noalloc]
external set_id : CL_Sprite.t -> id:int -> unit = "caml_CL_Sprite_set_id"
[@@noalloc]
external finish : CL_Sprite.t -> unit = "caml_CL_Sprite_finish" [@@noalloc]
external restart : CL_Sprite.t -> unit = "caml_CL_Sprite_restart"
[@@noalloc]
external set_play_loop : CL_Sprite.t -> unit
= "caml_CL_Sprite_set_play_loop" [@@noalloc]
external set_play_pingpong : CL_Sprite.t -> unit
= "caml_CL_Sprite_set_play_pingpong" [@@noalloc]
external set_play_backward : CL_Sprite.t -> unit
= "caml_CL_Sprite_set_play_backward" [@@noalloc]
external unset_play_loop : CL_Sprite.t -> unit
= "caml_CL_Sprite_unset_play_loop" [@@noalloc]
external unset_play_pingpong : CL_Sprite.t -> unit
= "caml_CL_Sprite_unset_play_pingpong" [@@noalloc]
external unset_play_backward : CL_Sprite.t -> unit
= "caml_CL_Sprite_unset_play_backward" [@@noalloc]
external is_null : CL_Sprite.t -> bool = "caml_CL_Sprite_is_null"
external get_angle : CL_Sprite.t -> CL_Angle.t = "caml_CL_Sprite_get_angle"
external get_base_angle : CL_Sprite.t -> CL_Angle.t
= "caml_CL_Sprite_get_base_angle"
external get_alpha : CL_Sprite.t -> float = "caml_CL_Sprite_get_alpha"
external get_color : CL_Sprite.t -> CL_Colorf.t
= "caml_CL_Sprite_get_color"
external get_size : CL_Sprite.t -> CL_Size.t = "caml_CL_Sprite_get_size"
external get_current_frame : CL_Sprite.t -> int
= "caml_CL_Sprite_get_current_frame"
external get_frame_count : CL_Sprite.t -> int
= "caml_CL_Sprite_get_frame_count"
external get_id : CL_Sprite.t -> int = "caml_CL_Sprite_get_id"
external get_width : CL_Sprite.t -> int = "caml_CL_Sprite_get_width"
external get_height : CL_Sprite.t -> int = "caml_CL_Sprite_get_height"
external get_linear_filter : CL_Sprite.t -> bool
= "caml_CL_Sprite_get_linear_filter"
external is_play_loop : CL_Sprite.t -> bool = "caml_CL_Sprite_is_play_loop"
external is_play_backward : CL_Sprite.t -> bool
= "caml_CL_Sprite_is_play_backward"
external is_play_pingpong : CL_Sprite.t -> bool
= "caml_CL_Sprite_is_play_pingpong"
external is_finished : CL_Sprite.t -> bool = "caml_CL_Sprite_is_finished"
external is_looping : CL_Sprite.t -> bool = "caml_CL_Sprite_is_looping"
external get_frame_delay : CL_Sprite.t -> frame:int -> int
= "caml_CL_Sprite_get_frame_delay"
external get_frame_offset : CL_Sprite.t -> frame:int -> CL_Point.t
= "caml_CL_Sprite_get_frame_offset"
external get_frame_size : CL_Sprite.t -> frame:int -> CL_Size.t
= "caml_CL_Sprite_get_frame_size"
end