RADLib
RADical C++ application framework
RADDevice.h File Reference

Embedded Linux GPIO, I2C, SPI, PWM, ADC, watchdog, LED, and ioctl-ready helpers. More...

#include <RADCore/RADCore.h>
#include <cstdint>
#include <string>
#include <vector>
+ Include dependency graph for RADDevice.h:

Go to the source code of this file.

Classes

struct  RADDevice::DevicePaths
 Filesystem roots used for real devices or test fixtures. More...
 
class  RADDevice::I2CDevice
 Parity-free I2C device wrapper using /dev/i2c-* and I2C_SLAVE ioctl. More...
 
class  RADDevice::SPIDevice
 SPI device wrapper using /dev/spidev* and SPI_IOC_MESSAGE. More...
 
class  RADDevice::GpioPin
 GPIO sysfs helper. More...
 
class  RADDevice::PwmChannel
 PWM sysfs channel helper. More...
 
class  RADDevice::AdcChannel
 IIO ADC channel reader. More...
 
class  RADDevice::Watchdog
 Linux watchdog wrapper. More...
 
class  RADDevice::Led
 LED sysfs helper. More...
 

Namespaces

 RADDevice
 

Enumerations

enum class  RADDevice::GpioDirection { RADDevice::In , RADDevice::Out }
 GPIO direction. More...
 
enum class  RADDevice::GpioEdge { RADDevice::None , RADDevice::Rising , RADDevice::Falling , RADDevice::Both }
 GPIO edge trigger mode. More...
 

Functions

std::vector< std::string > RADDevice::listLeds (const DevicePaths &paths={})
 Lists LED device names. More...
 
std::vector< std::string > RADDevice::listIioDevices (const DevicePaths &paths={})
 Lists visible IIO device directory names. More...
 

Detailed Description

Embedded Linux GPIO, I2C, SPI, PWM, ADC, watchdog, LED, and ioctl-ready helpers.