Current section

Files

Jump to
circuits_gpio lib gpio gpio_nif.ex
Raw

lib/gpio/gpio_nif.ex

# SPDX-FileCopyrightText: 2018 Frank Hunleth
# SPDX-FileCopyrightText: 2018 Mark Sebald
# SPDX-FileCopyrightText: 2018 Matt Ludwigs
# SPDX-FileCopyrightText: 2023 Connor Rigby
#
# SPDX-License-Identifier: Apache-2.0
defmodule Circuits.GPIO.Nif do
@moduledoc false
@on_load {:load_nif, 0}
@compile {:autoload, false}
def load_nif() do
:erlang.load_nif(:code.priv_dir(:circuits_gpio) ++ ~c"/gpio_nif", 0)
end
def open(_gpio_spec, _resolved_gpio_spec, _direction, _initial_value, _pull_mode, _drive_mode),
do: :erlang.nif_error(:nif_not_loaded)
def close(_gpio), do: :erlang.nif_error(:nif_not_loaded)
def force_close(_gpio), do: :erlang.nif_error(:nif_not_loaded)
def read(_gpio), do: :erlang.nif_error(:nif_not_loaded)
def write(_gpio, _value), do: :erlang.nif_error(:nif_not_loaded)
def set_interrupts(_gpio, _trigger, _suppress_glitches, _process),
do: :erlang.nif_error(:nif_not_loaded)
def subscribe(_gpio, _notify_id, _trigger, _process), do: :erlang.nif_error(:nif_not_loaded)
def unsubscribe(_gpio), do: :erlang.nif_error(:nif_not_loaded)
def set_direction(_gpio, _direction), do: :erlang.nif_error(:nif_not_loaded)
def set_pull_mode(_gpio, _pull_mode), do: :erlang.nif_error(:nif_not_loaded)
def set_drive_mode(_gpio, _drive_mode), do: :erlang.nif_error(:nif_not_loaded)
def info(_gpio), do: :erlang.nif_error(:nif_not_loaded)
def status(_resolved_gpio_spec), do: :erlang.nif_error(:nif_not_loaded)
def backend_info(), do: :erlang.nif_error(:nif_not_loaded)
def enumerate(), do: :erlang.nif_error(:nif_not_loaded)
end