#ifndef SYSFS_GPIO
#define SYSFS_GPIO

/* simple frontend to control a gpio via sysfs */
typedef struct _sysfs_gpio {
    int ngpio;
    int dir_fd;
    int value_fd;
    int direction_fd;
}sysfs_gpio;

sysfs_gpio *sysfs_gpio_open(int ngpio);
void sysfs_gpio_close(sysfs_gpio *fs_gpio);
int sysfs_gpio_set_direction(sysfs_gpio *fs_gpio, int inout);   /* 0=in, 1=output */
int sysfs_gpio_set_value(sysfs_gpio *fs_gpio, int val);
int sysfs_gpio_get_value(sysfs_gpio *fs_gpio, int *val);

#endif