-module(fluo@texture). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/fluo/texture.gleam"). -export([create_texture/3, load_texture/1, color/1]). -export_type([texture/0]). -opaque texture() :: {texture, fluo@image:color_image(), gleam@dynamic:dynamic_()}. -file("src/fluo/texture.gleam", 18). -spec create_texture(bitstring(), integer(), integer()) -> texture(). create_texture(Pixels, Width, Height) -> {Color, Handle} = fluo_nif:create_texture(Pixels, Width, Height), {texture, Color, Handle}. -file("src/fluo/texture.gleam", 24). -spec load_texture(binary()) -> texture(). load_texture(Path) -> {Color, Handle} = fluo_nif:load_texture_from_path(Path), {texture, Color, Handle}. -file("src/fluo/texture.gleam", 30). -spec color(texture()) -> fluo@image:color_image(). color(Texture) -> erlang:element(2, Texture).