PIDUINO
Loading...
Searching...
No Matches

Global namespace for Piduino. More...

Classes

struct  _Setpriority
 
class  BashCompletionOptionPrinter
 Option printer for bash completion. More...
 
class  Clock
 Horloge. More...
 
class  ConfigFile
 
class  Connector
 Connecteur. More...
 
class  ConsoleOptionPrinter
 Option printer for the console. More...
 
class  Convert
 
class  Converter
 The Converter class provides an interface for analog-to-digital and digital-to-analog converters. More...
 
class  Database
 
class  Fifo
 
class  FileDevice
 Provides an interface for reading from and writing to files. More...
 
class  FileStream
 Provides an interface for reading from and writing to files with stream. More...
 
class  Flags
 A type-safe flags class for bitwise operations on enum values. More...
 
class  Gpio
 Classe Gpio. More...
 
class  GpioDevice
 Abstract base class for GPIO devices. More...
 
class  GpioPwm
 Provides PWM (Pulse Width Modulation) control for a GPIO pin. More...
 
class  GroffOptionPrinter
 Option printer for man pages. More...
 
class  I2cDev
 I2C device interface for communicating with I2C peripheral devices. More...
 
class  Implicit
 Value option with implicit default value. More...
 
class  invalid_option
 
class  IoDevice
 Abstract base class for input/output devices. More...
 
class  IoMap
 Memory mapping. More...
 
class  LinearBuffer
 
class  Manufacturer
 
class  Max1161x
 Class for the MAX11612 to MAX11617 series of analog-to-digital converters. More...
 
class  Max7311
 I2C GPIO expander controller for the MAX7311 device. More...
 
class  Mcp4725
 Class for the MCP4725 series of digital-to-analog converters. More...
 
class  Mcp4728
 Class for the MCP4728 series of digital-to-analog converters. More...
 
class  Option
 Abstract Base class for Options. More...
 
class  OptionParser
 OptionParser manages all Options. More...
 
class  OptionPrinter
 Base class for an OptionPrinter. More...
 
class  Pin
 Represents a general-purpose input/output (GPIO) pin and its configuration. More...
 
class  RingBuffer
 STL-style circular buffer. More...
 
class  Scheduler
 
class  SerialPort
 Provides functions to access serial ports. More...
 
class  SoC
 
class  SocPwm
 
class  SpiDev
 
class  Switch
 Value option without value. More...
 
class  SysLog
 System logger. More...
 
class  SysLogBuffer
 
class  System
 
class  Terminal
 Provides an interface for reading from and writing to terminals (tty) More...
 
class  TerminalNotifier
 
class  ThreadSafeBuffer
 This provides a thread safe buffer. More...
 
class  TSQueue
 Thread-safe queue implementation. More...
 
class  Value
 Value option with optional default value. More...
 

Typedefs

using Option_ptr = std::shared_ptr< Option >
 

Enumerations

enum  AccessLayer {
  AccessLayerAuto = 0 , AccessLayerIoMap = 0x0001 , AccessLayerSysFs = 0x0002 , AccessLayerGpioDev = 0x0004 ,
  AccessLayerAll = AccessLayerIoMap + AccessLayerGpioDev , AccessLayerUnk = -1
}
 Enumerates the possible hardware access layers for GPIO operations. More...
 
enum class  Argument { no = 0 , required , optional }
 Option's argument type. More...
 
enum class  Attribute {
  inactive = 0 , hidden = 1 , required = 2 , optional = 3 ,
  advanced = 4 , expert = 5
}
 Option's attribute. More...
 
enum class  OptionName { unspecified , short_name , long_name }
 Option name type. Used in invalid_option exception. More...
 

Functions

template<typename charT , typename traits >
int fileno (const std::basic_ios< charT, traits > &stream)
 Map a stream pointer to a file descriptor.
 
static std::ostream & operator<< (std::ostream &out, const OptionParser &op)
 
template<typename T , typename A >
bool operator== (RingBuffer< T, A > const &lhs, RingBuffer< T, A > const &rhs)
 
template<typename T , typename A >
bool operator!= (RingBuffer< T, A > const &lhs, RingBuffer< T, A > const &rhs)
 
template<typename T , typename A >
bool operator< (RingBuffer< T, A > const &lhs, RingBuffer< T, A > const &rhs)
 
template<typename T , typename A >
RingBuffer< T, A >::iterator begin (RingBuffer< T, A > &cb)
 
template<typename T , typename A >
RingBuffer< T, A >::iterator end (RingBuffer< T, A > &cb)
 
template<typename T , typename A >
RingBuffer< T, A >::const_iterator begin (RingBuffer< const T, A > const &cb)
 
template<typename T , typename A >
RingBuffer< constT, A >::const_iterator end (RingBuffer< const T, A > const &cb)
 
_Setpriority setpriority (SysLog::Priority __priority)
 
std::ostream & operator<< (std::ostream &__os, _Setpriority __p)
 

Variables

Clock clk
 Piduino Clock Global Object.
 
Database db
 Piduino Database Global Object.
 
Gpio gpio
 Piduino Gpio Global Object.
 
I2cDev Wire
 Global I2cDev object for convenient access to the default I2C bus.
 
SpiDev SPI
 Piduino SpiDev Global Object.
 
SysLog Syslog
 Piduino SysLog Global Object.
 
System system
 Piduino System Global Object.
 

Detailed Description

Global namespace for Piduino.

Typedef Documentation

◆ Option_ptr

using Piduino::Option_ptr = typedef std::shared_ptr<Option>

Definition at line 284 of file popl.h.

Enumeration Type Documentation

◆ AccessLayer

Enumerates the possible hardware access layers for GPIO operations.

The AccessLayer enum defines the different mechanisms by which a GPIO pin can be accessed and controlled at the system level. These layers represent various interfaces provided by the operating system or hardware abstraction, allowing flexible and platform-specific access to GPIO functionality.

  • AccessLayerAuto: Automatically select the most appropriate access layer.
  • AccessLayerIoMap: Use memory-mapped I/O for direct hardware access.
  • AccessLayerSysFs: Use the sysfs interface provided by the Linux kernel.
  • AccessLayerGpioDev: Use the /dev/gpiochip character device interface.
  • AccessLayerAll: Enable all supported access layers.
  • AccessLayerUnk: Unknown or uninitialized access layer.
Enumerator
AccessLayerAuto 
AccessLayerIoMap 
AccessLayerSysFs 
AccessLayerGpioDev 
AccessLayerAll 
AccessLayerUnk 

Definition at line 48 of file gpiopin.h.

◆ Argument

enum class Piduino::Argument
strong

Option's argument type.

Switch has "no" argument Value has "required" argument Implicit has "optional" argument

Enumerator
no 
required 
optional 

Definition at line 45 of file popl.h.

◆ Attribute

enum class Piduino::Attribute
strong

Option's attribute.

inactive: Option is not set and will not be parsed hidden: Option is active, but will not show up in the help message required: Option must be set on the command line. Otherwise an exception will be thrown optional: Option must not be set. Default attribute. advanced: Option is advanced and will only show up in the advanced help message expoert: Option is expert and will only show up in the expert help message

Enumerator
inactive 
hidden 
required 
optional 
advanced 
expert 

Definition at line 61 of file popl.h.

◆ OptionName

enum class Piduino::OptionName
strong

Option name type. Used in invalid_option exception.

unspecified: not specified short_name: The option's short name long_name: The option's long name

Enumerator
unspecified 
short_name 
long_name 

Definition at line 77 of file popl.h.

Function Documentation

◆ begin() [1/2]

template<typename T , typename A >
RingBuffer< T, A >::const_iterator Piduino::begin ( RingBuffer< const T, A > const &  cb)
Parameters
cb
Returns

Definition at line 843 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::begin().

Here is the call graph for this function:

◆ begin() [2/2]

template<typename T , typename A >
RingBuffer< T, A >::iterator Piduino::begin ( RingBuffer< T, A > &  cb)
Parameters
cb
Returns

Definition at line 821 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::begin().

Here is the call graph for this function:

◆ end() [1/2]

template<typename T , typename A >
RingBuffer< constT, A >::const_iterator Piduino::end ( RingBuffer< const T, A > const &  cb)
Parameters
cb
Returns

Definition at line 854 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::end().

Here is the call graph for this function:

◆ end() [2/2]

template<typename T , typename A >
RingBuffer< T, A >::iterator Piduino::end ( RingBuffer< T, A > &  cb)
Parameters
cb
Returns

Definition at line 832 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::end().

Here is the call graph for this function:

◆ fileno()

template<typename charT , typename traits >
int Piduino::fileno ( const std::basic_ios< charT, traits > &  stream)

Map a stream pointer to a file descriptor.

Returns the integer file descriptor associated with the C++ stream pointed to by stream.

◆ operator!=()

template<typename T , typename A >
bool Piduino::operator!= ( RingBuffer< T, A > const &  lhs,
RingBuffer< T, A > const &  rhs 
)
Parameters
lhs
rhs
Returns

Definition at line 795 of file ringbuffer.h.

◆ operator<()

template<typename T , typename A >
bool Piduino::operator< ( RingBuffer< T, A > const &  lhs,
RingBuffer< T, A > const &  rhs 
)
Parameters
lhs
rhs
Returns

Definition at line 807 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::begin(), and Piduino::RingBuffer< T, A >::end().

Here is the call graph for this function:

◆ operator<<() [1/2]

std::ostream & Piduino::operator<< ( std::ostream &  __os,
_Setpriority  __p 
)
inline

Definition at line 285 of file syslog.h.

References Piduino::_Setpriority::m_value, and Piduino::SysLog::setPriority().

Here is the call graph for this function:

◆ operator<<() [2/2]

static std::ostream & Piduino::operator<< ( std::ostream &  out,
const OptionParser op 
)
inlinestatic

Definition at line 1183 of file popl.h.

◆ operator==()

template<typename T , typename A >
bool Piduino::operator== ( RingBuffer< T, A > const &  lhs,
RingBuffer< T, A > const &  rhs 
)
Parameters
lhs
rhs
Returns

Definition at line 782 of file ringbuffer.h.

References Piduino::RingBuffer< T, A >::begin(), Piduino::RingBuffer< T, A >::end(), and Piduino::RingBuffer< T, A >::size().

Here is the call graph for this function:

◆ setpriority()

_Setpriority Piduino::setpriority ( SysLog::Priority  __priority)
inline

Definition at line 281 of file syslog.h.

Variable Documentation

◆ db

Database Piduino::db
extern

Piduino Database Global Object.

◆ SPI

SpiDev Piduino::SPI
extern

Piduino SpiDev Global Object.

◆ Syslog

SysLog Piduino::Syslog
extern

Piduino SysLog Global Object.

◆ system

System Piduino::system
extern

Piduino System Global Object.

◆ Wire

I2cDev Piduino::Wire
extern

Global I2cDev object for convenient access to the default I2C bus.