sig
  type t = Sdltexture.t
  external create :
    Sdltype.renderer ->
    SdlpixelFormat.t -> SdltextureAccess.t -> int -> int -> Sdl.Texture.t
    = "caml_SDL_CreateTexture"
  external create_from_surface :
    Sdltype.renderer -> Sdlsurface.t -> Sdl.Texture.t
    = "caml_SDL_CreateTextureFromSurface"
  external destroy : Sdl.Texture.t -> unit = "caml_SDL_DestroyTexture"
  external set_blend_mode : Sdl.Texture.t -> SdlblendMode.t -> unit
    = "caml_SDL_SetTextureBlendMode" [@@noalloc]
  external get_blend_mode : Sdl.Texture.t -> SdlblendMode.t
    = "caml_SDL_GetTextureBlendMode"
  external set_alpha_mod : Sdl.Texture.t -> alpha:int -> unit
    = "caml_SDL_SetTextureAlphaMod"
  external get_alpha_mod : Sdl.Texture.t -> int
    = "caml_SDL_GetTextureAlphaMod"
  external set_color_mod : Sdl.Texture.t -> int * int * int -> unit
    = "caml_SDL_SetTextureColorMod"
  external set_color_mod3 : Sdl.Texture.t -> r:int -> g:int -> b:int -> unit
    = "caml_SDL_SetTextureColorMod3"
  external get_color_mod : Sdl.Texture.t -> int * int * int
    = "caml_SDL_GetTextureColorMod"
end