mraa 0.0.1

Rust bindings to Intel's IoT mraa library
Documentation
use bindings::types::*;
use bindings::common::*;
/* automatically generated by rust-bindgen */

pub enum Struct__gpio { }
pub type mraa_gpio_context = *mut Struct__gpio;
pub type Enum_Unnamed1 = ::libc::c_uint;
pub const MRAA_GPIO_STRONG: ::libc::c_uint = 0;
pub const MRAA_GPIO_PULLUP: ::libc::c_uint = 1;
pub const MRAA_GPIO_PULLDOWN: ::libc::c_uint = 2;
pub const MRAA_GPIO_HIZ: ::libc::c_uint = 3;
pub type gpio_mode_t = Enum_Unnamed1;
pub type Enum_Unnamed2 = ::libc::c_uint;
pub const MRAA_GPIO_OUT: ::libc::c_uint = 0;
pub const MRAA_GPIO_IN: ::libc::c_uint = 1;
pub const MRAA_GPIO_OUT_HIGH: ::libc::c_uint = 2;
pub const MRAA_GPIO_OUT_LOW: ::libc::c_uint = 3;
pub type gpio_dir_t = Enum_Unnamed2;
pub type Enum_Unnamed3 = ::libc::c_uint;
pub const MRAA_GPIO_EDGE_NONE: ::libc::c_uint = 0;
pub const MRAA_GPIO_EDGE_BOTH: ::libc::c_uint = 1;
pub const MRAA_GPIO_EDGE_RISING: ::libc::c_uint = 2;
pub const MRAA_GPIO_EDGE_FALLING: ::libc::c_uint = 3;
pub type gpio_edge_t = Enum_Unnamed3;
#[link(name = "mraa")]
extern "C" {
    pub fn mraa_gpio_init(pin: ::libc::c_int) -> mraa_gpio_context;
    pub fn mraa_gpio_init_raw(gpiopin: ::libc::c_int) -> mraa_gpio_context;
    pub fn mraa_gpio_edge_mode(dev: mraa_gpio_context, mode: gpio_edge_t)
     -> mraa_result_t;
    pub fn mraa_gpio_isr(dev: mraa_gpio_context, edge: gpio_edge_t,
                         fptr:
                             ::std::option::Option<extern "C" fn(arg1:
                                                                     *mut ::libc::c_void)
                                                       -> ()>,
                         args: *mut ::libc::c_void) -> mraa_result_t;
    pub fn mraa_gpio_isr_exit(dev: mraa_gpio_context) -> mraa_result_t;
    pub fn mraa_gpio_mode(dev: mraa_gpio_context, mode: gpio_mode_t)
     -> mraa_result_t;
    pub fn mraa_gpio_dir(dev: mraa_gpio_context, dir: gpio_dir_t)
     -> mraa_result_t;
    pub fn mraa_gpio_close(dev: mraa_gpio_context) -> mraa_result_t;
    pub fn mraa_gpio_read(dev: mraa_gpio_context) -> ::libc::c_int;
    pub fn mraa_gpio_write(dev: mraa_gpio_context, value: ::libc::c_int)
     -> mraa_result_t;
    pub fn mraa_gpio_owner(dev: mraa_gpio_context, owner: mraa_boolean_t)
     -> mraa_result_t;
    pub fn mraa_gpio_use_mmaped(dev: mraa_gpio_context, mmap: mraa_boolean_t)
     -> mraa_result_t;
    pub fn mraa_gpio_get_pin(dev: mraa_gpio_context) -> ::libc::c_int;
    pub fn mraa_gpio_get_pin_raw(dev: mraa_gpio_context) -> ::libc::c_int;
}