21#ifndef PLUGINS_GPIO_GPIODRIVER_H_
22#define PLUGINS_GPIO_GPIODRIVER_H_
27#include <ola/thread/Thread.h>
113 typedef std::vector<GPIOPin> GPIOPins;
115 const Options m_options;
116 GPIOPins m_gpio_pins;
125 bool UpdateGPIOPins(
const DmxBuffer &dmx);
128 static const char GPIO_BASE_DIR[];
A class used to hold a single universe of DMX data.
Used to hold a single universe of DMX data.
Definition DmxBuffer.h:49
Uses data in a DMXBuffer to drive GPIO pins.
Definition GPIODriver.h:38
GPIODriver(const Options &options)
Create a new GPIODriver.
Definition GPIODriver.cpp:49
std::vector< uint16_t > PinList() const
Get a list of the GPIO pins controlled by this driver.
Definition GPIODriver.h:89
~GPIODriver()
Destructor.
Definition GPIODriver.cpp:55
bool Init()
Initialize the GPIODriver.
Definition GPIODriver.cpp:66
void * Run()
The entry point for the new thread.
Definition GPIODriver.cpp:85
bool SendDmx(const DmxBuffer &dmx)
Set the values of the GPIO pins from the data in the DMXBuffer.
Definition GPIODriver.cpp:74
The namespace containing all OLA symbols.
Definition Credentials.cpp:44
The Options.
Definition GPIODriver.h:43
std::vector< uint16_t > gpio_pins
A list of I/O pins to map to slots.
Definition GPIODriver.h:50
uint16_t start_address
The DMX512 start address of the first pin.
Definition GPIODriver.h:55
uint8_t turn_off
The value below which a pin will be turned off.
Definition GPIODriver.h:65
uint8_t turn_on
The value above which a pin will be turned on.
Definition GPIODriver.h:60